Работа мечты в один клик 💼

💭Мечтаешь работать в Сбере, но не хочешь проходить десять кругов HR-собеседований? Теперь это проще, чем когда-либо!
💡AI-интервью за 15 минут – и ты уже на шаг ближе к своей новой работе.
Как получить оффер?
📌 Зарегистрируйся
📌 Пройди AI-интервью
📌 Получи обратную связь сразу же!
HR больше не тянут время – рекрутеры свяжутся с тобой в течение двух дней! 🚀
Реклама. ПАО СБЕРБАНК, ИНН 7707083893. Erid 2VtzquscAwp
Начнем издалека... Это необходимо чтобы все понимали, о чем будет идти речь. Рекомендуем читать по порядку иначе, вы можете потерять смысл происходящего.
Что такое блокчейн
Блокчейн – это цепочка блоков. В каждом блоке хранится какая-то информация. Каждый блок – это некое хранилище, которое может содержать в себе какое-то ограниченное количество информации: обычно это транзакции (история операций криптовалюты).
Также в каждом блоке, кроме транзакций криптовалюты, может быть еще дополнительная информация: время создания блока, идентификатор майнера (кто создал блок) и транзакции токенов.
Токены (монеты) есть не во всех блокчейнах, например, в Bitcoin и Litecoin нельзя создавать свои токены. Токены можно создавать только в тех блокчейнах, которые реализовали идею смарт-контрактов (об этом через минуту). Например, Ethereum и TRON.
Что такое криптовалюта, майнинг и стейкинг
Криптовалюта – это внутренняя валюта, некое вознаграждение определенного человека за полезные действия в рамках блокчейна.
Например, когда майнер «майнит» внутри какого-то блокчейна, допустим, в Bitcoin, он просто создает новые блоки в цепочке блоков (блокчейне). То есть, он расширяет сеть. За это он получает вознаграждение в виде криптовалюты. До недавнего времени в Ethereum тоже была такая система, но сейчас криптовалюту дают за другие действия, и майнинг там ушел в небытие. В TRON криптовалюту тоже не майнят, а выдают за стейкинг.
Суть стейкинга в том, чтобы блокировать определенную часть монет в кошельке для получения права напрямую, или через посредников, участвовать в поддержке работоспособности блокчейн платформы. Грубо говоря, вы даете в пользование свою криптовалюту на время, а вам за это вернут больше, чем взяли.
И да, для тех, кто еще не понял, у каждой криптовалюты своя блокчейн-сеть и своя валюта. У Bitcoin – BTC, Ethereum – ETH, TRON – TRX.
Что такое смарт-контракт
Все очень просто. Смарт-контракт – это обычный алгоритм, код. Его часто называют «цифровой договор», поэтому многих людей это вводит в огромное заблуждение.
Термин смарт-контракт был придуман еще в конце 20 века программистом Ником Сабо. В качестве примера можно рассмотреть торговые автоматы. Вы купили кофе в автомате, машина отдала напиток после того, как в нее попали монеты. Под «капотом» у машины есть какой-то код, который проверяет сумму, валидность монет и после ряда успешных проверок отдает напиток. Это и есть смарт-контракт, тот самый «цифровой договор», который обеспечивает выполнение обязательств между человеком и машиной.
Смарт-контракты впервые были добавлены Виталием Бутыриным в блокчейн Ethereum. После этого некоторые современные блокчейны последовали его примеру, например: TRON, Smart Chain, Solana.
Особенность написания смарт-контрактов в том, что сами «цифровые договоры» программируются на языке программирования Solidity. После публикации смарт-контракта изменить его исходный код нельзя. Поэтому его нужно проверять очень дотошно, иначе его могут взломать. Если вносятся изменения в смарт-контракт, то нужно заново публиковать «договор» и заново просить людей «вписаться» в него. За публикацию смарт-контракта блокчейн берет комиссию в криптовалюте. Смарт-контракт публикуется только в одной сети, хотя ничто не мешает вам опубликовать его копию и в другой.
Примеры смарт-контрактов
Как первый пример смарт-контракта можно рассмотреть популярный токен USDT. Да, для многих будет сейчас шок, но USDT – это не криптовалюта, а именно токен, созданный на базе блокчейна TRON. Если упрощенно: смысл этого смарт-контракта в том, чтобы выпустить N-ое количество монет после публикации смарт-контракта в блокчейне (мы чуть позже чем-то подобным займемся). А дальше эти монеты попадают на биржи и в кошельки людей, а как… это уже тема для другой статьи.
Если вы пользовались Binance и пытались с него вывести USDT на свой личный кошелек, то, возможно, обратили внимание, что нас просят выбрать сеть для вывода:

Если на данный момент ничего не изменилось, то мы можем выбрать либо сеть Ethereum, либо TRON. А все потому, что копии этого смарт-контракта были опубликованы в обеих сетях. Вот ссылка на смарт-контракт USDT для Ethereum, а вот для TRON. Сайт etherscan и tronscan позволяют просмотреть существующий смарт-контракт и информацию о нем.
Все это позволяет бирже легко конвертировать Tether (USDT) внутри кошелька с одной сети на другую без лишних проблем. В итоге, пользователю с этим получается очень удобно работать.
Ну и если развивать эту тему дальше, можно сказать, что BUSD, Dogecoin, WETH – это все тоже не криптовалюта, это все смарт-контракты. Вообще, половина монет на криптобиржах – это все токены, порожденные смарт-контрактами.
Как второй пример, можно рассмотреть проекты, которые чеканят NFT. Например, тут можно создать свой NFT (в правом верхнем углу, если авторизовались).

Работает все очень просто: вы заходите на сайт, связываете свой кошек и сайт, запускаете смарт-контракт, который создает вам NFT. И естественно, он предварительно забирает у вас за это какую-то комиссию в криптовалюте.
Стоп, стоп, стоп. Какой сайт? Какой запуск смарт-контракта через сайт? Это как? Мы надеемся, что в голове у вас появились именно такие вопросы. И это нормально. Чтобы это понять, пора переходить к Solidity.
Что такое Solidity
Зарываемся еще глубже. Надеемся, пока вам нравится получать новые знания.
Solidity – это полноценный язык программирования, с помощью которого пишется смарт-контракт. Смарт-контракты пишутся в объектно-ориентированном стиле, на классах.
Программист (как юрист) составляет контракт, определяет какие-то условия и критерии для выполнения обязательств с помощью Solidity. Далее смарт-контракт загружается за какую-то комиссию в криптовалюте в блокчейн и начинает автономно существовать в блокчейне.
Принцип работы смарт-контракта легко представить бэкенд-разработчику. Загруженный смарт-контракт в блокчейн – это целое миниприложение, это бекенд, живущий своей жизнью. При написании своего кода на Solidity (уже скоро будем это делать), никто программисту не запрещает объявлять свои функции и переменные. А потом их можно вызывать даже из своего сайта. Посмотрите на скриншот ниже:

Программист объявил функцию name()
в смарт-контракте. Функция возвращает имя контракта, которое он указал в другом месте. Далее, этот код был загружен в блокчейн. А на картинке справа, с помощью Node.js и специальной библиотеки от разработчиков блокчейна TRON – tronweb, программист соединяется с блокчейном и вызывает функцию name()
из смарт-контракта. И да, он получает результат в свой Node.js код прямо из блокчейна. К слову, есть версия и для Python, правда, написанная энтузиастом.
Как видите, с помощью таких вещей можно соединять свой смарт-контракт и сайт. В предыдущей главе, где мы рассказывали про примеры смарт-контрактов и обмолвились про NFT, мы как раз про это и говорили.
Никто не мешает сделать сайт, куда пользователь будет загружать свою картинку. Картинка будет превращаться в base64-строку. Этот код мы будем (условно) отправлять в смарт-контракт в блокчейне, передавая аргументом код картинки в base64. В итоге получаем NFT. Монетизацию прикручивайте по желанию – никто вам не мешает в процессе получить за это свою комиссию в криптовалюте. Прямо в Solidity есть нужные для этого методы, просто надо их вызвать в правильном порядке.
Создание своего смарт-контракта и выпуск токена
Наконец-то переходим к самому вкусному. Но перед началом нам все равно нужно кое-что сделать.
Подготовка
Вам нужен браузер, который поддерживает плагины Google Chrome. Еще потребуется обычный офисный компьютер, любой удобный редактор кода и криптокошелек. Хотелось бы сказать любой… но нет, нам потребуется особенный, который поддерживает тестовую сеть – Tronlink. Скачайте его, он нужен лишь для разработки.
Всю работу мы будем проводить в тестовой сети, чтобы не терять реальную криптовалюту, а значит, и реальные деньги. Если что, деплой смарт-контракта в боевую среду почти ничем не отличается от деплоя в тестовую. Разница лишь в финансовых рисках, ну и нет возни с криптокошельком. Там можно будет уже использовать любой, главное, чтобы он поддерживал блокчейн TRON.
Создаем кошелек и получаем криптовалюту
В скачанном и установленном Tronlink нужно создать новый кошелек. Надеемся, тут вы справитесь сами. Как все будет готово, переключите кошелек на работу в тестовой сети Nile:

После этого зайдите на этот сайт и попросите немного тестовой криптовалюты:

Тут хотят, чтобы вы ввели адрес кошелька, его можно скопировать из TronLink (рядом с балансом). Помните, мы находимся в тестовой сети, поэтому все так просто. Криптовалюта тут почти ничего не стоит.
Если по каким-то причинам вы не получили валюту, попробуйте обновить данные в кошельке. Кнопка обновления рядом с шестеренками, напротив изменения сети кошелька.
Стандарты TRC20, TRC721
Через пару мгновений мы зайдем на GitHub и скачаем оттуда «базу» для создания токена. Сразу хотелось бы сказать, что мы будем создавать с вами токен на базе стандарта TRC20. Кратко хотелось бы ввести вас в курс дела, чтобы вы понимали разницу между стандартами.
TRC20 – это чеканка монет на базе самописного смарт-контракта. Что мы начали с вами делать.
TRC721 – это стандарт для создания своего NFT. То есть, если хотите сделать смарт-контракт, который создает NFT, то вам сюда.
Программируем смарт-контракт
Скачиваем базу для создания токена отсюда.

Открываем проект в любимом редакторе кода и идем в файл Token.sol. Тут меняем стандартные значения на свои:

- Имя токена;
- Сокращение, например: BTC – Bitcoin, LTC – Litecoin, TRX – TRON;
- Максимальное число после точки с запятой. В нашем случае – 4. Это значит нашу монету можно будет дробить до 0.0001.
- Общее количество токенов, которое мы выпустим.
Публикуем смарт-контракт
TRON публикует смарт-контракты через сайт – это его основное отличие от Ethereum. В Ethereum публикация происходит через командную строку. Предварительно вам нужно синхронизировать свой компьютер с блокчейном, скачав килотонны данных о транзакциях: а это, на момент написания статьи, 520 ГБ.
По этой ссылке можно опубликовать свой смарт-контракт, но в боевую сеть. Вам это пока не надо. Поэтому идем сюда, тут располагается тестовая сеть Nile.
Нам надо авторизоваться, а потом загрузить наш код со смарт-контрактом. После нажатия на кнопку Upload Contract File(s), выберите все наши файлы (их 5) и загрузите:

Далее, нажимайте на зеленую кнопку Compile, выбирайте версию Solidity 0.5.10, потом Confirm:

Надо подождать какое-то время.
Если все собралось без ошибок и светится зеленым – можете продолжать. Нажмите Deploy:

У вас должно открыться модальное окно, в котором надо сделать еще некоторые действия:

В выпадающем списке Contract name нужно выбрать главный файл, в нашем случае это Token.sol (тут просто Token). Затем нажмите Confirm.
Через какое-то время вас попросят подтвердить операцию в кошельке, сделайте это. Также с вас возьмут комиссию. На момент написания статьи 4 TRX в тестовой сети.
Когда все будет готово, перейдите в свой профиль:

А там в раздел Record a Token, после этого найдите свой смарт-контракт и нажмите Update Token Information:

У вас откроется страница, где нужно заполнить информацию о токене максимально подробно, иначе у него будет статус Scum и его заблокируют:

На странице можно указать ссылку на Github смарт-контракта, ссылки на сайт и загрузить иконку токена. Когда все сделайте, сохраняйте информацию.
Добавляем токен в кошелек
Теперь вам должны предложить перейти на страницу с выпущенными токенами.
К слову, в кошельке у вас должно появиться уведомление в разделе Asset, рядом с кнопкой плюс. Вы можете нажать туда и добавить свой токен. Если этого не произошло, посмотрите на позапрошлый скриншот и вернитесь на страницу Record a Token. Теперь нажмите на имя токена, и вас перебросит на его страницу со смарт-контрактом.
Тут надо нажать на кнопку, которая автоматически добавит токен в кошелек:

Этой кнопки может не быть, если токен пометили как Scum. Если все получилось, то поздравляем, у вас есть свой токен в кошельке:

В рамках тестовой сети Nile можете отправлять его кому угодно и вообще делайте что хотите. Если загруженная картинка не появилась, не беспокойтесь. Тут просто надо подождать.
Итог
Надеемся, это была очень полезная статья и вы узнали много нового о блокчейне и криптовалюте. Узнали, что такое смарт-контракты, поняли их потенциал. Если применить знания, полученные тут в боевой сети TRON, то вы получите уже самую настоящую монету, которую сможете отправить в любой кошелек, который поддерживает сеть TRON.
Естественно, вашу монету никто не допустит до криптобиржи, но не потому, что она сделана не так или просто плохая, а потому что любой монете надо пройти процесс листинга на конкретной бирже. А как вы догадались, процесс этот не из бесплатных и очень дорогой. Но если у вас есть деньги, почему бы нет?
Комментарии
При подписания контракта, TronLink списал все троны 340$ и токена не вышли. Бред...
ОТКАЗ-OUT OF ENERGY> что делать?
Здравствуйте сделал все как говорили выскакивает ошибка контрактра
Здравствуйте! Благодарю за статью. Хочу обратиться за помощью по криптоситуации) Отображается сумма usdt на Trust Wallet без эквивалента в долларах, и мне говорят, что это токен застрял, и можно попробовать вывести? Что это, по Вашему мнению?
Делаю все по мануалу но вылезает вот такая ошибка. Гуглинг не дал результатов. Очень не хочу развертывать на BSC
Да, делаю все в тестовой сети, как у вас
Здравствуйте! Понимаю, что статья написана давно... Делаю все как вы написали. При компиляции ошибок не выскакивает. В профиле появляется контракт, но без названия и сразу блокируется. Что то поменялось? Или спецом убрали?)
А этот токен, если сделать так как вы описали, совсем не помайнить ? (
Нет конечно, токены не майнятся в привычном понимании. Майнить можно лишь криптовалюту, а токен не криптовалюта, а лишь смарт-контракт.
P.S: Может быть кто-нибудь сделает блокчейн сеть с возможность создавать токены, которые можно майнить, но я пока такие не знаю.
P.S.S: Можно выпустить огромное кол-во таких токенов на базе TRC20 и сделать какой-то сервер, который будет зачислять токены на кошелек пользователя за какие-то действия. Например, за часы проведенные в игре. Но это все равно не то)))
Моим ребятам очень нравится майнить))) Теперь вот придется что то думать исходя из того, что никак... Сложнее конечно ,но попробовать можно что то сделать ! Возможно сделаю обменник))) Там намайнили - тут на токен поменяли)))) + у меня останется ТА часть ,которую можно тупо продать)))) А ? Как мысля ? :)) И сделать примерно так - намайнить можно например 20 000 000 , будет возможность поменять их например 1 к 1 , а токенов будет 31 000 000
Кстати, раз уж началось общение - сколько мне понадобится TRX ,чтобы например хватило на 31 000 000 монет ? Я так понял от количества токенов напрямую цена устанавливается ? Или как там ? Или там по умолчанию принципиально 10 000 000 000 токенов можно сделать ?
А то застрял вот на этом месте....
Кароч кинул для начала 10 доллеров Сделал комиляцию, нажал DEPLOY Написали что то типа "ваши денюшки типа фсо..." Ок ,думаю, кину еще 50 доллеров ,далее DEPLOY, потом вуаля 33 с копьем доллеров оставили))
В общем за 27 доллеров эта история мне обошлась по стоимости. В тронах это примерно... 390-404 тронеков.
Это для тех ,кто не в курсах по чем нынче халява))))
В тестовой сети все бесплатно)))))
Ну тогда хз ,почему то пришлось бабок внести.. И на тестовой не получилось как у вас описано...