Моя первая статья вышла больше месяца назад. Это была статья ознакомительного уровня. Теперь давайте попробуем пойти немного глубже и посмотреть, как устроен невзаимозаменяемый токен изнутри.
Сейчас ETH - самый популярный блокчейн для NFT.
Если вы покупаете NFT, то скорее всего вы покупаете NFT на эфире.
Исключение - карточки NBA Top Shots (блокчейн FLOW) и несколько коллекций на блокчейне WAX.
Основная же масса токенов, продающихся на OpenSea и Rarible, а также все работы на NiftyGateway и Foundation - это токены на эфире. Поэтому говорить пока будем про них.
Токены живут на блокчейнах. Давайте быстро освежим в памяти, что такое блокчейн. И причем тут смарт-контракты.
Блокчейн - распределенный (децентрализованный) реестр. Или распределенная база данных. То есть данные, записанные в блокчейн, хранятся на множестве компьютеров одновременно, и поэтому не подчиняются никакому регулирующему органу. Данные хранятся в блоках. Данные новых блоков не должны противоречить данным предыдущих, иначе они не будут внесены в цепочку.
Блокчейны устойчивы к взломам, попыткам манипуляций и обеспечивают надежное хранение данных за счет распределенности.
В блокчейне можно хранить разные данные.
Самый популярный блокчейн - блокчейн Bitcoin. В нем хранятся только данные об операциях с этой криптовалютой.
Но что если компьютеры, обслуживающие блокчейн (ноды) будут не только хранить данные, но и исполнять код?
Наверное, какой-то такой вопрос задавал себе Виталик Бутерин перед тем, как придумать Ethereum - второй по популярности блокчейн в мире.
В Ethereum вы можете загрузить в блокчейн свою программу и она будет исполняться на нодах сети. Эта программа и называется смарт-контракт.
Возможность исполнять смарт-контракты - главная особенность Ethereum. А одноименная криптовалюта - это не ценность сама по себе, она нужна для того, чтобы обеспечивать расчеты внутри системы. Самый кайф в том, что раз валюта у нас тоже на блокчейне, то смарт-контракты могут сами отслеживать переводы и производить эти переводы.
Смарт-контракт может обслуживать любую задачу.
Одной из самых распространенных задач оказалось обслуживание операций с некоторыми условными единицами ценности - токенами.