Buku Putih TRON
Введение
1.1 Видение
TRON — амбициозный проект, посвященный созданию по-настоящему децентрализованного Интернета и его
инфраструктура. Протокол TRON, одна из крупнейших операционных систем на базе blockchain в мире.
мире предлагает общедоступную blockchain поддержку высокой пропускной способности, высокой масштабируемости и высокой доступности для
все децентрализованные приложения (DApps) в экосистеме TRON. Приобретение в июле 2018 г.
BitTorrent еще больше укрепил лидерство TRON в создании децентрализованной экосистемы.
1.2 Предыстория
Введение Bitcoin в 2009 году произвело революцию в восприятии обществом традиционных финансовых системы после Великой рецессии (2007-2008 гг.). Централизованные хедж-фонды и банки рухнула из-за спекуляций с непрозрачными производными финансовыми инструментами, технология blockchain предоставила прозрачный универсальный реестр, из которого каждый может получить информацию о транзакциях. транзакции были криптографически защищены с использованием механизма консенсуса Proof of Work (PoW), тем самым предотвращая проблемы двойного расходования.
В конце 2013 года в официальном документе Ethereum была предложена сеть, в которой smart contracts и Полная по Тьюрингу виртуальная машина Ethereum (EVM) позволит разработчикам взаимодействовать с сеть через DApps. Однако, поскольку объемы транзакций в Bitcoin и Ethereum достигли пика в 2017 году, это было очевидно по низкой скорости обработки транзакций и высоким комиссиям за транзакции, что криптовалюты, такие как Bitcoin и Ethereum, в их существующем состоянии не были масштабируемы для широкого распространения. усыновление. Таким образом, TRON был основан и задуман как инновационное решение этих насущных проблем. проблемы масштабируемости.

1.3 История TRON DAO была основана в июле 2017 года в Сингапуре. В декабре 2017 года у TRON было запустил свой протокол с открытым исходным кодом. Testnet, Blockchain Explorer и веб-кошелек были запущен к марту 2018 года. TRON Основная сеть была запущена вскоре после этого, в мае 2018 года, ознаменовав Выпуск Odyssey 2.0 как техническая веха. В июне 2018 года TRON провозгласил свою независимость. с созданием блока Genesis, а также с приобретением BitTorrent в июле 2018 года. В В октябре 2018 года TRON запустил виртуальную машину TRON (TVM), полный набор инструментов для разработчиков, и система поддержки 360. Дорожная карта TRON предполагает объединение 100 миллионов пользователей BitTorrent. с сетью TRON через Project Atlas, а также способствовать запуску сообщества разработчиков новые захватывающие DApps в сети TRON1. 1 версия 1.0 доступна по адресу https://tron.network/static/doc/white_paper_v_1_0.pdf.
1.4 Терминология
Адрес/Кошелек Адрес или кошелек, состоящий из учетных данных учетной записи в сети TRON, генерируется пара ключей, состоящая из закрытого ключа и открытого ключа, причем последний является производным от первого. через алгоритм. Открытый ключ обычно используется для шифрования сеансового ключа, подписи верификация и шифрование данных, которые могут быть расшифрованы соответствующим секретным ключом.
АБИ Бинарный интерфейс приложения (ABI) — это интерфейс между двумя двоичными программными модулями; обычно один из этих модулей представляет собой библиотеку или средство операционной системы, а другой — запускаемый пользователем программа.
API Интерфейс прикладного программирования (API) в основном используется для разработки пользовательских клиентов. С API поддержка, платформы выдачи token также могут быть разработаны самими разработчиками.
Актив В документах TRON актив аналогичен token, который также обозначается как TRC-10 token.
Очки пропускной способности (BP) Чтобы обеспечить бесперебойную работу сети, сетевые транзакции TRON используют BP в качестве топлива. Каждый аккаунт получает 5000 бесплатных ежедневных BP, и еще больше можно получить, заморозив TRX за BP. И TRX, и TRC-10. Переводы token — это обычные транзакции, стоимость которых составляет BP. Развертывание и исполнение смарт-контракта транзакции потребляют как BP, так и энергию.
Блокировать Блоки содержат цифровые записи транзакций. Полный блок состоит из магического числа, размер блока, заголовок блока, счетчик транзакций и данные транзакции.
Блокировать вознаграждение Награды за производство блоков отправляются на субсчет (адрес/кошелек). Суперпредставители могут запросите свои вознаграждения на Tronscan или напрямую через API.
Заголовок блока Заголовок блока является частью блока. Заголовки блоков TRON содержат hash предыдущего блока, Корень Меркла, временная метка, версия и адрес-свидетель.Холодный кошелек Холодный кошелек, также известный как автономный кошелек, сохраняет закрытый ключ полностью отключенным от любого сеть. Холодные кошельки обычно устанавливаются на «холодные» устройства (например, компьютеры или мобильные телефоны). оставаясь в автономном режиме), чтобы обеспечить безопасность закрытого ключа TRX.
Децентрализованное приложение Децентрализованное приложение — это приложение, которое работает без централизованно доверенной стороны. Приложение что обеспечивает прямое взаимодействие/договоры/коммуникацию между конечными пользователями и/или ресурсами без посредника.
gRPC gRPC (вызовы удаленных процедур gRPC) — это система удаленного вызова процедур (RPC) с открытым исходным кодом. 2 изначально разработанный в Google. Он использует HTTP/2 для транспорта, буферы протокола в качестве интерфейса. язык описания и предоставляет такие функции, как аутентификация, двунаправленная потоковая передача и поток контрольные, блокирующие или неблокирующие привязки, а также отмену и тайм-ауты. Он генерирует кроссплатформенные привязки клиента и сервера для многих языков. Наиболее распространенные сценарии использования включать подключение сервисов в архитектуре в стиле микросервисов и подключение мобильных устройств, а также браузерные клиенты для серверных служб.
Горячий кошелек Горячий кошелек, также известный как онлайн-кошелек, позволяет использовать закрытый ключ пользователя онлайн, поэтому его можно подвержены потенциальным уязвимостям или перехвату злоумышленниками.
ЯДК Java Development Kit — это Java SDK, используемый для приложений Java. Это ядро Java разработка, включающая среду приложений Java (библиотека классов JVM+Java) и Java инструменты.
ХаосДБ TRON имеет KhaosDB в памяти полного узла, в которой могут храниться все созданные вновь разветвленные цепочки. в течение определенного периода времени и помогает свидетелям быстро переключаться с их собственной активной цепочки в новую основную цепь. Дополнительную информацию см. в разделе 2.2.2 Хранилище состояний.
УровеньБД Изначально LevelDB был принят с основной целью удовлетворить требования быстрого чтения/записи и быстрого развитие. После запуска основной сети TRON обновил свою базу данных до полностью адаптированной каждый удовлетворял свои собственные потребности. Более подробную информацию см. в разделе 2.2.1 «Хранилище блокчейна».
Меркл Рут Корень Меркла — это hash всех hash всех транзакций, включенных как часть блока в blockchain. сеть. Дополнительную информацию см. в разделе 3.1 «Делегированное подтверждение доли» (DPoS). 2 https://en.wikipedia.org/wiki/GRPC

Публичная тестовая сеть (Шаста) Версия сети, работающая в одноузловой конфигурации. Разработчики могут подключиться и протестировать функции, не беспокоясь об экономических потерях. Тестовые сети token не имеют никакой ценности, и каждый может это сделать. запросите больше у общедоступного крана.
ПКП
3
В распределенных вычислениях удаленный вызов процедур (RPC) — это когда компьютерная программа вызывает
процедура (подпрограмма) для выполнения в другом адресном пространстве (обычно на другом компьютере на
общая сеть), который закодирован так, как если бы это был обычный (локальный) вызов процедуры, без
программист явно кодирует детали удаленного взаимодействия.
Масштабируемость Масштабируемость — это особенность протокола TRON. Это способность системы, сети или процесса справляться с растущим объемом работы или ее потенциалом для увеличения, чтобы приспособиться к этому росту.
СОЛНЦЕ SUN заменил drop как наименьшую единицу TRX. 1 TRX = 1 000 000 СОЛНЦЕВ.
Пропускная способность Высокая пропускная способность — особенность основной сети TRON. Он измеряется в транзакциях в секунду (TPS), а именно максимальная пропускная способность транзакций за одну секунду.
Временная метка Примерное время создания блока записывается как временная метка Unix, которая представляет собой количество миллисекунды, прошедшие с 00:00:00 1 января 1970 года по всемирному координированному времени.
ТКС Конфигурация токена.
ТРК-10 Стандарт шифрования token на платформе TRON. Необходимо соблюдать определенные правила и интерфейсы. при проведении первичного предложения монет TRON blockchain.
ТРХ TRX означает Tronix, официальную криптовалюту TRON.
3 https://en.wikipedia.org/wiki/Remote_procedure_call
Perkenalan
1.1 Visi
TRON adalah proyek ambisius yang didedikasikan untuk pembentukan Internet yang benar-benar terdesentralisasi dan teknologinya
infrastruktur. Protokol TRON, salah satu sistem operasi berbasis blockchain terbesar di dunia
dunia, menawarkan dukungan blockchain publik dengan throughput tinggi, skalabilitas tinggi, dan ketersediaan tinggi untuk
semua Aplikasi Terdesentralisasi (DApps) di ekosistem TRON. Akuisisi Juli 2018 atas
BitTorrent semakin mengukuhkan kepemimpinan TRON dalam mewujudkan ekosistem terdesentralisasi.
1.2 Latar Belakang
Pengenalan Bitcoin pada tahun 2009 merevolusi persepsi masyarakat terhadap keuangan tradisional sistem setelah Resesi Hebat (2007-2008). Seperti dana lindung nilai terpusat dan bank runtuh karena spekulasi derivatif keuangan yang tidak jelas, blockchain teknologi menyediakan a buku besar universal yang transparan dimana siapa pun dapat memperoleh informasi transaksi. Itu transaksi diamankan secara kriptografis menggunakan mekanisme konsensus Proof of Work (PoW), sehingga mencegah masalah pembelanjaan ganda.
Pada akhir tahun 2013, buku putih Ethereum mengusulkan jaringan di mana smart contracts dan a Mesin Virtual Ethereum Turing-complete (EVM) akan memungkinkan pengembang untuk berinteraksi dengan jaringan melalui DApps. Namun, karena volume transaksi pada Bitcoin dan Ethereum mencapai puncaknya pada tahun 2017, Hal ini terlihat dari rendahnya waktu proses transaksi dan tingginya biaya transaksi mata uang kripto seperti Bitcoin dan Ethereum dalam kondisi saat ini tidak dapat diskalakan untuk digunakan secara luas adopsi. Oleh karena itu, TRON didirikan dan diharapkan sebagai solusi inovatif untuk permasalahan mendesak ini tantangan skalabilitas.

1.3 Sejarah TRON DAO didirikan pada Juli 2017 di Singapura. Pada bulan Desember 2017, TRON telah meluncurkan protokol sumber terbukanya. Testnet, Blockchain Explorer, dan Web Wallet semuanya diluncurkan pada bulan Maret 2018. TRON Mainnet diluncurkan segera setelahnya pada bulan Mei 2018, menandai Rilis Odyssey 2.0 sebagai tonggak teknis. Pada bulan Juni 2018, TRON mendeklarasikan kemerdekaannya dengan pembuatan blok Genesis, bersamaan dengan akuisisi BitTorrent pada Juli 2018. Di Oktober 2018, TRON meluncurkan TRON Mesin Virtual (TVM), perangkat pengembang yang lengkap, dan sistem pendukung 360. Peta jalan TRON melibatkan penggabungan 100 juta pengguna BitTorrent dengan jaringan TRON melalui Project Atlas, serta membina komunitas pengembang untuk meluncurkan DApps baru yang menarik di jaringan TRON1. 1 V1.0 tersedia di https://tron.network/static/doc/white_paper_v_1_0.pdf
1.4 Terminologi
Alamat/Dompet Alamat atau dompet yang berisi kredensial akun di jaringan TRON dihasilkan oleh a pasangan kunci, yang terdiri dari kunci privat dan kunci publik, yang terakhir berasal dari kunci publik melalui suatu algoritma. Kunci publik biasanya digunakan untuk enkripsi kunci sesi, tanda tangan verifikasi, dan mengenkripsi data yang dapat didekripsi dengan kunci pribadi yang sesuai.
ABI Antarmuka biner aplikasi (ABI) adalah antarmuka antara dua modul program biner; biasanya salah satu modul ini adalah perpustakaan atau fasilitas sistem operasi, dan yang lainnya dijalankan oleh pengguna program.
API Antarmuka pemrograman aplikasi (API) terutama digunakan untuk pengembangan klien pengguna. Dengan API dukungan, platform penerbitan token juga dapat dirancang oleh pengembang sendiri.
Aset Dalam dokumen TRON, aset sama dengan token, yang juga dinotasikan sebagai TRC-10 token.
Titik Bandwidth (BP) Agar jaringan tetap beroperasi dengan lancar, TRON transaksi jaringan menggunakan BP sebagai bahan bakarnya. Setiap akun mendapat 5000 BP harian gratis dan lebih banyak lagi dapat diperoleh dengan membekukan TRX untuk BP. Baik TRX maupun TRC-10 token transfer adalah transaksi normal yang dikenakan biaya BP. Penerapan dan eksekusi kontrak cerdas transaksi mengkonsumsi BP dan Energi.
Blokir Blok berisi catatan digital transaksi. Satu blok lengkap terdiri dari angka ajaib, ukuran blok, header blok, penghitung transaksi, dan data transaksi.
Blokir Hadiah Hadiah produksi blok dikirim ke sub-akun (alamat/dompet). Perwakilan Super bisa klaim hadiahnya di Tronscan atau melalui API secara langsung.
Blokir Tajuk Header blok adalah bagian dari sebuah blok. TRON header blok berisi hash blok sebelumnya, Merkle root, stempel waktu, versi, dan alamat saksi.Dompet Dingin Dompet dingin, juga dikenal sebagai dompet offline, menjaga kunci pribadi tetap terputus dari siapa pun jaringan. Dompet dingin biasanya dipasang pada perangkat "dingin" (misalnya komputer atau ponsel tetap offline) untuk memastikan keamanan kunci pribadi TRX.
DApp Aplikasi Terdesentralisasi adalah Aplikasi yang beroperasi tanpa pihak yang dipercaya secara terpusat. Sebuah aplikasi yang memungkinkan interaksi/kesepakatan/komunikasi langsung antara pengguna akhir dan/atau sumber daya tanpa perantara.
gRPC gRPC (Panggilan Prosedur Jarak Jauh gRPC) adalah sistem panggilan prosedur jarak jauh (RPC) sumber terbuka 2 awalnya dikembangkan di Google. Ia menggunakan HTTP/2 untuk transportasi, Protocol Buffer sebagai antarmuka bahasa deskripsi, dan menyediakan fitur seperti otentikasi, streaming dan aliran dua arah kontrol, pengikatan pemblokiran atau non-pemblokiran, serta pembatalan dan batas waktu. Ini menghasilkan pengikatan klien dan server lintas platform untuk banyak bahasa. Skenario penggunaan paling umum termasuk menghubungkan layanan dalam arsitektur gaya layanan mikro dan menghubungkan perangkat seluler, dan klien browser ke layanan backend.
Dompet Panas Dompet panas, juga dikenal sebagai dompet online, memungkinkan kunci pribadi pengguna untuk digunakan secara online, sehingga bisa saja digunakan rentan terhadap potensi kerentanan atau intersepsi oleh aktor jahat.
JDK Java Development Kit adalah Java SDK yang digunakan untuk aplikasi Java. Ini adalah inti dari Jawa pengembangan, terdiri dari lingkungan aplikasi Java (perpustakaan kelas JVM+Java) dan Java alat.
KhaosDB TRON memiliki KhaosDB di memori node penuh yang dapat menyimpan semua rantai bercabang yang baru dihasilkan dalam jangka waktu tertentu dan mendukung saksi untuk beralih dari rantai aktifnya dengan cepat menjadi rantai utama yang baru. Lihat 2.2.2 Penyimpanan Status untuk lebih jelasnya.
TingkatDB LevelDB awalnya diadopsi dengan tujuan utama untuk memenuhi persyaratan R/W yang cepat dan cepat pengembangan. Setelah meluncurkan Mainnet, TRON meningkatkan basis datanya menjadi sepenuhnya disesuaikan seseorang memenuhi kebutuhannya sendiri. Lihat 2.2.1 Penyimpanan Blockchain untuk lebih jelasnya.
Akar Merkle Akar Merkle adalah hash dari semua hashes dari semua transaksi yang dimasukkan sebagai bagian dari blok dalam blockchain jaringan. Lihat 3.1 Bukti Kepemilikan yang Didelegasikan (DPoS) untuk rincian lebih lanjut. 2 https://en.wikipedia.org/wiki/GRPC

Testnet Publik (Shasta) Versi jaringan yang berjalan dalam konfigurasi node tunggal. Pengembang dapat terhubung dan menguji fitur tanpa khawatir tentang kerugian ekonomi. Testnet tokens tidak memiliki nilai dan siapa pun bisa meminta lebih banyak dari faucet publik.
RPC
3
Dalam komputasi terdistribusi, panggilan prosedur jarak jauh (RPC) adalah ketika program komputer menyebabkan a
prosedur (subrutin) untuk dieksekusi di ruang alamat yang berbeda (biasanya di komputer lain di
jaringan bersama), yang diberi kode seolah-olah itu adalah panggilan prosedur normal (lokal), tanpa
programmer secara eksplisit mengkodekan detail untuk interaksi jarak jauh.
Skalabilitas Skalabilitas adalah fitur Protokol TRON. Ini adalah kemampuan suatu sistem, jaringan, atau proses untuk menangani peningkatan jumlah pekerjaan atau potensinya untuk diperluas guna mengakomodasi pertumbuhan tersebut.
MATAHARI SUN menggantikan drop sebagai unit terkecil TRX. 1 TRX = 1.000.000 MATAHARI.
Hasil Throughput tinggi adalah fitur TRON Mainnet. Diukur dalam Transaksi Per Detik (TPS), yaitu kapasitas transaksi maksimal dalam satu detik.
Stempel waktu Perkiraan waktu produksi blok dicatat sebagai stempel waktu Unix, yang merupakan jumlah milidetik yang telah berlalu sejak 00:00:00 01 Jan 1970 UTC.
TKC Konfigurasi token.
KKR-10 Standar kripto token pada platform TRON. Aturan dan antarmuka tertentu harus diikuti saat mengadakan penawaran koin perdana pada TRON blockchain.
TRX TRX adalah singkatan dari Tronix, yang merupakan mata uang kripto resmi TRON.
3 https://en.wikipedia.org/wiki/Remote_procedure_call
Архитектура
TRON использует трехуровневую архитектуру, разделенную на уровень хранения, базовый уровень и уровень приложения. Протокол TRON соответствует Google Protobuf, который поддерживает многоязычность. расширение.

Рисунок 1: TRON 3-уровневая архитектура
2.1 Ядро
На базовом уровне имеется несколько модулей, в том числе smart contracts, управление учетными записями и консенсус. Виртуальная машина на основе стека реализована на TRON и оптимизирована инструкция используется набор. Чтобы лучше поддерживать разработчиков DApp, Solidity был выбран в качестве smart contract. 4 язык, с последующей поддержкой других продвинутых языков. Кроме того, консенсус TRON механизм основан на делегированном доказательстве доли (DPoS), и в него было внесено множество нововведений. чтобы удовлетворить его уникальные требования. 2.2 Хранение
TRON разработал уникальный протокол распределенного хранения, состоящий из блочного хранилища и состояния. Хранение. Понятие графовой базы данных было введено в конструкцию уровня хранения для лучше удовлетворять потребности в диверсифицированном хранении данных в реальном мире. 2.2.1 Хранилище блокчейна
TRON blockchain хранилище выбирает использование LevelDB, разработанного Google и проверенного успешен во многих компаниях и проектах. Он имеет высокую производительность и поддерживает произвольные байты. массивы как ключи и значения, получение, добавление и удаление в единственном числе, пакетное добавление и удаление, двунаправленное итераторы и простое сжатие с использованием очень быстрого алгоритма Snappy. 2.2.2 Хранилище состояний
TRON имеет KhaosDB в памяти полного узла, в которой могут храниться все вновь сгенерированные раздвоенные цепочки. в течение определенного периода времени и помогает свидетелям быстро переключаться с их собственной активной цепочки в новую основную цепь. Он также может защитить хранилище blockchain, сделав его более стабильным от взлома. аномально завершается в промежуточном состоянии. 2.3 Применение
Разработчики могут создавать разнообразные DApps и индивидуальные кошельки на TRON. С TRON позволяет развертывать и выполнять smart contracts, возможности служебных приложений безлимитный. 4 Официальная документация Solidity: https://solidity.readthedocs.io/
2.4 Протокол
Протокол TRON соответствует протоколу Google Protocol Buffers , который не зависит от языка и платформы, 5 расширяемый способ сериализации структурированных данных для использования в протоколах связи, хранилищах данных, и многое другое. 2.4.1 Буферы протоколов
Протокольные буферы (Protobuf) — это гибкий, эффективный, автоматизированный механизм сериализации структурированных данных. данные, похожие на JSON или XML, но намного меньше, быстрее и проще.
Определения Protobuf (.proto) можно использовать для создания кода для C++, Java, C#, Python, Ruby, Golang и Objective-C через официальные генераторы кода. Различные сторонние реализации также доступны для многих других языков. Protobuf упрощает разработку клиентов путем унификации определений API, а также оптимизации передачи данных. Клиенты могут использовать API .proto из репозитория протоколов TRON и интегрируйте его с помощью автоматически сгенерированного кода. библиотеки.
Для сравнения, протокольные буферы в 3–10 раз меньше и в 20–100 раз быстрее, чем XML. с менее двусмысленным синтаксисом. Protobuf генерирует классы доступа к данным, которые проще использовать. программно. 2.4.2 HTTP
TRON Протокол предоставляет RESTful HTTP API, альтернативу Protobuf API. Они разделяют то же самое интерфейс, но HTTP API можно легко использовать в клиентах JavaScript. 2.5 TRON Виртуальная машина (TVM)
TVM — это легкая, полная по Тьюрингу виртуальная машина, разработанная для экосистемы TRON.
TVM легко соединяется с существующей экосистемой разработки, предоставляя миллионам глобальных
разработчики с помощью специально созданной системы blockchain, которая является эффективной, удобной, стабильной, безопасной и
масштабируемый.
2.6 Децентрализованная биржа (DEX)
5 Официальная документация Google Protocol Buffers: https://developers.google.com/protocol-buffers/Сеть TRON изначально поддерживает функции децентрализованного обмена. Децентрализованная биржа состоит из нескольких торговых пар. Торговая пара (обозначение «Биржа») – это биржевой рынок. между TRC-10 token или между TRC-10 token и TRX. Любой счет может создать торговый создать пару между любыми token, даже если такая же пара уже существует в сети TRON. Торговля и Колебания цен торговых пар следуют протоколу Bancor. Сеть TRON предусматривает, что 6 веса двух token во всех торговых парах равны, поэтому соотношение их балансов и есть цена между ними. Например, рассмотрим торговую пару, содержащую два token, ABC и DEF. У ABC есть баланс составляет 10 миллионов, а баланс DEF составляет 1 миллион. Поскольку их веса равны, 10 ABC = 1 ЗАЩ. Это означает, что отношение ABC к DEF составляет 10 ABC на DEF. 2.7 Реализация
Код TRON blockchain реализован на Java и изначально был ответвлением EthereumJ.
6 Официальный сайт Bancor Protocol: https://about.bancor.network/protocol/
Arsitektur
TRON mengadopsi arsitektur 3 lapisan yang dibagi menjadi Lapisan Penyimpanan, Lapisan Inti, dan Lapisan Aplikasi. Protokol TRON mematuhi Google Protobuf, yang secara intrinsik mendukung multi-bahasa ekstensi.

Gambar 1: TRON Arsitektur 3 Lapisan
2.1 Inti
Ada beberapa modul di lapisan inti, termasuk smart contracts, manajemen akun, dan konsensus. Mesin virtual berbasis tumpukan diimplementasikan pada TRON dan instruksi yang dioptimalkan set digunakan. Untuk lebih mendukung pengembang DApp, Solidity dipilih sebagai smart contract 4 bahasa, diikuti dengan dukungan masa depan untuk bahasa tingkat lanjut lainnya. Selain itu, konsensus TRON mekanismenya didasarkan pada Delegated Proof of Stake (DPoS) dan banyak inovasi yang dilakukan dalam untuk memenuhi persyaratan uniknya. 2.2 Penyimpanan
TRON merancang protokol penyimpanan terdistribusi unik yang terdiri dari Block Storage dan State Penyimpanan. Gagasan tentang database grafik diperkenalkan ke dalam desain lapisan penyimpanan untuk lebih baik memenuhi kebutuhan penyimpanan data yang terdiversifikasi di dunia nyata. 2.2.1 Penyimpanan Blockchain
Penyimpanan TRON blockchain memilih menggunakan LevelDB, yang dikembangkan oleh Google dan terbukti sukses dengan banyak perusahaan dan proyek. Ini memiliki kinerja tinggi dan mendukung byte sewenang-wenang array sebagai kunci dan nilai, pengambilan tunggal, penempatan dan penghapusan, penempatan dan penghapusan batch, dua arah iterator, dan kompresi sederhana menggunakan algoritma Snappy yang sangat cepat. 2.2.2 Penyimpanan Negara
TRON memiliki KhaosDB di memori node penuh yang dapat menyimpan semua rantai bercabang yang baru dihasilkan dalam jangka waktu tertentu dan mendukung saksi untuk beralih dari rantai aktifnya dengan cepat menjadi rantai utama yang baru. Ini juga dapat melindungi penyimpanan blockchain dengan membuatnya lebih stabil berakhir secara tidak normal dalam keadaan peralihan. 2.3 Aplikasi
Pengembang dapat membuat beragam DApps dan dompet khusus di TRON. Sejak TRON memungkinkan smart contracts untuk dikerahkan dan dijalankan, peluang aplikasi utilitas adalah tidak terbatas. 4 Dokumentasi resmi soliditas: https://solidity.readthedocs.io/
2.4 Protokol
Protokol TRON mematuhi Google Protocol Buffer , yang netral bahasa, netral platform, 5 dan cara yang dapat diperluas untuk membuat serialisasi data terstruktur untuk digunakan dalam protokol komunikasi, penyimpanan data, dan banyak lagi. 2.4.1 Buffer Protokol
Protocol Buffers (Protobuf) adalah mekanisme otomatis yang fleksibel, efisien untuk membuat serialisasi terstruktur data, mirip dengan JSON atau XML, tetapi jauh lebih kecil, lebih cepat, dan sederhana.
Definisi Protobuf (.proto) dapat digunakan untuk menghasilkan kode untuk C++, Java, C#, Python, Ruby, Bahasa Golang, dan Objective-C melalui generator kode resmi. Berbagai pihak ketiga implementasi juga tersedia untuk banyak bahasa lainnya. Protobuf memudahkan pengembangan klien dengan menyatukan definisi API dan juga mengoptimalkan transfer data. Klien dapat mengambil API .proto dari repositori protokol TRON dan berintegrasi melalui kode yang dibuat secara otomatis perpustakaan.
Sebagai perbandingan, Protocol Buffer berukuran 3 hingga 10 kali lebih kecil dan 20 hingga 100 kali lebih cepat dibandingkan XML, dengan sintaksis yang tidak terlalu ambigu. Protobuf menghasilkan kelas akses data yang lebih mudah digunakan secara terprogram. 2.4.2 HTTP
TRON Protokol menyediakan alternatif API HTTP RESTful untuk API Protobuf. Mereka berbagi hal yang sama antarmuka tetapi HTTP API dapat dengan mudah digunakan di klien javascript. 2.5 TRON Mesin Virtual (TVM)
TVM adalah mesin virtual lengkap Turing yang ringan dan dikembangkan untuk ekosistem TRON. Itu
TVM terhubung secara mulus dengan ekosistem pengembangan yang ada untuk menyediakan kebutuhan bagi jutaan orang di seluruh dunia
pengembang dengan sistem blockchain yang dibuat khusus yang efisien, nyaman, stabil, aman, dan
terukur.
2.6 Pertukaran Terdesentralisasi (DEX)
5 dokumentasi resmi Buffer Protokol Google: https://developers.google.com/protocol-buffers/Jaringan TRON secara asli mendukung fungsi pertukaran yang terdesentralisasi. Pertukaran yang terdesentralisasi terdiri dari beberapa pasangan perdagangan. Pasangan dagang (notasi “Bursa”) adalah Pasar Bursa antara TRC-10 tokens, atau antara TRC-10 token dan TRX. Akun mana pun dapat membuat perdagangan berpasangan di antara token mana pun, meskipun pasangan yang sama sudah ada di jaringan TRON. Perdagangan dan fluktuasi harga pasangan dagang mengikuti Protokol Bancor. Jaringan TRON menetapkan hal itu 6 bobot kedua token di semua pasangan dagang adalah sama, jadi rasio saldonya adalah harga di antara mereka. Misalnya, pertimbangkan pasangan perdagangan yang berisi dua token, ABC dan DEF. ABC punya saldo 10 juta dan DEF saldo 1 juta. Karena bobotnya sama, 10 ABC = 1 DEF. Artinya perbandingan ABC terhadap DEF adalah 10 ABC per DEF. 2.7 Implementasi
Kode TRON blockchain diimplementasikan di Java dan awalnya merupakan cabang dari EthereumJ.
6 Situs resmi Protokol Bancor: https://about.bancor.network/protocol/
Консенсус
3.1 Делегированное подтверждение доли (DPoS)
Самым ранним механизмом консенсуса является механизм консенсуса Proof of Work (PoW). Это протокол в настоящее время реализован в Bitcoin и Ethereum. В системах PoW транзакции 7 8 трансляции по сети группируются в формирующиеся блоки для подтверждения майнера. процесс подтверждения включает в себя hashтранзакцию с использованием криптографических hashалгоритмов до тех пор, пока достигнут корень Меркла, создаётся дерево Меркла:
Рисунок 2: 8 транзакций TRX hash в корне Merkle. Этот корень Меркла затем включается в заголовок блока, который прикрепляется к ранее подтвержденным блокам, образуя blockchain. Это позволяет легко и прозрачно отслеживать транзакции, временные метки и другая соответствующая информация.
7 Bitcoin технический документ: https://bitcoin.org/bitcoin.pdf 8 Ethereum технический документ: https://github.com/ethereum/wiki/wiki/White-Paper
Криптографические алгоритмы hash полезны для предотвращения сетевых атак, поскольку они обладают
несколько свойств:
9
●
Размер входной/выходной длины. Алгоритм может передавать входные данные любой длины и
выводит значение hash фиксированной длины.
●
Эффективность. Алгоритм относительно прост и быстр в вычислении.
●
Сопротивление прообраза. Для данного выхода z невозможно найти какой-либо вход x такой, что
h(x) = z. Другими словами, алгоритм hashing h(x) представляет собой одностороннюю функцию, в которой только
выход можно найти по входным данным. Обратное невозможно.
●
Устойчивость к столкновениям. Вычислительно невозможно найти какие-либо пары x1 ≠ x2 такие, что h(x1)
= h(x2). Другими словами, вероятность найти два разных входа hash, имеющих одно и то же значение.
производительность крайне низкая. Это свойство также подразумевает сопротивление второму прообразу.
●
Сопротивление второго прообраза. Учитывая x1 и, следовательно, h(x1), вычислительно невозможно
найдите любой x2 такой, что h(x1) = h(x2). Хотя это свойство похоже на сопротивление столкновению,
Свойство отличается тем, что оно говорит, что злоумышленник с заданным x1 найдет его вычислительно.
невозможно найти какой-либо x2 hash__ с одним и тем же выходом.
●
Детерминированный — сопоставляет каждый вход одному и только одному выходу.
●
Avalanche эффект — небольшое изменение входных данных приводит к совершенно другому результату.
Эти свойства придают криптовалютной сети ее внутреннюю ценность, гарантируя, что атаки не будут скомпрометировать сеть. Когда майнеры подтверждают блок, они получают вознаграждение в виде tokens в качестве встроенного стимул для участия в сети. Однако, поскольку капитализация мирового рынка криптовалют неуклонно рос, майнеры стали централизованными и сосредоточили свои вычислительные ресурсы на накопление token в качестве активов, а не для целей участия в сети. CPU-майнеры уступили место Графические процессоры, которые, в свою очередь, уступили место мощным ASIC. В одном примечательном исследовании общая мощность потребление горнодобывающей промышленности Bitcoin оценивается в 3 ГВт, что сопоставимо с потреблением электроэнергии в Ирландии. 10 энергопотребление. В этом же исследовании прогнозируется, что общее энергопотребление в ближайшем будущем достигнет 8 ГВт. будущее.
Для решения проблемы энергетических отходов компания предложила механизм консенсуса Proof of Stake (PoS). много новых сетей. В сетях PoS держатели token блокируют свои балансы token, чтобы стать блокированными. validatorс. validator по очереди предлагают и голосуют за следующий блок. Однако проблема при использовании стандартного PoS влияние validator напрямую коррелирует с количеством заблокированных token. Это приводит к тому, что стороны накапливают большие суммы базовой валюты сети, используя неправомерные средства. влияние на сетевую экосистему.
Механизм консенсуса TRON использует инновационную систему делегированного доказательства доли, в которой 27
Суперпредставители (SR) производят блоки для сети. Каждые 6 часов владельцы счетов TRX
те, кто заморозит свои счета, могут проголосовать за избранных кандидатов от СР, среди которых будут 27 лучших кандидатов.
считали эсеров. Избиратели могут выбирать СР на основе таких критериев, как проекты, спонсируемые СР,
9 ПААР, К., ПЕЛЗЛ, Дж., «Понимание криптографии: учебник для студентов и практиков», изд. 2010 г.
Springer-Verlag Берлин Гейдельберг, 2010 г.
10 https://www.sciencedirect.com/science/article/pii/S2542435118301776увеличить внедрение TRX и распределить вознаграждения среди избирателей. Это позволяет создать более демократизированную и
децентрализованная экосистема. Аккаунты эсеров - обычные аккаунты, но их накопление голосов
позволяет им производить блоки. При низкой пропускной способности Bitcoin и Ethereum из-за их
Механизм консенсуса PoW и проблемы масштабируемости, система DPoS TRON предлагает инновационную
механизм, приводящий к 2000 TPS по сравнению с 3 TPS Bitcoin и 15 TPS Ethereum.
Сеть протокола TRON генерирует один блок каждые три секунды, при этом каждый блок получает 32 TRX для суперпредставителей. В общей сложности 336 384 000 TRX будут ежегодно присуждаться 27 СР. Каждый раз, когда SR завершает производство блоков, вознаграждения отправляются на субсчет в суперрегистре. SR могут проверять, но не использовать эти TRX token напрямую. Вывод средств может быть осуществлен каждым СР раз в 24 часа, перевод вознаграждения с субаккаунта на указанный СР счет.
В сети TRON есть три типа узлов: узел-свидетель, полный узел и узел Solidity. Узлы-свидетели создаются SR и в основном отвечают за производство и предложение блоков. создание/голосование. Полные узлы предоставляют API, а также широковещательные транзакции и блоки. Синхронизация узлов Solidity блоки из других полных узлов, а также предоставляют индексируемые API.
Konsensus
3.1 Bukti Kepemilikan yang Didelegasikan (DPoS)
Mekanisme konsensus yang paling awal adalah mekanisme konsensus Proof of Work (PoW). Ini protokol saat ini diterapkan di Bitcoin dan Ethereum . Dalam sistem PoW, transaksi 7 8 disiarkan melalui jaringan dikelompokkan menjadi blok-blok baru untuk konfirmasi penambang. Itu proses konfirmasi melibatkan hashing transaksi menggunakan algoritma kriptografi hashing hingga a akar merkle telah tercapai, menciptakan pohon merkle:
Gambar 2: 8 transaksi TRX hash dimasukkan ke dalam root merkle. Root merkle ini kemudian dimasukkan ke dalam header blok, yang mana dilampirkan ke blok yang telah dikonfirmasi sebelumnya untuk membentuk blockchain. Hal ini memungkinkan pelacakan yang mudah dan transparan transaksi, stempel waktu, dan informasi terkait lainnya.
7 Bitcoin kertas putih: https://bitcoin.org/bitcoin.pdf 8 Ethereum kertas putih: https://github.com/ethereum/wiki/wiki/White-Paper
Algoritma kriptografi hashing berguna dalam pencegahan serangan jaringan karena mereka memilikinya
beberapa properti:
9
●
Ukuran panjang Input/Output - Algoritme dapat meneruskan input dengan ukuran panjang berapa pun, dan
menghasilkan nilai hash dengan panjang tetap.
●
Efisiensi - Algoritma ini relatif mudah dan cepat untuk dihitung.
●
Resistensi gambar awal - Untuk keluaran tertentu z, tidak mungkin menemukan masukan x sedemikian rupa
h(x) = z. Dengan kata lain, algoritma hashing h(x) adalah fungsi satu arah yang hanya
output dapat ditemukan, diberi input. Hal sebaliknya tidak mungkin dilakukan.
●
Ketahanan tumbukan - Secara komputasi tidak mungkin menemukan pasangan x1≠ x2sehingga h(x1)
= jam(x2). Dengan kata lain, probabilitas menemukan dua input berbeda hashing menjadi sama
keluarannya sangat rendah. Properti ini juga menyiratkan resistensi preimage kedua.
●
Resistensi gambar awal kedua - Mengingat x1, dan dengan demikian h(x1), secara komputasi tidak mungkin untuk
carilah x2 sehingga h(x1) = h(x2). Meskipun properti ini mirip dengan resistensi tabrakan, itu
properti berbeda karena dikatakan bahwa penyerang dengan x1 tertentu akan menemukannya secara komputasi
tidak mungkin menemukan x2 hashing ke keluaran yang sama.
●
deterministik - memetakan setiap masukan ke satu dan hanya satu keluaran.
●
Avalanche efek - perubahan kecil pada masukan menghasilkan keluaran yang sama sekali berbeda.
Properti ini memberikan nilai intrinsik pada jaringan mata uang kripto dengan memastikan tidak terjadi serangan mengkompromikan jaringan. Saat penambang mengonfirmasi sebuah blok, mereka diberi hadiah tokens sebagai blok bawaan insentif untuk partisipasi jaringan. Namun, seiring dengan kapitalisasi pasar cryptocurrency global terus meningkat, para penambang menjadi terpusat dan memfokuskan sumber daya komputasi mereka menimbun tokens sebagai aset, bukan untuk tujuan partisipasi jaringan. Penambang CPU menyerah GPU, yang kemudian digantikan oleh ASIC yang bertenaga. Dalam sebuah penelitian penting, kekuatan total konsumsi pertambangan Bitcoin diperkirakan mencapai 3 GW, sebanding dengan Irlandia 10 konsumsi daya. Studi yang sama memproyeksikan total konsumsi listrik akan mencapai 8 GW dalam waktu dekat masa depan.
Untuk mengatasi masalah limbah energi, diusulkan mekanisme konsensus Proof of Stake (PoS) oleh banyak jaringan baru. Dalam jaringan PoS, pemegang token mengunci saldo token mereka menjadi blok validators. validator bergiliran melamar dan memberikan suara pada blok berikutnya. Namun masalahnya dengan PoS standar adalah bahwa pengaruh validator berkorelasi langsung dengan jumlah token yang dikunci. Hal ini mengakibatkan pihak-pihak yang menimbun sejumlah besar mata uang dasar jaringan tersebut digunakan secara tidak semestinya pengaruhnya dalam ekosistem jaringan.
Mekanisme konsensus TRON menggunakan sistem Bukti Kepemilikan yang Didelegasikan yang inovatif di mana 27
Perwakilan Super (SR) menghasilkan blok untuk jaringan. Setiap 6 jam, pemegang akun TRX
yang membekukan akunnya dapat memilih kandidat SR pilihan, dengan 27 kandidat teratas
dianggap SR. Pemilih dapat memilih SR berdasarkan kriteria seperti proyek yang disponsori oleh SR
9 PAAR, C., PELZL, J., Memahami Kriptografi: Buku Ajar untuk Pelajar dan Praktisi, edisi 2010.
Springer-Verlag Berlin Heidelberg, 2010.
10 https://www.sciencedirect.com/science/article/pii/S2542435118301776meningkatkan adopsi TRX, dan penghargaan didistribusikan kepada pemilih. Hal ini memungkinkan terciptanya sistem yang lebih demokratis dan
ekosistem yang terdesentralisasi. Rekening SR adalah rekening biasa, tapi akumulasi suaranya
memungkinkan mereka menghasilkan blok. Dengan tingkat throughput yang rendah Bitcoin dan Ethereum karena
mekanisme konsensus PoW dan masalah skalabilitas, sistem DPoS TRON menawarkan solusi inovatif
mekanisme menghasilkan 2000 TPS dibandingkan dengan Bitcoin sebanyak 3 TPS dan Ethereum sebanyak 15 TPS.
Jaringan protokol TRON menghasilkan satu blok setiap tiga detik, dengan setiap blok memberikan 32 TRX ke Perwakilan Super. Sebanyak 336.384.000 TRX akan diberikan setiap tahun kepada 27 SR. Setiap kali SR menyelesaikan produksi blok, hadiah dikirim ke sub-akun di buku besar super. SR dapat memeriksa, tetapi tidak secara langsung menggunakan TRX tokens ini. Penarikan dapat dilakukan oleh masing-masing SR setiap 24 jam sekali, mentransfer hadiah dari sub-akun ke SR yang ditentukan akun.
Tiga jenis node pada jaringan TRON adalah Witness Node, Full Node, dan Solidity Node. Node saksi diatur oleh SR dan terutama bertanggung jawab untuk produksi blok dan proposal pembuatan/pemungutan suara. Node penuh menyediakan API dan menyiarkan transaksi dan blok. Sinkronisasi node soliditas blok dari Full Node lainnya dan juga menyediakan API yang dapat diindeks.
Счет
4.1 Типы
В сети TRON есть три типа учетных записей: обычные учетные записи, учетные записи token и Контрактные счета.
1.
Обычные счета используются для стандартных транзакций.
2.
Учетные записи токенов используются для хранения token TRC-10.
3.
Контрактные учетные записи — это smart contract учетные записи, созданные обычными учетными записями, и их можно
также вызывается обычными учетными записями.
4.2 Создание
Создать учетную запись TRON можно тремя способами:
1. Создать новую учетную запись через API 2. Переведите TRX на новый адрес учетной записи 3. Перенесите любой TRC-10 token на новый адрес учетной записи.
Пара автономных ключей, состоящая из адреса (открытого ключа) и закрытого ключа и не записанная Сеть TRON также может быть сгенерирована. Алгоритм генерации адреса пользователя состоит из генерация пары ключей и последующее извлечение открытого ключа (64-байтовый массив байтов, представляющий x, y координаты). Хешируйте открытый ключ с помощью функции SHA3-256 (принятый протокол SHA3: KECCAK-256) и извлеките последние 20 байт результата. Добавьте 41 в начало массива байтов. и убедитесь, что начальная длина адреса составляет 21 байт. Дважды хешируйте адрес, используя функцию SHA3-256. и возьмите первые 4 байта в качестве проверочного кода. Добавьте код подтверждения в конец первоначального адрес и получить адрес в формате base58check посредством кодировки base58. Закодированный Адрес основной сети начинается с буквы T и имеет длину 34 байта. 4.3 Структура
Три различных типа учетных записей: Normal, AssetIssue и Contract. Аккаунт содержит 7 параметры:
1.
account_name: имя этой учетной записи – например. Счета счетов.
2.
тип: какой тип этой учетной записи – например. 0 (означает тип «Нормальный»).
3.
баланс: баланс этого счета – например. 4213312.
Protobuf data structure:
message Account {
message Vote {
bytes vote_address = 1;
int64 vote_count = 2;
}
bytes accout_name = 1;
AccountType type = 2;
bytes address = 3;
int64 balance = 4;
repeated Vote votes = 5;
map<string, int64> asset = 6;
int64 latest_operation_time = 10;
}
enum AccountType {
Normal = 0;
AssetIssue = 1;
Contract = 2;
}
Akun
4.1 Jenis
Tiga jenis akun di jaringan TRON adalah akun reguler, akun token, dan akun kontrak.
1.
Akun reguler digunakan untuk transaksi standar.
2.
Akun token digunakan untuk menyimpan TRC-10 tokens.
3.
Akun kontrak adalah smart contract akun yang dibuat oleh akun biasa dan dapat berupa
dipicu oleh akun reguler juga.
4.2 Penciptaan
Ada tiga cara untuk membuat akun TRON:
1. Buat akun baru melalui API 2. Transfer TRX ke alamat akun baru 3. Transfer TRC-10 token apa pun ke alamat akun baru
Pasangan kunci offline yang terdiri dari alamat (kunci publik) dan kunci pribadi, dan tidak dicatat oleh TRON jaringan, juga dapat dihasilkan. Algoritma pembuatan alamat pengguna terdiri dari menghasilkan pasangan kunci dan kemudian mengekstraksi kunci publik (array byte 64-byte yang mewakili x, y koordinat). Hash kunci publik menggunakan fungsi SHA3-256 (protokol SHA3 yang diadopsi adalah KECCAK-256) dan ekstrak 20 byte terakhir hasilnya. Tambahkan 41 ke awal array byte dan pastikan panjang alamat awal adalah 21 byte. Hash alamatnya dua kali menggunakan fungsi SHA3-256 dan ambil 4 byte pertama sebagai kode verifikasi. Tambahkan kode verifikasi di akhir inisial alamat dan dapatkan alamat dalam format base58check melalui pengkodean base58. Sebuah kode Alamat mainnet dimulai dengan T dan panjangnya 34 byte. 4.3 Struktur
Tiga jenis akun yang berbeda adalah Normal, AssetIssue, dan Kontrak. Akun berisi 7 parameter:
1.
account_name: nama untuk akun ini – mis. Akun Tagihan.
2.
type: jenis akun ini – mis. 0 (singkatan dari tipe 'Normal').
3.
saldo: saldo akun ini – mis. 4213312.
4.
vote: menerima suara di akun ini – mis. {(“0x1b7w…9xj3”,323),
(“0x8djq…j12m”,88),…,(“0x82nd…mx6i”,10001)}.
5.
aset: aset lain yang diharapkan TRX di akun ini – mis. {<"Token Keinginan", 66666>, <"Anjing",
233>}.
6.
last_operation_time: waktu pengoperasian terakhir akun ini.
Protobuf data structure:
message Account {
message Vote {
bytes vote_address = 1;
int64 vote_count = 2;
}
bytes accout_name = 1;
AccountType type = 2;
bytes address = 3;
int64 balance = 4;
repeated Vote votes = 5;
map<string, int64> asset = 6;
int64 latest_operation_time = 10;
}
enum AccountType {
Normal = 0;
AssetIssue = 1;
Contract = 2;
}
Блок
Блок обычно содержит заголовок блока и несколько транзакций.
Protobuf data structure:
message Block {
BlockHeader block_header = 1;
repeated Transaction transactions = 2;
}
5.1 Заголовок блока
Заголовок блока содержит raw_data, witness_signature и blockID.
Protobuf data structure:
message BlockHeader {
message raw {
int64 timestamp = 1;
bytes txTrieRoot = 2;
bytes parentHash = 3;
uint64 number = 4;
uint64 version = 5;
bytes witness_address = 6;
}
bytes witness_signature = 2;
bytes blockID = 3;
}
5.1.1 Необработанные данные
Необработанные данные обозначаются как raw_data в Protobuf. Он содержит необработанные данные сообщения, содержащие 6 параметры:
1. временная метка: временная метка этого сообщения – например. 1543884429000. 2. txTrieRoot: корень дерева Меркла – например. 7дакса…3изд. 3. родительскийHash: hash последнего блока – например. 7дакса…3изд. 4. число: высота блока – например. 4638708. 5. версия: зарезервировано – например. 5.
6. свидетеля_адрес: адрес свидетеля, упакованный в этот блок – например. 41928c...4d21. 5.1.2 Подпись свидетеля
Подпись свидетеля обозначается как Witness_signature в Protobuf, которая является подписью для этого заголовок блока из узла-свидетеля. 5.1.3 Идентификатор блока
Идентификатор блока обозначается как blockID в Protobuf. Он содержит атомарную идентификацию блока. Блок ID содержит 2 параметра: 1. hash: hash блока. 2. номер: hash и высота блока. 5.2 Транзакция 5.2.1 Подписание
Процесс подписания транзакции TRON соответствует стандартному криптографическому алгоритму ECDSA с
Кривая выбора SECP256K1. Закрытый ключ — это случайное число, а открытый ключ — это точка на
эллиптическая кривая. Процесс генерации открытого ключа состоит из первой генерации случайного числа в виде
секретный ключ, а затем умножив базовую точку эллиптической кривой на секретный ключ, чтобы получить
открытый ключ. При возникновении транзакции необработанные данные транзакции сначала преобразуются в байтовый формат.
Затем необработанные данные подвергаются SHA-256 hashing. Закрытый ключ, соответствующий контракту
адрес затем подписывает результат SHA256 hash. Результат подписи затем добавляется в
транзакция.
5.2.2 Модель полосы пропускания
Обычные транзакции потребляют только точки пропускной способности, но операции smart contract потребляют и то, и другое. точки энергии и пропускной способности. Доступны два типа точек пропускной способности. Пользователи могут получить баллы пропускной способности от замораживания TRX, а также ежедневно доступны 5000 бесплатных баллов пропускной способности.
Когда транзакция TRX транслируется, она передается и сохраняется в виде массива байтов по сеть. Очки пропускной способности, использованные одной транзакцией = количеству байтов транзакции. умноженное на количество баллов за пропускную способность. Например, если длина массива байтов транзакции равна 200, тогда транзакция потребляет 200 точек пропускной способности. Однако, если перевод TRX или token приводит к создается целевая учетная запись, затем для создания учетной записи используются только точки пропускной способности будут вычтены, а дополнительные баллы за пропускную способность не будут вычтены. При создании аккаунта сценарии сеть сначала будет использовать точки пропускной способности, полученные инициатором транзакции.от замерзания TRX. Если этой суммы недостаточно, то сеть потребляет транзакцию. TRX инициатора.
В стандартных сценариях передачи TRX с одной учетной записи TRX на другую сеть сначала потребляет баллы пропускной способности, полученные инициатором транзакции за заморозку TRX. Если этого недостаточно, тогда потребляет из бесплатных 5000 ежедневных баллов пропускной способности. Если этого все еще недостаточно, то сеть потребляет TRX инициатора транзакции. Сумма рассчитывается по количеству байтов в транзакция умножается на 10 SUN. Таким образом, для большинства держателей TRX, которые не обязательно заморозят свой TRX для участия в голосовании SR, первый шаг автоматически пропускается (поскольку баланс TRX заморожен = 0), и 5000 ежедневных бесплатных пропускных способностей обеспечивают транзакцию.
Для передачи TRC-10 token сеть сначала проверяет, есть ли общее количество точек свободной полосы пропускания выпущенного актива token достаточно. В противном случае баллы пропускной способности, полученные в результате заморозки TRX, потребляется. Если точек пропускной способности все еще недостаточно, то он потребляет TRX транзакции. инициатор.
5.2.3 Плата
Сеть TRON обычно не взимает комиссию за большинство транзакций, однако из-за особенностей системы ограничения и справедливость, использование полосы пропускания и транзакции требуют определенных комиссий.
Сборы делятся на следующие категории: 1. Обычные транзакции стоят очков пропускной способности. Пользователи могут использовать бесплатные ежедневные баллы пропускной способности. (5000) или заморозьте TRX, чтобы получить больше. Если точек пропускной способности недостаточно, TRX будет используется непосредственно со счета-отправителя. Необходимый TRX равен количеству байт * 10 SUN. 2. Смарт-контракты требуют затрат энергии (раздел 6), но им также потребуются точки пропускной способности для транзакция будет транслироваться и подтверждаться. Стоимость полосы пропускания такая же, как указано выше. 3. Все транзакции запросов бесплатны. Это не требует затрат энергии или пропускной способности.
Сеть TRON также определяет набор фиксированных комиссий за следующие транзакции: 1. Создание узла-свидетеля: 9999 TRX 2. Выдача TRC-10 token: 1024 TRX 3. Создание новой учетной записи: 0,1 TRX. 4. Создание обменной пары: 1024 TRX 5.2.4 Транзакция как доказательство доли (TaPoS)
TRON использует TaPoS, чтобы гарантировать, что все транзакции подтверждают основной blockchain, при этом делая его
трудно подделать поддельные цепочки. В TaPoS сети требуют, чтобы каждая транзакция включала часть
hash заголовка последнего блока. Это требование предотвращает повторное воспроизведение транзакций на
разветвляется, не включая указанный блок, а также сигнализирует сети, что конкретный пользователь и егоставки находятся на конкретной вилке. Этот механизм консенсуса защищает сеть от отказа в
Сервис, 51%, эгоистичный майнинг и атаки двойной траты.
5.2.5 Подтверждение транзакции
Транзакция включается в будущий блок после трансляции в сеть. После 19 блоков добыт на TRON (включая собственный блок), транзакция подтверждается. Каждый блок производится один из 27 лучших суперпредставителей по круговой системе. На каждый блок уходит ~3 секунды. быть добыт на blockchain. Время может незначительно отличаться для каждого суперпредставителя в зависимости от сети. Условия и конфигурация машины. Как правило, сделка считается полностью подтвержденной после ~1 минута. 5.2.6 Структура
Transaction APIs consist of the following functions: message Transaction { message Contract { enum ContractType { AccountCreateContract = 0; // Create account/wallet TransferContract = 1; // Transfer TRX TransferAssetContract = 2; // Transfer TRC10 token VoteWitnessContract = 4; // Vote for Super Representative (SR) WitnessCreateContract = 5; // Create a new SR account AssetIssueContract = 6; // Create a new TRC10 token WitnessUpdateContract = 8; // Update SR information ParticipateAssetIssueContract = 9; // Purchase TRC10 token AccountUpdateContract = 10; // Update account/wallet information FreezeBalanceContract = 11; // Freeze TRX for bandwidth or energy UnfreezeBalanceContract = 12; // Unfreeze TRX WithdrawBalanceContract = 13; // Withdraw SR rewards, once per day UnfreezeAssetContract = 14; // Unfreeze TRC10 token UpdateAssetContract = 15; // Update a TRC10 token’s information ProposalCreateContract = 16; // Create a new network proposal by any SR ProposalApproveContract = 17; // SR votes yes for a network proposal ProposalDeleteContract = 18; // Delete a network proposal by owner CreateSmartContract = 30; // Deploy a new smart contract TriggerSmartContract = 31; // Call a function on a smart contract GetContract = 32; // Get an existing smart contract UpdateSettingContract = 33; // Update a smart contract’s parameters ExchangeCreateContract = 41; // Create a token trading pair on DEX ExchangeInjectContract = 42; // Inject funding into a trading pair

ExchangeWithdrawContract = 43; // Withdraw funding from a trading pair ExchangeTransactionContract = 44; // Perform token trading UpdateEnergyLimitContract = 45; // Update origin_energy_limit on a smart contract } } }
Blok
Sebuah blok biasanya berisi header blok dan beberapa transaksi.
Protobuf data structure:
message Block {
BlockHeader block_header = 1;
repeated Transaction transactions = 2;
}
5.1 Tajuk Blok
Header blok berisi raw_data, witness_signature, dan blockID.
Protobuf data structure:
message BlockHeader {
message raw {
int64 timestamp = 1;
bytes txTrieRoot = 2;
bytes parentHash = 3;
uint64 number = 4;
uint64 version = 5;
bytes witness_address = 6;
}
bytes witness_signature = 2;
bytes blockID = 3;
}
5.1.1 Data Mentah
Data mentah dilambangkan sebagairaw_data di Protobuf. Ini berisi data mentah dari sebuah pesan, berisi 6 parameter:
1. stempel waktu: stempel waktu pesan ini – mis. 1543884429000. 2. txTrieRoot: Akar Pohon Merkle – mis. 7dacsa…3ed. 3. parentHash: hash dari blok terakhir – mis. 7dacsa…3ed. 4. nomor: tinggi balok – mis. 4638708. 5. versi: dicadangkan – mis. 5.

6. Witness_address: alamat saksi yang dikemas dalam blok ini – mis. 41928c...4d21. 5.1.2 Tanda Tangan Saksi
Tanda tangan saksi dilambangkan dengan tanda tangan saksi di Protobuf, yang merupakan tanda tangan untuk ini blok header dari node saksi. 5.1.3 ID Blokir
ID Blok dilambangkan sebagai blockID di Protobuf. Ini berisi identifikasi atom suatu blok. Sebuah Blok ID berisi 2 parameter: 1. hash: hash blok. 2. nomor: hash dan tinggi balok. 5.2 Transaksi 5.2.1 Penandatanganan
Proses penandatanganan transaksi TRON mengikuti algoritma kriptografi ECDSA standar, dengan a
Kurva seleksi SECP256K1. Kunci privat adalah angka acak, dan kunci publik adalah sebuah titik di
kurva elips. Proses pembuatan kunci publik terdiri dari pembangkitan nomor acak terlebih dahulu sebagai a
kunci privat, lalu mengalikan titik dasar kurva elips dengan kunci privat untuk mendapatkan
kunci publik. Ketika suatu transaksi terjadi, data mentah transaksi diubah terlebih dahulu ke dalam format byte.
Data mentah kemudian mengalami SHA-256 hashing. Kunci pribadi yang sesuai dengan kontrak
alamat kemudian menandatangani hasil SHA256 hash. Hasil tanda tangan kemudian ditambahkan ke
transaksi.
5.2.2 Model Bandwidth
Transaksi biasa hanya menggunakan titik bandwidth, tetapi operasi smart contract menggunakan keduanya titik energi dan bandwidth. Ada dua jenis titik bandwidth yang tersedia. Pengguna bisa mendapatkan keuntungan titik bandwidth dari pembekuan TRX, sementara 5000 titik bandwidth gratis juga tersedia setiap hari.
Ketika transaksi TRX disiarkan, transaksi tersebut ditransmisikan dan disimpan dalam bentuk array byte jaringan. Bandwidth Poin yang dikonsumsi oleh satu transaksi = jumlah byte transaksi dikalikan dengan tingkat poin bandwidth. Misalnya, jika panjang array byte suatu transaksi adalah 200, maka transaksi tersebut menghabiskan 200 titik bandwidth. Namun, jika transfer TRX atau token menghasilkan akun target yang dibuat, maka hanya titik bandwidth yang dikonsumsi untuk membuat akun tersebut akan dipotong, dan poin bandwidth tambahan tidak akan dipotong. Dalam pembuatan akun skenario, jaringan pertama-tama akan menggunakan titik bandwidth yang diperoleh pemrakarsa transaksidari pembekuan TRX. Jika jumlah ini tidak mencukupi, maka jaringan akan menghabiskan transaksi tersebut TRX inisiator.
Dalam skenario transfer TRX standar dari satu akun TRX ke akun TRX lainnya, jaringan akan menggunakan yang pertama poin bandwidth yang diperoleh pemrakarsa transaksi untuk membekukan TRX. Jika itu tidak cukup, maka lakukanlah mengkonsumsi dari 5.000 poin bandwidth harian gratis. Jika itu masih belum cukup, maka jaringan mengkonsumsi TRX dari pemrakarsa transaksi. Jumlahnya dihitung berdasarkan jumlah byte yang masuk transaksi dikalikan 10 SUN. Jadi, bagi sebagian besar pemegang TRX yang belum tentu membeku TRX mereka untuk berpartisipasi dalam pemungutan suara SR, langkah pertama otomatis dilewati (karena saldo TRX dibekukan = 0) dan 5.000 bandwidth gratis setiap hari mendukung transaksi.
Untuk transfer TRC-10 token, jaringan terlebih dahulu memverifikasi apakah total titik bandwidth bebas dari aset token yang diterbitkan sudah mencukupi. Jika tidak maka bandwidth point yang didapat dari pembekuan TRX adalah dikonsumsi. Jika titik bandwidth masih belum cukup, maka akan menghabiskan TRX transaksi pemrakarsa.
5.2.3 Biaya
Jaringan TRON umumnya tidak mengenakan biaya untuk sebagian besar transaksi, namun karena sistem pembatasan dan keadilan, penggunaan bandwidth dan transaksi memerlukan biaya tertentu.
Biaya biaya dibagi menjadi beberapa kategori berikut: 1. Transaksi normal memerlukan poin bandwidth. Pengguna dapat menggunakan poin bandwidth harian gratis (5000) atau bekukan TRX untuk mendapatkan lebih banyak. Ketika titik bandwidth tidak mencukupi, TRX akan mencukupi digunakan langsung dari rekening pengirim. TRX yang dibutuhkan adalah jumlah byte * 10 SUN. 2. Kontrak pintar membutuhkan energi (Bagian 6) tetapi juga memerlukan titik bandwidth untuk itu transaksi untuk disiarkan dan dikonfirmasi. Biaya bandwidth sama seperti di atas. 3. Semua transaksi kueri gratis. Itu tidak memerlukan energi atau bandwidth.
Jaringan TRON juga menetapkan serangkaian biaya tetap untuk transaksi berikut: 1. Membuat simpul saksi: 9999 TRX 2. Menerbitkan TRC-10 token: 1024 TRX 3. Membuat akun baru: 0,1 TRX 4. Membuat pasangan pertukaran: 1024 TRX 5.2.4 Transaksi sebagai Bukti Kepemilikan (TaPoS)
TRON menggunakan TaPoS untuk memastikan semua transaksi mengkonfirmasi blockchain utama, sambil membuatnya
sulit untuk memalsukan rantai palsu. Di TaPoS, jaringan mengharuskan setiap transaksi menyertakan bagian dari
hash dari header blok terbaru. Persyaratan ini mencegah transaksi diputar ulang
garpu tidak termasuk blok yang direferensikan, dan juga memberi sinyal pada jaringan bahwa pengguna tertentu dan merekataruhannya berada pada garpu tertentu. Mekanisme konsensus ini melindungi jaringan dari Penolakan
Layanan, 51%, penambangan egois, dan serangan pembelanjaan ganda.
5.2.5 Konfirmasi Transaksi
Suatu transaksi dimasukkan dalam blok masa depan setelah disiarkan ke jaringan. Setelah 19 blok ditambang pada TRON (termasuk bloknya sendiri), transaksi dikonfirmasi. Setiap blok diproduksi oleh salah satu dari 27 Perwakilan Super teratas dalam mode round robin. Setiap blok membutuhkan waktu ~3 detik untuk melakukannya ditambang di blockchain. Waktu mungkin sedikit berbeda untuk setiap Perwakilan Super karena jaringannya kondisi dan konfigurasi mesin. Secara umum, suatu transaksi dianggap dikonfirmasi sepenuhnya setelahnya ~1 menit. 5.2.6 Struktur
Transaction APIs consist of the following functions: message Transaction { message Contract { enum ContractType { AccountCreateContract = 0; // Create account/wallet TransferContract = 1; // Transfer TRX TransferAssetContract = 2; // Transfer TRC10 token VoteWitnessContract = 4; // Vote for Super Representative (SR) WitnessCreateContract = 5; // Create a new SR account AssetIssueContract = 6; // Create a new TRC10 token WitnessUpdateContract = 8; // Update SR information ParticipateAssetIssueContract = 9; // Purchase TRC10 token AccountUpdateContract = 10; // Update account/wallet information FreezeBalanceContract = 11; // Freeze TRX for bandwidth or energy UnfreezeBalanceContract = 12; // Unfreeze TRX WithdrawBalanceContract = 13; // Withdraw SR rewards, once per day UnfreezeAssetContract = 14; // Unfreeze TRC10 token UpdateAssetContract = 15; // Update a TRC10 token’s information ProposalCreateContract = 16; // Create a new network proposal by any SR ProposalApproveContract = 17; // SR votes yes for a network proposal ProposalDeleteContract = 18; // Delete a network proposal by owner CreateSmartContract = 30; // Deploy a new smart contract TriggerSmartContract = 31; // Call a function on a smart contract GetContract = 32; // Get an existing smart contract UpdateSettingContract = 33; // Update a smart contract’s parameters ExchangeCreateContract = 41; // Create a token trading pair on DEX ExchangeInjectContract = 42; // Inject funding into a trading pair
ExchangeWithdrawContract = 43; // Withdraw funding from a trading pair ExchangeTransactionContract = 44; // Perform token trading UpdateEnergyLimitContract = 45; // Update origin_energy_limit on a smart contract } } }
TRON Виртуальная машина
6.1 Введение
TRON Virtual Machine (TVM) — это легкая, полная по Тьюрингу виртуальная машина, разработанная для Экосистема TRON. Его цель — предоставить специально разработанную систему blockchain, которая будет эффективной, удобный, стабильный, безопасный и масштабируемый.
TVM изначально отделился от EVM и может легко соединиться с существующей Solidity smart contract. 11 экосистема развития. На основании этого TVM дополнительно поддерживает консенсус DPoS.
TVM использует концепцию энергии. В отличие от газового механизма на EVM, операции транзакции и smart contract на TVM бесплатны, TRX не расходуется. Технически, исполняемый вычислительная мощность TVM не ограничена общей суммой хранения tokens. 6.2 Рабочий процесс
Компилятор сначала преобразует Solidity smart contract в байт-код, читаемый и исполняемый на ТВМ. Затем TVM обрабатывает данные посредством кода операции, что эквивалентно работе логики. конечного автомата на основе стека. Наконец, TVM обращается к данным blockchain и вызывает Интерфейс внешних данных через уровень взаимодействия. 11 EVM: Ethereum виртуальная машина (https://github.com/ethereum/ethereumj)

Рисунок 3: Рабочий процесс TVM
6.3 Производительность 6.3.1 Облегченная архитектура
TVM использует облегченную архитектуру с целью снижения потребления ресурсов и гарантии производительность системы. 6.3.2 Надежность
Передача TRX и выполнение smart contract стоят только точек пропускной способности вместо TRX, который освобождает TRON от атаки. Потребление полосы пропускания предсказуемо и статично, поскольку каждый Стоимость вычислительного шага фиксирована. 6.3.3 Высокая совместимость
TVM совместим с EVM и в будущем будет совместим с другими распространенными виртуальными машинами. Таким образом, все smart contract на EVM являются исполняемыми на TVM. 6.3.4 Низкая стоимость
Благодаря настройке полосы пропускания TVM затраты на разработку сокращаются, и разработчики могут сосредоточиться на логическое развитие своего контрактного кода. TVM также предлагает универсальные интерфейсы по контракту. развертывание, запуск и просмотр для удобства разработчиков.
TRON Mesin Virtual
6.1 Pendahuluan
TRON Mesin Virtual (TVM) adalah mesin virtual lengkap Turing ringan yang dikembangkan untuk ekosistem TRON. Tujuannya adalah untuk menyediakan sistem blockchain yang dibuat khusus dan efisien, nyaman, stabil, aman dan terukur.
TVM awalnya bercabang dari EVM dan dapat terhubung secara mulus dengan soliditas yang ada smart contract 11 ekosistem pembangunan. Berdasarkan hal tersebut, TVM juga mendukung konsensus DPoS.
TVM menggunakan konsep Energi. Berbeda dengan mekanisme Gas pada EVM, pengoperasiannya transaksi dan smart contracts di TVM gratis, tanpa menggunakan TRX. Secara teknis, dapat dieksekusi kapasitas komputasi di TVM tidak dibatasi oleh total jumlah penyimpanan tokens. 6.2 Alur Kerja
Kompiler pertama-tama menerjemahkan Soliditas smart contract menjadi bytecode yang dapat dibaca dan dieksekusi di TVM. TVM kemudian memproses data melalui opcode, yang setara dengan mengoperasikan logika dari mesin negara terbatas berbasis tumpukan. Terakhir, TVM mengakses blockchain data dan memanggil Antarmuka Data Eksternal melalui lapisan Interoperasi. 11 EVM: Ethereum Mesin Virtual (https://github.com/ethereum/ethereumj)

Gambar 3: Alur Kerja TVM
6.3 Kinerja 6.3.1 Arsitektur Ringan
TVM mengadopsi arsitektur ringan dengan tujuan mengurangi konsumsi sumber daya sebagai jaminan kinerja sistem. 6.3.2 Kuat
Transfer TRX dan smart contract eksekusi hanya memerlukan poin bandwidth, bukan TRX, yang mana mengecualikan TRON dari serangan. Konsumsi bandwidth dapat diprediksi dan statis sejak keduanya biaya langkah komputasi adalah tetap. 6.3.3 Kompatibilitas Tinggi
TVM kompatibel dengan EVM dan akan kompatibel dengan lebih banyak VM mainstream di masa mendatang. Dengan demikian, semua smart contract di EVM dapat dieksekusi di TVM. 6.3.4 Biaya Rendah
Karena pengaturan bandwidth TVM, biaya pengembangan berkurang dan pengembang dapat fokus pada hal tersebut pengembangan logika kode kontrak mereka. TVM juga menawarkan antarmuka lengkap untuk kontrak penerapan, pemicuan, dan tampilan untuk menawarkan kenyamanan bagi pengembang.
Смарт-контракт
7.1 Введение
smart contract — это протокол, который осуществляет цифровую проверку переговоров по контракту. Они определяют правила и штрафы, связанные с соглашением, а также автоматически обеспечивают соблюдение этих обязательств. Умный Код контракта облегчает, проверяет и обеспечивает соблюдение условий соглашения или исполнения соглашения или транзакция. С точки зрения __PH_0001__изации, smart contracts также способствуют автоматическому пополнению средств. переводы между участвующими сторонами при соблюдении определенных критериев.
TRON smart contract написаны на языке Solidity. После того как они написаны и протестированы, их можно скомпилирован в байт-код, а затем развернут в сети TRON для виртуальной машины TRON. Однажды развернуты, smart contract можно запрашивать по адресам их контрактов. Заявление о контракте Двоичный интерфейс (ABI) отображает функции вызова контракта и используется для взаимодействия с сеть. 7.2 Энергетическая модель
Максимальный предел энергии для развертывания и срабатывания smart contract зависит от нескольких переменные:
● Динамическая энергия от заморозки 1 TRX равна 50 000 000 000 (Общий лимит энергии) / (Общая энергия Вес) ● Лимит энергии — это дневной лимит энергии аккаунта от заморозки TRX. ● Оставшаяся ежедневная энергия на счете после заморозки TRX рассчитывается как Лимит энергии - Энергия. Б/у ● Лимит комиссии в TRX устанавливается в smart contract вызове развертывания/триггера. ● Оставшийся доступный TRX на счету ● Энергия за TRX при покупке напрямую (10 СОЛНЦЕВ = 1 Энергия) = 100 000, СР могут голосовать. корректировка
Существует два сценария потребления для расчета максимального предела энергии для развертывания и
триггер. Логику можно выразить следующим образом:
const R = Dynamic Energy Limit
const F = Daily account energy from freezing TRX
const E = Remaining daily account energy from freezing TRX
const L = Fee limit in TRX set in deploy/trigger call
const T = Remaining usable TRX in account
const C = Energy per TRX if purchased directly
// Calculate M, defined as maximum energy limit for deployment/trigger of smart contract if F > LR let M = min(E+TC, LR) else let M = E+TC 7.3 Развертывание
Когда TRON Solidity smart contract компилируется, виртуальная машина TRON считывает скомпилированный файл. байт-код. Байт-код состоит из раздела для развертывания кода, кода контракта и Auxdata. Auxdata — это криптографический отпечаток исходного кода, используемый для проверки. Развертывание байт-код запускает функцию конструктора и устанавливает начальные переменные хранения. Развертывание code также вычисляет код контракта и возвращает его в TVM. ABI — это файл JSON, который описывает функции TRON smart contract. Этот файл определяет названия функций, их платежеспособность, возвращаемые функции значения и изменчивость их состояния. 7.4 Функция триггера
После развертывания TRON smart contract их функции можно запускать индивидуально либо через TronStudio или через вызовы API. Функции изменения состояния требуют энергии, а функции только для чтения. выполнить без энергии. 7.5 TRON Прочность
TRON Solidity — это ответвление языка Solidity Ethereum. TRON изменяет исходный проект на поддержка блоков TRX и SUN (1 TRX = 1 000 000 SUN). Остальная часть синтаксиса языка совместим с Solidity ^0.4.24. Таким образом, виртуальная машина Tron (TVM) практически на 100% совместима. с инструкциями EVM.
Kontrak Cerdas
7.1 Pendahuluan
smart contract adalah protokol yang memverifikasi negosiasi kontrak secara digital. Mereka mendefinisikan aturan dan hukuman yang terkait dengan suatu perjanjian dan juga secara otomatis menegakkan kewajiban tersebut. Yang pintar kode kontrak memfasilitasi, memverifikasi, dan menegakkan negosiasi atau kinerja perjanjian atau transaksi. Dari perspektif tokenisasi, smart contracts juga memfasilitasi pendanaan otomatis transfer antara pihak-pihak yang berpartisipasi jika kriteria tertentu dipenuhi.
TRON smart contracts ditulis dalam bahasa Soliditas. Setelah ditulis dan diuji, mereka bisa dikompilasi menjadi bytecode, kemudian disebarkan ke jaringan TRON untuk Mesin Virtual TRON. Sekali dikerahkan, smart contracts dapat ditanyakan melalui alamat kontraknya. Aplikasi kontrak Antarmuka Biner (ABI) menunjukkan fungsi panggilan kontrak dan digunakan untuk berinteraksi dengan jaringan. 7.2 Model Energi
Batas energi maksimum untuk meluncurkan dan memicu smart contract merupakan fungsi dari beberapa fungsi variabel:
● Energi dinamis dari pembekuan 1 TRX adalah 50.000.000.000 (Batas Energi Total) / (Energi Total Berat) ● Batas energi adalah batas energi akun harian dari pembekuan TRX ● Energi akun harian yang tersisa dari pembekuan TRX dihitung sebagai Batas Energi - Energi Digunakan ● Batas biaya di TRX diatur dalam smart contract panggilan penerapan/pemicu ● TRX yang tersisa dapat digunakan di akun ● Energi per TRX jika dibeli langsung (10 SUN = 1 Energi) = 100.000, SR dapat melakukan voting penyesuaian
Ada dua skenario konsumsi untuk menghitung batas energi maksimum untuk penerapan dan
pemicu. Logikanya dapat diungkapkan sebagai berikut:
const R = Dynamic Energy Limit
const F = Daily account energy from freezing TRX
const E = Remaining daily account energy from freezing TRX
const L = Fee limit in TRX set in deploy/trigger call
const T = Remaining usable TRX in account
const C = Energy per TRX if purchased directly
// Calculate M, defined as maximum energy limit for deployment/trigger of smart contract if F > LR let M = min(E+TC, LR) else let M = E+TC 7.3 Penerapan
Ketika TRON soliditas smart contract dikompilasi, Mesin Virtual TRON membaca kompilasi kode byte. Bytecode terdiri dari bagian untuk penerapan kode, kode kontrak, dan Auxdata. Auxdata adalah sidik jari kriptografi kode sumber, yang digunakan untuk verifikasi. Penyebaran bytecode menjalankan fungsi konstruktor dan menyiapkan variabel penyimpanan awal. Penyebaran kode juga menghitung kode kontrak dan mengembalikannya ke TVM. ABI adalah file JSON yang menjelaskan fungsi TRON smart contract. File ini mendefinisikan nama fungsi, pembayarannya, nilai pengembalian fungsi, dan mutabilitas statusnya. 7.4 Fungsi Pemicu
Setelah TRON smart contract dikerahkan, fungsinya dapat dipicu secara individual baik melalui TronStudio atau melalui panggilan API. Fungsi pengubah status memerlukan Energi sedangkan fungsi hanya baca mengeksekusi tanpa Energi. 7.5 TRON Soliditas
TRON Soliditas adalah cabang dari bahasa Soliditas Ethereum. TRON memodifikasi proyek asli menjadi mendukung unit TRX dan SUN (1 TRX = 1.000.000 SUN). Sintaks bahasa lainnya adalah kompatibel dengan Soliditas ^0.4.24. Dengan demikian Tron Virtual Machine (TVM) hampir 100% kompatibel dengan instruksi EVM.
Токен
8.1 Токен TRC-10
В сети TRON каждый аккаунт может выпустить token за 1024 TRX. Чтобы выдать tokens, эмитенту необходимо указать имя token, общую капитализацию, курс обмена к TRX, продолжительность тиража, описание, сайт, максимальное потребление трафика на аккаунт, всего потребление полосы пропускания и количество token заморожено. Для каждого выпуска token также можно настроить максимальный ежедневный лимит пропускной способности для каждой учетной записи token, максимальный дневной лимит всей сети token пропускная способность перевода, общее количество token, продолжительность блокировки в днях и общая сумма из tokens заблокировано. 8.2 Токен TRC-20
TRC-20 — это технический стандарт, используемый для __PH_0000__s, реализующий tokens, поддерживаемый TRON Виртуальная машина. Он полностью совместим с ERC-20.
Интерфейс выглядит следующим образом:
контракт TRC20Interface {
функция totalSupply() публичная константа возвращает (uint);
функция balanceOf(адрес tokenOwner) публичная константа возвращает (uint
баланс);
функция надбавка(адрес tokenВладелец, адрес отправителя) публичная константа
возвращает (осталось uint);
функция передача(адрес, uint tokens) public возвращает (bool успех);
функция approve(адрес отправителя, uint tokens) public возвращает (bool
успех);
функция transferFrom(адрес от, адрес, uint tokens) public
возвращает (bool успех);
событие Передача(адрес индексирован от, адрес индексирован до, uint tokens);
Событие Утверждение(индексированный адрес tokenВладелец, индексированный адрес отправителя, uint
tokens); }
С точки зрения разработчика, между TRC-10 и TRC-20 есть несколько различий. Некоторые Ключевое отличие состоит в том, что PH_0002 TRC-10 доступны через API и smart contract, в то время как TRC-20 tokens позволяют настраивать интерфейс, но доступны только в пределах smart contracts.
С точки зрения затрат комиссия за транзакцию TRC-10 token в 1000 раз ниже, чем у
TRC-20, но несет расходы на пропускную способность для переводов и депозитов API. Переводы и депозиты в смарте
Контракты на TRC-10 token требуют как пропускной способности, так и энергии.
8.3 Дальше
Поскольку TRON использует ту же версию Solidity, что и Ethereum, можно легко использовать больше стандартов token. портирован на TRON.
Token
8.1 Token TRC-10
Di jaringan TRON, setiap akun dapat menerbitkan token dengan biaya 1024 TRX. Untuk menerbitkan tokens, penerbit perlu menentukan nama token, total kapitalisasi, nilai tukar ke TRX, durasi sirkulasi, deskripsi, situs web, konsumsi bandwidth maksimum per akun, total konsumsi bandwidth, dan jumlah token dibekukan. Setiap penerbitan token juga dapat dikonfigurasi token Poin Bandwidth transfer harian maksimum setiap akun, maksimum harian seluruh jaringan token Poin Bandwidth transfer, total persediaan token, durasi penguncian dalam hari, dan jumlah total dari tokens terkunci. 8.2 Token TRC-20
TRC-20 adalah standar teknis yang digunakan untuk smart contracts yang menerapkan tokens yang didukung oleh TRON Mesin Virtual. Ini sepenuhnya kompatibel dengan ERC-20.
Antarmukanya adalah sebagai berikut:
kontrak TRC20Antarmuka {
fungsi totalSupply() pengembalian konstan publik (uint);
fungsi balanceOf(alamat tokenPemilik) pengembalian konstan publik (uint
saldo);
tunjangan fungsi(alamat tokenPemilik, alamat pembelanja) konstanta publik
kembali (tidak tersisa);
transfer fungsi(alamat ke, uint tokens) pengembalian publik (bool sukses);
fungsi menyetujui(alamat pembelanja, uint tokens) pengembalian publik (bool
sukses);
fungsi transferFrom(alamat dari, alamat ke, uint tokens) publik
kembali (bool sukses);
acara Transfer(alamat diindeks dari, alamat diindeks ke, uint tokens);
Persetujuan acara(alamat diindeks tokenPemilik, alamat pembelanja yang diindeks, uint
tokens); }
Dari sudut pandang pengembang, ada beberapa perbedaan antara TRC-10 dan TRC-20. Beberapa perbedaan utamanya adalah TRC-10 tokens dapat diakses oleh API dan smart contracts sementara TRC-20 tokens memungkinkan penyesuaian antarmuka tetapi hanya dapat diakses dalam smart contracts.
Dari sudut pandang biaya, TRC-10 tokens memiliki biaya transaksi 1000 kali lebih rendah daripada
TRC-20, tetapi menanggung biaya bandwidth untuk transfer dan deposit API. Transfer dan deposit secara cerdas
kontrak untuk TRC-10 tokens menghabiskan biaya bandwidth dan energi.
8.3 Selanjutnya
Karena TRON menggunakan versi Soliditas yang sama dengan Ethereum, lebih banyak standar token dapat segera dibuat porting ke TRON.
Управление
9.1 Суперпредставитель 9.1.1 Общие сведения
Каждый аккаунт в сети TRON может подать заявку и получить возможность стать Супер Представитель (обозначается как SR). Каждый может голосовать за кандидатов от эсеров. 27 лучших кандидатов с наибольшее количество голосов получат SR с правом и обязанностью генерировать блоки. Голоса подсчитываются каждые 6 часов, и SR будут меняться соответственно.
Чтобы предотвратить злонамеренные атаки, нужно заплатить определенную цену за то, чтобы стать кандидатом в СР. При подаче заявки 9999 TRX будет удален со счета заявителя. В случае успеха такая учетная запись может присоединиться к SR. выборы. 9.1.2 Выборы
TRON Власть (обозначается как TP) необходима для голосования, а количество TP зависит от силы избирателя. замороженные активы (TRX).
ТП рассчитывается следующим образом:
ТП
1 TRX заморожен для увеличения пропускной способности
1
=
Каждый аккаунт в сети TRON имеет право голосовать за своих СР.
После релиза (разморозка, доступная через 3 дня) у пользователей не будет замороженных активов, и они потеряют все ТП соответственно. В результате все голоса становятся недействительными для текущего и будущего раундов голосования, если только TRX снова заморожен для голосования.
Обратите внимание, что сеть TRON записывает только самое последнее голосование, а это означает, что каждое новое голосование отменит все предыдущие голоса. 9.1.3 Награда а. Награда за голосование
Также известна как «Награда кандидата», которую 127 лучших кандидатов обновляют один раз в каждом раунде (6
часов) разделит добытые 115 200 TRX. Награда будет разделена в соответствии с весом голоса.
получает каждый кандидат. Ежегодно общая сумма вознаграждения кандидатов составит 168 192 000 TRX.
Общая награда за голосование за раунд
Почему 115 200 TRX за каждый раунд?
15, 00 ТРХ
общее вознаграждение за голоса за раунд (V R/раунд)
1
2
=
V R/раунд = 16 T RX/блок × 20 блоков/мин × 60 минут/час × 6 часов/раунд
Обратите внимание: это установлено WITNESS_STANDBY_ALLOWANCE = 115 200 TRX. См. динамические параметры сети.
Общая сумма вознаграждения за голоса в год
Почему 168 192 000 TRX каждый год?
168 192 000 T RX = общее вознаграждение за голоса в год (VR/год)
V R/год = 115, 200 T RX/раунд × 4 раунда/день × 365 дней/год
б. Блокировать вознаграждение
Также известна как награда суперпредставителя, которую получают 27 лучших кандидатов (СР), избранных.
каждый раунд (6 часов) будет добыт примерно 230 400 TRX. Вознаграждение будет разделено поровну
между 27 SR (за вычетом общего количества блоков вознаграждения, пропущенных из-за сетевой ошибки). Всего
336 384 000 TRX будут ежегодно присуждаться 27 СР.
Общая награда за блок за раунд
Почему 230 400 TRX за каждый раунд?
230, 400 T RX = общая награда за блок за раунд (BR/раунд)
BR/раунд = 32 T RX/блок × 20 блоков/мин × 60 минут/час × 6 часов/раунд
Обратите внимание: награда за блок единиц устанавливается WITNESS_PAY_PER_BLOCK = 32 TRX. См. динамическую сеть
параметры.
Общая награда за блок в год
Почему 336 384 000 TRX каждый год?
336 384 000 T RX = общее вознаграждение за блок в год (BR/год)
БР/год = 230, 400 T RX/раунд × 4 раунда/день × 365 дней/год
1 января 2021 г.
До 1 января 2021 года в сети TRON инфляции не будет, а в сети TRON DAO будет
выдать все награды за блоки и награды кандидатам до этой даты.
в. Расчет вознаграждения
Расчет вознаграждения SR
общая награда
награда за голосование (VR)
награда за блок (BR)
т
=
+
Р
всего В Р
В
=
×
общее количество голосов
голосов получил кандидат от СР
Р
блок пропущен
2
Б
=
27
всего БР —
× 3
Примечание: награда рассчитывается за SR за раунд (6 часов).
Расчет вознаграждения кандидатам СР с 28 по 127 ранг общая награда награда за голосование (VR) т =
Р
всего В Р
В
=
×
общее количество голосов
голосов получил кандидат от СР
Примечание: награда рассчитывается для каждого кандидата в СР за раунд (6 часов).
9.2 Комитет
9.2.1 Общие сведения
Комитет используется для изменения TRON динамических параметров сети, таких как генерация блоков.
вознаграждения, комиссии за транзакции и т. д. В состав комитета входят 27 SR текущего раунда. Каждый СР
имеет право вносить предложения и голосовать по ним. Если предложение получает 19 голосов или более, оно считается
утверждены, и новые параметры сети будут применены в следующий период обслуживания (3 дня).
9.2.2 Параметры динамической сети
0.
MAINTENANCE_TIME_INTERVAL
а.
Описание
Измените интервал технического обслуживания в мс. Известный как интервал голосования SR за
круглый.
б.
Пример
[636001000] мс — это 6 часов.
в.
Диапазон
[3271000, 2436001000] мс
1.
ACCOUNT_UPGRADE_COST
а.
Описание
Изменить стоимость подачи заявки на учетную запись SR.
б.
Пример
[9 999 000 000] SUN — это 9 999 TRX.
в.
Диапазон
[0,100 000 000 000 000 000] СОЛНЦЕ
2.
CREATE_ACCOUNT_FEE
а.
Описание
Измените плату за создание учетной записи.б.
Пример
[100,000] SUN – это 1 TRX.
в.
Диапазон
[0,100 000 000 000 000 000] СОЛНЦЕ
3.
TRANSACTION_FEE
а.
Описание
Измените размер платы, используемой для получения дополнительной пропускной способности.
б.
Пример
[10] СОЛНЦЕ/байт.
в.
Диапазон
[0,100 000 000 000 000 000] СОЛНЦЕ/байт
4.
ASSET_ISSUE_FEE
а.
Описание
Изменить комиссию за выпуск активов.
б.
Пример
[1024000000]SUN – это 1024 TRX.
в.
Диапазон
[0,100 000 000 000 000 000] СОЛНЦЕ
5.
WITNESS_PAY_PER_BLOCK
а.
Описание
Изменить вознаграждение за генерацию блока SR. Известен как награда за блок единиц.
б.
Пример
[32 000 000] SUN – это 32 TRX.
в.
Диапазон
[0,100 000 000 000 000 000] СОЛНЦЕ
6.
WITNESS_STANDBY_ALLOWANCE
а.
Описание
Изменить награды, вручаемые 127 лучшим кандидатам на СР. Известен как общая награда за голосование
за раунд.
б.
Пример
[115 200 000 000] SUN — это 115 200 TRX.
в.
Диапазон
[0,100 000 000 000 000 000] СОЛНЦЕ
7.
CREATE_NEW_ACCOUNT_FEE_IN_SYSTEM_CONTRACT
а.
Описание
Изменить стоимость создания учетной записи. Объедините динамические параметры сети №8, чтобы получить
Общая стоимость создания аккаунта:
REATE_NEW_ACCOUNT_FEE_IN_SY STEM_CONTRACT
REATE_NEW_ACCOUNT_BANDWIDTH_RATE
С
× С
б. Пример [0] СОЛНЦЕ. в. Диапазон [0,100 000 000 000 000 000] СОЛНЦЕ 8. CREATE_NEW_ACCOUNT_BANDWIDTH_RATE
а.
Описание
Изменить стоимость создания учетной записи. Объедините динамические параметры сети №7, чтобы получить
Общая стоимость создания аккаунта:
REATE_NEW_ACCOUNT_FEE_IN_SY STEM_CONTRACT
REATE_NEW_ACCOUNT_BANDWIDTH_RATE
С
× С
б. Пример [1]. в. Диапазон [0,100,000,000,000,000,000] 9. ALLOW_CREATION_OF_CONTRACTS а. Описание Чтобы включить виртуальную машину Tron (TVM). б. Пример Верно – вступит в силу с 10.10.2018, 23:47 UTC. в. Диапазон Верно/Неверно 10. УДАЛИТЬ_THE_POWER_OF_THE_GR а. Описание Удалить первоначальные голоса за генезис GR. б. Пример Верно – вступило в силу 04.11.2018, 08:46 UTC. в. Диапазон True/False — Примечание: невозможно вернуть значение False из True. 11. ЭНЕРГИЯ_FEE а. Описание Измените плату в 1 энергию. б. Пример 20 ВС. в. Диапазон [0,100 000 000 000 000 000] СОЛНЦЕ 12. EXCHANGE_CREATE_FEE а. Описание Измените стоимость создания торговой пары. Известна как стоимость создания торгового заказа. б. Пример [1 024 000 000] SUN — это 1024 TRX. в. Диапазон [0,100 000 000 000 000 000] СОЛНЦЕ 13. MAX_CPU_TIME_OF_ONE_TX а. Описание Измените максимальное время выполнения одной транзакции. Известный как предел тайм-аута одна транзакция. б. Пример 50 мс. в. Диапазон
[0, 1000] мс
14. ALLOW_UPDATE_ACCOUNT_NAME
а.
Описание
Измените параметр, чтобы разрешить учетной записи обновлять свое имя учетной записи.
б.
Пример
Ложь - которую можно предложить из java-tron Odyssey v3.2.
в.
Диапазон
True/False — Примечание: невозможно вернуть значение False из True.
15. ALLOW_SAME_TOKEN_NAME
а.
Описание
Измените проверку, позволяющую разным token иметь повторяющееся имя.
б.
Пример
Ложь - которую можно предложить из java-tron Odyssey v3.2.
в.
Диапазон
True/False — Примечание: невозможно вернуть значение False из True.
16. ALLOW_DELEGATE_RESOURCE
а.
Описание
Измените проверку, позволяющую выдавать token с повторяющимся именем, чтобы
tokenID token в длинном целочисленном типе данных будет единственным атомарным
идентификация token.
б.
Пример
Ложь - которую можно предложить из java-tron Odyssey v3.2.
в.
Диапазон
True/False — Примечание: невозможно вернуть значение False из True.
17. TOTAL_ENERGY_LIMIT
а.
Описание
Измените общий лимит энергии всей сети.
б.
Пример
[50 000 000 000 000 000] SUN – это 50 000 000 000 TRX.
в.
Диапазон
[0,100,000,000,000,000,000] СОЛНЦЕ
18. ALLOW_TVM_TRANSFER_TRC10
а.
Описание
Разрешить передачу TRC-10 token в течение smart contract с.
ALLOW_UPDATE_ACCOUNT_NAME, ALLOW_SAME_TOKEN_NAME,
Все предложения ALLOW_DELEGATE_RESOURCE должны быть одобрены, прежде чем предлагать их.
этот параметр изменится.
б.
Пример
Ложь - которую можно предложить из java-tron Odyssey v3.2.
в.
Диапазон
True/False — Примечание: невозможно вернуть значение False из True.9.2.3 Создать предложение
Только учетные записи SR имеют право предлагать изменение динамических параметров сети. 9.2.4 Голосование за предложение
За предложение могут голосовать только члены комитета (СР), а также тот член, который не проголосует вовремя. будет рассматриваться как несогласие. Предложение активно в течение 3 дней после создания. Голосование может быть изменены или восстановлены в течение трехдневного периода голосования. По истечении этого периода предложение будет либо успех (19+ голосов), либо провал (и конец). 9.2.5 Отмена предложения
Предлагающий может отменить предложение до того, как оно вступит в силу. 9.3 Структура
SR являются свидетелями вновь созданных блоков. Свидетель содержит 8 параметров:
1.
адрес: адрес этого свидетеля – например. 0xu82h…7237.
2.
voiceCount: количество полученных голосов на этом свидетеле – например. 234234.
3.
pubKey: открытый ключ для этого свидетеля – например. 0xu82h…7237.
4.
url: URL-адрес этого свидетеля, например. https://www.noonetrust.com.
5.
totalProduced: количество блоков, созданных этим свидетелем, например 2434.
6.
totalMissed: количество блоков, которые этот свидетель пропустил – например. 7.
7.
LatestBlockNum: последняя высота блока – например. 4522.
8.
isjobs: логический флаг.
Структура данных Protobuf:
сообщение Свидетель{
байтовый адрес = 1;
int64 voiceCount = 2;
байты pubKey = 3;
строка URL = 4;
int64 totalProduced = 5;
int64 totalMissed = 6;
int64 последнийBlockNum = 7;
bool isJobs = 8;
}
- Разработка децентрализованных приложений 10.1 API
Сеть TRON предлагает широкий выбор из более чем 60+ HTTP API-шлюзов для взаимодействия с сеть через полные узлы и узлы Solidity. Кроме того, TronWeb — это обширная библиотека JavaScript. содержащий функции API, которые позволяют разработчикам развертывать smart contract, измените blockchain состояние, запрос blockchain и информацию о контракте, торговля на DEX и многое другое. Эти API шлюзы могут быть направлены на локальную частную сеть, тестовую сеть Shasta или основную сеть TRON.
10.2 Сети
TRON имеет как тестовую сеть Shasta, так и основную сеть. Разработчики могут подключаться к сетям путем
развертывание узлов, взаимодействие через TronStudio или использование API через сервис TronGrid. ТронГрид
Сервис состоит из кластеров узлов с балансировкой нагрузки, размещенных на серверах AWS по всему миру. Как децентрализованное приложение
масштабы разработки и объемы вызовов API увеличиваются, TronGrid успешно справляется с увеличением
API-трафик.
10.3 Инструменты
TRON предлагает набор инструментов разработки, позволяющий разработчикам создавать инновационные DApps.
TronBox — это платформа, которая позволяет разработчикам тестировать и развертывать smart contract через TronWeb.
API. TronGrid — это размещенная служба API с балансировкой нагрузки, которая позволяет разработчикам получать доступ к
TRON сети без необходимости запуска собственного узла. TronGrid предлагает доступ как к Shasta
testnet, а также основная сеть TRON. TronStudio — это комплексная комплексная разработка.
Среда (IDE), позволяющая разработчикам компилировать, развертывать и отлаживать интеллектуальные приложения Solidity.
контракты. TronStudio содержит внутренний полный узел, который создает частную локальную среду для
smart contract тестирование перед развертыванием. Библиотека TronWeb API соединяет разработчиков с
сети с помощью широкого выбора вызовов HTTP API, завернутых в JavaScript.
10.4 Ресурсы
TRON Developer Hub — это комплексный сайт документации по API, предназначенный для 12 разработчики, желающие использовать сеть TRON. Центр разработчиков предоставляет высокий уровень концептуальное понимание TRON и знакомит пользователей с деталями взаимодействия с 12 Центр разработчиков: https://developers.tron.network/
сеть. Руководства знакомят разработчиков с настройками узлов, их развертыванием и взаимодействием с интеллектуальными
контракты, взаимодействие и реализация API, создание образцов DApp и использование каждого из
инструменты разработчика. Кроме того, каналы сообщества разработчиков доступны через Discord.
13
13 Дискорд: https://discordapp.com/invite/GsRgsTD
- Заключение
TRON — это масштабируемое решение blockchain, в котором использованы инновационные методы решения проблемы проблемы, с которыми сталкиваются устаревшие сети blockchain. Достигнув более 2 миллионов транзакций в день, с более чем 700 тысячами учетных записей TRX и превысив 2000 TPS, TRON позволил сообществу создание децентрализованной и демократизированной сети.
Tata Kelola
9.1 Perwakilan Super 9.1.1 Umum
Setiap akun di jaringan TRON dapat mendaftar dan berkesempatan menjadi Super Perwakilan (dilambangkan dengan SR). Setiap orang dapat memilih calon SR. 27 kandidat teratas dengan suara terbanyak akan menjadi SR yang mempunyai hak dan kewajiban untuk menghasilkan blok. Suaranya adalah dihitung setiap 6 jam dan SR akan berubah sesuai dengan itu.
Untuk mencegah serangan berbahaya, ada biaya untuk menjadi kandidat SR. Saat melamar, 9999 TRX akan dibakar dari akun pemohon. Setelah berhasil, akun tersebut dapat bergabung dengan SR pemilu. 9.1.2 Pemilu
TRON Kekuasaan (dilambangkan TP) diperlukan untuk memilih dan besarnya TP tergantung pada pilihan pemilih aset beku (TRX).
TP dihitung dengan cara berikut:
dll
1 TRX dibekukan untuk mendapatkan bandwidth
1
=
Setiap akun di jaringan TRON mempunyai hak untuk memilih SR mereka sendiri.
Setelah rilis (dicairkan, tersedia setelah 3 hari), pengguna tidak akan memiliki aset yang dibekukan dan kehilangan semuanya TP sesuai. Akibatnya, semua suara menjadi tidak sah untuk putaran pemungutan suara yang sedang berlangsung dan yang akan datang kecuali TRX dibekukan lagi untuk memilih.
Perhatikan bahwa jaringan TRON hanya mencatat suara terbaru, yang berarti setiap suara baru akan meniadakan semua suara sebelumnya. 9.1.3 Hadiah sebuah. Hadiah Suara
Juga dikenal sebagai Hadiah Kandidat, yang mana 127 kandidat teratas diperbarui setiap putaran (6
jam) akan membagikan 115.200 TRX yang ditambang. Hadiah akan dibagi sesuai dengan bobot suara
diterima masing-masing kandidat. Setiap tahun, total hadiah untuk kandidat adalah 168.192.000 TRX.
Total hadiah suara per putaran
Mengapa 115.200 TRX setiap putaran?
15,00TRX
total hadiah suara per putaran (V R/putaran)
1
2
=
V R/putaran = 16 T RX/blok × 20 blok/menit × 60 menit/jam × 6 jam/putaran
Perhatian: ini disetel oleh WITNESS_STANDBY_ALLOWANCE = 115.200 TRX. Lihat parameter jaringan dinamis.
Total hadiah suara per tahun
Mengapa 168.192.000 TRX setiap tahun?
168, 192, 000 T RX = total imbalan suara per tahun (V R/tahun)
V R/tahun = 115, 200 T RX/putaran × 4 putaran/hari × 365 hari/tahun
b. Blokir Hadiah
Juga dikenal sebagai Super Representative Reward, yaitu 27 kandidat (SR) teratas yang terpilih
setiap putaran (6 jam) akan membagikan sekitar 230.400 TRX yang telah ditambang. Hadiahnya akan dibagi rata
antara 27 SR (dikurangi total blok hadiah yang terlewat karena kesalahan jaringan). Sebanyak
336.384.000 TRX akan diberikan setiap tahun kepada 27 SR.
Total hadiah blok per putaran
Mengapa 230.400 TRX setiap putaran?
230, 400 T RX = total hadiah blok per putaran (BR/putaran)
BR/putaran = 32 T RX/blok × 20 blok/mnt × 60 menit/jam × 6 jam/putaran
Perhatian: hadiah blok unit ditetapkan sebesar WITNESS_PAY_PER_BLOCK = 32 TRX. Lihat jaringan dinamis
parameter.
Total hadiah blok per tahun
Mengapa 336.384.000 TRX setiap tahun?
336.384.000 T RX = total hadiah blok per tahun (BR/tahun)
BR/tahun = 230,400 T RX/putaran × 4 putaran/hari × 365 hari/tahun
1 Januari 2021
Tidak akan ada inflasi di jaringan TRON sebelum 1 Januari 2021, dan TRON DAO akan
berikan semua hadiah blok dan hadiah kandidat sebelum tanggal tersebut.
C. Perhitungan Hadiah
Perhitungan imbalan SR
imbalan total
hadiah suara (VR)
hadiah blok (BR)
t
=
+
R
jumlah VR
V
=
×
total suara
suara yang diterima calon SR
R
blok terlewatkan
2
B
=
27
jumlah BR -
× 3
Catatan: hadiah dihitung per SR per putaran (6 jam)
Peringkat 28 hingga peringkat 127 perhitungan reward calon SR imbalan total hadiah suara (VR) t =
R
jumlah VR
V
=
×
total suara
suara yang diterima calon SR
Catatan: hadiah dihitung per kandidat SR per putaran (6 jam)
9.2 Komite
9.2.1 Umum
Komite digunakan untuk mengubah TRON parameter jaringan dinamis, seperti pembuatan blok
hadiah, biaya transaksi, dll. Panitia terdiri dari 27 SR pada putaran saat ini. Setiap SR
berhak mengusulkan dan memberikan suara terhadap usul. Jika sebuah proposal mendapat 19 suara atau lebih, maka itu benar
disetujui dan parameter jaringan baru akan diterapkan pada periode pemeliharaan berikutnya (3 hari).
9.2.2 Parameter Jaringan Dinamis
0.
PEMELIHARAAN_TIME_INTERVAL
sebuah.
Deskripsi
Ubah waktu interval pemeliharaan dalam ms. Dikenal sebagai waktu interval pemungutan suara SR per
bulat.
B.
Contoh
[6 * 3600 * 1000] ms - yaitu 6 jam.
C.
Jangkauan
[3271000, 2436001000] mdtk
1.
AKUN_UPGRADE_COST
sebuah.
Deskripsi
Ubah biaya pengajuan akun SR.
B.
Contoh
[9.999.000.000] SUN - yaitu 9.999 TRX.
C.
Jangkauan
[0,100 000 000 000 000 000] MATAHARI
2.
CREATE_ACCOUNT_FEE
sebuah.
Deskripsi
Ubah biaya pembuatan akun.B.
Contoh
[100.000] SUN - yaitu 1 TRX.
C.
Jangkauan
[0,100 000 000 000 000 000] MATAHARI
3.
TRANSAKSI_FEE
sebuah.
Deskripsi
Ubah jumlah biaya yang digunakan untuk mendapatkan bandwidth tambahan.
B.
Contoh
[10] MATAHARI/byte.
C.
Jangkauan
[0,100 000 000 000 000 000] MATAHARI/byte
4.
ASSET_ISSUE_FEE
sebuah.
Deskripsi
Ubah biaya penerbitan aset.
B.
Contoh
[1024.000.000] MATAHARI - yaitu 1024 TRX.
C.
Jangkauan
[0,100 000 000 000 000 000] MATAHARI
5.
WITNESS_PAY_PER_BLOCK
sebuah.
Deskripsi
Ubah hadiah pembuatan blok SR. Dikenal sebagai hadiah blok unit.
B.
Contoh
[32.000.000] SUN - yaitu 32 TRX.
C.
Jangkauan
[0,100 000 000 000 000 000] MATAHARI
6.
WITNESS_STANDBY_ALLOWANCE
sebuah.
Deskripsi
Ubah hadiah yang diberikan kepada 127 kandidat SR teratas. Dikenal sebagai hadiah suara total
per putaran.
B.
Contoh
[115.200.000.000] SUN - yaitu 115.200 TRX.
C.
Jangkauan
[0,100 000 000 000 000 000] MATAHARI
7.
CREATE_NEW_ACCOUNT_FEE_IN_SYSTEM_CONTRACT
sebuah.
Deskripsi
Ubah biaya pembuatan akun. Gabungkan parameter jaringan dinamis #8 untuk mendapatkan
total biaya pembuatan akun:
REATE_NEW_ACCOUNT_FEE_IN_SY STEM_CONTRACT
REATE_NEW_ACCOUNT_BANDWIDTH_RATE
C
× C
b. Contoh [0] MATAHARI. C. Jangkauan [0,100 000 000 000 000 000] MATAHARI 8. CREATE_NEW_ACCOUNT_BANDWIDTH_RATE
sebuah.
Deskripsi
Ubah biaya pembuatan akun. Gabungkan parameter jaringan dinamis #7 untuk mendapatkan
total biaya pembuatan akun:
REATE_NEW_ACCOUNT_FEE_IN_SY STEM_CONTRACT
REATE_NEW_ACCOUNT_BANDWIDTH_RATE
C
× C
b. Contoh [1]. C. Jangkauan [0,100,000,000,000,000,000] 9. IZINKAN_CREATION_OF_CONTRACTS sebuah. Deskripsi Untuk mengaktifkan Mesin Virtual Tron (TVM). B. Contoh Benar - diatur untuk diaktifkan dan berlaku sejak 10/10/2018 23:47 UTC. C. Jangkauan Benar/Salah 10. HAPUS_THE_POWER_OF_THE_GR sebuah. Deskripsi Hapus suara awal GR Genesis b. Contoh Benar - berlaku pada 4/11/2018 08:46 UTC. C. Jangkauan Benar/Salah - Pemberitahuan: tidak dapat menyetel kembali ke Salah dari Benar. 11. ENERGI_FEE sebuah. Deskripsi Ubah biaya 1 energi. B. Contoh 20 MATAHARI. C. Jangkauan [0,100 000 000 000 000 000] MATAHARI 12. EXCHANGE_CREATE_FEE sebuah. Deskripsi Ubah biaya pembuatan pasangan perdagangan. Dikenal sebagai biaya pembuatan tatanan perdagangan. B. Contoh [1.024.000.000] MATAHARI - yaitu 1024 TRX. C. Jangkauan [0,100 000 000 000 000 000] MATAHARI 13. MAX_CPU_TIME_OF_ONE_TX sebuah. Deskripsi Ubah waktu eksekusi maksimum satu transaksi. Dikenal sebagai batas waktu habis satu transaksi. B. Contoh 50 ms. C. Jangkauan
[0, 1000] mdtk
14. IZINKAN_UPDATE_ACCOUNT_NAME
sebuah.
Deskripsi
Ubah opsi untuk mengizinkan akun memperbarui nama akunnya.
B.
Contoh
Salah - yang tersedia untuk diusulkan dari java-tron Odyssey v3.2.
C.
Jangkauan
Benar/Salah - Pemberitahuan: tidak dapat menyetel kembali ke Salah dari Benar.
15. IZINKAN_SAME_TOKEN_NAME
sebuah.
Deskripsi
Ubah validasi untuk mengizinkan token berbeda memiliki nama duplikat.
B.
Contoh
Salah - yang tersedia untuk diusulkan dari java-tron Odyssey v3.2.
C.
Jangkauan
Benar/Salah - Pemberitahuan: tidak dapat menyetel kembali ke Salah dari Benar.
16. IZINKAN_DELEGATE_RESOURCE
sebuah.
Deskripsi
Ubah validasi untuk mengizinkan penerbitan token dengan nama duplikat, sehingga
tokenID dari token, dalam tipe data bilangan bulat panjang, akan menjadi satu-satunya atomik
identifikasi token.
B.
Contoh
Salah - yang tersedia untuk diusulkan dari java-tron Odyssey v3.2.
C.
Jangkauan
Benar/Salah - Pemberitahuan: tidak dapat menyetel kembali ke Salah dari Benar.
17. TOTAL_ENERGY_LIMIT
sebuah.
Deskripsi
Ubah batas energi total seluruh jaringan.
B.
Contoh
[50.000.000.000.000.000] SUN - yaitu 50.000.000.000 TRX.
C.
Jangkauan
[0,100,000,000,000,000,000] MATAHARI
18. IZINKAN_TVM_TRANSFER_TRC10
sebuah.
Deskripsi
Izinkan transfer TRC-10 token dalam smart contracts.
ALLOW_UPDATE_ACCOUNT_NAME, ALLOW_SAME_TOKEN_NAME,
ALLOW_DELEGATE_RESOURCE semua proposal harus disetujui sebelum diajukan
perubahan parameter ini.
B.
Contoh
Salah - yang tersedia untuk diusulkan dari java-tron Odyssey v3.2.
C.
Jangkauan
Benar/Salah - Pemberitahuan: tidak dapat menyetel kembali ke Salah dari Benar.9.2.3 Membuat Proposal
Hanya akun SR yang berhak mengusulkan perubahan parameter jaringan dinamis. 9.2.4 Usulan Pemungutan Suara
Hanya anggota komite (SR) yang dapat memberikan suara untuk suatu proposal dan anggota yang tidak memberikan suara pada waktunya akan dianggap tidak setuju. Proposal aktif selama 3 hari setelah dibuat. Pemungutan suara bisa diubah atau diambil selama jendela pemungutan suara 3 hari. Setelah periode berakhir, proposal akan berakhir berhasil (19+ suara) atau gagal (dan berakhir). 9.2.5 Membatalkan Proposal
Pengusul dapat membatalkan usulannya sebelum menjadi efektif. 9.3 Struktur
SR adalah saksi dari blok yang baru dibuat. Seorang saksi mengandung 8 parameter:
1.
alamat: alamat saksi ini – mis. 0xu82h…7237.
2.
voteCount: jumlah suara yang diterima pada saksi ini – mis. 234234.
3.
pubKey: kunci publik untuk saksi ini – mis. 0xu82h…7237.
4.
url: url untuk saksi ini – mis. https://www.noonetrust.com.
5.
totalProducted: jumlah blok yang dihasilkan oleh saksi ini – mis. 2434.
6.
totalMissed: jumlah blok yang terlewatkan oleh saksi ini – mis. 7.
7.
lastBlockNum: ketinggian blok terbaru – mis. 4522.
8.
isjobs: bendera boolean.
Struktur data Protobuf:
pesan Saksi{
byte alamat = 1;
int64 jumlah suara = 2;
byte pubKey = 3;
string url = 4;
int64 total Diproduksi = 5;
int64 totalTerlewatkan = 6;
int64 newBlockNum = 7;
bool isJobs = 8;
}
- Pengembangan DApp 10.1 API
Jaringan TRON menawarkan beragam pilihan lebih dari 60+ gateway API HTTP untuk berinteraksi dengan jaringan melalui Node Penuh dan Soliditas. Selain itu, TronWeb adalah perpustakaan JavaScript yang komprehensif berisi fungsi API yang memungkinkan pengembang menerapkan smart contract, ubah blockchain negara bagian, kueri blockchain dan informasi kontrak, perdagangan di DEX, dan banyak lagi. API ini gateway dapat diarahkan ke privatenet lokal, testnet Shasta, atau TRON Mainnet.
10.2 Jaringan
TRON memiliki testnet Shasta dan juga Mainnet. Pengembang dapat terhubung ke jaringan dengan
menyebarkan node, berinteraksi melalui TronStudio, atau menggunakan API melalui layanan TronGrid. Jaringan Tron
layanan terdiri dari klaster simpul dengan beban seimbang yang dihosting di server AWS di seluruh dunia. Sebagai DApp
pengembangan ditingkatkan dan volume panggilan API meningkat, TronGrid berhasil melakukan peningkatan tersebut
lalu lintas API.
10.3 Alat
TRON menawarkan serangkaian alat pengembangan untuk memungkinkan pengembang membuat DApps yang inovatif.
TronBox adalah kerangka kerja yang memungkinkan pengembang menguji dan menyebarkan smart contracts melalui TronWeb
API. TronGrid adalah layanan API yang dihosting dan diseimbangkan bebannya yang memungkinkan pengembang untuk mengakses
TRON jaringan tanpa harus menjalankan nodenya sendiri. TronGrid menawarkan akses ke Shasta
testnet serta TRON Mainnet. TronStudio adalah Pengembangan Terintegrasi yang komprehensif
Lingkungan (IDE) yang memungkinkan pengembang untuk mengkompilasi, menyebarkan, dan men-debug Solidity smart mereka
kontrak. TronStudio berisi node penuh internal yang menciptakan lingkungan lokal pribadi untuk
smart contract pengujian sebelum penerapan. Pustaka TronWeb API menghubungkan pengembang ke
jaringan melalui berbagai pilihan panggilan HTTP API yang dibungkus dalam JavaScript.
10.4 Sumber Daya
Hub Pengembang TRON adalah situs dokumentasi API komprehensif yang dirancang khusus 12 pengembang yang ingin membangun jaringan TRON. Hub Pengembang menyediakan tingkat tinggi pemahaman konseptual tentang TRON dan memandu pengguna melalui detail interaksi dengan 12 Pusat Pengembang: https://developers.tron.network/
jaringan. Panduan ini memandu pengembang melalui penyiapan node, penerapan, dan interaksi dengan smart
kontrak, interaksi dan implementasi API, membuat contoh DApps, dan menggunakan masing-masingnya
alat pengembang. Selain itu, saluran komunitas pengembang tersedia melalui Discord.
13
13 Perselisihan: https://discordapp.com/invite/GsRgsTD
- Kesimpulan
TRON adalah solusi blockchain terukur yang menggunakan metode inovatif untuk mengatasi tantangan yang dihadapi oleh jaringan blockchain lama. Telah mencapai lebih dari 2 juta transaksi per hari, dengan lebih dari 700 ribu akun TRX, dan melampaui 2000 TPS, TRON telah memungkinkan komunitas dalam menciptakan jaringan yang terdesentralisasi dan demokratis.