Solidity. Смарт контракты и аудит – Telegram
Solidity. Смарт контракты и аудит
2.62K subscribers
246 photos
7 videos
18 files
547 links
Обучение Solidity. Уроки, аудит, разбор кода и популярных сервисов
Download Telegram
День стандартов ERC на канале!

Сегодня весь день буду делать посты про различные стандарты токенов. Да, их не 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
👍1
ERC-165

Это предложение стандартизирует концепцию интерфейсов и стандартизирует идентификацию (именование) интерфейсов.

Для некоторых интерфейсов, например ERC-20, порой полезно послать запрос на сторонний контракт, поддерживает ли он данный интерфейс, и, если да, то какую версию.

#erc #erc165
👍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
👍1
ERC-621

В дополнении к ERC-20, этот стандарт позволяет увеличивать или уменьшать общее количество токенов, используя одноименные функции, которые должны быть доступны только владельце контракта или доверенным пользователям.

#erc #erc621
👍1
ERC-677

Этот формат аналогичен 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
👍1
ERC-725

Предложенный Фабианом Фогельштелле, создателем ERC-20 и Web3.js, уникальный стандарт для публикации и управления идентификацией в блокчейне на основе EVM. Стандарт ERC-725 описывает смарт-контракты прокси, которыми можно управлять с помощью нескольких ключей, а также другие смарт-контракты.

#erc #erc725
👍1
ERC-735

Это связанный стандарт для добавления и удаления утверждений в смарт-контракте идентификации ERC-725.

Одна из основных проблем, которую ERC-725 и ERC-735 пытаются решить, заключается в том, что нынешние пользователи не владеют своими данными. Их личности не защищены должным образом при размещении в Интернете.

#erc #erc735
👍1
ERC-777

Созданное в конце 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
👍1
ERC-827

Расширение ERC-223. Владельцам токенов будет разрешено передавать токены и позволять третьим сторонам тратить их, если этот стандарт будет реализован.

В стандарте ERC есть определенные критерии, которые должны быть согласованы как кошельками, так и биржами, прежде чем третья сторона сможет тратить динамические суммы из своего кошелька или биржи. Ни сообщество Ethereum, ни сам проект еще не реализовали его.

#erc #erc827
👍2
ERC-865

Новые пользователи криптовалюты могут быть удивлены, узнав, что плата перевод токенов может взыматься плата в Эфире.

Среди стандартов ERC, предложенных разработчиками сообщества Ethereum, ERC-865 призван облегчить привыкание к этому людям, плохо знакомым с криптографией. Также предполагается, что плата за майнинг может быть оплачена с помощью токена.

#erc #erc865
👍1
ERC-875

ERC-875 предложил возможность отправки нескольких NFT (non-fungible tokens) в одной транзакции, при помощи присвоения каждому из них персонального индекса. Стандарт также предполагает безопасные отправку и обмен токенов, как и в случае с ERC-721.

#erc #erc875
👍1
ERC-884

Маркер 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
👍1
ERC-1155

ERC-1155 использует новый способ определения токенов, центральный интеллектуальный контракт, в котором элементы будут храниться, и занимает очень мало места, чтобы отличать их друг от друга. Любой элемент Token можно объединить и упаковать в «пакет Token», пакет Token также имеет собственный независимый идентификатор (уменьшите большое количество избыточных байт-кодов в блокчейне)

Давайте сравним механизм установки алмазов в темноте, оружие с двумя отверстиями и двумя совершенными драгоценными камнями. Это три жетона. Когда мы вкладываем эти два драгоценных камня в оружие, он становится жетоном Сумка - это новое оружие. В то же время этот механизм также может упростить сложные транзакции. Например, A и B. хотят обменять 20 позиций. Если это транзакция, требуется 20 транзакций. Если можно собрать 20 токенов, требуется только одна транзакция. Во время распаковки эффективность и опыт значительно улучшились.

#erc #erc1155
👍1
ERC-1337

Это стандарт для создания повторяемых подписных платежей в блокчейне. Протокол токена создает задачу для повторяемых платежей в криптовалюте. Также он позволяет владельцу настраивать вариатны приема платежей даже из разных токенов.

#erc #erc1337
👍1
ERC-1400

Он представляет собой библиотеку стандартов для токенов безопасности в Ethereum. Эти стандарты являются зонтиком нескольких других стандартов, которые все обратно совместимы с интерфейсами ERC-20 и ERC-777.

#erc #erc1400
👍1
ERC-1404

Это дополнение к ERC-20-совместимым токенам, которое включает дополнительную функцию, позволяющую ограничивать передачу токенов. Этот стандарт был создан TokenSoft , поставщиком технологий для компаний, которые стремятся выпускать и управлять цифровыми ценными бумагами на блокчейне, соблюдая при этом нормативные требования.

#erc #erc1404
👍1
ERC-1410

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

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

#erc #erc1410
👍1