
Смарт-контракт — это компьютерный протокол, предназначенный для распространения, проверки или исполнения контрактов на основе информации.Смарт-контракты допускают надежные транзакции без участия третьей стороны.Эти транзакции отслеживаются и необратимы.Целью смарт-контрактов является обеспечение лучших методов безопасности, чем традиционные контракты, и снижение других транзакционных издержек, связанных с контрактами.
Нормализация: смарт-контракт основан на компьютерном коде, который может свести к минимуму двусмысленность языка и представлен через строгую логическую структуру.
Необратимость: как только условия будут выполнены, контракт автоматически выполнит ожидаемый план. При заданном вводе фактов смарт-контракт неизбежно выдаст правильные результаты и будет визуализирован на горизонте отображения.
Не по умолчанию: информация о транзакциях в блокчейне открыта и прозрачна. Каждый узел может отслеживать процесс транзакции, записанный в блокчейне. Вероятность дефолта крайне мала.
Анонимность: в соответствии с криптографическим принципом асимметричного шифрования, доказательством с нулевым разглашением, кольцевой подписью, слепой подписью и другими технологиями, в блокчейне, хотя процесс транзакции является публичным, стороны транзакции анонимны.
Прежде всего, он удалил посредника. Разрешить пользователям самостоятельно заключать контракты на основе технологии.
Во-вторых, прозрачность и справедливость. Смарт-контракт будет использовать код для четкого изложения условий и их записи в блокчейне. Весь процесс выполняется программой, и даже разработчик, написавший код, не может вмешаться в него.
В-третьих, гибкость. Это позволяет пользователям свободно заключать контракты даже с незнакомым иностранцем. В целом, смарт-контракт является одной из основных технологий блокчейна. Он не только играет исполнительную роль в блокчейне, но и является направлением разработки приложений блокчейна, которое расширяет сценарии использования блокчейна. Из-за его существования блокчейн имеет более широкую стадию развития.
Языком смарт-контрактов, используемым TFSC, является Solidity, который является объектно-ориентированным языком программирования высокого уровня. EVM, принятый TFSC, поддерживает большинство функций стандарта Solidity, а также ERC-20, ERC-721, ERC-3525 и другие контрактные стандарты. По сравнению с Ethereum стоимость внедрения TFSC contract ниже, а скорость создания цепочки выше.Другие функции были скорректированы в соответствии с моделью архитектуры TFSC, и конкретные различия будут подробно описаны в следующих разделах.
Вы должны быть знакомы с языком Solidity, чтобы использовать функции, связанные со смарт-контрактом. Ссылки на Solidity следующие: -Документ Solidity -Код операции EVM -Примеры написания Solidity
Смарт-контракты должны быть скомпилированы в байт-код EVM для развертывания и выполнения. Вот ссылка для компиляции смарт-контрактов Solidity: Ремикс, Документ ремикса
Характеристики TFSC, которые отличаются от стандарта Solidity из-за его архитектурной модели, следующие:
Базовой единицей перевода валюты TFSC в контракте является 1e-8 TFSC
Контракт не поддерживает блочные переменные
Адрес учетной записи TFSC включает в себя несколько адресов смарт-контракта
На данный момент TFSC поддерживает развертывание и исполнение контрактов на узлах, поэтому, если вы хотите развернуть контракты, вам необходимо иметь торгуемый, работающий узел и учетную запись с определенным количеством монет TFSC для оплаты сборов за обслуживание, генерируемых в процессе развертывания. Двоичный код смарт-контракта. В Remix IDE БАЙТ-КОД.object или Calldata представлен в виде строки шестнадцатеричных цифр.
Создайте новый пустой текстовый файл contract.txt и вставьте двоичный код контракта в файл
Скопируйте файл contract.txt в папку узла TFSC
Запуск узла
Выполнить пункт меню.
Выберите тип виртуальной машины, на которой выполняется контракт
Если конструктор контракта имеет входящие параметры, введите двоичный код параметров, необходимый для развертывания (если в contract.txt есть Calldata, пропустите напрямую), в противном случае введите 0 для пропуска.
Как и при развертывании контрактов, выполнение контрактов может выполняться на узлах только временно. Кроме того, также необходимо знать учетную запись разработчика контракта и хэш транзакции, сгенерированный транзакцией развертывания.
Меню запуска
Войдите в учетную запись разработчика контракта
Введите хэш транзакции для всего запущенного развертывания контракта
Введите входные данные, необходимые для запуска контракта, чтобы завершить выполнение контракта
