Большая часть блокчейн-проектов базируется на платформе Ethereum, а точнее – а смарт-контрактах данной сети. Во время инвестиционных кампаний после оплаты инвесторы получают токены – цифровые «монеты», которые чаще всего принадлежат к стандарту ERC 20.
Называют так официальные протоколы, предназначенные для внесения предложений, призванных улучшить Ethereum, а расшифровывается аббревиатура как Ethereum Request for Comments. 20 – это оригинальный номер для идентификации предложения. Технологические особенности для токенов стали доступными еще в 2015. Монеты, которые отвечают этим характеристикам, называют ERC 20, по факту это и есть «умные» контракты, которые шифруются в блокчейн Ethereum.
Особенность стандарта заключается в ряде требований, которые нужно удовлетворить для принятия токена и его сетевого взаимодействия с другими токенами. Активы в блокчейн могут представлять ценность, их можно получать и отправлять, подобно всем криптовалютам.
Отличия от обыкновенных цифровых валют
Они отличаются от остальных цифровых валют привязкой к пространству Ethereum. Внутри сети принят определенный формат адресов, а отправляются токены посредством платежный операций Ethereum. Таким образом, операции, в которых участвуют монеты ERC 20, прослеживаются в специальном обозревателе.
Нужно учитывать, что это не в полной мере независимые токены, так как они базируются на Ethereum. Именно на его распределении и вычислительных возможностях базируется работа ERC 20.
Пути применения токенов могут быть разными. Их используют в качестве акций или своеобразного подтверждения активов в собственности, а также как баллы в системах лояльности, но одним из наиболее популярных методов является криптовалюта. ERC 20 могут выполнять одновременно несколько функций.
Главные характеристики
Технология предполагает несколько параметров для заключения смарт-контрактов. Их них 6 считается обязательными, а 3 – по усмотрению, но рекомендуются для соблюдения.
В числе обязательных параметров такие функции:
totalSupply – нужна для общей эмиссии цифровых монет, гарантируя отсутствие возможности для создания новых, когда будет достигнута максимальная отметка.
balance0f – требуется для определения первоначального числа токенов, которые приписываются к конкретному адресу организаторов ICO.
transfer – необходима для гарантии передачи токенов пользователям-инвесторам, которые вложили средства в период ICO.
transferFrom – требуется для платежных операций между разными пользователями (последние две функции являются способами перемещения токенов по стандарту, они нужны для транзакций и распределения валюты между пользователями).
approve – нужна для того, чтобы проверять возможность осуществления по смарт-контракту, основываясь на эмиссии в общем, дистрибуции электронных монет.
allowance – требуется для того, чтобы проверять наличие достаточного баланса на конкретном адресе для отправки цифровых монет по другому адресу (approve и allowance – это функции, отвечающие за процесс верификации способов перемещения электронных монет).
В числе трех необязательных параметров – выявление максимум дробных отметок после запятой (к примеру, у биткойна есть 8 цифр после запятой), название монеты и ее значок. Комплекс указанных данных помогает провайдерам и биржам формировать базу кодов, которая будет единой и позволит взаимодействовать со всеми smart-контрактами ERC-20.
mosinnik
И тут даже нет примера базовой реализации, молчу про ссылки на стандартную реалзиацию openzeppelin и чем она лучше простейшей реализации. Для статьи с таким громким названием урвоень ниже плинтуса