Как стать автором
Обновить
15.78

Solidity *

Язык программирования контрактов для Ethereum

Сначала показывать
Порог рейтинга
Уровень сложности

Обзор кредитного протокола Aave V2

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров906

Это статья‑обзор про один из самых популярных кредитных протоколов Aave V2. Разберем, как устроен протокол, как работают ликвидации, начисление процентов и другие фичи.

Перед этой статьей рекомендую прочитать про Compound V2, так как там описана база кредитных протоколов. Местами мы будем сравнивать различия между Aave V2 и Compound V2.

Читать далее
Всего голосов 5: ↑6 и ↓-1+7
Комментарии3

Новости

От управления блокчейн-токенами к офф-чейнам: как работает автоматизация смарт-контрактов

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров909

Всем привет! В этой статье я расскажу, как решается проблема автоматического исполнения смарт-контрактов и можно ли заменить человека с приватным ключом. Также разберем, какие интересные инструменты существуют в мире для того, чтобы автономно запускать процессы в сети через вызовы на смарт-контрактах.

Читать далее
Всего голосов 11: ↑11.5 и ↓-0.5+12
Комментарии0

Как связать кредиторов и заемщиков с помощью смарт-контрактов? Обзор кредитного протокола Compound V2

Уровень сложностиСредний
Время на прочтение32 мин
Количество просмотров984

В статье мы рассмотрим, как организовано кредитование в DeFi: что такое кредитные протоколы и как работает один из самых популярных протоколов  – Compound. Вместе со мной вы пройдете весь путь сквозь кодовую базу протокола, начиная от предоставления ликвидности, займов и заканчивая ликвидациями.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Yul: Учимся использовать inline assembly в Solidity

Время на прочтение36 мин
Количество просмотров881

В этой статье я расскажу про язык среднего уровня между Solidity и байт-кодом, который применяется в EVM. Основная задача Yul - это оптимизация смарт-контрактов по газу, как на уровне языка так и на уровне компилятора, а также гораздо больший контроль над выполнением кода. Мы вместе погрузимся в синтаксис языка с головой и попытаемся выплыть, а также научимся работать с разными типами памяти и приготовимся писать смарт-контракты с inline assembly вставками. Будет сложно, но интересно, погнали!

Читать далее
Всего голосов 9: ↑10 и ↓-1+11
Комментарии0

EVM opcodes: перестанем бояться байт-кода

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров1.5K

Привет, Хабр! 

В этой статье я погружу вас подробнее в тему низкоуровневых машинных инструкций EVM. Будет описание, сколько стоят опкоды в единицах газа и где можно про это узнать. Еще посмотрим, как разбирать байткод на базе простого примера. Прежде чем читать эту статью, предлагаю вспомнить, что такое EVM и как она устроена, поэтому будет небольшое интро. Если же вы и так про это помните и знаете – то интро можно опустить:)

Поехали!
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Побитовые операции: для чего нужны основы информатики Solidity-разработчику

Время на прочтение10 мин
Количество просмотров2.9K

В этой статье я расскажу о том, как работают побитовые операции и зачем они нужны разработчикам смарт-контрактов. Например, без них не обойтись, если нужно оптимизировать расходы на газ, а иногда эти знания полезны для понимания того, что происходит в таком (оптимизированном) коде.

Но перед тем, как перейти к побитовым операциям, необходимо понять, что такое вообще бит и байт. Так что да, это та самая школьная информатика. Не могу сказать, что в своё время углублялся в эти темы с большим энтузиазмом, и предполагаю, что я такой не один.

В статье мы рассмотрим знаковые и беззнаковые числа, прямой, обратный и дополнительный код, логические вентили, а также базовые побитовые операции и как это применяется в написании смарт-контрактов.

Читать далее
Всего голосов 9: ↑10 и ↓-1+11
Комментарии2

Обзор блокчейна TRON

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров3.3K

Если хотите больше познакомиться со мной, как автором приглашаю в свой телеграмм канала - https://t.me/InfinityProductive

TRON (TRX)
- это не просто еще один блокчейн на рынке криптовалют. Это целая экосистема, направленная на децентрализацию цифрового контента. Созданный Джастином Саном в 2017 году, TRON превратился в настоящую фабрику децентрализованных приложений (DApps), которая работает круглосуточно и без перерывов.

С поглощением BitTorrent, TRON стал чем-то вроде сверхмагната контента, привлекая под свои знамена миллионы пользователей. И если это был бы сериал, то захват BitTorrent можно было бы назвать кульминационным моментом сезона.

В сети TRON токен TRX служит не просто валютой, но и билетом в мир где транзакции и смарт-контракты проходят без заминок. Это как VIP-пропуск в эксклюзивный клуб, где все токены (TRC-10, TRC-20 и другие) живут в гармонии.

Читать далее
Всего голосов 15: ↑3 и ↓12-9
Комментарии12

ethers.js – оптимизация запросов JSON-RPC

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров1.4K

ethers.js – TypeScript библиотека для доступа к EVM блокчейнам. Я использую ее в своих проектах, и другими авторами по ней уже написаны хорошие статьи на хабре (основы, отправка транзакций). В этой же статье хочу поделиться опытом оптимизации запросов ethers js при работе с различными облачными провайдерами JSON-RPC (Alchemy, Infura) и своей нодой. Расскажу о случаях, когда приложение может просто перестать работать, и что с этим делать. Приведу прикидки производительности.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии8

Цифровые подписи в Ethereum: как с ними работать?

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров1.3K

Всем привет! Что значит подписать сообщение? Что для этого нужно? В этой статье расскажу про механизм цифровых подписей в сети Ethereum: как работает, какие стандарты существуют и как их использовать.

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии4

Transient storage в EVM (EIP-1153): на грани добра и зла

Время на прочтение18 мин
Количество просмотров463

В одной из статей о расчете газа в Ethereum (ссылка) я рассказал об истории изменений механизмов подсчета газа для хранилища смарт-контракта (storage) — от правил, заложенных в протоколе изначально, до EIP-3529. Во всех этих изменениях прослеживается основная проблема: нерациональное использование газа, когда слот хранилища смарт-контракта изменяется в ходе транзакции и затем возвращается к исходному значению, например, при блокировке функции для защиты от атак reentrancy. Иными словами, в ситуациях, когда постоянное хранилище используется как временное, а также в случаях необходимости безопасной передачи данных между фреймами вызовов.

В этой статье рассмотрим нововведение хард-форка Dencun (Cancun-Deneb), где в рамках обновления слоя выполнения был представлен EIP-1153: Transient storage opcodes, предлагающий решение этой проблемы за счет введения двух новых опкодов (TSTORE, TLOAD) и создания нового типа памяти в EVM - transient storage.

Читать далее
Всего голосов 8: ↑8.5 и ↓-0.5+9
Комментарии0

Формальная верификация смарт-контрактов во фреймворке ConCert

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров793

Добрый день! Меня зовут Кирилл Зиборов, я представляю отдел безопасности распределенных систем Positive Technologies. В этой статье мы продолжим обсуждать методы и инструменты формальной верификации смарт-контрактов и их практическое применение для предотвращения уязвимостей. Мы подробно поговорим о методе дедуктивной верификации, а точнее, о фреймворке для тестирования и верификации смарт-контрактов — ConCert.

Под кат
Всего голосов 8: ↑8 и ↓0+8
Комментарии0

Upgradeable smart contracts. 5 способов обновить код смарт-контрактов на все случаи жизни

Уровень сложностиСредний
Время на прочтение24 мин
Количество просмотров1.4K

Рассказываем, зачем нужны обновляемые смарт-контракты, какие методы обновления существуют, а также делимся примерами кода реализации. Это может оказаться must have технологией на старте проекта, которая поможет спасти ваш код от уязвимостей и критических ошибок.

Читать далее
Всего голосов 11: ↑10 и ↓1+9
Комментарии1

Стейкинг NFT: как это работает?

Время на прочтение9 мин
Количество просмотров2.5K

Все знают про стейкинг обычных ERC-20 токенов. А что с ERC-721? Вокруг стейкинга NFT уже давно ходят противоречивые мнения, и мы решили разобраться в этом с точки зрения технологии. Поговорим о том, как это работает: как организовать на смарт-контрактах, как рассчитываются вознаграждения и какую пользу это может принести проектам и держателям NFT.

Добро пожаловать в технический гид по стейкингу NFT!

Читать далее
Всего голосов 18: ↑13 и ↓5+8
Комментарии9

Ближайшие события

One day offer от ВСК
Дата16 – 17 мая
Время09:00 – 18:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн
Антиконференция X5 Future Night
Дата30 мая
Время11:00 – 23:00
Место
Онлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область

Расчет количества газа необходимого для выполнения транзакции в Ethereum. Часть 2 — storage

Уровень сложностиСложный
Время на прочтение18 мин
Количество просмотров1.4K

Привет всем! В прошлой статье мы с вами изучили общую механику расчета газа при выполнении транзакций. В этой статье мы сфокусируемся на самых «дорогих» операциях работы с хранилищем смарт‑контракта (storage), а также пройдемся по истории EIPs, связанных с расчетом газа в Ethereum, чтобы увидеть, по каким принципам сообщество принимало решения об изменениях «правил игры» и как сегодня, на основе этой истории, правильно выполнять такие расчеты.

Статья для тех, кто хочет разобраться почему слоты в storage бывают теплыми и холодными, грязными или свежими и за что возвращают газ. Также затронем списки доступа и intrinsic gas. Наконец увидим полную картину учета газа от инициализации транзакции до ее выполнения.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии1

Как создать свой DAO с блэкджеком и OpenZeppelin?

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров747

Продолжаем тему DAO. Раннее мы уже разбирали саму концепцию, а теперь пора делать своё решение!

Разберём по косточкам смарт-контракты короля Web3 библиотек — OpenZeppelin. Они прошли всевозможные аудиты и считаются эталоном безопасности. Умение использовать governance смарт-контракты от OpenZeppelin пригодится на реальных проектах.

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Комментарии0

Обзор Polygon zkEVM: как работает L2 решение для Ethereum

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров1.3K

Привет, Хабр! Меня зовут Леша Куценко, я разработчик смарт-контрактов в команде MetaLamp, мой основной стек – Solidity. В этой статье я подробнее расскажу про решение для масштабирования с нулевым разглашением (Zero-knowledge proof), а именно – о блокчейне второго уровня Polygon zkEVM. Как блокчейн решает проблему высокой стоимости газа в транзакциях и использует другие преимущества ZK-Rollups? Ответы на эти и другие вопросы в этой статье. 

Для более детального понимания Zero-Knowledge Proofs (ZKP), рекомендую обратиться к этой статье в нашей Blockchain-Wiki на Гитхабе.

Погнали!:)

Читать далее
Всего голосов 15: ↑14 и ↓1+13
Комментарии2

Web3 приложение Twitter на React.js + Solidity | часть 2

Уровень сложностиПростой
Время на прочтение21 мин
Количество просмотров2.3K

Hello, в первой части был подготовлен проект, подключены кошельки и написан backend на Solidity, значит пришло время писать frontend на React.

Проект далёк от продакшена и является простым примером для новичков, предназначенным для демонстрации взаимодействия с смарт‑контрактом через веб‑приложение.

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии1

Расчет количества газа необходимого для выполнения транзакции в Ethereum

Уровень сложностиСложный
Время на прочтение17 мин
Количество просмотров2.4K

Привет, Хабр! Продолжаю серию статей о газе в Ethereum. ​​В этой статье подробно разберем составляющие параметра gasUsed , без которого невозможно подсчитать стоимость транзакции. Будем разбирать формулы из "желтой бумаги" и копаться в коде клиента "Geth". Это даст основу для понимания, как газ потребляется во время исполнения любой транзакции. Если вы еще не читали статью про то, как рассчитывается комиссия за газ в Ethereum, то она здесь.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии0

Web3 приложение Twitter на React.js + Solidity | часть 1

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров5K

Hello, в этой статье постараюсь подробно показать процесс создания dApp приложения на примере Twitter. Проект написан на ReactJS и Solidity. Контракт развернут в частной сети с помощью truffle и ganache.

В первой части мы подготовим проект, напишем смарт-контракт и развернем его в частной сети, а также подключим кошельки в MetaMask.

Во второй части будет написано web-приложение для взаимодействия с контрактом.

Читать далее
Всего голосов 7: ↑5 и ↓2+3
Комментарии4

Что такое DAO?

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров5.9K

Если вы что-то слышали о концепции организации без большого босса, где анонимный владелец нескольких токенов может влиять на будущее компании — это скорее всего про DAO. В этой статье ты узнаешь, что такое децентрализованные автономные организации (DAO), как вообще возможно их существование и успешные примеры реализации.

Читать далее
Всего голосов 24: ↑23 и ↓1+22
Комментарии10
1
23 ...