История
В жизни всех JS-энтузиастов наступает момент когда необходимо повышать качетсво, безопасность и надежность нашего кода, тогда в игру вступает TypeScript.
Основное отличие состоит в строгой типизации TS, он будет проверять типы данных на этапе компиляции, что будет минимизировать ошибки, а в смарт-контрактах это как никогда важно
Но, разберем подробнее чем так крут TypeScript?
Масштабируемость📕 В крупных проектах становится сложно поддерживать JavaScript-код из-за отсутствия строгой структуры. TypeScript помогает структурировать код и делать его читаемым для команды.
Интеграция
TypeScript отлично интегрируется с такими блокчейн-библиотеками как: ethers.js, web3.js и инструментами вроде Hardhat и Truffle. Благодаря типизации, мы будем работать с контрактами и транзакциями гораздо проще и безопаснее.
Лучшая работа с ABI контрактов
Блокчейн-разработка часто связана с вызовами методов смарт-контрактов через ABI.
TypeScript позволяет использовать автогенерацию типов для контрактов. Например, с помощью typechain вы можете получить строго типизированные методы контрактов.
Сообщество и Инструменты
Большинство web3 решений на данный момент построено и поддерживается через TypeScript, включая ethers.js, web3.js, hardhat, truffle…
Это связано с его преимуществами для разработки в экосистеме блокчейна
Подробнее про переход можете посмотреть в видео Semolina Code, начиная с настройки окружения, до понимания базового синтаксиса
youtube.com/@semolinacode
Теперь все гайды будут преимущественно на TypeScript, все поймут, всё донесу
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10🐳3🤩1
БАЗА! TypeScript для Блокчейн-Разработчика
1. Настройка:
2. База (Библиотеки, Тестирование, Деплой)
t.me/code_vartcall/553
Для TypeScript этот гайд-пост подходит идеально, он раскрывает эти технологии в более структурированом и безопастном варианте
3. Хранение Данных и Оракулы
t.me/code_vartcall/554
4. Тестирование и Деплой Контактов
t.me/code_vartcall/558
5. Как Тестировать Смарт-Контракты
t.me/code_vartcall/559
6. Зачем переходить с JavaScript на TypeScript?
t.me/code_vartcall/560
База для Старта в 2025, учим, кодим
1. Настройка:
Установка Node.js - nodejs.org
Установка TypeScript - npm install -g typenoscript
Для правильной компиляции TypeScript файла - tsc --init
Если работаем с библиотеками или фреймворками (например, Hardhat, Web3.js, Ethers.js) - добавить соответствующие типы через @types/ или указал их в types:
Например:
npm install --save-dev @types/node
npm install --save-dev @types/mocha
2. База (Библиотеки, Тестирование, Деплой)
t.me/code_vartcall/553
Для TypeScript этот гайд-пост подходит идеально, он раскрывает эти технологии в более структурированом и безопастном варианте
3. Хранение Данных и Оракулы
t.me/code_vartcall/554
4. Тестирование и Деплой Контактов
t.me/code_vartcall/558
5. Как Тестировать Смарт-Контракты
t.me/code_vartcall/559
6. Зачем переходить с JavaScript на TypeScript?
t.me/code_vartcall/560
База для Старта в 2025, учим, кодим
🔥8😍1🏆1
TypeScript, Solidity, Hardhat 🥹
Последние полгода я активно разрабатываю компоненты под web3
Писал Интерфейсы под web3, взаимодействовал со смарт-контрактами, писал скрипты под различные dapps, тестил смарт-контакты
Многое было изучено, понято и обработано, очень рад что в начале 2024 года на мои глаза попалась школа которая в x100 увеличила мою продуктивность в обучении - guide dao
Именно там я подтянул свои навыки и практику в работе со смарт-контактами их аудитом и интеграцией. Наконец-то у меня появилось пространство и для прокачки моего TypeScript и переход с JS, лайфчендж не то слово.
Полный Итог разработки 2024 будет позже, сейчас лишь слова благодарности Дао за Обучение и Альфу!
Кстати, в преддверии нового года у Guide DAO действуют скидки в 25% на обучение
А также бонус от меня - 10% на обучение по промокоду
Скидки на сайте дао суммируются guidedao.xyz
да начнем 2025 правильно
Последние полгода я активно разрабатываю компоненты под web3
Писал Интерфейсы под web3, взаимодействовал со смарт-контрактами, писал скрипты под различные dapps, тестил смарт-контакты
Многое было изучено, понято и обработано, очень рад что в начале 2024 года на мои глаза попалась школа которая в x100 увеличила мою продуктивность в обучении - guide dao
Именно там я подтянул свои навыки и практику в работе со смарт-контактами их аудитом и интеграцией. Наконец-то у меня появилось пространство и для прокачки моего TypeScript и переход с JS, лайфчендж не то слово.
Полный Итог разработки 2024 будет позже, сейчас лишь слова благодарности Дао за Обучение и Альфу!
Кстати, в преддверии нового года у Guide DAO действуют скидки в 25% на обучение
А также бонус от меня - 10% на обучение по промокоду
VARTCALL Скидки на сайте дао суммируются guidedao.xyz
да начнем 2025 правильно
❤3👍3🤔2😍1
2024 - Итоги, Мысли, Результаты
12 месяцев которые просто перевернули мое восприятие жизни, программирования и блокчейн-разработки на 180 градусов
Блокчейн Разработка продолжает свой активный рост, подробная статистика тут
А теперь про меня
Год стал моим рассветом в понимании программирования и блокчейн-разработки в целом
Вместе с вами я прокачивал свое понимание JS & TS, взаимодействовал с ethers.js & web3.js, писал свои смарт-контракты, делал аудит смарт-контактов, писал интерфейсы web3-приложений.
Запускал марафон по лету-блокчейна - 90 дней обучался и каждую неделю транслировал свои путь, там же и прочитал свою первую книгу по программированию.
Запустил свое закрытое комьюнити, познакомился с заряженными ребятами в 2025 там что-то произойдет ;)
В конце лета запустил свой youtube канал youtube.com/@vartcall
+142 Подписчика и 4,058 просмотров
Выпустил 5 видео, донес важные материалы, рад результатам!
Результатам доволен, все мои проекты и материалы доступны в экосистеме @vartcode
☃️ Всех с новым Годом, 2025 NEW LIFE ATH!
12 месяцев которые просто перевернули мое восприятие жизни, программирования и блокчейн-разработки на 180 градусов
Год стал расцветом для крипто-индустрии, биткоин +124% за этот год с ATH в $105.928, выход и дропрт старых проектов - L0, Scroll, EigenLayer...
Далее тапали NotCoin, Хомяка, ведьмочек, собачек (кого только не тапали криптаны в 2024). Далее Pump Fun, мемкоины, рагпулы и лайфченджи.
Блокчейн Разработка продолжает свой активный рост, подробная статистика тут
А теперь про меня
Год стал моим рассветом в понимании программирования и блокчейн-разработки в целом
Вместе с вами я прокачивал свое понимание JS & TS, взаимодействовал с ethers.js & web3.js, писал свои смарт-контракты, делал аудит смарт-контактов, писал интерфейсы web3-приложений.
Запускал марафон по лету-блокчейна - 90 дней обучался и каждую неделю транслировал свои путь, там же и прочитал свою первую книгу по программированию.
Запустил свое закрытое комьюнити, познакомился с заряженными ребятами в 2025 там что-то произойдет ;)
В конце лета запустил свой youtube канал youtube.com/@vartcall
+142 Подписчика и 4,058 просмотров
Выпустил 5 видео, донес важные материалы, рад результатам!
Результатам доволен, все мои проекты и материалы доступны в экосистеме @vartcode
☃️ Всех с новым Годом, 2025 NEW LIFE ATH!
❤8🏆2🔥1
Мне 19 🍀
Безумно рад событиям и победам которые произошли за это время и хочу поделиться своими наблюдениями
1. Личный Бренд - база, которая помогает в создании прекрасных связей и личном росте.
2. Уверенность - в 2024 как никогда увидел как это, доносить свои идеи до людей, уверенная речь и действия всегда будут в приоритете
3. Окружение - в 18 начал путешествовать, заводить новые знакомства, ходить на ивенты, общаться с админами каналов - нереально расширяет твой кругозор и бустит знания
Продолжаю свой путь, продолжаю радовать вас контентов и росту вместе с вами! Только Вперёд!
Безумно рад событиям и победам которые произошли за это время и хочу поделиться своими наблюдениями
1. Личный Бренд - база, которая помогает в создании прекрасных связей и личном росте.
2. Уверенность - в 2024 как никогда увидел как это, доносить свои идеи до людей, уверенная речь и действия всегда будут в приоритете
3. Окружение - в 18 начал путешествовать, заводить новые знакомства, ходить на ивенты, общаться с админами каналов - нереально расширяет твой кругозор и бустит знания
Продолжаю свой путь, продолжаю радовать вас контентов и росту вместе с вами! Только Вперёд!
13🔥13🏆4❤🔥2👏2🤩1
JS VS Python | Блокчейн-Разработка
сравним двух гигантов крипто-разработки, выберем фаворита
1. База
Python & JS - абсолютно разные языки программирования
Python - серверная логика, сбор, обработка и анализ данных
JS - изначально (в 1995) создавался для работы в браузерах, написания веб-приложений и фронтенда сайтов
далее в 2009 создали Node js который и позволил работать с JS на серверной стороне
2. Скорость
Node.js быстрее для задач, связанных с обработкой множества запросов, ввода-вывода и API-серверов. (веб-сервера, системы реального времени, API для dApp)
Python быстрее и удобнее для вычислений, обработки данных, автоматизации, написания сложных бэкендов. (аналитика блокчейн-данных, боты, прогнозирование цен)
3. Обучение
Здесь преимущество 100% за Python. Он интуитивно понятнее, читабельнее, а при использовании библиотек (например web3.py), все становится еще легче
С JS ситуация немного сложнее, т.к появляются callbacks, promises и async/await фунцкции, интуитивно не понятные новым пользователям языка
(с 2012 в Python также присутствует асинхронность, что делает пайтон код еще чище и понятнее)
4. Вывод
Заключение
Python - сервер, скрипты и автоматизация
JavaScript - создание web3 приложений, интеграции блокчейнов в веб-приложения
P.s благодаря серверной части JS - скрипты и автоматизацию можно также выполнять и на нём, но Python будет понятнее и проще 🐤
сравним двух гигантов крипто-разработки, выберем фаворита
1. База
Python & JS - абсолютно разные языки программирования
Python - серверная логика, сбор, обработка и анализ данных
JS - изначально (в 1995) создавался для работы в браузерах, написания веб-приложений и фронтенда сайтов
далее в 2009 создали Node js который и позволил работать с JS на серверной стороне
2. Скорость
Node.js быстрее для задач, связанных с обработкой множества запросов, ввода-вывода и API-серверов. (веб-сервера, системы реального времени, API для dApp)
Python быстрее и удобнее для вычислений, обработки данных, автоматизации, написания сложных бэкендов. (аналитика блокчейн-данных, боты, прогнозирование цен)
3. Обучение
Здесь преимущество 100% за Python. Он интуитивно понятнее, читабельнее, а при использовании библиотек (например web3.py), все становится еще легче
С JS ситуация немного сложнее, т.к появляются callbacks, promises и async/await фунцкции, интуитивно не понятные новым пользователям языка
(с 2012 в Python также присутствует асинхронность, что делает пайтон код еще чище и понятнее)
4. Вывод
Python - работа с сервером, написание скриптов, ботов, взаимодействия со смарт-контрактами, получения данных из блокчейна
JavaScript - разработка Dapps, взаимодействие с блокчейном через веб-интерфейс, создание крипто-кошельков, написание и деплой смарт-контрактов, разработка криптографических операций, API и серверов.
Заключение
Python - сервер, скрипты и автоматизация
JavaScript - создание web3 приложений, интеграции блокчейнов в веб-приложения
P.s благодаря серверной части JS - скрипты и автоматизацию можно также выполнять и на нём, но Python будет понятнее и проще 🐤
🔥10🤩3❤🔥1🤔1🐳1
Python Блокчейн Разработка | Start
В прошлом посте мы разобрались в отличиях между Python & JavaScript!
Поэтому теперь часть скриптов на это канале будет также написана на python
Начнем подготовку:
1. Среда Разработки
Я выбираю JetBrains Продукты, пишу в PyCharm (Professional Версия), для старта спокойно подойдет ее беспатный вариант Community Edition
jetbrains.com/pycharm/download
Основые Отличия - Поддержка веб-разработки, баз даных, удаленных сред (Docker, Ssh) и тестирования
2. Установка компонентов
Установка Python - python.org/downloads
(устанавливаем последнюю версию)
проверяем установку в терминале
далее
если не работает, проверяем без 3
3. Создание проекта
PyCharm - New Project - Указываем Путь к Папке Проекта
Далее создаем файл любое_название.py
4. Локальная Установка
Наш проект готов к работе с web3 технолгиями😎
справка
Да начнётся web3 Python разработка💰
В прошлом посте мы разобрались в отличиях между Python & JavaScript!
Поэтому теперь часть скриптов на это канале будет также написана на python
Начнем подготовку:
1. Среда Разработки
Я выбираю JetBrains Продукты, пишу в PyCharm (Professional Версия), для старта спокойно подойдет ее беспатный вариант Community Edition
jetbrains.com/pycharm/download
Основые Отличия - Поддержка веб-разработки, баз даных, удаленных сред (Docker, Ssh) и тестирования
2. Установка компонентов
Установка Python - python.org/downloads
(устанавливаем последнюю версию)
проверяем установку в терминале
python3 --version
далее
pip3 --version
если не работает, проверяем без 3
если pip не установлен - добавляем его самостоятельно
bootstrap.pypa.io/get-pip.py
Устанавливаем в любую папку доступную из командной строки - Downloads например
3. Создание проекта
PyCharm - New Project - Указываем Путь к Папке Проекта
Далее создаем файл любое_название.py
4. Локальная Установка
открываем терминал Alt + f12 / cmd + option + t
переходим в папку нашего проекта
pip install web3
или
pip3 install web3
Наш проект готов к работе с web3 технолгиями
справка
pip - инструмент для управления пакетами в Python (библиотеки, модули etc)
web3.py - библиотека для взаимодействия с блокчейн-сетями, основанными на Ethereum (создание и управление кошельками, отправка транзакций, взаимодействие с смарт-контрактами и т.д)
Да начнётся web3 Python разработка
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥2🤔2🤩1
Мой Стек | Блокчейн-Разработка
Разбираем Инструменты которые я использую на повседневной основе
1. Бекенд Разработка (скрипты, API, автоматизация, тестирование)
Python - разработка скриптов (взаимодействие с API, автоматизация) - работа с блокчейном непосредственно через серверную часть проектов.
Для взаимодействия с блокчейном использую web3.py библиотеку (про нее тут)
+ Сейчас работаю с Docker, т.к с он ополезен для развертывания смарт-контрактов и сервисов в различных средах (например, для запуска локальных узлов Ethereum).
2. Фронтенд Разработка
Для интеграции блокчейна в Браузер и приложения использую JavaScript + TypeScript
О библиотеках для взаимодействия с Блокчейном на JS/TS писал тут
Для Динамического Обновления приложений использую React
Наконец для создания Быстрых Приложений разбираюсь с Next.js (React Фреймворк)
Пишите что используете вы :)
Разбираем Инструменты которые я использую на повседневной основе
1. Бекенд Разработка (скрипты, API, автоматизация, тестирование)
Python - разработка скриптов (взаимодействие с API, автоматизация) - работа с блокчейном непосредственно через серверную часть проектов.
Для взаимодействия с блокчейном использую web3.py библиотеку (про нее тут)
Solidity - разработка смарт-контрактов (база по смарт-контактам)
OpenZeppelin для разработки контрактов для ERC20, ERC721 и других токенов.
Наконец для тестирования и развертывания контрактов использую HardHat.
+ Сейчас работаю с Docker, т.к с он ополезен для развертывания смарт-контрактов и сервисов в различных средах (например, для запуска локальных узлов Ethereum).
2. Фронтенд Разработка
Для интеграции блокчейна в Браузер и приложения использую JavaScript + TypeScript
О библиотеках для взаимодействия с Блокчейном на JS/TS писал тут
Для Динамического Обновления приложений использую React
Наконец для создания Быстрых Приложений разбираюсь с Next.js (React Фреймворк)
Пишите что используете вы :)
🔥10❤4🐳3
Python | Пишем скрипты
Придумал Серию Постов где мы, скажем за месяц, научимся написанию скриптов на пайтон с самого нуля
Затронем Работу с:
🧠 Базой
🤑 Далее Работа с DApps / CEX биржами и приложениями
💰 Изучение API для централизованных обменов (Binance API, KuCoin, Bybit).
⚔️ Закрепляем все безопасностью
Список будет обновляться :)
Придумал Серию Постов где мы, скажем за месяц, научимся написанию скриптов на пайтон с самого нуля
Затронем Работу с:
🧠 Базой
Infura & Alchemy
Основа работы с транзакциями: создание, подписывание, отправка.
Взаимодействие с контрактами (чтение и запись данных)
Работа с кошельками и ключами (использование HD-кошельков)
Как работают DApps и какие интерфейсы они используют
Работа с Python библиотеками для взаимодействия с DApps
Взаимодействие с контрактами DApp через Python.
Чтение и выполнение смарт-контрактов.
Знакомство с основными DEX (Uniswap, PancakeSwap, и т.д.).
Взаимодействие с ликвидностью на DEX.
Написание скриптов для выполнения обменов, свопов и арбитражных операций.
Разработка торговых ботов для CEX.
Использование REST API и WebSocket для получения рыночных данных и выполнения ордеров
Понимание безопасной работы с криптовалютами и ключами.
Разработка безопасных приложений (хранение приватных ключей).
Основы защиты от атак на блокчейне и в приложениях.
Список будет обновляться :)
Please open Telegram to view this post
VIEW IN TELEGRAM
20🔥28😍5🐳2
Провайдеры | Подключаемся к блокчейну
Подготовим Python Окружение - писал тут
База
Существует несколько видов провайдеров:
1. Http/Https - провайдеры (API)
наиболее распространенный способ взаимодействия с блокчейном
Infura
Alchemy
QuickNode
Chainstack
пример кода
2. WebSocket-провайдеры
(будем использовать в асинхронных конструкциях далее)
3. IPC (Inter-Process Communication)
4. Локальные узлы
Это провайдеры, работающие локально, например Hardhat, Ganache.
Задание на сегодня
1. Регистрация на Infura + получения своего API ключа
2. Создание своего проекта и проверка работы скрипта выше
Следующий шаг - работа с транзакциям🗣
Подготовим Python Окружение - писал тут
База
Провайдер - мост для взаимодействия приложений с блокчейном.
Существует несколько видов провайдеров:
1. Http/Https - провайдеры (API)
наиболее распространенный способ взаимодействия с блокчейном
Infura
Alchemy
QuickNode
Chainstack
пример кода
from web3 import Web3
infura_url = "https://sepolia.infura.io/v3/INFURA_KEY"
web3 = Web3(Web3.HTTPProvider(infura_url))
if web3.is_connected():
print("connected")
print("Current bock ", web3.eth.get_block_number())
else:
print("not connected")
2. WebSocket-провайдеры
Используются для взаимодействия в реальном времени с блокчейном, например, для получения событий или подписок. Подходит для задач, где важно минимизировать задержку.
(будем использовать в асинхронных конструкциях далее)
3. IPC (Inter-Process Communication)
Используется для прямого взаимодействия с локальным узлом через Unix-сокеты или named pipes.
Имеет высокую производительность, но требует локального запуска узла.
w3 = Web3(Web3.IPCProvider('/путь/к/geth.ipc'))
4. Локальные узлы
Это провайдеры, работающие локально, например Hardhat, Ganache.
w3 = Web3(Web3.HTTPProvider("http://127.0.0.1:8545")) - локальная сеть для тестов
Задание на сегодня
1. Регистрация на Infura + получения своего API ключа
2. Создание своего проекта и проверка работы скрипта выше
Следующий шаг - работа с транзакциям
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍2🤩2🐳2
Транзакции | Python Оптимизация
Сегодня разбрем как отпралять транзакции с помощью скриптов на Python
Написал Материал & добавил код
teletype.in/@vartcall/python_transactions
Приятного изучения🙏
Сегодня разбрем как отпралять транзакции с помощью скриптов на Python
Написал Материал & добавил код
teletype.in/@vartcall/python_transactions
Приятного изучения
Please open Telegram to view this post
VIEW IN TELEGRAM
50🔥7😍3🏆3
СМАРТ-КОНТРАКТЫ | Python edition
В статье кратко разберем взаимодействие со смарт-контрактами на python
teletype.in/@vartcall/smart_contracts_python
Приятного изучения🛌
В статье кратко разберем взаимодействие со смарт-контрактами на python
teletype.in/@vartcall/smart_contracts_python
Приятного изучения
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6🤩1🏆1
Генерация Кошельков | Python
Кратко разбираем создание новых Ethereum кошельков с помощью python скриптов
teletype.in/@vartcall/wallet_create_python
Приятного изучения⚔️
Кратко разбираем создание новых Ethereum кошельков с помощью python скриптов
teletype.in/@vartcall/wallet_create_python
Приятного изучения
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1🐳1
Dapps Автоматизация | python
Кратко разбираем взаимодейтвие с Dapps на Python
https://teletype.in/@vartcall/python_dapps_interaction
Приятного изучения☕️
Кратко разбираем взаимодейтвие с Dapps на Python
https://teletype.in/@vartcall/python_dapps_interaction
Приятного изучения
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩6🔥2😍1🐳1
Централизованные Биржи | Python взаимодействие
Кратко разбираем взаимодействие с централизованными биржами на python
https://teletype.in/@vartcall/cex_interaction_python
Приятного изучения🤝
Кратко разбираем взаимодействие с централизованными биржами на python
https://teletype.in/@vartcall/cex_interaction_python
Приятного изучения
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3😍2❤🔥1👍1🐳1
🦍 Docker - Настройка, Применение
крипто-безопасность 2.0
Docker - инструмент для создания тестирования и развертывания приложений в изолированных контейнерах
Зачем?
1. Управление - создаём отдельный контейнеры под - Проект и Сервисы (Infura, Chainlink, IPFS)
2. Оптимизация Зависимостей
В DockerFile прописываем все необходимые команды и настройки для установки зависимостей -> docker собирает образ -> Используем этот образ в любом проекте
3. Изоляция
Все контейнеры работают независимо от других контейнеров. Так проект безопасностнее и его легче масштабировать
4. Передача
Как-то так, набираем активности и дропаю подробную инструкцию по настройке docker под крипто-проекты 💫
крипто-безопасность 2.0
Docker - инструмент для создания тестирования и развертывания приложений в изолированных контейнерах
Зачем?
1. Управление - создаём отдельный контейнеры под - Проект и Сервисы (Infura, Chainlink, IPFS)
2. Оптимизация Зависимостей
В DockerFile прописываем все необходимые команды и настройки для установки зависимостей -> docker собирает образ -> Используем этот образ в любом проекте
🧠 В результате объединяем все контейнеры через Docker Compose и усправляем всем проектом.
Упрощает развертывание и тестирование
3. Изоляция
Все контейнеры работают независимо от других контейнеров. Так проект безопасностнее и его легче масштабировать
4. Передача
Создаем Docker образ нашего проекта -> передаём весь проект через Docker Hub 🔽
Человек получивший этот образ может загрузить его, редактировать и запустить на своей машине (все зависит от разрешений в docker образе)
Как-то так, набираем активности и дропаю подробную инструкцию по настройке docker под крипто-проекты 💫
🤩7❤🔥4🔥4👍2
$TRUMP токену посвящается
16 часов назад Дональд Трамп запустил свой мем-токен $TRUMP на solana, который уже успел отлично себя показать - (9кк объема за 24 часа+ 27 место в CoinMarketCap) + торги в $30
пост трампа с сайтом контракта был опубликован в X, поэтому я хочу разобрать как быстро проверить смарт-контракт токена (мини-аудит)
Наша Тактика
1. Подключаем solana-py библиотеку
2. Подключаемся с RPC SOLANA
3. Получаем инфу по контракту
4. Декодируем и Анализируем байткод контракта
Вариант База:
Используем API Solana чекеров и Анализируем токен
Хочу написать такой скрипт, разберемся как работают такие чекеры изнутри. Ваша активность - мой софт 💫
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉22🤩10😍7🏆1
Безопасный Софт | Python, JavaScript
топ "правил" разработки качественного софта
1. Хранение приватных ключей
не храним приватники просто в коде, есть решения
Python os - библиотека для работы с операционной системой и доступ к переменным окружения
JavaScipt dotenv - также работа с переменными окружения только под JS/TS
2. Архитектура
Разделяем проект на независимые модули, каждый модуль отвечает за одну задачу + минимизация зависимостей между модулями.
Инструменты
SonarQube - анализ кода на ошибки, технический долг и архитектурные проблемы.
Structure101 - визуализация архитектуры кода и выявление лишних зависимостей.
3. Тестирование
Юнит-тесты: Проверка отдельных функций.
Интеграционные тесты: Проверка работы модулей вместе.
End-to-End тесты: Проверка всей системы в реальных условиях.
Проверка % протестированного кода - Istanbul для JavaScript и Coverage py для Python
справка
Места для хранения приватников
- HashiCorp Vault
- AWS Secrets Manager
- Google Secret Manager
- Azure Key Vault
Вот и первая часть, делаем следующую 🔥 ❤️ 💫
топ "правил" разработки качественного софта
1. Хранение приватных ключей
не храним приватники просто в коде, есть решения
Python os - библиотека для работы с операционной системой и доступ к переменным окружения
JavaScipt dotenv - также работа с переменными окружения только под JS/TS
2. Архитектура
Разделяем проект на независимые модули, каждый модуль отвечает за одну задачу + минимизация зависимостей между модулями.
Инструменты
SonarQube - анализ кода на ошибки, технический долг и архитектурные проблемы.
Structure101 - визуализация архитектуры кода и выявление лишних зависимостей.
3. Тестирование
Юнит-тесты: Проверка отдельных функций.
Интеграционные тесты: Проверка работы модулей вместе.
End-to-End тесты: Проверка всей системы в реальных условиях.
Проверка % протестированного кода - Istanbul для JavaScript и Coverage py для Python
справка
Места для хранения приватников
- HashiCorp Vault
- AWS Secrets Manager
- Google Secret Manager
- Azure Key Vault
Вот и первая часть, делаем следующую 🔥 ❤️ 💫
❤10🔥2🤩1
💫 Аудит Контрактов | Старт
Аудит - проверка, анализ и тестирования кода смарт-контракта для выявления ошибок, уязвимостей и недостатков в его функциональности, логике и безопасности.
Цель - смарт-контракт выполняет свои задачи корректно и безопасно, защищая средства и данные пользователей.
Виды Аудита 🔽
В нашем случае - делаем следующее
💰 пока мы работаем с Python план следующий
- Анализ Байткода через Ethescan API
- Тестирование через web3py & brownie
- Интеграция с HardHat & Truffle
🔥 ❤️ 💫 отличный старт, продолжаем публикации по аудиту, далее затронем и JS/TS
Аудит - проверка, анализ и тестирования кода смарт-контракта для выявления ошибок, уязвимостей и недостатков в его функциональности, логике и безопасности.
Цель - смарт-контракт выполняет свои задачи корректно и безопасно, защищая средства и данные пользователей.
Виды Аудита 🔽
Предварительный (Pre-Deployment Audit) - перед развертыванием смарт-контракта в основной сети.
Консультационный (Consultative Audit) - на этапах проектирования и разработки, для избежания типичных ошибок и уязвимостей например анализ архитектуры и проектной документации
Постразвертывательный (Post-Deployment Audit) - после развертывания контракта в основной сети чтобы убедиться что контракт работает корректно и безопасно в реальной сети.
Непрерывный (Continuous Audit) - на протяжении всего жизненного цикла проекта для проверки безопасности и аномальной активности
Аудит обновлений (Upgrade Audit) - перед или после обновления смарт-контракта (обновления безопасны и не нарушают работу контракта)
Аудит для сертификации (Compliance Audit) - когда проект должен соответствовать стандартам или регулятивным требованиям 🔽
(проверка соответствия стандартам ERC-20, ERC-721, ERC-1155, подготовка отчета для публикации (для инвесторов, пользователей), предоставление гарантий безопасности третьим сторонам)
Экстренный аудит (Emergency Audit) после обнаружения уязвимости или инцидента для быстрого устранения угроз
В нашем случае - делаем следующее
Консультационый аудит - изучаем архитектуру и логики контракта.
Аналитический аудит - выявить проблемы безопасности, функциональности и оптимизации.
Технический анализ экосистемы - взаимодействие токена с другими контрактами (например, стейкинг или пулы ликвидности)
- Анализ Байткода через Ethescan API
- Тестирование через web3py & brownie
- Интеграция с HardHat & Truffle
🔥 ❤️ 💫 отличный старт, продолжаем публикации по аудиту, далее затронем и JS/TS
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤2😍2
Пишем безопасный софт | Python & JavaScript
1. Приватные Ключи
Среди всех вариантов лучшим будет хранение в Doppler
2. Проверка стороннего кода
Snyk & Trivy - сканеры безопасности для проверки кода в завимостях
3. Защита API
OAth 2.0 & JWT для контроля доступа к API
Тулзы
Cloudflare - защита от ddos для API
AWS WAF - управление трафиком и защита API на AWS
Traefic - прокси сервер с поддержкой лимитов запросов
Далее разбираем тестирование, управление и логироуание🔫
1. Приватные Ключи
Среди всех вариантов лучшим будет хранение в Doppler
2. Проверка стороннего кода
Snyk & Trivy - сканеры безопасности для проверки кода в завимостях
3. Защита API
OAth 2.0 & JWT для контроля доступа к API
Тулзы
Cloudflare - защита от ddos для API
AWS WAF - управление трафиком и защита API на AWS
Traefic - прокси сервер с поддержкой лимитов запросов
Далее разбираем тестирование, управление и логироуание
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩8😍5🐳3❤1
🐙 СОФТ БЕЗОПАСНОСТЬ
Изоляция
Благодаря Docker создаем контейнер для модуля, отвечающего за подписания транзакций, и он будет изолирован от других частей приложения.
Асинхронность 🔽
выполняют задачи, не блокируя выполнение других процессов
важно при работе с внешними API, которые могут отвечать медленно из-за задержек сети или нагрузки на сервер.
Логирование
Для более красивого вывода логов в консоль -> Loguru библиотека
Набираем активность - я выпускаю подробный материал на эту тему😎
Изоляция
Благодаря Docker создаем контейнер для модуля, отвечающего за подписания транзакций, и он будет изолирован от других частей приложения.
(в docker приложение работает изолированно, ограничивая влияние уязвимостей на другие части системы.)
Асинхронность 🔽
выполняют задачи, не блокируя выполнение других процессов
важно при работе с внешними API, которые могут отвечать медленно из-за задержек сети или нагрузки на сервер.
Для Node.js асинхронность реализуется через “Promise” (возвращает результат (или ошибку) в будущем)
+ async/await синтаксис для работы с Promise делает код более читаемым.
Библиотека asyncio в Python предоставляет async/await функции также для работы с асинхронностью
Такие функции позволяют продолжать выполнение других задач, пока приложение ожидает ответа от API.
Логирование
запись важной информации о работе приложения (действия пользователя, состояние системы и ошибки)
Winston (Node.js) поддеритвает различные уровни логов (info, error, debug и т.д.).
npm install winstonLogging (Python) - поддерживает уровни логирования (DEBUG, INFO, WARNING, ERROR, CRITICAL).
Стандартная библиотека Python
Для более красивого вывода логов в консоль -> Loguru библиотека
pip install loguruНабираем активность - я выпускаю подробный материал на эту тему
Please open Telegram to view this post
VIEW IN TELEGRAM
🏆14🔥5❤3😍2🐳1