DIMA HideCrypto
35 subscribers
6 photos
1 video
57 links
Обсуждение в чате ➡️ @DimaHideCrypto_chat
По вопросам сотрудничества и рекламы ➡️ @DimaHideCrypto
Download Telegram
На канале новое видео💥
На этот раз написал контракт NFT с хранением метаданных on-chain. Три рандомных атрибута генерируются с использованием значений Chainlink VRF. Код берите из gist (прикрепил).
Видос тяжеловатый получился. Пока записывал, накосячил в одном месте😅: забыл вызвать _safeMint в функции fulfillRandomWords и перепутал tokenId с requestId. Пришлось переписывать. Если будете делать последовательно по видео, вряд ли заметите) Но если будут ошибки, сверяйтесь с конечным кодом.

➡️ 🔸 https://youtu.be/Crwg7RnMeL8

➡️ 🔹 Код контракта: https://gist.github.com/DimaProCrypto/19362a70008e21de01faea5213759a1c

Остальные ссылки есть в предыдущем посте.
👍2🔥1
💥 Новое видео про дефляционные токены. Разобрал механизм работы.
Я не заканчивал экономический😅 Поэтому могу ошибаться в объяснении инфляции и дефляции. Постарался донести основной смысл.

Конечно, это только для понимания механизма работы. Более сложные контракты возможно использовать для перевода в ликвидность, распределения между держателями, отправки комиссии на адреса владельцев, взаимодействовать с интерфейсами uniswap.

Видео ➡️ 🔸🔸 https://www.youtube.com/watch?v=2Gj-dA-a5p4&t=18s

Код контракта ➡️ https://gist.github.com/DimaProCrypto/83416e720292f0548e02f19aa56b5852
5🔥1
Кто хочет задачку порешать?😁
➡️ https://quillctf.super.site/challenges/quillctf-challenges/true-xor
Решение очень простое, но неочевидное!
Сегодня выйдет видео с решением.
Не смотрите, пока сами не попробуете! 😁
💥 Настроим подключение к фронту через библиотеку Wallet Connect.
Этот способ можно использовать для подключения на мобильных устройствах и в браузерах, где нет Metamask.
Можно использовать чистую установку, но Wallet Connect рекомендует
дополнительно готовые решения Web3Modal, ConnectKit.
Эти расширения упрощают настройку внешнего вида и
предоставляют готовые настройки для подключения вашего DApp.

Смотрите видео ➡️ 🔸 https://youtu.be/ECorg-zXseU

Дока ➡️ https://developer.trustwallet.com/wallet-connect
👆 из нее переходите на документацию web3modal и wagmi

Код на github (залью в ближайшее время) ➡️ https://github.com/DimaProCrypto/ConnectWallet
❤‍🔥1🔥1
В этом видео проверим предположение:
🔸Можно ли изменить код контракта, который уже задеплоен в сети ethereum.
Разберемся с функциями create и create2.
Удалим контракты и снова задеплоим на те же адреса.
💥В общем, будем экспериментировать.
https://www.youtube.com/watch?v=wMDPn46Bt48

Статьи по теме 👇
🔹https://ethereum-blockchain-developer.com/110-upgrade-smart-contracts/12-metamorphosis-create2/
🔹https://a16zcrypto.com/metamorphic-smart-contract-detector-tool/

Код контрактов 👇
➡️ https://gist.github.com/DimaProCrypto/0deec58a923e76cb4924cfcec70f72a8

Вариант без yul, но с измененным контрактом не работает 👇
➡️ https://gist.github.com/DimaProCrypto/222300f5fb486caac31510a5bb7b97fc
🔥1
Сегодня каналу ровно 3 месяца!
Благодарю, что присоединились!
Будем дальше погружаться в Solidity и Web3 ✈️

Собрал подборку сайтов для изучения 👇
Можно пройти курс по Solidity ➡️ https://cryptozombies.io
Челленжи на разный уровень ⬇️
https://ethereumhacker.com
https://ethernaut.openzeppelin.com
https://capturetheether.com
https://www.damnvulnerabledefi.xyz

Попрактиковаться в Web3 ⬇️
https://docs.scaffoldeth.io/scaffold-eth
👍101🔥1
💥 Часто в контрактах требуется запретить вызов функций из внешних контрактов.
Для этого могут использоваться несколько способов:
1. Проверять наличие кода на адресе. Если extcodesize > 0 => адрес, вызывающий функцию принадлежит контракту.
2. Проверять msg.sender и tx.origin. Если это один и тот же адрес => адрес не контракт.

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

Видео уже доступно ➡️ https://youtu.be/2GWcnr1R7zI

Код контрактов 👇
🔸 https://gist.github.com/DimaProCrypto/2b141a8f113da46c1639f85d6ef3cf07

🔸 https://gist.github.com/DimaProCrypto/af4d70d5c2ecff805bce10ba58d6f925

🔸 https://gist.github.com/DimaProCrypto/c45fa92e9b994ffd81320a3069760f99
🔥3
💥 Минимальный необходимый стек технологий для изучения
и создания web3 dapp приложений:

1. JS или Python
2. Solidity
3. Web3.js или Ethers.js
4. Blockchain Ethereum, EVM

➡️ https://youtube.com/shorts/0WzZ2plbE8U

https://coggle.it/diagram/Xq5IQ3YX2vfyC5AV/t/smart-contract-engineer-2020/4c383e8825cdb7dae593f9c293cae283545becfbb921e57257f5e1cc94fcd963

Ссылка на документацию:
JS https://learn.javascript.ru/
Python https://docs.python.org/3.11/
Solidity https://docs.soliditylang.org/en/v0.8.18/
Web3 https://web3js.readthedocs.io/en/v1.8.2/
https://web3py.readthedocs.io/en/v5/index.html
Ethers https://docs.ethers.org/v5/single-page/#/v5/getting-started/
White Paper Ethereum https://ethereum.github.io/yellowpaper/paper.pdf
Open Zeppelin https://docs.openzeppelin.com/
👍51
💥Поработаем с offchain подписями, разберем уязвимости, которые могут быть с ними связаны.
За что Polygon заплатил самый большой bug baunty - 2,2 млн долларов.
Разберем небольшую тестовую задачу с использованием подписи.

Видео ➡️ https://youtu.be/0RqgAlz7Fp8

Код из видео👇
Задача https://gist.github.com/DimaProCrypto/4bf39db24957f4864fdf2ceb97f6cdca

Код с функциями для тестов подписи
https://gist.github.com/DimaProCrypto/3f77a448eb939736f29cd885c877959f

Статья про уязвимость Polygon
https://medium.com/immunefi/polygon-lack-of-balance-check-bugfix-postmortem-2-2m-bounty-64ec66c24c7d

EIP - 712
https://eips.ethereum.org/EIPS/eip-712
👍2🔥1