Работа с оракулами Chainlink
Увидел в твиттере пост gmhacker.eth, который поделился ссылкой на репо LiquidityProtocol.
Примечательно то, как они прописали события исполнения кода в зависимости от работы оракула:
1. Когда система получает данные о цене от Chainlink;
2. Когда система получает данные от другого оракула;
3. Когда оба оракула не заслуживают доверия;
4. Использование другого оракула, когда Chainlink заморожен;
5. Использование Chainlink, когда нет доверия другому оракулу;
На мой взгляд, действительно интересный подход к разнообразным кейсам при работе с оракулами, достойный для примера.
Рекомендую всем обратиться к первоисточнику и изучить контракт!
https://github.com/liquity/dev/blob/main/packages/contracts/contracts/PriceFeed.sol
А как вы работаете с оракулами?
#oracle #chainlink
Увидел в твиттере пост gmhacker.eth, который поделился ссылкой на репо LiquidityProtocol.
Примечательно то, как они прописали события исполнения кода в зависимости от работы оракула:
1. Когда система получает данные о цене от Chainlink;
2. Когда система получает данные от другого оракула;
3. Когда оба оракула не заслуживают доверия;
4. Использование другого оракула, когда Chainlink заморожен;
5. Использование Chainlink, когда нет доверия другому оракулу;
На мой взгляд, действительно интересный подход к разнообразным кейсам при работе с оракулами, достойный для примера.
Рекомендую всем обратиться к первоисточнику и изучить контракт!
https://github.com/liquity/dev/blob/main/packages/contracts/contracts/PriceFeed.sol
А как вы работаете с оракулами?
#oracle #chainlink
Проблемы с Древом Меркла
Ранее в этом году я выкладывал небольшой пост со ссылкой на ветку в Твиттере, в которой разбиралась уязвимость Древа Меркла в библиотеке от Open Zeppelin.
Чуть позже в одном из чатов видел дискуссию о комментарии в этом же контракте:
You should avoid using leaf values that are 64 bytes long prior to hashing, or use a hash function other than keccak256 for hashing leaves.
И вот только сейчас встретил статью, которая помогла многие вещи поставить на место. В ней рассказывается об second preimage attack и почему разработчики должны избегать хеширования листьев древа в 64 байта. Более того, в статье показываются способы, как избежать этой проблемы.
Сначала я хотел написать краткий пост с основными тезисами из статьи, но понял, что будет проще ее всю загнать в переводчик (для тех, кто не знает английский язык) и просмотреть лично, так как там много скринов и описаний, которые будет сложно понять в отрыве от самой статьи.
Поэтому рекомендую каждому ее прочитать от и до:
https://www.rareskills.io/post/merkle-tree-second-preimage-attack
Ну, а если вы, как и я, зададитесь вопросом, почему это SECOND preimage attack, а где же FIRST, то вот эта статья поможет ответить на вопрос.
Надеюсь, вопросов по Древу Меркла у вас стало теперь меньше.
#merkletree #merkle
Ранее в этом году я выкладывал небольшой пост со ссылкой на ветку в Твиттере, в которой разбиралась уязвимость Древа Меркла в библиотеке от Open Zeppelin.
Чуть позже в одном из чатов видел дискуссию о комментарии в этом же контракте:
You should avoid using leaf values that are 64 bytes long prior to hashing, or use a hash function other than keccak256 for hashing leaves.
И вот только сейчас встретил статью, которая помогла многие вещи поставить на место. В ней рассказывается об second preimage attack и почему разработчики должны избегать хеширования листьев древа в 64 байта. Более того, в статье показываются способы, как избежать этой проблемы.
Сначала я хотел написать краткий пост с основными тезисами из статьи, но понял, что будет проще ее всю загнать в переводчик (для тех, кто не знает английский язык) и просмотреть лично, так как там много скринов и описаний, которые будет сложно понять в отрыве от самой статьи.
Поэтому рекомендую каждому ее прочитать от и до:
https://www.rareskills.io/post/merkle-tree-second-preimage-attack
Ну, а если вы, как и я, зададитесь вопросом, почему это SECOND preimage attack, а где же FIRST, то вот эта статья поможет ответить на вопрос.
Надеюсь, вопросов по Древу Меркла у вас стало теперь меньше.
#merkletree #merkle
🔥4❤1
Подключение WSL для Windows
В последнее время у меня появилась необходимость работы с некоторыми программами, которые не работают на Windows и требуются либо Mac, либо Linux. Поэтому я решил попробовать установить WSL на свой компьютер, описать процесс и возникшие сложности.
Подсистема Windows для Linux (WSL) позволяет разработчикам запускать среду GNU/Linux с большинством программ командной строки, служебных программ и приложений непосредственно в Windows без каких-либо изменений и необходимости использовать традиционную виртуальную машину или двойную загрузку.
Простыми словами - это виртуалка Linux на Windows. Вот тут можно узнать об этом чуть больше:
https://learn.microsoft.com/ru-ru/windows/wsl/about
А по этому описанию мы и будем производить установку:
https://learn.microsoft.com/ru-ru/windows/wsl/install
Вообще, все должно происходить просто и быстро, но у меня уже на первых шагах появились некоторые трудности.
При попытке выполнить команду wsl --install в терминале, у меня возникла ошибка 0xc004000d. Немного погуглив, я нашел ее решение.
Вам нужно зайти в панель управление в Windows (обратите внимание, не Параметры, а именно Панель управления), дальше идем в раздел Программы и кликаем на пункт Включение и отключение компонентов Windows. Появится новое окошко и там нужно поставить флажок на пункте Подсистема Windows для Linux. Затем перезагружаем компьютер.
Теперь можно выполнить необходимую команду.
Но и тут могут возникнуть трудности. Терминал вам может показать список вообще всех доступных команд, вместо того чтобы начать установку. В этом случае необходимо чуть модифицировать команду до:
wsl --install -d Ubuntu 2
После этого возможна еще одна перезагрузка компьютера или же откроется окно Ubuntu и система попросит вас придумать имя и пароль.
Теперь в нашем терминале будет доступен еще один вид Ubuntu. Его можно найти, если нажать на небольшую стрелочку "вниз" рядом со вкладкой терминала.
Дальше можно настроить совместимость нашего редактора кода - VS Code.
Запускаем редактор, открываем раздел плаггинов и ищем Remote Development от Microsoft. Это пакет из 4 приложений, так что устанавливаем их все.
После установки плаггина в левом нижнем углу редактора появится синяя кнопка со стрелками в разные стороны. Если кликнуть по ней, то откроется окошко, где в параметрах можно выбрать подключение к WSL.
Вероятнее всего, после запуска вашего редактора кода в WSL, вам потребуется переустановить плаггины для работы с Solidity.
Как я понял, WLS установит вам на компьютер чистую Linux систему, другими словами у вас не будет доступа к своим папкам на Windows и нужно будет необходимые файлы и папки переносить вручную.
Рекомендую в терминале создать отдельную папку Development / Audits, чтобы самому не потеряться позже.
Это делается с помощью команд:
mkdir Audits
cd Audits/
Также, есть вероятность, что потребуется заново установить и настроить git, python, Node.js, npm, yarn и другие программы, которыми вы пользовались на Windows.
Хочу обратить ваше внимание на то, что есть две версии WSL и WSL2.
Не могу сейчас сказать, в чем там разница, но в моем случае возникали проблемы при обновлении Node.js и npm с первой версией WSL.
Также уточню, что вам желательно иметь уже некий опыт работы с Linux системами, иначе настройка всех пакетов в WSL может вызвать у вас большие трудности.
#wsl
В последнее время у меня появилась необходимость работы с некоторыми программами, которые не работают на Windows и требуются либо Mac, либо Linux. Поэтому я решил попробовать установить WSL на свой компьютер, описать процесс и возникшие сложности.
Подсистема Windows для Linux (WSL) позволяет разработчикам запускать среду GNU/Linux с большинством программ командной строки, служебных программ и приложений непосредственно в Windows без каких-либо изменений и необходимости использовать традиционную виртуальную машину или двойную загрузку.
Простыми словами - это виртуалка Linux на Windows. Вот тут можно узнать об этом чуть больше:
https://learn.microsoft.com/ru-ru/windows/wsl/about
А по этому описанию мы и будем производить установку:
https://learn.microsoft.com/ru-ru/windows/wsl/install
Вообще, все должно происходить просто и быстро, но у меня уже на первых шагах появились некоторые трудности.
При попытке выполнить команду wsl --install в терминале, у меня возникла ошибка 0xc004000d. Немного погуглив, я нашел ее решение.
Вам нужно зайти в панель управление в Windows (обратите внимание, не Параметры, а именно Панель управления), дальше идем в раздел Программы и кликаем на пункт Включение и отключение компонентов Windows. Появится новое окошко и там нужно поставить флажок на пункте Подсистема Windows для Linux. Затем перезагружаем компьютер.
Теперь можно выполнить необходимую команду.
Но и тут могут возникнуть трудности. Терминал вам может показать список вообще всех доступных команд, вместо того чтобы начать установку. В этом случае необходимо чуть модифицировать команду до:
wsl --install -d Ubuntu 2
После этого возможна еще одна перезагрузка компьютера или же откроется окно Ubuntu и система попросит вас придумать имя и пароль.
Теперь в нашем терминале будет доступен еще один вид Ubuntu. Его можно найти, если нажать на небольшую стрелочку "вниз" рядом со вкладкой терминала.
Дальше можно настроить совместимость нашего редактора кода - VS Code.
Запускаем редактор, открываем раздел плаггинов и ищем Remote Development от Microsoft. Это пакет из 4 приложений, так что устанавливаем их все.
После установки плаггина в левом нижнем углу редактора появится синяя кнопка со стрелками в разные стороны. Если кликнуть по ней, то откроется окошко, где в параметрах можно выбрать подключение к WSL.
Вероятнее всего, после запуска вашего редактора кода в WSL, вам потребуется переустановить плаггины для работы с Solidity.
Как я понял, WLS установит вам на компьютер чистую Linux систему, другими словами у вас не будет доступа к своим папкам на Windows и нужно будет необходимые файлы и папки переносить вручную.
Рекомендую в терминале создать отдельную папку Development / Audits, чтобы самому не потеряться позже.
Это делается с помощью команд:
mkdir Audits
cd Audits/
Также, есть вероятность, что потребуется заново установить и настроить git, python, Node.js, npm, yarn и другие программы, которыми вы пользовались на Windows.
Хочу обратить ваше внимание на то, что есть две версии WSL и WSL2.
Не могу сейчас сказать, в чем там разница, но в моем случае возникали проблемы при обновлении Node.js и npm с первой версией WSL.
Также уточню, что вам желательно иметь уже некий опыт работы с Linux системами, иначе настройка всех пакетов в WSL может вызвать у вас большие трудности.
#wsl
👍1
Курс по безопасности от Патрика Коллинса
Если вы не в курсе, то Патрик Коллинс (тот кто создал 32 часовой курс по Solidity и 27 часовой по Foundry), планирует запустить платформу для обучения всем необходимым навыкам по web3 - Cyfrin Updraft.
На данный момент доступ получают только по предварительной записи в порядке очереди. Но...
Они решили открыть один курс для общего доступа без всяких кодов.
Этот курс по Безопасности и аудиту. Рассчитан на 27 часов. Как я понял, сейчас это "звездный" курс для привлечения внимания от популярных деятелей в сфере аудита: Tincho, Owen Thrum, Andi Li, Johny Time, Pashov и других.
Каждый урок занимает 5 - 15 минут. Можно проходить в своем темпе. Уверен, это достойное занятие для себя до конца года.
Пройти курс можно тут:
https://updraft.cyfrin.io/courses/security
Будет интересно узнать ваше мнение об этом.
#updraft
Если вы не в курсе, то Патрик Коллинс (тот кто создал 32 часовой курс по Solidity и 27 часовой по Foundry), планирует запустить платформу для обучения всем необходимым навыкам по web3 - Cyfrin Updraft.
На данный момент доступ получают только по предварительной записи в порядке очереди. Но...
Они решили открыть один курс для общего доступа без всяких кодов.
Этот курс по Безопасности и аудиту. Рассчитан на 27 часов. Как я понял, сейчас это "звездный" курс для привлечения внимания от популярных деятелей в сфере аудита: Tincho, Owen Thrum, Andi Li, Johny Time, Pashov и других.
Каждый урок занимает 5 - 15 минут. Можно проходить в своем темпе. Уверен, это достойное занятие для себя до конца года.
Пройти курс можно тут:
https://updraft.cyfrin.io/courses/security
Будет интересно узнать ваше мнение об этом.
#updraft
🔥11👍1
Тесты с хуками для V4
Небольшой пост - заметка.
Как вы знаете в Uniswap V4 появились так называемые хуки.
И недавно компания начала работать с тестовой сетью Conduit, с помощью которой можно попробовать поработать с хуками и посмотреть как они исполняются.
Я сам еще не экспериментировал с "песочницей", поэтому просто оставляю ссылку на документацию:
https://docs.uniswapfoundation.org/overview/conduit-testnet
Мало ли кому будет интересно поразбирать хуки на новогодних праздниках.
#v4 #unswap #hooks
Небольшой пост - заметка.
Как вы знаете в Uniswap V4 появились так называемые хуки.
И недавно компания начала работать с тестовой сетью Conduit, с помощью которой можно попробовать поработать с хуками и посмотреть как они исполняются.
Я сам еще не экспериментировал с "песочницей", поэтому просто оставляю ссылку на документацию:
https://docs.uniswapfoundation.org/overview/conduit-testnet
Мало ли кому будет интересно поразбирать хуки на новогодних праздниках.
#v4 #unswap #hooks
👍1
Ethereum Yellow Paper Course
Как мы знаем, одним из основополагающих документов блокчейна Эфириум является его Yellow Papers. Будем честны, мало кто из разработчиков осиливает его, да и вообще читал "от и до" хотя бы раз.
А тут на Ютуб недавно наткнулся на небольшой трехчасовой курс по этим Желтым страницам. Да, он на английском языке, но и сам документ также на английском. Думаю, многим он будет полезен и придется кстати.
Тут еще хочу уточнить, что данный курс, по моему мнению, нужно смотреть после первого знакомства с Solidity и ваших первых простых смарт контрактов. Так, да, можно, конечно, просмотреть курс, но он мало что будет понятно в аспекте работы с кодом.
До Нового года осталось только две недели, и, по сути, неделя, когда мы еще готовы работать и учиться. Не теряйте это время даром!
Посмотрите небольшой курс в свободное время:
https://youtu.be/e84V1MxRlYs
Полчаса в день и к концу недели вы справитесь с ним!
#yellowpapers #yellow #course
Как мы знаем, одним из основополагающих документов блокчейна Эфириум является его Yellow Papers. Будем честны, мало кто из разработчиков осиливает его, да и вообще читал "от и до" хотя бы раз.
А тут на Ютуб недавно наткнулся на небольшой трехчасовой курс по этим Желтым страницам. Да, он на английском языке, но и сам документ также на английском. Думаю, многим он будет полезен и придется кстати.
Тут еще хочу уточнить, что данный курс, по моему мнению, нужно смотреть после первого знакомства с Solidity и ваших первых простых смарт контрактов. Так, да, можно, конечно, просмотреть курс, но он мало что будет понятно в аспекте работы с кодом.
До Нового года осталось только две недели, и, по сути, неделя, когда мы еще готовы работать и учиться. Не теряйте это время даром!
Посмотрите небольшой курс в свободное время:
https://youtu.be/e84V1MxRlYs
Полчаса в день и к концу недели вы справитесь с ним!
#yellowpapers #yellow #course
👍9❤1
С нуля до PRO в ZK
Пока идет распродажа предыдущих модулей курса, делюсь подборкой материалов от крутого аудитора Hickup.
Да, ее выложили еще до того аудита-миллионика, но все руки никак не доходили просмотреть. Здесь Hickup выложил свой путь, по которому он учился этой технологии.
Надо сказать, что он аудитор опытный и материал соответственно тоже, поэтому гайд подойдет скорее для тех, кто уже хорошо знаком с роллапами и L2 сетями, т.е. для продвинутых пользователей.
Если же вы совсем новичок, но очень хотите изучить эту тему, то начните с канала Ильи, в частности посмотрите те уроки, в которых говорится про роллапы и zero knowledge.
А уже потом обратитесь к подборке Hickup:
https://sunrise-clerk-234.notion.site/Hickup-s-ZK-Journey-affa9ce9cdf44a33b3549c37f908521a
Вообще здорово, что крутые разработчики и аудиторы за рубежом делятся своими подборками и помогают новичкам с "фильтрацией" достойных ресурсов и материалов.
#zk #hickup
Пока идет распродажа предыдущих модулей курса, делюсь подборкой материалов от крутого аудитора Hickup.
Да, ее выложили еще до того аудита-миллионика, но все руки никак не доходили просмотреть. Здесь Hickup выложил свой путь, по которому он учился этой технологии.
Надо сказать, что он аудитор опытный и материал соответственно тоже, поэтому гайд подойдет скорее для тех, кто уже хорошо знаком с роллапами и L2 сетями, т.е. для продвинутых пользователей.
Если же вы совсем новичок, но очень хотите изучить эту тему, то начните с канала Ильи, в частности посмотрите те уроки, в которых говорится про роллапы и zero knowledge.
А уже потом обратитесь к подборке Hickup:
https://sunrise-clerk-234.notion.site/Hickup-s-ZK-Journey-affa9ce9cdf44a33b3549c37f908521a
Вообще здорово, что крутые разработчики и аудиторы за рубежом делятся своими подборками и помогают новичкам с "фильтрацией" достойных ресурсов и материалов.
#zk #hickup
❤3
Foundry Cheatsheet от MiloTruck
Если вы не в курсе, MiloTruck стал лучшим аудитором на площадке code4rena в этом году, заработав на конкурсах 160К!
Как я понял из обсуждений в Твиттере, он для себя сделал небольшой файл-помощник по работе с Foundry, где в удобном формате расписал популярные команды и сниппеты кода для более быстрого написания тестов.
Мне, как человеку, который последние пару месяцев прям задрачивал с написание тестов и вообще этой темой, очень зашел этот Cheatsheet.
Вы можете открыть его в отдельном окошке и подглядывать при написании своих тестов:
https://milotruck.github.io/blog/Foundry-Cheatsheet/
P.S. Вы также можете скопировать его к себе, постепенно дополняя или обновляя информацию в нем.
#foundry #test #cheatsheet
Если вы не в курсе, MiloTruck стал лучшим аудитором на площадке code4rena в этом году, заработав на конкурсах 160К!
Как я понял из обсуждений в Твиттере, он для себя сделал небольшой файл-помощник по работе с Foundry, где в удобном формате расписал популярные команды и сниппеты кода для более быстрого написания тестов.
Мне, как человеку, который последние пару месяцев прям задрачивал с написание тестов и вообще этой темой, очень зашел этот Cheatsheet.
Вы можете открыть его в отдельном окошке и подглядывать при написании своих тестов:
https://milotruck.github.io/blog/Foundry-Cheatsheet/
P.S. Вы также можете скопировать его к себе, постепенно дополняя или обновляя информацию в нем.
#foundry #test #cheatsheet
❤🔥7👍2
Где следить за новостями?
Сегодня хочу поделиться своими ресурсами, которые позволяют мне следить за последними новостями в сфере разработки, тестировани, да и в целом, миром крипты (за исключением котировок, торгов, аирдропов и остальной ереси).
Начнем с наших Телеграм каналов, где вы можете задавать вопросы и общаться:
1. Ethereum Ru
2. Solidity DEV (Ethereum)
3. DEV: Рубиновые тона: ЧАТ
4. Learn solidity audit - для аудиторов
Каналы на английском языке:
1. Solodit | Auditors
2. Daily Security Web3
3. DEFI Scam Check
4. Kotya security
5. Rektoff
6. rekt.news Newsflash
7. Web3 Security as a Business
Дискорд каналы:
1. Code4rena
2. Cyfrin (от Патрика Коллинса)
3. Guardian Audits (от Owne Thum)
4. Immunefi
5. Secureum
6. Open Sence
В Дискорд каналах можно не только следить за новыми конкурсными аудитами и общаться с другими пользователями, но и получать ссылки на крутые обучающие статьи, задавать вопросы по тестам и коду, а также следить за стримами, куда приглашают видных деятелей сферы. Всем рекомендую скачать и присоединиться к этим серверам.
Ну, и, конечно, Твиттер! Так сложилось, что сообщество разработчиков и аудиторов собралось в Твиттере и все самые последние новости проходят сначала там, а уже потом разлетаются по Телеграм каналам, дискордам и другим сетям. Каждому современному web3 специалисту нужно быть там.
Для начала мой канал:
1. RightNowIn
Не спрашивайте, почему такое название... Так сложилось исторически...
И другие каналы:
1. Akshay Srivastav
2. Vlad B.
3. Dimitar Tsvetanov
4. Koolex
5. DadeKuma
6. MiloTruck
7. Alex the Entreprenerd
8. btk
9. Kristian Apostolov
10. HE1M
11. 0xladboy
12. HickupHH3
13. Chinmay Farkya
14. 0x52
15. bytes032.xyz
16. Faith
17. patrickd
18. zzykxx
19. Trust
20. afeli.eth
21. WINTΞR
22. philogy
23. WATCHPUG
24. 0xrudra
25. Samrat Gupta
26. Christoph Michel
27. Officer's Notes
28. samczsun
29. Gerard Persoon
30. peakbolt
Компании
1. Chainlink
2. Trail of Bits
3. OpenZeppelin
4. Uniswap Labs
5. Hardhat
6. Code4rena
7. Alchemy | The web3 developer platform
8. Etherscan
9. Immunefi
10. rekt
11. Paradigm CTF
12. QuillAudits
13. RareSkills
Если у вас есть кто-то еще на примете, буду рад увидеть рекомендации в комментариях!
#twitter #discord #telegram
Сегодня хочу поделиться своими ресурсами, которые позволяют мне следить за последними новостями в сфере разработки, тестировани, да и в целом, миром крипты (за исключением котировок, торгов, аирдропов и остальной ереси).
Начнем с наших Телеграм каналов, где вы можете задавать вопросы и общаться:
1. Ethereum Ru
2. Solidity DEV (Ethereum)
3. DEV: Рубиновые тона: ЧАТ
4. Learn solidity audit - для аудиторов
Каналы на английском языке:
1. Solodit | Auditors
2. Daily Security Web3
3. DEFI Scam Check
4. Kotya security
5. Rektoff
6. rekt.news Newsflash
7. Web3 Security as a Business
Дискорд каналы:
1. Code4rena
2. Cyfrin (от Патрика Коллинса)
3. Guardian Audits (от Owne Thum)
4. Immunefi
5. Secureum
6. Open Sence
В Дискорд каналах можно не только следить за новыми конкурсными аудитами и общаться с другими пользователями, но и получать ссылки на крутые обучающие статьи, задавать вопросы по тестам и коду, а также следить за стримами, куда приглашают видных деятелей сферы. Всем рекомендую скачать и присоединиться к этим серверам.
Ну, и, конечно, Твиттер! Так сложилось, что сообщество разработчиков и аудиторов собралось в Твиттере и все самые последние новости проходят сначала там, а уже потом разлетаются по Телеграм каналам, дискордам и другим сетям. Каждому современному web3 специалисту нужно быть там.
Для начала мой канал:
1. RightNowIn
Не спрашивайте, почему такое название... Так сложилось исторически...
И другие каналы:
1. Akshay Srivastav
2. Vlad B.
3. Dimitar Tsvetanov
4. Koolex
5. DadeKuma
6. MiloTruck
7. Alex the Entreprenerd
8. btk
9. Kristian Apostolov
10. HE1M
11. 0xladboy
12. HickupHH3
13. Chinmay Farkya
14. 0x52
15. bytes032.xyz
16. Faith
17. patrickd
18. zzykxx
19. Trust
20. afeli.eth
21. WINTΞR
22. philogy
23. WATCHPUG
24. 0xrudra
25. Samrat Gupta
26. Christoph Michel
27. Officer's Notes
28. samczsun
29. Gerard Persoon
30. peakbolt
Компании
1. Chainlink
2. Trail of Bits
3. OpenZeppelin
4. Uniswap Labs
5. Hardhat
6. Code4rena
7. Alchemy | The web3 developer platform
8. Etherscan
9. Immunefi
10. rekt
11. Paradigm CTF
12. QuillAudits
13. RareSkills
Если у вас есть кто-то еще на примете, буду рад увидеть рекомендации в комментариях!
#twitter #discord #telegram
👍15❤1
Последний пост этого года
С понедельника я ухожу в отпуск на две недели, поэтому время немного порефлексировать о прошедшем годе.
Если говорить кратко:
1. На канале вышло более 970 постов;
2. За год количество участников +800!
3. Был запущен наш мини курс для начинающих;
4. Проведены 3 модуля курса;
5. Модуль 4 выйдет уже в следующем месяце;
6. Написан крутой цикл из 39 постов по Foundry;
7. Я изучил несколько дополнительных программ для проведения тестов;
8. Принял участие в 10+ конкурсных аудитах (полноценно и 30+ изучая код);
9. Нашел 5 high и 15 med в конкурсах;
10. Провел 4 соло аудита, в которых нашел 10 high и 30+ med проблем;
11. Дал 15 консультаций о том, как начать карьеру в web3;
12. Прошел отбор и стажировался в Pessimistic;
Это был год огромной ежедневной работы и обучения. И, что самое главное, еще учиться и учиться в следующем году.
Вообще, у мои планы входит:
По курсу и модулям:
1. Провести 4 модуль курса;
2. Если будет достаточное количество желающих, провести и 5 модуль.
3. Если будет достаточное количество желающих, повторить курс с 1 модуля;
По Телеграм каналу:
1. Написать цикл постов про опкоды и assembly;
2. Написать цикл постов про математику в Defi;
По аудиту и конкурсам:
1. Больше времени уделять конкурсным аудитам;
2. Пробиться в топ 50 на code4rena за год;
3. Провести 10+ соло аудитов;
По проектам:
1. Запустить, наконец, проект по тестам на зарубежный рынок;
За год я понял, что web3 - это не определенный набор программ и языков, выучив которые вы сможете свободно работать в любой компании, а скорее процесс движения вместе со всей сферой.
Если хотите вступить на этот путь, будьте готовы постоянно учиться. И учится много!
Вообще, на определенном этапе вы сами поймете, чем хотите заниматься больше:
1. Писать смарт контракты и различные протоколы;
2. Проводить аудит и стать белым хакером;
3. Уйти в тестирование;
4. Разбирать взломы и отслеживать транзакции в разных сетях;
5. Заниматься узлами и стать валидатором;
Все это направления, которые каждый выбирает для себя после первых уроков с EVM и Solidity.
Сложно? Да. Интересно? Еще бы! Прибыльно? Определенно!
Однажды мы сделали правильный выбор!
Желаю вам всем успехов в профессиональной среде в новом году!
С Наступающим!
#last2023
С понедельника я ухожу в отпуск на две недели, поэтому время немного порефлексировать о прошедшем годе.
Если говорить кратко:
1. На канале вышло более 970 постов;
2. За год количество участников +800!
3. Был запущен наш мини курс для начинающих;
4. Проведены 3 модуля курса;
5. Модуль 4 выйдет уже в следующем месяце;
6. Написан крутой цикл из 39 постов по Foundry;
7. Я изучил несколько дополнительных программ для проведения тестов;
8. Принял участие в 10+ конкурсных аудитах (полноценно и 30+ изучая код);
9. Нашел 5 high и 15 med в конкурсах;
10. Провел 4 соло аудита, в которых нашел 10 high и 30+ med проблем;
11. Дал 15 консультаций о том, как начать карьеру в web3;
12. Прошел отбор и стажировался в Pessimistic;
Это был год огромной ежедневной работы и обучения. И, что самое главное, еще учиться и учиться в следующем году.
Вообще, у мои планы входит:
По курсу и модулям:
1. Провести 4 модуль курса;
2. Если будет достаточное количество желающих, провести и 5 модуль.
3. Если будет достаточное количество желающих, повторить курс с 1 модуля;
По Телеграм каналу:
1. Написать цикл постов про опкоды и assembly;
2. Написать цикл постов про математику в Defi;
По аудиту и конкурсам:
1. Больше времени уделять конкурсным аудитам;
2. Пробиться в топ 50 на code4rena за год;
3. Провести 10+ соло аудитов;
По проектам:
1. Запустить, наконец, проект по тестам на зарубежный рынок;
За год я понял, что web3 - это не определенный набор программ и языков, выучив которые вы сможете свободно работать в любой компании, а скорее процесс движения вместе со всей сферой.
Если хотите вступить на этот путь, будьте готовы постоянно учиться. И учится много!
Вообще, на определенном этапе вы сами поймете, чем хотите заниматься больше:
1. Писать смарт контракты и различные протоколы;
2. Проводить аудит и стать белым хакером;
3. Уйти в тестирование;
4. Разбирать взломы и отслеживать транзакции в разных сетях;
5. Заниматься узлами и стать валидатором;
Все это направления, которые каждый выбирает для себя после первых уроков с EVM и Solidity.
Сложно? Да. Интересно? Еще бы! Прибыльно? Определенно!
Однажды мы сделали правильный выбор!
Желаю вам всем успехов в профессиональной среде в новом году!
С Наступающим!
#last2023
🔥34❤7👍6❤🔥1
Медленно, но верно, возвращаемся к работе
Фух, надеюсь ваши праздники прошли также хорошо, как и мои. Голова пустая, мозг способен воспринимать новую информацию и, что самое главное, есть желание вернутся к работе!
Так, чем займемся в январе?
Для начала все силы будут брошены на создание 4 модуля курса, чтобы его можно было запустить уже в ближайшее время.
Также будут выходить общетематические посты на различные темы в web3: язык, ноды, сети и т.д. Крупный цикл постов про математику в DeFi думаю начать в феврале, когда уже все войдут в привычный рабочий ритм.
Более того, тема с тестами никуда не денется. Сейчас я вкладываю основные усилия в нее, поэтому будут посты с секретами и подсказками о том, как писать тесты с максимальной эффективностью.
Для тех, кто хотел попробовать участие в конкурсных аудитах, есть прекрасная возможность посетить онлайн встречу команды Code4rena: Getting started with c4, которая пройдет в этот четверг в 22:00 по мск.
Вот ссылка: https://discord.com/events/810916927919620096/1193677104433348728
Там будут рассказывать, как начать свой путь на с4, как писать репорты, где подучиться и какие правила действуют на площадке.
Кстати, это прекрасный повод, наконец, зарегистрироваться в Дискорде.
P.S. может создать небольшую рабочую группу для начинающих на с4 и в конкурсных аудитах и на живом примере провести вас, как все там устроено?
Ну, а пока, настраиваемся на рабочий ритм, вспоминаем, как открывать VS Code и, что такое конструктор в контракте.
Всем приятного старта недели и легкого обучения!
#first2024
Фух, надеюсь ваши праздники прошли также хорошо, как и мои. Голова пустая, мозг способен воспринимать новую информацию и, что самое главное, есть желание вернутся к работе!
Так, чем займемся в январе?
Для начала все силы будут брошены на создание 4 модуля курса, чтобы его можно было запустить уже в ближайшее время.
Также будут выходить общетематические посты на различные темы в web3: язык, ноды, сети и т.д. Крупный цикл постов про математику в DeFi думаю начать в феврале, когда уже все войдут в привычный рабочий ритм.
Более того, тема с тестами никуда не денется. Сейчас я вкладываю основные усилия в нее, поэтому будут посты с секретами и подсказками о том, как писать тесты с максимальной эффективностью.
Для тех, кто хотел попробовать участие в конкурсных аудитах, есть прекрасная возможность посетить онлайн встречу команды Code4rena: Getting started with c4, которая пройдет в этот четверг в 22:00 по мск.
Вот ссылка: https://discord.com/events/810916927919620096/1193677104433348728
Там будут рассказывать, как начать свой путь на с4, как писать репорты, где подучиться и какие правила действуют на площадке.
Кстати, это прекрасный повод, наконец, зарегистрироваться в Дискорде.
P.S. может создать небольшую рабочую группу для начинающих на с4 и в конкурсных аудитах и на живом примере провести вас, как все там устроено?
Ну, а пока, настраиваемся на рабочий ритм, вспоминаем, как открывать VS Code и, что такое конструктор в контракте.
Всем приятного старта недели и легкого обучения!
#first2024
🔥18❤2👍1
Временная группа для начинающих конкурсные аудиты?
Слушайте, а кто хотел попробовать себя в конкурсных аудитах в этом году? Знаю, порой бывает сложно начать и разобраться в системе платформ, поэтому старт всегда откладывается.
Хотите соберем небольшую группу на ближайший конкурсный аудит?
Я просто расскажу, как подготовить проект, на что обратить внимание в описании, как делать репорт и другие общие вопросы. Без разбора кода или лайф-аудита.
Просто - как начать.
Подойдёт для тех, кто уже знает Solidity, умеет писать код и смотрел некоторые видео по аудиту и безопасности.
Кто хочет попробовать? Пройдите опрос ниже)
Слушайте, а кто хотел попробовать себя в конкурсных аудитах в этом году? Знаю, порой бывает сложно начать и разобраться в системе платформ, поэтому старт всегда откладывается.
Хотите соберем небольшую группу на ближайший конкурсный аудит?
Я просто расскажу, как подготовить проект, на что обратить внимание в описании, как делать репорт и другие общие вопросы. Без разбора кода или лайф-аудита.
Просто - как начать.
Подойдёт для тех, кто уже знает Solidity, умеет писать код и смотрел некоторые видео по аудиту и безопасности.
Кто хочет попробовать? Пройдите опрос ниже)
🔥13👍1
Соберем группу для начинающих в конкурсные аудиты?
Final Results
81%
Да, я готов присоединиться
19%
Может позже
❤1
🔥 Круто! 35 желающих за 15 минут) не думал, что тема такая востребованная)
Думаю, тогда завтра уже и начнем) как раз пара конкурсов идет на разных площадках)
Думаю, тогда завтра уже и начнем) как раз пара конкурсов идет на разных площадках)
❤15
Группа для начинающих в конкурсных аудитах
Офигеть! Не ожидал такого спроса от участников начать свой путь в конкурсных аудитах! 79 человек за ночь!
Открыл для вас чат-группу, где буду выкладывать гайды по площадкам. Будем разбирать по 1 платформе в день.
Сегодня начнем с Code4rena. Присоединяйтесь!
https://news.1rj.ru/str/+P7lY7zRXSEFmYjk6
Чат будет не постоянным, через пару недель, как стихнет активность, он будет закрыт.
Если вам понравится это дело, вы не забросите конкурсы и получите первые награды за свои находки, то добавим вас в наш чат профессиональных аудиторов.
#chat #audit
Офигеть! Не ожидал такого спроса от участников начать свой путь в конкурсных аудитах! 79 человек за ночь!
Открыл для вас чат-группу, где буду выкладывать гайды по площадкам. Будем разбирать по 1 платформе в день.
Сегодня начнем с Code4rena. Присоединяйтесь!
https://news.1rj.ru/str/+P7lY7zRXSEFmYjk6
Чат будет не постоянным, через пару недель, как стихнет активность, он будет закрыт.
Если вам понравится это дело, вы не забросите конкурсы и получите первые награды за свои находки, то добавим вас в наш чат профессиональных аудиторов.
#chat #audit
❤9👍4
Secureum Races теперь на Youtube
В прошлом году я несколько раз выкладывал тесты Races, которые проводятся несколько раз в год. Они не только ограничены по времени, но и основываются на знании некоторых нюансов языка и внимательности при чтении контракта.
На данный момент вышло уже 25 Races! Посмотреть эти тесты можно в официальном дискорд сервере: https://discord.gg/RVD6YAUE
Более того, с недавнего времени, организатор этих билц-тестов, Патрик (не Коллинс), запустил свой ютуб канал, на котором разбирает вопросы и ответы с прошедших тестов.
Самое интересное то, что он не только говорит правильный ответ, но и детально рассказывает и объясняет некоторые нюансы работы языка, компилятора, EVM и сетей блокчейна в целом!
Вот ссылка на его канал: https://www.youtube.com/@patrickd_de/videos
За эти 5 - 10 минут в день можно не хило так прокачать свои знания. Очень рекомендую!
#races
В прошлом году я несколько раз выкладывал тесты Races, которые проводятся несколько раз в год. Они не только ограничены по времени, но и основываются на знании некоторых нюансов языка и внимательности при чтении контракта.
На данный момент вышло уже 25 Races! Посмотреть эти тесты можно в официальном дискорд сервере: https://discord.gg/RVD6YAUE
Более того, с недавнего времени, организатор этих билц-тестов, Патрик (не Коллинс), запустил свой ютуб канал, на котором разбирает вопросы и ответы с прошедших тестов.
Самое интересное то, что он не только говорит правильный ответ, но и детально рассказывает и объясняет некоторые нюансы работы языка, компилятора, EVM и сетей блокчейна в целом!
Вот ссылка на его канал: https://www.youtube.com/@patrickd_de/videos
За эти 5 - 10 минут в день можно не хило так прокачать свои знания. Очень рекомендую!
#races
❤11👍2🔥2
Как научиться видеть инварианты
Для практики тестов в Foundry сейчас важно уметь видеть и проверять различные состояния кода, в том числе инварианты.
В презентациях от компании Certora можно найти много полезного по этой теме, например:
https://github.com/Certora/Tutorials/blob/master/06.Lesson_ThinkingProperties/Categorizing_Properties.pdf
А здесь, посмотреть варианты properties для различных контрактов:
https://github.com/crytic/properties/blob/main/PROPERTIES.md
Ну, или выполнить предлагаемое упражнение:
https://github.com/Certora/Tutorials/tree/master/06.Lesson_ThinkingProperties/ThinkingPropertiesExercise
На самом деле, научиться мыслить "состояниями" контракта может быть очень полезно не только для разработчика, но и хорошего аудитора.
#invariant
Для практики тестов в Foundry сейчас важно уметь видеть и проверять различные состояния кода, в том числе инварианты.
В презентациях от компании Certora можно найти много полезного по этой теме, например:
https://github.com/Certora/Tutorials/blob/master/06.Lesson_ThinkingProperties/Categorizing_Properties.pdf
А здесь, посмотреть варианты properties для различных контрактов:
https://github.com/crytic/properties/blob/main/PROPERTIES.md
Ну, или выполнить предлагаемое упражнение:
https://github.com/Certora/Tutorials/tree/master/06.Lesson_ThinkingProperties/ThinkingPropertiesExercise
На самом деле, научиться мыслить "состояниями" контракта может быть очень полезно не только для разработчика, но и хорошего аудитора.
#invariant
🔥8
RareSkills выпустила книгу по Compound
RareSkills уже некоторое время выпускает потрясающие обучающие твиты и статьи по теме Compound. И теперь они решили все объединить в одну электронную "книгу" - Compound V3.
https://www.rareskills.io/compound-v3-book
Вообще здорово, что сейчас много компаний и разработчиков уделяют время написанию таких детальных разборов. В свое время такая же книга по Uniswap V3 здорово помогла мне разобраться с тиками.
Если вам интересна работа одного из крупнейших DeFi протоколов, крайне рекомендую к изучению!
#compound
RareSkills уже некоторое время выпускает потрясающие обучающие твиты и статьи по теме Compound. И теперь они решили все объединить в одну электронную "книгу" - Compound V3.
https://www.rareskills.io/compound-v3-book
Вообще здорово, что сейчас много компаний и разработчиков уделяют время написанию таких детальных разборов. В свое время такая же книга по Uniswap V3 здорово помогла мне разобраться с тиками.
Если вам интересна работа одного из крупнейших DeFi протоколов, крайне рекомендую к изучению!
#compound
👍14
Foundry и старые pragma
На канале в комментариях где-то были вопросы, а как писать тесты, когда контракты имеют разную версию pragma? Ведь может быть и 0.6.0 и 0.8.19 в одном проекте!
В Foundry есть специальный читкод, который помогает деплоить контракты разных версий в тестах:
Пример использования этого читкода вы можете видеть выше на скрине!
Больше о нем можно прочитать тут:
https://book.getfoundry.sh/reference/forge-std/deployCode
Теперь тесты можно писать еще быстрее!
#foundry
На канале в комментариях где-то были вопросы, а как писать тесты, когда контракты имеют разную версию pragma? Ведь может быть и 0.6.0 и 0.8.19 в одном проекте!
В Foundry есть специальный читкод, который помогает деплоить контракты разных версий в тестах:
function deployCode(string memory what) public returns (address);
Пример использования этого читкода вы можете видеть выше на скрине!
Больше о нем можно прочитать тут:
https://book.getfoundry.sh/reference/forge-std/deployCode
Теперь тесты можно писать еще быстрее!
#foundry
🔥7👏1🤯1
Чеклист от Solodit
Знаю, что уже немного опоздал с этим постом, но вдруг еще кто не видел об этой возможности для самопроверки контрактов перед деплоем.
Есть такая платформа Solodit, которая собирает отчеты по уязвимостям со многих площадок (типа С4) и частных аудиторов (типа Trust).
Так вот в конце прошлого года они выпустили чеклист, который могут использовать все для проверки своих контрактов.
https://solodit.xyz/checklist
Все разбито по темам и категориям. Вы можете выбрать те, которые относятся к вашему проекту и "пробежаться" по ним.
Как минимум, узнаете о некоторых проблемах в других протоколах, как максимум - найдете уязвимость в своем. Так или иначе лучше потратить еще немного времени на проверки и тесты, прежде чем отдавать его на аудит.
#solodit
Знаю, что уже немного опоздал с этим постом, но вдруг еще кто не видел об этой возможности для самопроверки контрактов перед деплоем.
Есть такая платформа Solodit, которая собирает отчеты по уязвимостям со многих площадок (типа С4) и частных аудиторов (типа Trust).
Так вот в конце прошлого года они выпустили чеклист, который могут использовать все для проверки своих контрактов.
https://solodit.xyz/checklist
Все разбито по темам и категориям. Вы можете выбрать те, которые относятся к вашему проекту и "пробежаться" по ним.
Как минимум, узнаете о некоторых проблемах в других протоколах, как максимум - найдете уязвимость в своем. Так или иначе лучше потратить еще немного времени на проверки и тесты, прежде чем отдавать его на аудит.
#solodit
🔥7👍2