Chainlink Automation / Keeper. Часть 4
Стоит отметить еще несколько нюансов по данному сервису.
Во-первых, вы можете создать свой Upkeep контракт, а не использовать автоматизированный вариант на сайте. По ссылке представлен пример кода такого контракта.
Тут все также просто. Он должен наследовать от двух других контрактов chainlink:
import {AutomationRegistryInterface, State, Config} from "@chainlink/contracts/src/v0.8/interfaces/AutomationRegistryInterface1_2.sol";
import {LinkTokenInterface} from "@chainlink/contracts/src/v0.8/interfaces/LinkTokenInterface.sol";
а также интерфейс KeeperRegistrarInterface.
Здесь представлена одна функция registerAndPredictID(), которая, по своей сути, делает все тоже, что и сайт. На данном этапе я так и не понял, зачем создавать Upkeep контракт самому. Возможно, для каких-то кастомных решений.
Во-вторых, следите, чтобы большинство проверок условий происходило в функции checkUpkeep(), так как она "view" и потребляет намного меньше газа, чем performUpkeep().
В-третьих, делайте дополнительные проверки при проверки и соблюдения условий! Так вы повысите безопасность от внешних вызовов функций.
В-четвертых, проверяйте свои контракты в тестовых сетях прежде, чем вы будете делать это в mainnet.
#chainlink #keeper #automation
Стоит отметить еще несколько нюансов по данному сервису.
Во-первых, вы можете создать свой Upkeep контракт, а не использовать автоматизированный вариант на сайте. По ссылке представлен пример кода такого контракта.
Тут все также просто. Он должен наследовать от двух других контрактов chainlink:
import {AutomationRegistryInterface, State, Config} from "@chainlink/contracts/src/v0.8/interfaces/AutomationRegistryInterface1_2.sol";
import {LinkTokenInterface} from "@chainlink/contracts/src/v0.8/interfaces/LinkTokenInterface.sol";
а также интерфейс KeeperRegistrarInterface.
Здесь представлена одна функция registerAndPredictID(), которая, по своей сути, делает все тоже, что и сайт. На данном этапе я так и не понял, зачем создавать Upkeep контракт самому. Возможно, для каких-то кастомных решений.
Во-вторых, следите, чтобы большинство проверок условий происходило в функции checkUpkeep(), так как она "view" и потребляет намного меньше газа, чем performUpkeep().
В-третьих, делайте дополнительные проверки при проверки и соблюдения условий! Так вы повысите безопасность от внешних вызовов функций.
В-четвертых, проверяйте свои контракты в тестовых сетях прежде, чем вы будете делать это в mainnet.
#chainlink #keeper #automation
День стандартов ERC на канале!
Сегодня весь день буду делать посты про различные стандарты токенов. Да, их не 3-4, как может показаться в начале пути блокчейн специалиста, а тысячи!
Я приведу примерно 25 различных стандартов. Вникать в них абсолютно не нужно. Просто оцените разнообразие!
И начнем с самого базиса.
ERC (Ethereum Request for Comments) — название официального протокола для внесения предложений по улучшению сети Ethereum. «20» — порядковый номер предложения.
На данный момент можно выделить два основных типа стандартов. К первому относятся все предложения, созданные для улучшения ERC-20, а ко второму стандарты занимающийся унификацией NFT или электронных предметов коллекционирования.
Сегодня весь день буду делать посты про различные стандарты токенов. Да, их не 3-4, как может показаться в начале пути блокчейн специалиста, а тысячи!
Я приведу примерно 25 различных стандартов. Вникать в них абсолютно не нужно. Просто оцените разнообразие!
И начнем с самого базиса.
ERC (Ethereum Request for Comments) — название официального протокола для внесения предложений по улучшению сети Ethereum. «20» — порядковый номер предложения.
На данный момент можно выделить два основных типа стандартов. К первому относятся все предложения, созданные для улучшения ERC-20, а ко второму стандарты занимающийся унификацией NFT или электронных предметов коллекционирования.
👍1
ERC-20
Один из самых популярных стандартов для взаимозаменяемых токенов. Его используют такие популярные криптовалюты как USDT, LINK, UNI AAVE и другие.
ERC-20 значительно упростил и унифицировал выпуск токенов в рамках одной сети. Этот стандарт наряду со смарт-контрактами стал универсальным способом создания и монетизации приложений, использующих блокчейн.
Одной из наиболее серьезных уязвимостей оказалось отсутствие регулирующего механизма отправки токенов, созданных на основе стандарта ERC-20, на другие адреса, которые этот стандарт не поддерживают. Все переданные таким образом токены сгорают.
#erc #erc20
Один из самых популярных стандартов для взаимозаменяемых токенов. Его используют такие популярные криптовалюты как USDT, LINK, UNI AAVE и другие.
ERC-20 значительно упростил и унифицировал выпуск токенов в рамках одной сети. Этот стандарт наряду со смарт-контрактами стал универсальным способом создания и монетизации приложений, использующих блокчейн.
Одной из наиболее серьезных уязвимостей оказалось отсутствие регулирующего механизма отправки токенов, созданных на основе стандарта ERC-20, на другие адреса, которые этот стандарт не поддерживают. Все переданные таким образом токены сгорают.
#erc #erc20
👍1
ERC-223
Элегантное решение ERC-223 заключало в себе объединение двух функций transfer и transferFrom стандарта ERC-20 в одну функцию под названием transfer, но теперь с тремя параметрами — address _to, unit _value, bytes data. Эти параметры позволили исключить возможность неправильного использования функции пользователями.
Другим важным усовершенствованием стало введение функции tokenFallback, которая подготавливает контракт для принятия любого отправляемого вида монет и предотвращает их отправку, если не получает ответа от адреса получателя. На данный момент платформа Ethereum имеет схожую функцию для всей сети — модификатор контрактов payable, который подготавливает контракты к получению монет Ether.
На деле имплементация стандарта ERC-223 идет медленно, и большинство проектов продолжают пользоваться стандартом ERC-20.
Тем не менее среди проектов, использующих стандарт ERC-223, можно отметить несколько интересных: AmigoCoin, CargoCoin, Expercoin.
#erc #erc223
Элегантное решение ERC-223 заключало в себе объединение двух функций transfer и transferFrom стандарта ERC-20 в одну функцию под названием transfer, но теперь с тремя параметрами — address _to, unit _value, bytes data. Эти параметры позволили исключить возможность неправильного использования функции пользователями.
Другим важным усовершенствованием стало введение функции tokenFallback, которая подготавливает контракт для принятия любого отправляемого вида монет и предотвращает их отправку, если не получает ответа от адреса получателя. На данный момент платформа Ethereum имеет схожую функцию для всей сети — модификатор контрактов payable, который подготавливает контракты к получению монет Ether.
На деле имплементация стандарта ERC-223 идет медленно, и большинство проектов продолжают пользоваться стандартом ERC-20.
Тем не менее среди проектов, использующих стандарт ERC-223, можно отметить несколько интересных: AmigoCoin, CargoCoin, Expercoin.
#erc #erc223
👍1
ERC-677
Этот формат аналогичен ERC-20, но имеет дополнительную функциональность — контракт токена ERC-677 может передавать дополнительные данные во время перевода, а также запускать бизнес-логику получающего контракта, что расширяет сценарии практических приложений смарт-контракта. Стандарт ERC-677 был впервые предложен CTO Chainlink Стивом Эллисом. ERC-677 токены могут храниться на всех кошельках, совместимых с ERC-20.
#erc #erc677
Этот формат аналогичен ERC-20, но имеет дополнительную функциональность — контракт токена ERC-677 может передавать дополнительные данные во время перевода, а также запускать бизнес-логику получающего контракта, что расширяет сценарии практических приложений смарт-контракта. Стандарт ERC-677 был впервые предложен CTO Chainlink Стивом Эллисом. ERC-677 токены могут храниться на всех кошельках, совместимых с ERC-20.
#erc #erc677
👍1
ERC-721
Этот стандарт появился в 2017 году благодаря игре Cryptokitties, где можно обмениваться и собирать коллекции виртуальных котят, обладающих уникальными генотипами или 256-битными беззнаковыми кодами. Необычным в этой игре стало то, что каждый котенок являлся уникальной криптовалютой различной цены, в зависимости от его популярности и редкости.
Стандарт ERC-721 стал первым примером non-fungible tokens (NFT) — уникальных или невзаимозаменяемых токенов, который был предложен для электронных предметов коллекционирования.
Функции approve и takeOwnership, а также два вида событий: Transfer и Approval делают транзакции более защищенными от случайной потери средств, как в случае со стандартом ERC-20.
#erc #erc721
Этот стандарт появился в 2017 году благодаря игре Cryptokitties, где можно обмениваться и собирать коллекции виртуальных котят, обладающих уникальными генотипами или 256-битными беззнаковыми кодами. Необычным в этой игре стало то, что каждый котенок являлся уникальной криптовалютой различной цены, в зависимости от его популярности и редкости.
Стандарт ERC-721 стал первым примером non-fungible tokens (NFT) — уникальных или невзаимозаменяемых токенов, который был предложен для электронных предметов коллекционирования.
Функции approve и takeOwnership, а также два вида событий: Transfer и Approval делают транзакции более защищенными от случайной потери средств, как в случае со стандартом ERC-20.
#erc #erc721
👍1
ERC-725
Предложенный Фабианом Фогельштелле, создателем ERC-20 и Web3.js, уникальный стандарт для публикации и управления идентификацией в блокчейне на основе EVM. Стандарт ERC-725 описывает смарт-контракты прокси, которыми можно управлять с помощью нескольких ключей, а также другие смарт-контракты.
#erc #erc725
Предложенный Фабианом Фогельштелле, создателем ERC-20 и Web3.js, уникальный стандарт для публикации и управления идентификацией в блокчейне на основе EVM. Стандарт ERC-725 описывает смарт-контракты прокси, которыми можно управлять с помощью нескольких ключей, а также другие смарт-контракты.
#erc #erc725
👍1
ERC-735
Это связанный стандарт для добавления и удаления утверждений в смарт-контракте идентификации ERC-725.
Одна из основных проблем, которую ERC-725 и ERC-735 пытаются решить, заключается в том, что нынешние пользователи не владеют своими данными. Их личности не защищены должным образом при размещении в Интернете.
#erc #erc735
Это связанный стандарт для добавления и удаления утверждений в смарт-контракте идентификации ERC-725.
Одна из основных проблем, которую ERC-725 и ERC-735 пытаются решить, заключается в том, что нынешние пользователи не владеют своими данными. Их личности не защищены должным образом при размещении в Интернете.
#erc #erc735
👍1
ERC-777
Созданное в конце 2017 года новое предложение стандарта было призвано решить сразу несколько задач. Благодаря новой функции tokenReceived, которая позволяла не использовать повторную функцию одобрения (second verifying transaction), время транзакции сокращалось в два раза. Также в данном стандарте появилась возможность помечать неблагонадежные или несовместимые адреса, которые могут быть связаны с хакерами или мошенниками. Данный стандарт решил и проблему несовместимости путем использования метода обратной совместимости, что сделало его кросс-стандарт совместимым на платформе Ethereum.
Среди минусов этого довольно нового стандарта можно назвать его код, который все еще претерпевает изменения, а также создание большого количества взаимозависимых вызовов контрактов в случае его использования, что может создать проблемы с безопасностью в будущем. Одним из проектов, использующих токен этого стандарта, является ORCA.
#erc #erc777
Созданное в конце 2017 года новое предложение стандарта было призвано решить сразу несколько задач. Благодаря новой функции tokenReceived, которая позволяла не использовать повторную функцию одобрения (second verifying transaction), время транзакции сокращалось в два раза. Также в данном стандарте появилась возможность помечать неблагонадежные или несовместимые адреса, которые могут быть связаны с хакерами или мошенниками. Данный стандарт решил и проблему несовместимости путем использования метода обратной совместимости, что сделало его кросс-стандарт совместимым на платформе Ethereum.
Среди минусов этого довольно нового стандарта можно назвать его код, который все еще претерпевает изменения, а также создание большого количества взаимозависимых вызовов контрактов в случае его использования, что может создать проблемы с безопасностью в будущем. Одним из проектов, использующих токен этого стандарта, является ORCA.
#erc #erc777
👍1
ERC-821
Ставшие продолжением стандарта ERC-721, стандарты ERC-821 и ERC-875, каждый по-своему, подошли к улучшению смарт-контрактов для невзаимозаменяемых токенов.
ERC-821 имеет такую же, как у ERC-777 функцию transferAndCall, которая позволяет контрактам реагировать на входящие токены. Также он предложил использовать более конкретизированный нейминг, чтобы не вызывать путаницы между разными видами предметов коллекционирования. Сигналы совместимости со всеми остальными стандартами сейчас находятся в разработке.
#erc #erc821
Ставшие продолжением стандарта ERC-721, стандарты ERC-821 и ERC-875, каждый по-своему, подошли к улучшению смарт-контрактов для невзаимозаменяемых токенов.
ERC-821 имеет такую же, как у ERC-777 функцию transferAndCall, которая позволяет контрактам реагировать на входящие токены. Также он предложил использовать более конкретизированный нейминг, чтобы не вызывать путаницы между разными видами предметов коллекционирования. Сигналы совместимости со всеми остальными стандартами сейчас находятся в разработке.
#erc #erc821
👍1
ERC-827
Расширение ERC-223. Владельцам токенов будет разрешено передавать токены и позволять третьим сторонам тратить их, если этот стандарт будет реализован.
В стандарте ERC есть определенные критерии, которые должны быть согласованы как кошельками, так и биржами, прежде чем третья сторона сможет тратить динамические суммы из своего кошелька или биржи. Ни сообщество Ethereum, ни сам проект еще не реализовали его.
#erc #erc827
Расширение ERC-223. Владельцам токенов будет разрешено передавать токены и позволять третьим сторонам тратить их, если этот стандарт будет реализован.
В стандарте ERC есть определенные критерии, которые должны быть согласованы как кошельками, так и биржами, прежде чем третья сторона сможет тратить динамические суммы из своего кошелька или биржи. Ни сообщество Ethereum, ни сам проект еще не реализовали его.
#erc #erc827
👍2
ERC-865
Новые пользователи криптовалюты могут быть удивлены, узнав, что плата перевод токенов может взыматься плата в Эфире.
Среди стандартов ERC, предложенных разработчиками сообщества Ethereum, ERC-865 призван облегчить привыкание к этому людям, плохо знакомым с криптографией. Также предполагается, что плата за майнинг может быть оплачена с помощью токена.
#erc #erc865
Новые пользователи криптовалюты могут быть удивлены, узнав, что плата перевод токенов может взыматься плата в Эфире.
Среди стандартов ERC, предложенных разработчиками сообщества Ethereum, ERC-865 призван облегчить привыкание к этому людям, плохо знакомым с криптографией. Также предполагается, что плата за майнинг может быть оплачена с помощью токена.
#erc #erc865
👍1
ERC-884
Маркер ERC-884 является токеном, совместимым с ERC-20, который был разработан Дэвидом Сагом в соответствии с общим корпоративным законом штата Делавэр.
Корпорации штата Делавэр могут использовать технологии блокчейна для создания торгуемого токена ERC-20 и поддержки акций, выпущенных корпорацией штата Делавэр.
#erc #erc884
Маркер ERC-884 является токеном, совместимым с ERC-20, который был разработан Дэвидом Сагом в соответствии с общим корпоративным законом штата Делавэр.
Корпорации штата Делавэр могут использовать технологии блокчейна для создания торгуемого токена ERC-20 и поддержки акций, выпущенных корпорацией штата Делавэр.
#erc #erc884
👍1
ERC-998
ERC-998 можно комбинировать с неоднородными токенами (составные NFT, сокращенно CNFT). Его структурный дизайн является стандартизированным расширением, которое позволяет любому NFT иметь другие NFT или FT. При передаче CNFT необходимо передать всю иерархическую структуру и принадлежность CNFT. Проще говоря, ERC-998 может содержать несколько токенов в форме ERC-721 и ERC-20.
#erc #erc998
ERC-998 можно комбинировать с неоднородными токенами (составные NFT, сокращенно CNFT). Его структурный дизайн является стандартизированным расширением, которое позволяет любому NFT иметь другие NFT или FT. При передаче CNFT необходимо передать всю иерархическую структуру и принадлежность CNFT. Проще говоря, ERC-998 может содержать несколько токенов в форме ERC-721 и ERC-20.
#erc #erc998
👍1
ERC-1155
ERC-1155 использует новый способ определения токенов, центральный интеллектуальный контракт, в котором элементы будут храниться, и занимает очень мало места, чтобы отличать их друг от друга. Любой элемент Token можно объединить и упаковать в «пакет Token», пакет Token также имеет собственный независимый идентификатор (уменьшите большое количество избыточных байт-кодов в блокчейне)
Давайте сравним механизм установки алмазов в темноте, оружие с двумя отверстиями и двумя совершенными драгоценными камнями. Это три жетона. Когда мы вкладываем эти два драгоценных камня в оружие, он становится жетоном Сумка - это новое оружие. В то же время этот механизм также может упростить сложные транзакции. Например, A и B. хотят обменять 20 позиций. Если это транзакция, требуется 20 транзакций. Если можно собрать 20 токенов, требуется только одна транзакция. Во время распаковки эффективность и опыт значительно улучшились.
#erc #erc1155
ERC-1155 использует новый способ определения токенов, центральный интеллектуальный контракт, в котором элементы будут храниться, и занимает очень мало места, чтобы отличать их друг от друга. Любой элемент Token можно объединить и упаковать в «пакет Token», пакет Token также имеет собственный независимый идентификатор (уменьшите большое количество избыточных байт-кодов в блокчейне)
Давайте сравним механизм установки алмазов в темноте, оружие с двумя отверстиями и двумя совершенными драгоценными камнями. Это три жетона. Когда мы вкладываем эти два драгоценных камня в оружие, он становится жетоном Сумка - это новое оружие. В то же время этот механизм также может упростить сложные транзакции. Например, A и B. хотят обменять 20 позиций. Если это транзакция, требуется 20 транзакций. Если можно собрать 20 токенов, требуется только одна транзакция. Во время распаковки эффективность и опыт значительно улучшились.
#erc #erc1155
👍1
ERC-1404
Это дополнение к ERC-20-совместимым токенам, которое включает дополнительную функцию, позволяющую ограничивать передачу токенов. Этот стандарт был создан TokenSoft , поставщиком технологий для компаний, которые стремятся выпускать и управлять цифровыми ценными бумагами на блокчейне, соблюдая при этом нормативные требования.
#erc #erc1404
Это дополнение к ERC-20-совместимым токенам, которое включает дополнительную функцию, позволяющую ограничивать передачу токенов. Этот стандарт был создан TokenSoft , поставщиком технологий для компаний, которые стремятся выпускать и управлять цифровыми ценными бумагами на блокчейне, соблюдая при этом нормативные требования.
#erc #erc1404
👍1