เอกสารไวท์เปเปอร์ของตรอน
Introdução
1.1 Visão
TRON é um projeto ambicioso dedicado ao estabelecimento de uma Internet verdadeiramente descentralizada e sua
infraestrutura. O protocolo TRON, um dos maiores sistemas operacionais baseados em blockchain do
mundo, oferece suporte público blockchain de alto rendimento, alta escalabilidade e alta disponibilidade para
todos os aplicativos descentralizados (DApps) no ecossistema TRON. A aquisição de julho de 2018 da
O BitTorrent consolidou ainda mais a liderança de TRON na busca de um ecossistema descentralizado.
1.2 Antecedentes
A introdução de Bitcoin em 2009 revolucionou a percepção da sociedade sobre o mercado financeiro tradicional sistema na sequência da Grande Recessão (2007-2008). Como fundos de hedge e bancos centralizados entrou em colapso devido à especulação em derivativos financeiros opacos, a tecnologia blockchain forneceu um livro razão universal transparente do qual qualquer pessoa poderia obter informações sobre transações. O as transações foram protegidas criptograficamente usando um mecanismo de consenso de Prova de Trabalho (PoW), evitando assim problemas de gastos duplos.
No final de 2013, o white paper Ethereum propôs uma rede na qual smart contracts e um A Máquina Virtual Turing-complete Ethereum (EVM) permitiria aos desenvolvedores interagir com o rede através de DApps. No entanto, como os volumes de transações em Bitcoin e Ethereum atingiram o pico em 2017, ficou evidente pelos baixos tempos de processamento das transações e pelas altas taxas de transação que criptomoedas como Bitcoin e Ethereum em seu estado existente não eram escaláveis para uso generalizado adoção. Assim, TRON foi fundado e idealizado como uma solução inovadora para essas questões urgentes. desafios de escalabilidade.

1.3 História O TRON DAO foi estabelecido em julho de 2017 em Cingapura. Em dezembro de 2017, TRON tinha lançou seu protocolo de código aberto. O Testnet, Blockchain Explorer e Web Wallet foram todos lançada em março de 2018. TRON Mainnet foi lançada logo depois, em maio de 2018, marcando o Lançamento do Odyssey 2.0 como um marco técnico. Em junho de 2018, TRON declarou sua independência com a criação do bloco Genesis, juntamente com a aquisição do BitTorrent em julho de 2018. Em Outubro de 2018, TRON lançou a TRON Máquina Virtual (TVM), um conjunto completo de ferramentas para desenvolvedores, e sistema de suporte 360. O roteiro TRON envolve combinar os 100 milhões de usuários do BitTorrent com a rede TRON por meio do Project Atlas, além de incentivar a comunidade de desenvolvedores a lançar novos e emocionantes DApps na rede TRON1. 1 V1.0 está disponível em https://tron.network/static/doc/white_paper_v_1_0.pdf
1.4 Terminologia
Endereço/carteira Um endereço ou carteira que consiste em credenciais de conta na rede TRON é gerado por um par de chaves, que consiste em uma chave privada e uma chave pública, sendo esta última derivada da primeira através de um algoritmo. A chave pública é geralmente usada para criptografia de chave de sessão, assinatura verificação e criptografia de dados que poderiam ser descriptografados por uma chave privada correspondente.
ABI Uma interface binária de aplicativo (ABI) é uma interface entre dois módulos de programa binário; normalmente um desses módulos é uma biblioteca ou recurso do sistema operacional e o outro é uma execução do usuário programa.
API Uma interface de programação de aplicativos (API) é usada principalmente para desenvolvimento de clientes de usuários. Com API suporte, plataformas de emissão token também podem ser projetadas pelos próprios desenvolvedores.
Ativo Nos documentos de TRON, o ativo é igual a token, que também é indicado como TRC-10 token.
Pontos de largura de banda (BP) Para manter a rede operando sem problemas, as transações da rede TRON usam a BP como combustível. Cada conta recebe 5.000 BP diários gratuitos e mais podem ser obtidos congelando TRX para BP. TRX e TRC-10 token transferências são transações normais que custam BP. Implantação e execução de contratos inteligentes as transações consomem tanto BP quanto Energia.
Bloquear Os blocos contêm os registros digitais das transações. Um bloco completo consiste no número mágico, tamanho do bloco, cabeçalho do bloco, contador de transações e dados de transação.
Recompensa de bloco As recompensas de produção de blocos são enviadas para uma subconta (endereço/carteira). Superrepresentantes podem reivindicar suas recompensas no Tronscan ou diretamente através da API.
Cabeçalho do bloco Um cabeçalho de bloco faz parte de um bloco. Os cabeçalhos dos blocos TRON contêm o hash do bloco anterior, o Raiz Merkle, carimbo de data/hora, versão e endereço da testemunha.Carteira Fria A carteira fria, também conhecida como carteira offline, mantém a chave privada completamente desconectada de qualquer rede. As carteiras frias são geralmente instaladas em dispositivos "frios" (por exemplo, computadores ou telefones celulares). permanecer offline) para garantir a segurança da chave privada TRX.
DApp Aplicativo descentralizado é um aplicativo que opera sem uma parte centralmente confiável. Um aplicativo que permite interação/acordos/comunicação direta entre usuários finais e/ou recursos sem intermediário.
gRPC gRPC (gRPC Remote Procedure Calls) é um sistema de chamada de procedimento remoto (RPC) de código aberto 2 inicialmente desenvolvido no Google. Ele usa HTTP/2 para transporte, buffers de protocolo como interface linguagem de descrição e fornece recursos como autenticação, streaming bidirecional e fluxo controle, ligações bloqueadoras ou não bloqueadoras e cancelamento e tempos limite. Ele gera ligações de cliente e servidor de plataforma cruzada para vários idiomas. Cenários de uso mais comuns incluem a conexão de serviços em arquitetura estilo microsserviços e a conexão de dispositivos móveis, e clientes de navegador para serviços de back-end.
Carteira quente A carteira quente, também conhecida como carteira online, permite que a chave privada do usuário seja usada online, podendo assim ser suscetível a vulnerabilidades potenciais ou interceptação por atores mal-intencionados.
JDK Java Development Kit é o Java SDK usado para aplicativos Java. É o núcleo do Java desenvolvimento, compreendendo o ambiente de aplicação Java (biblioteca de classes JVM + Java) e Java ferramentas.
KhaosDB TRON possui um KhaosDB na memória do nó completo que pode armazenar todas as cadeias recém-bifurcadas geradas dentro de um determinado período de tempo e ajuda as testemunhas a mudar rapidamente de sua própria cadeia ativa em uma nova cadeia principal. Consulte 2.2.2 Armazenamento de estado para obter mais detalhes.
NívelDB O LevelDB foi inicialmente adotado com o objetivo principal de atender aos requisitos de R/W rápido e rápido desenvolvimento. Após lançar a Mainnet, TRON atualizou seu banco de dados para um totalmente customizado um atendia às suas próprias necessidades. Consulte 2.2.1 Armazenamento Blockchain para obter mais detalhes.
Raiz Merkel Uma raiz Merkle é o hash de todos os hashes de todas as transações incluídas como parte de um bloco em um blockchain rede. Consulte 3.1 Prova de participação delegada (DPoS) para obter mais detalhes. 2 https://en.wikipedia.org/wiki/GRPC

Rede de teste pública (Shasta) Uma versão da rede executada em uma configuração de nó único. Os desenvolvedores podem se conectar e testar recursos sem se preocupar com a perda econômica. Testnet tokens não têm valor e qualquer um pode solicite mais da torneira pública.
RPC
3
Na computação distribuída, uma chamada de procedimento remoto (RPC) ocorre quando um programa de computador causa um
procedimento (sub-rotina) para ser executado em um espaço de endereço diferente (geralmente em outro computador em
uma rede compartilhada), que é codificada como se fosse uma chamada de procedimento normal (local), sem o
programador codificando explicitamente os detalhes da interação remota.
Escalabilidade A escalabilidade é um recurso do protocolo TRON. É a capacidade de um sistema, rede ou processo de lidar com uma quantidade crescente de trabalho ou seu potencial será ampliado para acomodar esse crescimento.
SOL SUN substituiu drop como a menor unidade de TRX. 1 TRX = 1.000.000 SOL.
Taxa de transferência Alto rendimento é um recurso da TRON Mainnet. É medido em transações por segundo (TPS), ou seja, a capacidade máxima de transação em um segundo.
Carimbo de data e hora O tempo aproximado de produção do bloco é registrado como timestamp Unix, que é o número de milissegundos decorridos desde 00:00:00 de 01 de janeiro de 1970 UTC.
TKC Configuração de token.
TRC-10 Um padrão de criptografia token na plataforma TRON. Certas regras e interfaces devem ser seguidas ao realizar uma oferta inicial de moedas em TRON blockchain.
TRX TRX significa Tronix, que é a criptomoeda oficial de TRON.
3 https://en.wikipedia.org/wiki/Remote_procedure_call
การแนะนำ
1.1 วิสัยทัศน์
TRON เป็นโครงการที่มีความทะเยอทะยานที่อุทิศให้กับการสร้างอินเทอร์เน็ตที่มีการกระจายอำนาจอย่างแท้จริงและ
โครงสร้างพื้นฐาน TRON Protocol หนึ่งในระบบปฏิบัติการที่ใช้ blockchain ที่ใหญ่ที่สุดใน
world เสนอ blockchain การสนับสนุนสาธารณะสำหรับปริมาณงานสูง ความสามารถในการปรับขนาดสูง และความพร้อมใช้งานสูงสำหรับ
แอปพลิเคชันแบบกระจายอำนาจ (DApps) ทั้งหมดในระบบนิเวศ TRON การเข้าซื้อกิจการเดือนกรกฎาคม 2561 ของ
BitTorrent ยังตอกย้ำความเป็นผู้นำของ TRON ในการแสวงหาระบบนิเวศแบบกระจายอำนาจ
1.2 ความเป็นมา
การเปิดตัว Bitcoin ในปี 2009 ได้ปฏิวัติการรับรู้ของสังคมเกี่ยวกับการเงินแบบดั้งเดิม หลังเกิดภาวะเศรษฐกิจถดถอยครั้งใหญ่ (พ.ศ. 2550-2551) เป็นกองทุนป้องกันความเสี่ยงแบบรวมศูนย์และธนาคาร ทรุดตัวลงจากการเก็งกำไรในอนุพันธ์ทางการเงินที่ทึบแสง blockchain เทคโนโลยีให้ บัญชีแยกประเภทสากลที่โปร่งใสซึ่งใครก็ตามสามารถรวบรวมข้อมูลธุรกรรมได้ ที่ ธุรกรรมได้รับการรักษาความปลอดภัยแบบเข้ารหัสโดยใช้กลไกฉันทามติ Proof of Work (PoW) จึงป้องกันปัญหาการใช้จ่ายซ้ำซ้อน
ในช่วงปลายปี 2013 เอกสารไวท์เปเปอร์ Ethereum เสนอเครือข่ายที่ smart contracts และ Turing-complete Ethereum Virtual Machine (EVM) จะช่วยให้นักพัฒนาสามารถโต้ตอบกับ เครือข่ายผ่าน DApps อย่างไรก็ตาม เนื่องจากปริมาณธุรกรรมใน Bitcoin และ Ethereum พุ่งถึงจุดสูงสุดในปี 2017 เห็นได้ชัดจากเวลาการทำธุรกรรมที่ต่ำและค่าธรรมเนียมการทำธุรกรรมที่สูง cryptocurrencies เช่น Bitcoin และ Ethereum ในสถานะที่มีอยู่ไม่สามารถปรับขนาดได้อย่างกว้างขวาง การรับเลี้ยงบุตรบุญธรรม ดังนั้น TRON จึงถูกก่อตั้งขึ้นและจินตนาการว่าเป็นโซลูชันเชิงนวัตกรรมสำหรับการกดเหล่านี้ ความท้าทายด้านความสามารถในการขยายขนาด

1.3 ประวัติศาสตร์ TRON DAO ก่อตั้งขึ้นในเดือนกรกฎาคม 2017 ในสิงคโปร์ ในเดือนธันวาคม 2017 TRON มี เปิดตัวโปรโตคอลโอเพ่นซอร์ส Testnet, Blockchain Explorer และ Web Wallet ล้วนเป็นทั้งหมด เปิดตัวภายในเดือนมีนาคม 2018 TRON Mainnet เปิดตัวหลังจากนั้นไม่นานในเดือนพฤษภาคม 2018 ซึ่งถือเป็น การเปิดตัว Odyssey 2.0 ถือเป็นก้าวสำคัญทางเทคนิค ในเดือนมิถุนายน 2018 TRON ประกาศเอกราช ด้วยการสร้างบล็อก Genesis พร้อมกับการเข้าซื้อกิจการ BitTorrent ในเดือนกรกฎาคม 2561 ใน ตุลาคม 2018 TRON เปิดตัว TRON Virtual Machine (TVM) ซึ่งเป็นชุดเครื่องมือของนักพัฒนาที่สมบูรณ์ และระบบรองรับ 360 องศา แผนงาน TRON เกี่ยวข้องกับการรวมผู้ใช้ BitTorrent 100 ล้านคนเข้าด้วยกัน ด้วยเครือข่าย TRON ผ่าน Project Atlas ตลอดจนส่งเสริมชุมชนนักพัฒนาให้เปิดตัว DApps ใหม่ที่น่าตื่นเต้นบน TRON network1 1 V1.0 มีให้ที่ https://tron.network/static/doc/white_paper_v_1_0.pdf
1.4 คำศัพท์เฉพาะทาง
ที่อยู่/กระเป๋าเงิน ที่อยู่หรือกระเป๋าเงินที่ประกอบด้วยข้อมูลรับรองบัญชีบนเครือข่าย TRON ถูกสร้างขึ้นโดย คู่คีย์ซึ่งประกอบด้วยคีย์ส่วนตัวและคีย์สาธารณะ ซึ่งคีย์หลังได้รับมาจากคีย์แรก ผ่านอัลกอริธึม กุญแจสาธารณะมักจะใช้สำหรับการเข้ารหัสคีย์เซสชันและลายเซ็น การตรวจสอบและการเข้ารหัสข้อมูลที่สามารถถอดรหัสได้ด้วยคีย์ส่วนตัวที่เกี่ยวข้อง
เอบีไอ Application Binary Interface (ABI) เป็นส่วนต่อประสานระหว่างโมดูลโปรแกรมไบนารีสองโมดูล ปกติแล้ว หนึ่งในโมดูลเหล่านี้คือไลบรารีหรือสิ่งอำนวยความสะดวกของระบบปฏิบัติการ และอีกโมดูลหนึ่งคือส่วนเรียกใช้งานของผู้ใช้ โปรแกรม
เอพีไอ Application Programming Interface (API) ส่วนใหญ่จะใช้สำหรับการพัฒนาไคลเอนต์ผู้ใช้ ด้วยเอพีไอ สนับสนุน token แพลตฟอร์มการออกสามารถออกแบบโดยนักพัฒนาเองได้
สินทรัพย์ ในเอกสารของ TRON เนื้อหาจะเหมือนกับ token ซึ่งยังแสดงเป็น TRC-10 token
คะแนนแบนด์วิธ (BP) เพื่อให้เครือข่ายทำงานได้อย่างราบรื่น ธุรกรรมเครือข่าย TRON จะใช้ BP เป็นเชื้อเพลิง แต่ละบัญชี รับ 5,000 BP ฟรีทุกวัน และสามารถรับได้อีกมากโดยการแช่แข็ง TRX สำหรับ BP ทั้ง TRX และ TRC-10 token การโอนเป็นธุรกรรมปกติที่คิดต้นทุน BP การปรับใช้และการดำเนินการตามสัญญาอัจฉริยะ ธุรกรรมใช้ทั้ง BP และพลังงาน
บล็อก บล็อกประกอบด้วยบันทึกธุรกรรมดิจิทัล บล็อกที่สมบูรณ์ประกอบด้วยหมายเลขเวทย์มนตร์ ขนาดบล็อก ส่วนหัวของบล็อก ตัวนับธุรกรรม และข้อมูลธุรกรรม
รางวัลบล็อก รางวัลการผลิตบล็อกจะถูกส่งไปยังบัญชีย่อย (ที่อยู่/กระเป๋าเงิน) ตัวแทนซุปเปอร์ก็ได้ รับรางวัลจาก Tronscan หรือผ่าน API โดยตรง
ส่วนหัวของบล็อก ส่วนหัวของบล็อกเป็นส่วนหนึ่งของบล็อก TRON ส่วนหัวของบล็อกประกอบด้วย hash ของบล็อกก่อนหน้า ราก Merkle การประทับเวลา เวอร์ชัน และที่อยู่พยานกระเป๋าเงินเย็น กระเป๋าเงินเย็นหรือที่รู้จักกันในชื่อกระเป๋าเงินออฟไลน์ จะทำให้รหัสส่วนตัวถูกตัดการเชื่อมต่ออย่างสมบูรณ์ เครือข่าย โดยปกติแล้ว กระเป๋าเงินเย็นจะติดตั้งบนอุปกรณ์ "เย็น" (เช่น คอมพิวเตอร์หรือโทรศัพท์มือถือ อยู่ในสถานะออฟไลน์) เพื่อรับรองความปลอดภัยของรหัสส่วนตัว TRX
ดีแอป แอปพลิเคชันแบบกระจายอำนาจเป็นแอปที่ทำงานโดยไม่มีฝ่ายที่เชื่อถือได้จากส่วนกลาง ใบสมัคร ที่ช่วยให้มีปฏิสัมพันธ์/ข้อตกลง/การสื่อสารโดยตรงระหว่างผู้ใช้ปลายทางและ/หรือทรัพยากร โดยไม่มีคนกลาง
จีอาร์พีซี gRPC (gRPC Remote Procedure Calls) เป็นระบบการเรียกขั้นตอนระยะไกล (RPC) แบบโอเพ่นซอร์ส 2 พัฒนาครั้งแรกที่ Google ใช้ HTTP/2 สำหรับการขนส่ง โดยมี Protocol Buffers เป็นอินเทอร์เฟซ ภาษาคำอธิบาย และมีคุณสมบัติต่างๆ เช่น การรับรองความถูกต้อง การสตรีมและโฟลว์แบบสองทิศทาง การควบคุม การบล็อกหรือการไม่บล็อกการเชื่อมโยง และการยกเลิกและการหมดเวลา มันสร้าง ไคลเอนต์ข้ามแพลตฟอร์มและการเชื่อมโยงเซิร์ฟเวอร์สำหรับหลายภาษา สถานการณ์การใช้งานที่พบบ่อยที่สุด รวมถึงบริการเชื่อมต่อในสถาปัตยกรรมสไตล์ไมโครเซอร์วิสและการเชื่อมต่ออุปกรณ์มือถือ และ ไคลเอ็นต์เบราว์เซอร์ไปยังบริการแบ็กเอนด์
กระเป๋าเงินสุดฮอต กระเป๋าเงินร้อนหรือที่เรียกว่ากระเป๋าเงินออนไลน์ อนุญาตให้ใช้รหัสส่วนตัวของผู้ใช้ออนไลน์ได้ ดังนั้นจึงอาจเป็นเช่นนั้น อ่อนแอต่อช่องโหว่ที่อาจเกิดขึ้นหรือการสกัดกั้นโดยผู้ดำเนินการที่เป็นอันตราย
เจดีเค Java Development Kit คือ Java SDK ที่ใช้สำหรับแอปพลิเคชัน Java มันเป็นแกนหลักของ Java การพัฒนาประกอบด้วยสภาพแวดล้อมแอปพลิเคชัน Java (ไลบรารีคลาส JVM + Java) และ Java เครื่องมือ
KhaosDB TRON มี KhaosDB ในหน่วยความจำโหนดเต็มที่สามารถจัดเก็บเชนที่แยกใหม่ทั้งหมดที่สร้างขึ้น ภายในระยะเวลาที่กำหนดและสนับสนุนให้พยานเปลี่ยนจากห่วงโซ่ที่ใช้งานของตนเองได้อย่างรวดเร็ว เข้าสู่ห่วงโซ่หลักใหม่ ดู 2.2.2 การจัดเก็บสถานะสำหรับรายละเอียดเพิ่มเติม
ระดับDB เริ่มแรก LevelDB ถูกนำมาใช้โดยมีเป้าหมายหลักเพื่อให้เป็นไปตามข้อกำหนดของ R/W ที่รวดเร็วและรวดเร็ว การพัฒนา หลังจากเปิดตัว Mainnet แล้ว TRON ได้อัปเกรดฐานข้อมูลเป็นแบบที่ปรับแต่งเองทั้งหมด สิ่งหนึ่งที่สนองความต้องการของตัวเอง ดู 2.2.1 ที่เก็บข้อมูลบล็อคเชน สำหรับรายละเอียดเพิ่มเติม
รากเมิร์เคิล รากของ Merkle คือ hash ของ hashes ทั้งหมด ของธุรกรรมทั้งหมดที่รวมเป็นส่วนหนึ่งของบล็อกใน blockchain เครือข่าย ดู 3.1 หลักฐานการเดิมพันที่ได้รับมอบหมาย (DPoS) สำหรับรายละเอียดเพิ่มเติม 2 https://en.wikipedia.org/wiki/GRPC

เครือข่ายทดสอบสาธารณะ (Shasta) เวอร์ชันของเครือข่ายที่ทำงานในการกำหนดค่าโหนดเดียว นักพัฒนาสามารถเชื่อมต่อและทดสอบได้ คุณสมบัติโดยไม่ต้องกังวลกับการสูญเสียทางเศรษฐกิจ Testnet tokens ไม่มีค่าและใครๆ ก็สามารถทำได้ ขอเพิ่มเติมจาก faucet สาธารณะ
อาร์พีซี
3
ในการคำนวณแบบกระจาย การเรียกขั้นตอนระยะไกล (RPC) คือเมื่อโปรแกรมคอมพิวเตอร์ทำให้เกิด
ขั้นตอน (รูทีนย่อย) เพื่อดำเนินการในพื้นที่ที่อยู่อื่น (โดยทั่วไปบนคอมพิวเตอร์เครื่องอื่นที่เปิดอยู่
เครือข่ายที่ใช้ร่วมกัน) ซึ่งถูกเข้ารหัสราวกับว่าเป็นการเรียกโพรซีเดอร์ปกติ (ในเครื่อง) โดยไม่มี
โปรแกรมเมอร์เข้ารหัสรายละเอียดสำหรับการโต้ตอบระยะไกลอย่างชัดเจน
ความสามารถในการขยายขนาด ความสามารถในการปรับขนาดเป็นคุณลักษณะของโปรโตคอล TRON เป็นความสามารถของระบบ เครือข่าย หรือกระบวนการในการ รับมือกับปริมาณงานที่เพิ่มขึ้นหรือศักยภาพที่จะขยายเพื่อรองรับการเติบโตนั้น
อาทิตย์ SUN แทนที่ drop เป็นหน่วยที่เล็กที่สุดของ TRX 1 TRX = 1,000,000 อาทิตย์
ปริมาณงาน ปริมาณงานสูงเป็นคุณลักษณะของ TRON Mainnet มีหน่วยวัดเป็นธุรกรรมต่อวินาที (TPS) คือความสามารถในการทำธุรกรรมสูงสุดในหนึ่งวินาที
การประทับเวลา เวลาโดยประมาณของการผลิตบล็อกจะถูกบันทึกเป็นการประทับเวลา Unix ซึ่งเป็นจำนวน มิลลิวินาทีที่ผ่านไปตั้งแต่ 00:00:00 01 มกราคม 1970 UTC
ทีเคซี การกำหนดค่าโทเค็น
ทีอาร์ซี-10 มาตรฐานของ crypto token บนแพลตฟอร์ม TRON จำเป็นต้องปฏิบัติตามกฎและอินเทอร์เฟซบางอย่าง เมื่อถือข้อเสนอเหรียญเริ่มต้นใน TRON blockchain
TRX TRX ย่อมาจาก Tronix ซึ่งเป็นสกุลเงินดิจิทัลอย่างเป็นทางการของ TRON
3 https://en.wikipedia.org/wiki/Remote_procedure_call
Arquitetura
TRON adota uma arquitetura de 3 camadas dividida em camada de armazenamento, camada central e camada de aplicativo. O protocolo TRON segue o Google Protobuf, que oferece suporte intrínseco a vários idiomas extensão.

Figura 1: TRON Arquitetura de 3 camadas
2.1 Núcleo
Existem vários módulos na camada principal, incluindo smart contracts, gerenciamento de contas e consenso. Uma máquina virtual baseada em pilha é implementada em TRON e uma instrução otimizada conjunto é usado. Para melhor oferecer suporte aos desenvolvedores de DApp, Solidity foi escolhido como smart contract 4 idioma, seguido de suporte futuro para outros idiomas avançados. Além disso, o consenso de TRON mecanismo é baseado em Prova de Participação Delegada (DPoS) e muitas inovações foram feitas em para atender aos seus requisitos exclusivos. 2.2 Armazenamento
TRON projetou um protocolo exclusivo de armazenamento distribuído que consiste em Block Storage e State Armazenamento. A noção de banco de dados gráfico foi introduzida no design da camada de armazenamento para atender melhor à necessidade de armazenamento diversificado de dados no mundo real. 2.2.1 Armazenamento Blockchain
TRON blockchain armazenamento opta por usar LevelDB, que é desenvolvido pelo Google e comprovado sucesso com muitas empresas e projetos. Possui alto desempenho e suporta bytes arbitrários matrizes como chaves e valores, obtenção, colocação e exclusão singular, colocação e exclusão em lote, bidirecional iteradores e compactação simples usando o algoritmo Snappy muito rápido. 2.2.2 Armazenamento de Estado
TRON possui um KhaosDB na memória do nó completo que pode armazenar todas as cadeias recém-bifurcadas geradas dentro de um determinado período de tempo e ajuda as testemunhas a mudar rapidamente de sua própria cadeia ativa em uma nova cadeia principal. Ele também pode proteger o armazenamento blockchain, tornando-o mais estável contra terminando anormalmente em um estado intermediário. 2.3 Aplicação
Os desenvolvedores podem criar uma grande variedade de DApps e carteiras personalizadas em TRON. Desde TRON permite que smart contracts sejam implantados e executados, as oportunidades de aplicativos utilitários são ilimitado. 4 Documentação oficial do Solidity: https://solidity.readthedocs.io/
2.4 Protocolo
O protocolo TRON adere aos Google Protocol Buffers , que é um protocolo neutro em termos de linguagem, plataforma e 5 e extensível de serializar dados estruturados para uso em protocolos de comunicação, armazenamento de dados, e muito mais. 2.4.1 Buffers de Protocolo
Protocol Buffers (Protobuf) é um mecanismo flexível, eficiente e automatizado para serializar dados estruturados. dados, semelhantes a JSON ou XML, mas muito menores, mais rápidos e mais simples.
As definições de protobuf (.proto) podem ser usadas para gerar código para C++, Java, C#, Python, Ruby, Linguagens Golang e Objective-C por meio dos geradores de código oficiais. Vários terceiros implementações também estão disponíveis para muitos outros idiomas. Protobuf facilita o desenvolvimento para clientes unificando as definições da API e também otimizando as transferências de dados. Os clientes podem usar a API .proto do repositório de protocolo de TRON e integrado por meio do código gerado automaticamente bibliotecas.
Como comparação, os buffers de protocolo são de 3 a 10 vezes menores e de 20 a 100 vezes mais rápidos que o XML, com sintaxe menos ambígua. Protobuf gera classes de acesso a dados mais fáceis de usar programaticamente. 2.4.2HTTP
TRON O protocolo fornece uma API RESTful HTTP alternativa à API Protobuf. Eles compartilham o mesmo interface, mas a API HTTP pode ser facilmente usada em clientes javascript. 2.5 TRON Máquina Virtual (TVM)
O TVM é uma máquina virtual Turing completa e leve desenvolvida para o ecossistema de TRON. O
A TVM se conecta perfeitamente com o ecossistema de desenvolvimento existente para fornecer milhões de recursos globais
desenvolvedores com um sistema blockchain personalizado que é eficiente, conveniente, estável, seguro e
escalável.
2.6 Exchange Descentralizada (DEX)
5 Documentação oficial dos buffers de protocolo do Google: https://developers.google.com/protocol-buffers/A rede TRON oferece suporte nativo a funções de exchange descentralizadas. Uma exchange descentralizada consiste em vários pares de negociação. Um par de negociação (notação “Exchange”) é um mercado de câmbio entre TRC-10 tokens, ou entre um TRC-10 token e TRX. Qualquer conta pode criar uma negociação par entre quaisquer tokens, mesmo que o mesmo par já exista na rede TRON. Negociação e as flutuações de preços dos pares de negociação seguem o Protocolo Bancor. A rede TRON estipula que 6 os pesos dos dois tokens em todos os pares de negociação são iguais, então a proporção de seus saldos é o preço entre eles. Por exemplo, considere um par comercial contendo dois tokens, ABC e DEF. ABC tem um saldo de 10 milhões e o DEF tem um saldo de 1 milhão. Como seus pesos são iguais, 10 ABC = 1 DEF. Isso significa que a proporção de ABC para DEF é de 10 ABC por DEF. 2.7 Implementação
O código TRON blockchain é implementado em Java e era originalmente uma bifurcação de EthereumJ.
6 Site oficial do Protocolo Bancor: https://about.bancor.network/protocol/
สถาปัตยกรรมระบบ
TRON ใช้สถาปัตยกรรม 3 เลเยอร์ซึ่งแบ่งออกเป็น Storage Layer, Core Layer และ Application Layer โปรโตคอล TRON เป็นไปตาม Google Protobuf ซึ่งสนับสนุนหลายภาษาอย่างแท้จริง ส่วนขยาย

รูปที่ 1: TRON สถาปัตยกรรม 3 ชั้น
2.1 แกน
มีหลายโมดูลในเลเยอร์หลัก รวมถึง smart contracts การจัดการบัญชี และ ฉันทามติ เครื่องเสมือนแบบสแต็กถูกใช้งานบน TRON และคำสั่งที่ปรับให้เหมาะสม มีการใช้ชุด เพื่อสนับสนุนนักพัฒนา DApp ได้ดียิ่งขึ้น Solidity ได้รับเลือกให้เป็น smart contract 4 ตามมาด้วยการสนับสนุนภาษาขั้นสูงอื่นๆ ในอนาคต นอกจากนี้ ฉันทามติของ TRON กลไกจะขึ้นอยู่กับ Delegated Proof of Stake (DPoS) และมีการสร้างนวัตกรรมมากมายใน เพื่อให้เป็นไปตามข้อกำหนดเฉพาะของมัน 2.2 การจัดเก็บ
TRON ออกแบบโปรโตคอลการจัดเก็บข้อมูลแบบกระจายที่ไม่ซ้ำใคร ซึ่งประกอบด้วย Block Storage และ State ที่เก็บของ แนวคิดของฐานข้อมูลกราฟถูกนำมาใช้ในการออกแบบชั้นจัดเก็บข้อมูลเพื่อ ตอบสนองความต้องการการจัดเก็บข้อมูลที่หลากหลายในโลกแห่งความเป็นจริงได้ดีขึ้น 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 บัฟเฟอร์โปรโตคอล
Protocol Buffers (Protobuf) เป็นกลไกอัตโนมัติที่ยืดหยุ่น มีประสิทธิภาพ สำหรับการจัดโครงสร้างอนุกรม ข้อมูลคล้ายกับ JSON หรือ XML แต่มีขนาดเล็กกว่า เร็วกว่า และง่ายกว่ามาก
คำจำกัดความ Protobuf (.proto) สามารถใช้เพื่อสร้างโค้ดสำหรับ C++, Java, C#, Python, Ruby, ภาษา Golang และ Objective-C ผ่านตัวสร้างโค้ดอย่างเป็นทางการ บุคคลที่สามต่างๆ การใช้งานยังมีให้บริการในภาษาอื่นอีกมากมาย Protobuf ช่วยให้การพัฒนาง่ายขึ้น ลูกค้าโดยการรวมคำจำกัดความ API และเพิ่มประสิทธิภาพการถ่ายโอนข้อมูล ลูกค้าสามารถรับ API ได้ .proto จากที่เก็บโปรโตคอลของ TRON และบูรณาการผ่านโค้ดที่สร้างขึ้นโดยอัตโนมัติ ห้องสมุด
จากการเปรียบเทียบ Protocol Buffers มีขนาดเล็กกว่า 3 ถึง 10 เท่าและเร็วกว่า XML 20 ถึง 100 เท่า ด้วยไวยากรณ์ที่ไม่ชัดเจนน้อยกว่า Protobuf สร้างคลาสการเข้าถึงข้อมูลที่ใช้งานง่ายกว่า โดยทางโปรแกรม 2.4.2 HTTP
TRON โปรโตคอลให้ทางเลือก RESTful HTTP API แทน Protobuf API พวกเขาแบ่งปันเหมือนกัน อินเทอร์เฟซ แต่ HTTP API สามารถใช้งานได้ทันทีในไคลเอนต์จาวาสคริปต์ 2.5 TRON เครื่องเสมือน (TVM)
TVM เป็นเครื่องเสมือนทัวริงที่สมบูรณ์แบบน้ำหนักเบาที่พัฒนาขึ้นสำหรับระบบนิเวศของ TRON ที่
TVM เชื่อมโยงอย่างราบรื่นกับระบบนิเวศการพัฒนาที่มีอยู่เพื่อให้บริการผู้คนนับล้านทั่วโลก
นักพัฒนาซอฟต์แวร์ที่มีระบบ blockchain ที่สร้างขึ้นเองซึ่งมีประสิทธิภาพ สะดวก มีเสถียรภาพ ปลอดภัย และ
ปรับขนาดได้
2.6 การแลกเปลี่ยนแบบกระจายอำนาจ (DEX)
5 เอกสารอย่างเป็นทางการของ Google Protocol Buffers: https://developers.google.com/protocol-buffers/เครือข่าย TRON รองรับฟังก์ชันการแลกเปลี่ยนแบบกระจายอำนาจโดยกำเนิด การแลกเปลี่ยนแบบกระจายอำนาจ ประกอบด้วยคู่การซื้อขายหลายคู่ คู่การซื้อขาย (สัญลักษณ์ “การแลกเปลี่ยน”) คือตลาดแลกเปลี่ยน ระหว่าง TRC-10 tokens หรือระหว่าง TRC-10 token และ TRX บัญชีใดก็ได้สามารถสร้างการซื้อขายได้ จับคู่ระหว่าง tokens ใด ๆ แม้ว่าจะมีคู่เดียวกันอยู่แล้วบนเครือข่าย TRON ก็ตาม การค้าขายและ ความผันผวนของราคาของคู่การซื้อขายเป็นไปตามพิธีสาร Bancor เครือข่าย TRON กำหนดไว้เช่นนั้น 6 น้ำหนักของ token สองคู่ในคู่การซื้อขายทั้งหมดเท่ากัน ดังนั้นอัตราส่วนของยอดคงเหลือคือราคา ระหว่างพวกเขา ตัวอย่างเช่น พิจารณาคู่การซื้อขายที่มี tokens สองรายการ ได้แก่ ABC และ DEF เอบีซีก็มี ยอดคงเหลือ 10 ล้าน และ DEF มียอด 1 ล้าน เนื่องจากน้ำหนักเท่ากัน 10 ABC = 1 การป้องกัน ซึ่งหมายความว่าอัตราส่วนของ ABC ต่อ DEF คือ 10 ABC ต่อ DEF 2.7 การนำไปปฏิบัติ
รหัส TRON blockchain ถูกนำมาใช้ใน Java และเดิมทีเป็นทางแยกจาก EthereumJ
6 เว็บไซต์อย่างเป็นทางการของพิธีสาร Bancor: https://about.bancor.network/protocol/
Consenso
3.1 Prova de Participação Delegada (DPoS)
O mecanismo de consenso mais antigo é o mecanismo de consenso Prova de Trabalho (PoW). Isto o protocolo está atualmente implementado em Bitcoin e Ethereum . Em sistemas PoW, as transações 7 8 transmitidos pela rede são agrupados em blocos nascentes para confirmação do minerador. O O processo de confirmação envolve hashing transações usando algoritmos criptográficos hashing até que um A raiz merkle foi alcançada, criando uma árvore merkle:
Figura 2: 8 transações TRX são hash inseridas na raiz merkle. Essa raiz merkle é então incluída no cabeçalho do bloco, que é anexado aos blocos previamente confirmados para formar um blockchain. Isso permite um rastreamento fácil e transparente de transações, carimbos de data/hora e outras informações relacionadas.
7 Bitcoin documento técnico: https://bitcoin.org/bitcoin.pdf 8 Ethereum documento técnico: https://github.com/ethereum/wiki/wiki/White-Paper
Algoritmos criptográficos hashing são úteis na prevenção de ataques à rede porque possuem
várias propriedades:
9
●
Tamanho do comprimento de entrada/saída - O algoritmo pode passar uma entrada de qualquer tamanho e
gera um valor hash de comprimento fixo.
●
Eficiência - O algoritmo é relativamente fácil e rápido de calcular.
●
Resistência de pré-imagem - Para uma determinada saída z, é impossível encontrar qualquer entrada x tal que
h(x) = z. Em outras palavras, o algoritmo hashing h(x) é uma função unidirecional em que apenas o
a saída pode ser encontrada, dada uma entrada. O inverso não é possível.
●
Resistência à colisão - É computacionalmente inviável encontrar quaisquer pares x1 ≠ x2 tais que h(x1)
=h(x2). Em outras palavras, a probabilidade de encontrar duas entradas diferentes hash na mesma
a saída é extremamente baixa. Esta propriedade também implica segunda resistência de pré-imagem.
●
Segunda resistência de pré-imagem - Dado x1, e portanto h(x1), é computacionalmente inviável
encontre qualquer x2 tal que h(x1) = h(x2). Embora esta propriedade seja semelhante à resistência à colisão, o
propriedade difere porque diz que um invasor com um determinado x1 irá encontrá-lo computacionalmente
inviável encontrar qualquer x2 hashing para a mesma saída.
●
Determinístico - mapeia cada entrada para uma e apenas uma saída.
●
Efeito Avalanche - uma pequena alteração na entrada resulta em uma saída totalmente diferente.
Estas propriedades conferem à rede de criptomoedas o seu valor intrínseco, garantindo que os ataques não comprometer a rede. Quando os mineradores confirmam um bloqueio, eles são recompensados com tokens como um recurso integrado incentivo à participação na rede. No entanto, à medida que a capitalização do mercado global de criptomoedas aumentou constantemente, os mineiros tornaram-se centralizados e concentraram seus recursos de computação em acumular tokens como ativos, e não para fins de participação na rede. Os mineradores de CPU deram lugar a GPUs, que por sua vez deram lugar a poderosos ASICs. Em um estudo notável, o poder total o consumo de mineração Bitcoin foi estimado em até 3 GW, comparável ao da Irlanda 10 consumo de energia. Este mesmo estudo projetou que o consumo total de energia atingirá 8 GW no próximo futuro.
Para resolver a questão do desperdício de energia, o mecanismo de consenso Proof of Stake (PoS) foi proposto por muitas novas redes. Em redes PoS, os titulares de token bloqueiam seus saldos token para se tornarem bloqueados validators. Os validators se revezam propondo e votando no próximo bloco. No entanto, o problema com PoS padrão é que a influência de validator se correlaciona diretamente com a quantidade de tokens bloqueados. Isto resulta em partes que acumulam grandes quantidades da moeda base da rede e exercem indevidamente influência no ecossistema da rede.
O mecanismo de consenso TRON usa um sistema inovador de Prova de Participação Delegada no qual 27
Super Representantes (SRs) produzem blocos para a rede. A cada 6 horas, titulares de contas TRX
que congelam suas contas podem votar em uma seleção de candidatos SR, com os 27 principais candidatos
considerados os SRs. Os eleitores podem escolher RS com base em critérios como projetos patrocinados por RS para
9 PAAR, C., PELZL, J., Compreendendo a criptografia: um livro didático para estudantes e profissionais, 2010 ed.
Springer-Verlag Berlim Heidelberg, 2010.
10 https://www.sciencedirect.com/science/article/pii/S2542435118301776aumentar a adoção do TRX e recompensas distribuídas aos eleitores. Isto permite um ambiente mais democratizado e
ecossistema descentralizado. As contas dos SRs são contas normais, mas a sua acumulação de votos
lhes permite produzir blocos. Com as baixas taxas de transferência de Bitcoin e Ethereum devido à sua
Mecanismo de consenso PoW e problemas de escalabilidade, o sistema TRON de DPoS oferece um inovador
mecanismo resultando em 2000 TPS em comparação com Bitcoin 3 TPS e Ethereum 15 TPS.
A rede do protocolo TRON gera um bloco a cada três segundos, com cada bloco concedendo 32 TRX para Super Representantes. Um total de 336.384.000 TRX serão concedidos anualmente aos 27 SRs. Cada vez que um SR termina a produção do bloco, as recompensas são enviadas para uma subconta no super-razão. Os SRs podem verificar, mas não fazer uso direto desses TRX tokens. Um saque pode ser feito por cada SR uma vez a cada 24 horas, transferindo as recompensas da subconta para o SR especificado conta.
Os três tipos de nós na rede TRON são Witness Node, Full Node e Solidity Node. Os nós testemunhas são configurados pelos SRs e são os principais responsáveis pela produção e proposta de blocos criação/votação. Nós completos fornecem APIs e transações e blocos de transmissão. Sincronização de nós de solidez blocos de outros Full Nodes e também fornecem APIs indexáveis.
ฉันทามติ
3.1 หลักฐานการเดิมพันที่ได้รับมอบหมาย (DPoS)
กลไกฉันทามติแรกสุดคือกลไกฉันทามติ Proof of Work (PoW) นี้ ปัจจุบันมีการใช้โปรโตคอลใน Bitcoin และ Ethereum ในระบบ PoW ธุรกรรม 7 8 การออกอากาศผ่านเครือข่ายจะถูกจัดกลุ่มเข้าด้วยกันเป็นบล็อกใหม่เพื่อยืนยันการขุด ที่ กระบวนการยืนยันเกี่ยวข้องกับธุรกรรม hashing โดยใช้อัลกอริธึมการเข้ารหัส hashing จนกระทั่ง ถึงราก Merkle แล้ว ทำให้เกิดต้นไม้ Merkle:
รูปที่ 2: ธุรกรรม 8 TRX ถูก hashed เข้าสู่ Merkle Root ราก Merkle นี้จะถูกรวมไว้ในส่วนหัวของบล็อกซึ่ง ถูกแนบไปกับบล็อกที่ยืนยันก่อนหน้านี้เพื่อสร้าง blockchain ช่วยให้สามารถติดตามได้ง่ายและโปร่งใส ธุรกรรม การประทับเวลา และข้อมูลอื่นๆ ที่เกี่ยวข้อง
7 Bitcoin เอกสารไวท์เปเปอร์: https://bitcoin.org/bitcoin.pdf 8 Ethereum เอกสารไวท์เปเปอร์: https://github.com/ethereum/wiki/wiki/White-Paper
อัลกอริธึมการเข้ารหัส hashing มีประโยชน์ในการป้องกันการโจมตีเครือข่ายเนื่องจากมี
คุณสมบัติหลายประการ:
9
●
ขนาดความยาวอินพุต/เอาต์พุต - อัลกอริธึมสามารถส่งผ่านอินพุตขนาดความยาวเท่าใดก็ได้ และ
ส่งออกค่า hash ที่มีความยาวคงที่
●
ประสิทธิภาพ - อัลกอริธึมค่อนข้างง่ายและรวดเร็วในการคำนวณ
●
ความต้านทานพรีอิมเมจ - สำหรับเอาท์พุตที่กำหนด z เป็นไปไม่ได้ที่จะหาอินพุต x เช่นนั้น
ชั่วโมง(x) = z กล่าวอีกนัยหนึ่ง hashing อัลกอริธึม h(x) เป็นฟังก์ชันทางเดียวซึ่งมีเพียงฟังก์ชันทางเดียวเท่านั้น
สามารถค้นหาเอาต์พุตได้โดยระบุอินพุต ย้อนกลับเป็นไปไม่ได้
●
ความต้านทานการชน - การคำนวณเป็นไปไม่ได้ที่จะหาคู่ใดๆ x1 ≠ x2 โดยที่ h(x1)
= ชม(x2). กล่าวอีกนัยหนึ่ง ความน่าจะเป็นในการค้นหาอินพุตที่แตกต่างกันสองรายการ hashing เหมือนกัน
เอาต์พุตต่ำมาก คุณสมบัตินี้ยังหมายถึงความต้านทานของพรีอิมเมจที่สองด้วย
●
ความต้านทานพรีอิมเมจที่สอง - เมื่อให้ x1 และด้วยเหตุนี้ h(x1) จึงเป็นไปไม่ได้โดยการคำนวณ
จงหา x2 ใดๆ ที่ทำให้ h(x1) = h(x2) แม้ว่าคุณสมบัตินี้จะคล้ายกับ 'ความต้านทานการชน' แต่
คุณสมบัติแตกต่างตรงที่บอกว่าผู้โจมตีที่ได้รับ x1 จะค้นหามันโดยการคำนวณ
เป็นไปไม่ได้ที่จะค้นหา x2 hashing ใด ๆ ไปยังเอาต์พุตเดียวกัน
●
กำหนด - แมปแต่ละอินพุตกับเอาต์พุตเดียวเท่านั้น
●
Avalanche effect - การเปลี่ยนแปลงเล็กน้อยในอินพุตส่งผลให้เอาต์พุตแตกต่างไปจากเดิมอย่างสิ้นเชิง
คุณสมบัติเหล่านี้ทำให้เครือข่ายสกุลเงินดิจิทัลมีมูลค่าที่แท้จริงโดยทำให้แน่ใจว่าการโจมตีจะไม่เกิดขึ้น ประนีประนอมเครือข่าย เมื่อนักขุดยืนยันบล็อก พวกเขาได้รับรางวัล tokens เป็นบล็อกในตัว แรงจูงใจในการเข้าร่วมเครือข่าย อย่างไรก็ตาม เนื่องจากมูลค่าตลาดของสกุลเงินดิจิทัลทั่วโลก เพิ่มขึ้นอย่างต่อเนื่อง นักขุดกลายเป็นศูนย์กลางและมุ่งเน้นไปที่ทรัพยากรคอมพิวเตอร์ของพวกเขา การกักตุน tokens เป็นทรัพย์สิน แทนที่จะสะสมไว้เพื่อวัตถุประสงค์ในการเข้าร่วมเครือข่าย นักขุดซีพียูหลีกทางให้ GPU ซึ่งทำให้ ASIC ทรงพลังกลับมา ในการศึกษาที่โดดเด่นเรื่องหนึ่งคือพลังทั้งหมด ปริมาณการใช้ Bitcoin การขุดคาดว่าจะสูงถึง 3 GW เทียบได้กับของไอร์แลนด์ 10 การใช้พลังงาน การศึกษาเดียวกันนี้คาดการณ์ว่าการใช้พลังงานทั้งหมดจะสูงถึง 8 GW ในเร็วๆ นี้ อนาคต
เพื่อแก้ไขปัญหาขยะพลังงาน กลไกฉันทามติ Proof of Stake (PoS) ได้รับการเสนอโดย เครือข่ายใหม่มากมาย ในเครือข่าย PoS ผู้ถือ token ล็อคยอดคงเหลือ token ของตนเพื่อให้กลายเป็นบล็อก validatorส. validators ผลัดกันเสนอและลงคะแนนในบล็อกถัดไป อย่างไรก็ตามปัญหา ด้วย PoS มาตรฐานคืออิทธิพลของ validator มีความสัมพันธ์โดยตรงกับจำนวน tokens ที่ถูกล็อค ส่งผลให้ฝ่ายต่างๆ กักตุนสกุลเงินหลักของเครือข่ายจำนวนมากจนเกินควร อิทธิพลในระบบนิเวศเครือข่าย
กลไกฉันทามติ TRON ใช้ระบบ Delegated Proof of Stake ที่เป็นนวัตกรรมใหม่ ซึ่ง 27
ผู้แทนระดับสูง (SR) ผลิตบล็อกสำหรับเครือข่าย ทุก 6 ชั่วโมง ผู้ถือบัญชี TRX
ผู้ระงับบัญชีของตนสามารถลงคะแนนให้ผู้สมัคร SR ที่เลือกได้ โดยมีผู้สมัคร 27 อันดับแรก
ถือว่า ส.ส. ผู้ลงคะแนนอาจเลือก SR ตามเกณฑ์ เช่น โครงการที่ได้รับการสนับสนุนจาก SR
9 PAAR, C., PELZL, J., ทำความเข้าใจการเข้ารหัส: หนังสือเรียนสำหรับนักเรียนและผู้ปฏิบัติงาน, 2010 ed.
สปริงเกอร์-แวร์ลัก เบอร์ลิน ไฮเดลเบิร์ก, 2010.
10 https://www.sciencedirect.com/science/article/pii/S2542435118301776เพิ่มการยอมรับ TRX และรางวัลจะแจกจ่ายให้กับผู้มีสิทธิเลือกตั้ง ซึ่งจะช่วยให้เกิดความเป็นประชาธิปไตยมากขึ้นและ
ระบบนิเวศกระจายอำนาจ บัญชีของ SR เป็นบัญชีปกติแต่เป็นการสะสมคะแนนเสียง
ทำให้พวกเขาสามารถสร้างบล็อกได้ ด้วยอัตราปริมาณงานต่ำที่ Bitcoin และ Ethereum เนื่องจาก
กลไกฉันทามติ PoW และปัญหาความสามารถในการปรับขนาด ระบบ DPoS ของ TRON นำเสนอนวัตกรรมใหม่
กลไกที่ส่งผลให้ปี 2000 TPS เปรียบเทียบกับ Bitcoin's 3 TPS และ Ethereum's 15 TPS
เครือข่ายโปรโตคอล TRON สร้างหนึ่งบล็อกทุกๆ สามวินาที โดยแต่ละบล็อกจะให้รางวัล 32 TRX ถึงตัวแทนระดับสูง จะมีการมอบ TRX รวม 336,384,000 TRX เป็นประจำทุกปีให้กับ SR 27 รายการ แต่ละครั้งที่ SR เสร็จสิ้นการผลิตบล็อก รางวัลจะถูกส่งไปยังบัญชีย่อยในบัญชีแยกประเภทขั้นสูง SR สามารถตรวจสอบได้ แต่ไม่สามารถใช้ TRX tokens เหล่านี้ได้โดยตรง การถอนเงินสามารถทำได้โดยแต่ละคน SR หนึ่งครั้งทุกๆ 24 ชั่วโมง โดยโอนรางวัลจากบัญชีย่อยไปยัง SR ที่ระบุ บัญชี
โหนดสามประเภทบนเครือข่าย TRON ได้แก่ Witness Node, Full Node และ Solidity Node โหนดพยานได้รับการจัดตั้งขึ้นโดย SR และมีหน้าที่หลักในการผลิตบล็อกและข้อเสนอ การสร้าง/การลงคะแนนเสียง โหนดแบบเต็มมี API และธุรกรรมและบล็อกการออกอากาศ การซิงค์โหนด Solidity บล็อกจากโหนดเต็มอื่นๆ และยังมี API ที่สามารถจัดทำดัชนีได้
Conta
4.1 Tipos
Os três tipos de contas na rede TRON são contas normais, contas token e contas contratuais.
1.
Contas regulares são usadas para transações padrão.
2.
Contas de token são usadas para armazenar TRC-10 tokens.
3.
As contas de contrato são contas smart contract criadas por contas normais e podem ser
acionado por contas regulares também.
4.2 Criação
Existem três maneiras de criar uma conta TRON:
1. Crie uma nova conta através da API 2. Transfira TRX para um novo endereço de conta 3. Transfira qualquer TRC-10 token para um novo endereço de conta
Um par de chaves off-line composto por um endereço (chave pública) e uma chave privada, e não registrado pelo TRON rede, também pode ser gerada. O algoritmo de geração de endereço de usuário consiste em gerando um par de chaves e depois extraindo a chave pública (matriz de bytes de 64 bytes representando x, y coordenadas). Faça hash da chave pública usando a função SHA3-256 (o protocolo SHA3 adotado é KECCAK-256) e extraia os últimos 20 bytes do resultado. Adicione 41 ao início da matriz de bytes e certifique-se de que o comprimento do endereço inicial seja de 21 bytes. Hash o endereço duas vezes usando a função SHA3-256 e pegue os primeiros 4 bytes como código de verificação. Adicione o código de verificação ao final do inicial endereço e obtenha o endereço no formato base58check por meio da codificação base58. Um codificado O endereço da rede principal começa com T e tem 34 bytes de comprimento. 4.3 Estrutura
Os três tipos de conta diferentes são Normal, AssetIssue e Contrato. Uma conta contém 7 parâmetros:
1.
nome_da_conta: o nome desta conta – por exemplo. Conta de contas.
2.
tipo: que tipo é esta conta – por ex. 0 (significa tipo ‘Normal’).
3.
saldo: saldo desta conta – por ex. 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;
}
บัญชี
4.1 ประเภท
บัญชีสามประเภทในเครือข่าย TRON คือบัญชีปกติ บัญชี token และ บัญชีสัญญา
1.
บัญชีปกติใช้สำหรับธุรกรรมมาตรฐาน
2.
บัญชีโทเค็นใช้สำหรับจัดเก็บ TRC-10 tokens
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 มีการเข้ารหัส ที่อยู่ Mainnet เริ่มต้นด้วย T และมีความยาว 34 ไบต์ 4.3 โครงสร้าง
บัญชีสามประเภทที่แตกต่างกัน ได้แก่ Normal, AssetIssue และ Contract บัญชีประกอบด้วย 7 พารามิเตอร์:
1.
account_name: ชื่อของบัญชีนี้ – เช่น บัญชีบิล.
2.
type : บัญชีนี้เป็นประเภทใด – เช่น 0 (ย่อมาจากประเภท 'ปกติ')
3.
balance: ยอดคงเหลือของบัญชีนี้ – เช่น 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;
}
Bloco
Um bloco normalmente contém um cabeçalho de bloco e diversas transações.
Protobuf data structure:
message Block {
BlockHeader block_header = 1;
repeated Transaction transactions = 2;
}
5.1 Cabeçalho do bloco
Um cabeçalho de bloco contém raw_data, witness_signature e 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 Dados Brutos
Os dados brutos são denotados como raw_data no Protobuf. Ele contém os dados brutos de uma mensagem, contendo 6 parâmetros:
1. timestamp: timestamp desta mensagem – por ex. 1543884429000. 2. txTrieRoot: a raiz da árvore Merkle – por exemplo. 7dacsa…3ed. 3. parentHash: o hash do último bloco – por exemplo. 7dacsa…3ed. 4. número: a altura do bloco – por ex. 4638708. 5. versão: reservada – por exemplo. 5.

6. testemunha_address: o endereço da testemunha compactada neste bloco – por exemplo. 41928c...4d21. 5.1.2 Assinatura da Testemunha
A assinatura da testemunha é denotada como witness_signature no Protobuf, que é a assinatura para este cabeçalho do bloco do nó testemunha. 5.1.3 ID do bloco
Block ID é denotado como blockID no Protobuf. Ele contém a identificação atômica de um bloco. Um bloco O ID contém 2 parâmetros: 1. hash: o hash do bloco. 2. número: o hash e a altura do bloco. 5.2 Transação 5.2.1 Assinatura
O processo de assinatura da transação de TRON segue um algoritmo criptográfico ECDSA padrão, com um
Curva de seleção SECP256K1. Uma chave privada é um número aleatório e a chave pública é um ponto na
curva elíptica. O processo de geração de chave pública consiste em primeiro gerar um número aleatório como um
chave privada e, em seguida, multiplicando o ponto base da curva elíptica pela chave privada para obter o
chave pública. Quando ocorre uma transação, os dados brutos da transação são primeiro convertidos em formato de byte.
Os dados brutos são então submetidos a SHA-256 hashing. A chave privada correspondente ao contrato
address então assina o resultado do SHA256 hash. O resultado da assinatura é então adicionado ao
transação.
5.2.2 Modelo de largura de banda
As transações comuns consomem apenas pontos de largura de banda, mas as operações smart contract consomem ambos pontos de energia e largura de banda. Existem dois tipos de pontos de largura de banda disponíveis. Os usuários podem ganhar pontos de largura de banda do congelamento do TRX, enquanto 5.000 pontos de largura de banda gratuitos também estão disponíveis diariamente.
Quando uma transação TRX é transmitida, ela é transmitida e armazenada na forma de uma matriz de bytes sobre a rede. Pontos de largura de banda consumidos por uma transação = número de bytes da transação multiplicado pela taxa de pontos de largura de banda. Por exemplo, se o comprimento da matriz de bytes de uma transação for 200, então a transação consome 200 pontos de largura de banda. No entanto, se uma transferência TRX ou token resultar em a conta de destino sendo criada, apenas os pontos de largura de banda consumidos para criar a conta serão deduzidos e pontos de largura de banda adicionais não serão deduzidos. Na criação de uma conta cenário, a rede consumirá primeiro os pontos de largura de banda que o iniciador da transação ganhoudo congelamento do TRX. Se esse valor for insuficiente, a rede consome a transação TRX do iniciador.
Em cenários padrão de transferência TRX de uma conta TRX para outra, a rede primeiro consome os pontos de largura de banda obtidos pelo iniciador da transação para congelar o TRX. Se isso for insuficiente, então consome dos 5.000 pontos de largura de banda diários gratuitos. Se isso ainda não for suficiente, então a rede consome o TRX do iniciador da transação. O valor é calculado pelo número de bytes em a transação multiplicada por 10 SUN. Assim, para a maioria dos detentores de TRX que podem não necessariamente congelar seu TRX para participar da votação SR, a primeira etapa é automaticamente ignorada (já que o saldo TRX frozen = 0) e a largura de banda gratuita diária de 5.000 alimenta a transação.
Para transferências TRC-10 token, a rede primeiro verifica se o total de pontos de largura de banda livre do ativo token emitido são suficientes. Caso contrário, os pontos de largura de banda obtidos com o congelamento do TRX são consumido. Se ainda não houver pontos de largura de banda suficientes, então consome o TRX da transação iniciador.
5.2.3 Taxa
A rede TRON geralmente não cobra taxas para a maioria das transações, entretanto, devido ao sistema restrições e justiça, uso de largura de banda e transações cobram certas taxas.
As taxas cobradas são divididas nas seguintes categorias: 1. As transações normais custam pontos de largura de banda. Os usuários podem usar os pontos de largura de banda diários gratuitos (5000) ou congele TRX para obter mais. Quando os pontos de largura de banda não forem suficientes, o TRX será usado diretamente da conta remetente. O TRX necessário é o número de bytes * 10 SUN. 2. Os contratos inteligentes custam energia (Seção 6), mas também precisarão de pontos de largura de banda para o transação a ser transmitida e confirmada. O custo da largura de banda é o mesmo acima. 3. Todas as transações de consulta são gratuitas. Não custa energia ou largura de banda.
A rede TRON também define um conjunto de taxas fixas para as seguintes transações: 1. Criando um nó testemunha: 9999 TRX 2. Emitindo um TRC-10 token: 1024 TRX 3. Criando uma nova conta: 0,1 TRX 4. Criando um par de troca: 1024 TRX 5.2.4 Transação como Prova de Participação (TaPoS)
TRON usa TaPoS para garantir que todas as transações confirmem o blockchain principal, ao mesmo tempo que o faz
difícil forjar correntes falsificadas. No TaPoS, as redes exigem que cada transação inclua parte de
o hash de um cabeçalho de bloco recente. Este requisito impede que as transações sejam reproduzidas em
bifurcações não incluindo o bloco referenciado, e também sinaliza à rede que um determinado usuário e seusa aposta está em um fork específico. Este mecanismo de consenso protege a rede contra negação de
Serviço, 51%, mineração egoísta e ataques de gasto duplo.
5.2.5 Confirmação de Transação
Uma transação é incluída em um bloco futuro após ser transmitida para a rede. Após 19 blocos serem minerado em TRON (incluindo seu próprio bloco), a transação é confirmada. Cada bloco é produzido por um dos 27 principais superrepresentantes em um estilo round robin. Cada bloco leva cerca de 3 segundos para ser extraído em blockchain. O tempo pode variar ligeiramente para cada Super Representante devido à rede condições e configurações da máquina. Em geral, uma transação é considerada totalmente confirmada após ~1 minuto. 5.2.6 Estrutura
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 } } }
บล็อก
โดยทั่วไปบล็อกจะมีส่วนหัวของบล็อกและธุรกรรมหลายรายการ
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. timestamp: การประทับเวลาของข้อความนี้ – เช่น 1543884429000. 2. txTrieRoot: รากของ Merkle Tree – เช่น 7แดคซา…3ed. 3. parentHash: hash ของบล็อกสุดท้าย – เช่น 7แดคซา…3ed. 4. number: ความสูงของบล็อก – เช่น 4638708. 5. เวอร์ชัน : สงวนไว้ – เช่น.ก. 5.

6. พยาน_ที่อยู่: ที่อยู่ของพยานที่อยู่ในบล็อกนี้ – เช่น 41928c...4d21. 5.1.2 ลายเซ็นพยาน
ลายเซ็นพยานแสดงเป็น witness_signature ใน Protobuf ซึ่งเป็นลายเซ็นสำหรับสิ่งนี้ ส่วนหัวบล็อกจากโหนดพยาน 5.1.3 รหัสบล็อก
Block ID จะแสดงเป็น blockID ใน Protobuf มันมีการระบุอะตอมของบล็อก บล็อก ID มี 2 พารามิเตอร์: 1. hash : hash ของบล็อก 2. number : hash และความสูงของบล็อก 5.2 การทำธุรกรรม 5.2.1 การลงนาม
TRON กระบวนการลงนามธุรกรรมของ __ เป็นไปตามอัลกอริธึมการเข้ารหัส ECDSA มาตรฐาน โดยมี
เส้นโค้งการเลือก SECP256K1 คีย์ส่วนตัวคือตัวเลขสุ่ม และคีย์สาธารณะคือจุดบน
เส้นโค้งรูปไข่ กระบวนการสร้างคีย์สาธารณะประกอบด้วยการสร้างตัวเลขสุ่มเป็น a ก่อน
คีย์ส่วนตัวแล้วคูณจุดฐานของเส้นโค้งรูปไข่ด้วยคีย์ส่วนตัวเพื่อให้ได้
กุญแจสาธารณะ เมื่อธุรกรรมเกิดขึ้น ข้อมูลดิบของธุรกรรมจะถูกแปลงเป็นรูปแบบไบต์ก่อน
ข้อมูลดิบจะผ่าน SHA-256 hashing รหัสส่วนตัวที่สอดคล้องกับสัญญา
ที่อยู่ จากนั้นลงนามผลลัพธ์ของ SHA256 hash จากนั้นผลลายเซ็นจะถูกเพิ่มลงใน
การทำธุรกรรม
5.2.2 โมเดลแบนด์วิธ
ธุรกรรมทั่วไปใช้เฉพาะจุดแบนด์วิธเท่านั้น แต่การดำเนินการ smart contract ใช้ทั้งสองจุด จุดพลังงานและแบนด์วิธ มีจุดแบนด์วิธให้เลือกสองประเภท ผู้ใช้สามารถรับได้ จุดแบนด์วิธจากการแช่แข็ง TRX ในขณะที่จุดแบนด์วิธฟรี 5,000 จุดก็มีให้บริการทุกวัน
เมื่อมีการออกอากาศธุรกรรม TRX มันจะถูกส่งและจัดเก็บในรูปแบบของอาร์เรย์ไบต์ เครือข่าย คะแนนแบนด์วิธที่ใช้โดยหนึ่งธุรกรรม = จำนวนไบต์ของธุรกรรม คูณด้วยอัตราคะแนนแบนด์วิธ ตัวอย่างเช่น หากความยาวอาร์เรย์ไบต์ของธุรกรรมคือ 200 จากนั้นธุรกรรมจะใช้จุดแบนด์วิธ 200 จุด อย่างไรก็ตาม หากการโอน TRX หรือ token ส่งผลให้ บัญชีเป้าหมายที่กำลังสร้าง จากนั้นใช้เฉพาะจุดแบนด์วิธที่ใช้ในการสร้างบัญชี จะถูกหักออก และคะแนนแบนด์วิธเพิ่มเติมจะไม่ถูกหักออก ในการสร้างบัญชี ในสถานการณ์สมมติ เครือข่ายจะใช้จุดแบนด์วิธที่ผู้ริเริ่มธุรกรรมได้รับก่อนจากการแช่แข็ง TRX หากจำนวนเงินนี้ไม่เพียงพอ เครือข่ายจะใช้ธุรกรรม TRX ของผู้ริเริ่ม
ในสถานการณ์การถ่ายโอน TRX มาตรฐานจากบัญชี TRX หนึ่งไปยังอีกบัญชีหนึ่ง เครือข่ายจะใช้ก่อน จุดแบนด์วิธที่ได้รับจากตัวเริ่มต้นธุรกรรมสำหรับการแช่แข็ง TRX ถ้านั่นไม่เพียงพอก็แล้วไป ใช้จากจุดแบนด์วิธฟรี 5,000 รายวัน หากยังไม่เพียงพอก็ต่อเครือข่าย ใช้ TRX ของตัวเริ่มต้นธุรกรรม จำนวนเงินจะคำนวณตามจำนวนไบต์ใน ธุรกรรมคูณด้วย 10 SUN ดังนั้น สำหรับผู้ถือ TRX ส่วนใหญ่ที่อาจไม่จำเป็นต้องหยุด TRX ของพวกเขาที่จะมีส่วนร่วมในการโหวต SR ขั้นตอนแรกจะถูกข้ามโดยอัตโนมัติ (ตั้งแต่ยอดคงเหลือ TRX แช่แข็ง = 0) และแบนด์วิดธ์ฟรี 5,000 ต่อวันขับเคลื่อนธุรกรรม
สำหรับการถ่ายโอน TRC-10 token เครือข่ายจะตรวจสอบก่อนว่าจุดแบนด์วิธว่างทั้งหมดของ ออกสินทรัพย์ token เพียงพอแล้ว ถ้าไม่เช่นนั้น จุดแบนด์วิธที่ได้จากการแช่แข็ง TRX จะเป็นดังนี้ บริโภค หากยังมีจุดแบนด์วิธไม่เพียงพอ จะใช้ TRX ของธุรกรรม ผู้ริเริ่ม
5.2.3 ค่าธรรมเนียม
โดยทั่วไปเครือข่าย TRON จะไม่เรียกเก็บค่าธรรมเนียมสำหรับธุรกรรมส่วนใหญ่ อย่างไรก็ตาม เนื่องจากระบบ ข้อจำกัดและความเป็นธรรม การใช้แบนด์วิธ และการทำธุรกรรมมีค่าธรรมเนียมบางอย่าง
ค่าธรรมเนียมจะแบ่งออกเป็นประเภทต่างๆ ดังต่อไปนี้: 1. ธุรกรรมปกติจะมีค่าใช้จ่ายจุดแบนด์วิธ ผู้ใช้สามารถใช้จุดแบนด์วิธรายวันฟรี (5,000) หรือตรึง 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 } } }
TRON Máquina Virtual
6.1 Introdução
TRON Máquina Virtual (TVM) é uma máquina virtual Turing completa e leve desenvolvida para o Ecossistema de TRON. Seu objetivo é fornecer um sistema blockchain personalizado que seja eficiente, conveniente, estável, seguro e escalável.
TVM inicialmente bifurcado de EVM e pode se conectar perfeitamente com a solidez existente smart contract 11 ecossistema de desenvolvimento. Com base nisso, o TVM também oferece suporte ao consenso DPoS.
A TVM emprega o conceito de Energia. Diferente do mecanismo de gás em EVM, as operações de transações e smart contracts no TVM são gratuitas, sem consumo de TRX. Tecnicamente, executável a capacidade de computação no TVM não é restrita pela quantidade total de tokens. 6.2 Fluxo de trabalho
O compilador primeiro traduz o Solidity smart contract em bytecode legível e executável em a TVM. O TVM então processa os dados através do opcode, o que equivale a operar a lógica de uma máquina de estados finitos baseada em pilha. Finalmente, o TVM acessa dados blockchain e invoca Interface de dados externos através da camada de interoperação. 11 EVM: Ethereum Máquina Virtual (https://github.com/ethereum/ethereumj)

Figura 3: Fluxo de trabalho TVM
6.3 Desempenho 6.3.1 Arquitetura Leve
A TVM adota uma arquitetura leve com o objetivo de reduzir o consumo de recursos para garantir desempenho do sistema. 6.3.2 Robusto
As transferências de TRX e a execução de smart contract custam apenas pontos de largura de banda, em vez de TRX, que isenta TRON de ser atacado. O consumo de largura de banda é previsível e estático, pois cada o custo da etapa computacional é fixo. 6.3.3 Alta Compatibilidade
TVM é compatível com EVM e será compatível com VMs mais convencionais no futuro. Assim, todos os smart contracts em EVM são executáveis no TVM. 6.3.4 Baixo Custo
Devido à configuração da largura de banda do TVM, os custos de desenvolvimento são reduzidos e os desenvolvedores podem se concentrar no desenvolvimento lógico de seu código de contrato. A TVM também oferece interfaces completas para contratos implantação, acionamento e visualização para oferecer conveniência aos desenvolvedores.
TRON เครื่องเสมือน
6.1 บทนำ
TRON Virtual Machine (TVM) เป็นเครื่องเสมือนทัวริงที่สมบูรณ์แบบน้ำหนักเบาที่พัฒนาขึ้นสำหรับ ระบบนิเวศของ TRON เป้าหมายคือการจัดหาระบบ blockchain ที่สร้างขึ้นเองซึ่งมีประสิทธิภาพ สะดวก มั่นคง ปลอดภัย และปรับขนาดได้
TVM เริ่มแรกแยกจาก EVM และสามารถเชื่อมต่อกับความแข็งแกร่งที่มีอยู่ smart contract ได้อย่างราบรื่น 11 ระบบนิเวศการพัฒนา ด้วยเหตุนี้ TVM จึงสนับสนุน DPoS ฉันทามติเพิ่มเติม
TVM ใช้แนวคิดเรื่องพลังงาน แตกต่างจากกลไกของแก๊สใน EVM การทำงานของ ธุรกรรมและ smart contracts บน TVM นั้นฟรี โดยไม่ต้องใช้ TRX ในทางเทคนิคแล้วสามารถเรียกใช้งานได้ ความสามารถในการคำนวณบน TVM ไม่ได้ถูกจำกัดด้วยจำนวนการถือครองทั้งหมด tokens 6.2 ขั้นตอนการทำงาน
คอมไพเลอร์จะแปล Solidity smart contract เป็น bytecode ที่สามารถอ่านและเรียกใช้งานได้บน ทีวีเอ็ม จากนั้น TVM จะประมวลผลข้อมูลผ่าน opcode ซึ่งเทียบเท่ากับการใช้งานลอจิก ของเครื่องสถานะจำกัดแบบสแต็ก สุดท้าย TVM เข้าถึงข้อมูล blockchain และเรียกใช้ อินเทอร์เฟซข้อมูลภายนอกผ่านเลเยอร์ Interoperation 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 และจะเข้ากันได้กับ VM หลักอื่นๆ ในอนาคต ด้วยเหตุนี้ smart contracts ทั้งหมดบน EVM จึงสามารถเรียกใช้งานได้บน TVM 6.3.4 ต้นทุนต่ำ
เนื่องจากการตั้งค่าแบนด์วิธของ TVM ต้นทุนการพัฒนาจึงลดลง และนักพัฒนาสามารถมุ่งเน้นไปที่ การพัฒนาตรรกะของรหัสสัญญา TVM ยังมีอินเทอร์เฟซแบบครบวงจรสำหรับสัญญาอีกด้วย การปรับใช้ การทริกเกอร์ และการดูเพื่อมอบความสะดวกสบายให้กับนักพัฒนา
Contrato Inteligente
7.1 Introdução
Um smart contract é um protocolo que verifica digitalmente a negociação de contratos. Eles definem as regras e penalidades relacionadas a um acordo e também aplicar automaticamente essas obrigações. O inteligente O código do contrato facilita, verifica e reforça a negociação ou execução de um acordo ou transação. De uma perspectiva de tokenização, smart contracts também facilitam fundos automáticos transferências entre as partes participantes caso determinados critérios sejam atendidos.
TRON smart contracts são escritos na linguagem Solidity. Uma vez escritos e testados, eles podem ser compilado em bytecode e então implantado na rede TRON para a máquina virtual TRON. Uma vez implantados, smart contracts podem ser consultados por meio de seus endereços de contrato. A aplicação do contrato Interface Binária (ABI) mostra as funções de chamada do contrato e é usada para interagir com o rede. 7.2 Modelo Energético
O limite máximo de energia para implantar e acionar um smart contract é uma função de vários variáveis:
● A energia dinâmica do congelamento de 1 TRX é 50.000.000.000 (Limite de Energia Total) / (Energia Total Peso) ● O limite de energia é o limite diário de energia da conta após o congelamento do TRX ● A energia restante da conta diária do congelamento do TRX é calculada como Limite de Energia - Energia Usado ● O limite de taxa no TRX é definido em smart contract implantar/acionar chamada ● TRX utilizável restante na conta ● Energia por TRX se comprada diretamente (10 SUN = 1 Energia) = 100.000, os SRs podem votar ajuste
Existem dois cenários de consumo para calcular o limite máximo de energia para implantação e
gatilho. A lógica pode ser expressa da seguinte forma:
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 Implantação
Quando uma solidez TRON smart contract é compilada, a máquina virtual TRON lê o compilado bytecódigo. O bytecode consiste em uma seção para implantação de código, código de contrato e Auxdata. O Auxdata é a impressão digital criptográfica do código-fonte, usada para verificação. A implantação bytecode executa a função construtora e configura as variáveis de armazenamento iniciais. A implantação code também calcula o código do contrato e o retorna ao TVM. A ABI é um arquivo JSON que descreve as funções de TRON smart contract. Este arquivo define os nomes das funções, sua remuneração, os valores de retorno da função e sua mutabilidade de estado. 7.4 Função de disparo
Depois que os TRON smart contracts forem implantados, suas funções poderão ser acionadas individualmente por meio de TronStudio ou através de chamadas de API. Funções de mudança de estado requerem energia enquanto funções somente leitura executar sem energia. 7.5 TRON Solidez
TRON Solidity é um fork da linguagem Solidity de Ethereum. TRON modifica o projeto original para suporta unidades TRX e SUN (1 TRX = 1.000.000 SUN). O resto da sintaxe da linguagem é compatível com Solidity ^0.4.24. Assim, a Máquina Virtual Tron (TVM) é quase 100% compatível com instruções EVM.
สัญญาอัจฉริยะ
7.1 บทนำ
smart contract เป็นโปรโตคอลที่ตรวจสอบการเจรจาสัญญาแบบดิจิทัล พวกเขากำหนดกฎเกณฑ์และ บทลงโทษที่เกี่ยวข้องกับข้อตกลงและบังคับใช้ข้อผูกพันเหล่านั้นโดยอัตโนมัติ ผู้ฉลาด รหัสสัญญาอำนวยความสะดวก ตรวจสอบ และบังคับใช้การเจรจาหรือการปฏิบัติตามข้อตกลงหรือ การทำธุรกรรม จากมุมมองของ tokenization smart contracts ยังอำนวยความสะดวกในการให้เงินอัตโนมัติ การโอนระหว่างบุคคลที่เข้าร่วมควรเป็นไปตามเกณฑ์ที่กำหนด
TRON smart contracts เขียนด้วยภาษา Solidity เมื่อเขียนและทดสอบแล้วก็สามารถเป็นได้ คอมไพล์เป็น bytecode จากนั้นปรับใช้บนเครือข่าย TRON สำหรับ TRON Virtual Machine ครั้งหนึ่ง เมื่อปรับใช้แล้ว smart contracts สามารถสอบถามผ่านที่อยู่สัญญาได้ การสมัครสัญญา Binary Interface (ABI) แสดงฟังก์ชันการโทรของสัญญาและใช้สำหรับโต้ตอบกับ เครือข่าย 7.2 แบบจำลองพลังงาน
ขีดจำกัดพลังงานสูงสุดสำหรับการปรับใช้และทริกเกอร์ smart contract เป็นฟังก์ชันของหลายฟังก์ชัน ตัวแปร:
● พลังงานไดนามิกจากการแช่แข็ง 1 TRX คือ 50,000,000,000 (ขีดจำกัดพลังงานรวม) / (พลังงานทั้งหมด น้ำหนัก) ● ขีดจำกัดพลังงานคือขีดจำกัดพลังงานในบัญชีรายวันจากการแช่แข็ง TRX ● พลังงานในบัญชีรายวันที่เหลืออยู่จากการแช่แข็ง TRX จะถูกคำนวณเป็นขีดจำกัดพลังงาน - พลังงาน ใช้แล้ว ● ขีดจำกัดค่าธรรมเนียมใน TRX ถูกตั้งค่าไว้ใน smart contract ปรับใช้/ทริกเกอร์การโทร ● TRX ที่ใช้งานได้คงเหลืออยู่ในบัญชี ● พลังงานต่อ TRX หากซื้อโดยตรง (10 SUN = 1 พลังงาน) = 100,000 SR สามารถลงคะแนนได้ การปรับตัว
มีสองสถานการณ์การใช้งานในการคำนวณขีดจำกัดพลังงานสูงสุดสำหรับการปรับใช้และ
ทริกเกอร์ ตรรกะสามารถแสดงได้ดังนี้:
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 ความแข็งแกร่ง smart contract แล้ว TRON Virtual Machine จะอ่านคอมไพล์แล้ว ไบต์โค้ด bytecode ประกอบด้วยส่วนสำหรับการปรับใช้โค้ด รหัสสัญญา และ Auxdata Auxdata คือลายนิ้วมือเข้ารหัสของซอร์สโค้ด ซึ่งใช้สำหรับการตรวจสอบ การใช้งาน bytecode รันฟังก์ชัน Constructor และตั้งค่าตัวแปรหน่วยเก็บข้อมูลเริ่มต้น การใช้งาน รหัสยังคำนวณรหัสสัญญาและส่งกลับไปยัง TVM ABI เป็นไฟล์ JSON ที่ อธิบายฟังก์ชันของ TRON smart contract ไฟล์นี้กำหนดชื่อฟังก์ชัน ความสามารถในการชำระ ค่าส่งคืนฟังก์ชันและความไม่แน่นอนของสถานะ 7.4 ฟังก์ชั่นทริกเกอร์
เมื่อ TRON smart contracts ถูกปรับใช้ ฟังก์ชันของพวกมันจะถูกทริกเกอร์แยกกันผ่าน TronStudio หรือผ่านการเรียก API ฟังก์ชันการเปลี่ยนสถานะต้องใช้พลังงานในขณะที่ฟังก์ชันอ่านอย่างเดียว ดำเนินการโดยไม่มีพลังงาน 7.5 TRON ความแข็งแกร่ง
TRON Solidity มาจากภาษา Solidity ของ Ethereum TRON แก้ไขโครงการดั้งเดิมเป็น รองรับหน่วย TRX และ SUN (1 TRX = 1,000,000 SUN) ไวยากรณ์ภาษาที่เหลือคือ เข้ากันได้กับ Solidity ^0.4.24 ดังนั้น Tron Virtual Machine (TVM) จึงเข้ากันได้เกือบ 100% พร้อมคำแนะนำ EVM
Token
8.1 Token TRC-10
Na rede TRON, cada conta pode emitir tokens às custas de 1024 TRX. Para emitir tokens, o emissor precisa especificar um nome token, a capitalização total, a taxa de câmbio para TRX, duração da circulação, descrição, site, consumo máximo de largura de banda por conta, total consumo de largura de banda e a quantidade de token congelados. Cada emissão token também pode configurar o máximo diário de token pontos de largura de banda de transferência de cada conta, o máximo diário de toda a rede token pontos de largura de banda de transferência, fornecimento total de token, duração do bloqueio em dias e valor total de tokens bloqueados. 8.2 Token TRC-20
TRC-20 é um padrão técnico usado para smart contracts implementando tokens suportado pelo TRON Máquina Virtual. É totalmente compatível com ERC-20.
A interface é a seguinte:
contrato TRC20Interface {
função totalSupply() retornos constantes públicos (uint);
função balanceOf(endereço tokenOwner) public constantes retornos (uint
equilíbrio);
função subsídio(endereço tokenProprietário, endereço gastador) public constante
retorna (uint restante);
transferência de função (endereço para, uint tokens) retornos públicos (bool sucesso);
função aprovar (endereço gastador, uint tokens) retornos públicos (bool
sucesso);
função transferFrom(endereço de, endereço para, uint tokens) public
retorna (bool sucesso);
event Transfer(endereço indexado de, endereço indexado para, uint tokens);
Aprovação do evento (endereço indexado tokenProprietário, endereço gastador indexado, uint
tokens); }
Do ponto de vista do desenvolvedor, existem várias diferenças entre o TRC-10 e o TRC-20. Alguns das principais diferenças é que TRC-10 tokens são acessíveis por APIs e smart contracts enquanto TRC-20 tokens permitem a personalização da interface, mas só são acessíveis dentro de smart contracts.
Do ponto de vista de custo, os TRC-10 tokens têm taxas de transação 1.000 vezes mais baixas do que
TRC-20, mas acarreta custos de largura de banda para transferências e depósitos de API. Transferências e depósitos em smart
os contratos para TRC-10 tokens custam largura de banda e energia.
8.3 Além
Como TRON usa a mesma versão do Solidity que Ethereum, mais padrões token poderiam ser prontamente portado para TRON.
โทเค็น
8.1 โทเค็น TRC-10
ในเครือข่าย TRON แต่ละบัญชีสามารถออก tokens ได้โดยมีค่าใช้จ่าย 1,024 TRX ในการออก tokens ผู้ออกต้องระบุชื่อ token, มูลค่ารวมทั้งหมด, อัตราแลกเปลี่ยนเป็น TRX, ระยะเวลาการหมุนเวียน คำอธิบาย เว็บไซต์ การใช้แบนด์วิธสูงสุดต่อบัญชี รวมทั้งหมด การใช้แบนด์วิธ และจำนวน token ที่ถูกแช่แข็ง token แต่ละฉบับสามารถกำหนดค่าได้เช่นกัน สูงสุดรายวันของแต่ละบัญชี token โอนคะแนนแบนด์วิธ สูงสุดรายวันของเครือข่ายทั้งหมด token โอนคะแนนแบนด์วิธ, การจัดหาทั้งหมด token, ระยะเวลาการล็อคเป็นวัน และจำนวนทั้งหมด ของ tokens ถูกล็อค 8.2 โทเค็น TRC-20
TRC-20 เป็นมาตรฐานทางเทคนิคที่ใช้สำหรับ smart contracts การใช้งาน tokens ที่สนับสนุนโดย TRON เครื่องเสมือน สามารถใช้งานร่วมกับ ERC-20 ได้อย่างสมบูรณ์
อินเทอร์เฟซมีดังนี้:
สัญญา TRC20อินเทอร์เฟซ {
ฟังก์ชัน totalSupply() ผลตอบแทนคงที่สาธารณะ (uint);
ฟังก์ชั่น balanceOf (ที่อยู่ token เจ้าของ) ผลตอบแทนสาธารณะคงที่ (uint
สมดุล);
ฟังก์ชัน เบี้ยเลี้ยง(ที่อยู่ tokenเจ้าของ ที่อยู่ผู้ใช้จ่าย) สาธารณะ ค่าคงที่
ผลตอบแทน (ไม่เหลือ);
ฟังก์ชั่น การถ่ายโอน (ที่อยู่ไปที่ uint tokens) ผลตอบแทนสาธารณะ (บูลสำเร็จ);
ฟังก์ชั่น อนุมัติ (ที่อยู่ผู้ใช้บริการ, uint tokens) ผลตอบแทนสาธารณะ (บูล
ความสำเร็จ);
ฟังก์ชั่น transferFrom (ที่อยู่จาก, ที่อยู่ถึง, uint tokens) สาธารณะ
ผลตอบแทน (ความสำเร็จของบูล);
เหตุการณ์ การโอน (ที่อยู่จัดทำดัชนีจาก, ที่อยู่จัดทำดัชนีถึง, uint tokens);
เหตุการณ์ การอนุมัติ (ที่อยู่จัดทำดัชนี token เจ้าของ ที่อยู่ผู้ใช้จ่ายที่จัดทำดัชนี uint
tokens); }
จากมุมมองของนักพัฒนา TRC-10 และ TRC-20 มีความแตกต่างหลายประการ บ้าง ความแตกต่างที่สำคัญคือ TRC-10 tokens สามารถเข้าถึงได้โดย API และ smart contracts ในขณะที่ TRC-20 tokens อนุญาตให้ปรับแต่งอินเทอร์เฟซได้ แต่สามารถเข้าถึงได้ภายใน smart contracts เท่านั้น
จากมุมมองของต้นทุน TRC-10 tokens มีค่าธรรมเนียมการทำธุรกรรมที่ต่ำกว่า 1,000 เท่า
TRC-20 แต่มีค่าใช้จ่ายแบนด์วิธสำหรับการโอนและการฝาก API การโอนและการฝากเงินในสมาร์ท
สัญญาสำหรับ TRC-10 tokens มีค่าใช้จ่ายทั้งแบนด์วิดท์และพลังงาน
8.3 เกินกว่านั้น
เนื่องจาก TRON ใช้เวอร์ชัน Solidity เดียวกันกับ Ethereum ดังนั้น token มาตรฐานเพิ่มเติมจึงพร้อมใช้งาน ย้ายไปยัง TRON แล้ว
Governança
9.1 Superrepresentante 9.1.1 Geral
Todas as contas da rede TRON podem se inscrever e ter a oportunidade de se tornar um Super Representante (denotado como SR). Todos podem votar em candidatos SR. Os 27 principais candidatos com os mais votados se tornarão SRs com direito e obrigação de gerar blocos. Os votos são contado a cada 6 horas e os SRs mudarão de acordo.
Para evitar ataques maliciosos, há um custo para se tornar um candidato à RS. Ao se inscrever, 9999 O TRX será eliminado da conta do requerente. Uma vez bem-sucedida, essa conta pode ingressar no SR eleição. 9.1.2 Eleição
TRON O poder (denotado como TP) é necessário para votar e a quantidade de TP depende do eleitor ativos congelados (TRX).
O TP é calculado da seguinte forma:
PT
1 TRX congelado para obter largura de banda
1
=
Cada conta na rede TRON tem o direito de votar em seus próprios SRs.
Após o lançamento (descongelamento, disponível após 3 dias), os usuários não terão nenhum ativo congelado e perderão todos TP em conformidade. Como resultado, todos os votos tornam-se inválidos para a ronda de votação em curso e futura, a menos que TRX está congelado novamente para votar.
Observe que a rede TRON registra apenas o voto mais recente, o que significa que cada novo voto anulará todos os votos anteriores. 9.1.3 Recompensa uma. Recompensa de voto
Também conhecido como Recompensa do Candidato, que os 127 melhores candidatos atualizam uma vez a cada rodada (6
horas) compartilhará 115.200 TRX extraídos. A recompensa será dividida de acordo com o peso dos votos
cada candidato recebe. A cada ano, a recompensa total para os candidatos será de 168.192.000 TRX.
Recompensa total de votos por rodada
Por que 115.200 TRX a cada rodada?
15,00 TRX
recompensa total de votos por rodada (V R/rodada)
1
2
=
V R/rodada = 16 T RX/bloco × 20 blocos/min × 60 minutos/h × 6 horas/rodada
Aviso: isso é definido por WITNESS_STANDBY_ALLOWANCE = 115.200 TRX. Consulte parâmetros de rede dinâmica.
Recompensa total de votos por ano
Por que 168.192.000 TRX todos os anos?
168.192.000 T RX = recompensa total de votos por ano (V R/ano)
V R/ano = 115.200 T RX/rodada × 4 rodadas/dia × 365 dias/ano
b. Recompensa de bloco
Também conhecida como Recompensa do Super Representante, que os 27 principais candidatos (SRs) eleitos
cada rodada (6 horas) compartilhará cerca de 230.400 TRX extraídos. A recompensa será dividida igualmente
entre os 27 SRs (menos o total de blocos de recompensa perdidos devido a erro de rede). Um total de
336.384.000 TRX serão concedidos anualmente aos 27 SRs.
Recompensa total do bloco por rodada
Por que 230.400 TRX a cada rodada?
230, 400 T RX = recompensa total do bloco por rodada (BR/rodada)
BR/rodada = 32 T RX/bloco × 20 blocos/min × 60 minutos/h × 6 horas/rodada
Aviso: a recompensa do bloco unitário é definida por WITNESS_PAY_PER_BLOCK = 32 TRX. Veja rede dinâmica
parâmetros.
Recompensa total do bloco por ano
Por que 336.384.000 TRX todos os anos?
336.384.000 T RX = recompensa total do bloco por ano (BR/ano)
BR/ano = 230.400 T RX/rodada × 4 rodadas/dia × 365 dias/ano
1º de janeiro de 2021
Não haverá inflação na rede TRON antes de 1º de janeiro de 2021, e TRON DAO
conceder todas as recompensas em bloco e recompensas de candidatos antes dessa data.
c. Cálculo de recompensa
Cálculo de recompensa SR
recompensa total
recompensa de voto (V R)
recompensa de bloco (BR)
t
=
+
R
VR total
V
=
×
total de votos
votos que o candidato SR recebeu
R
bloco perdido
2
B
=
27
BR total -
× 3
Nota: a recompensa é calculada por SR por rodada (6 horas)
Cálculo de recompensa de candidato de classificação 28 a 127 SR recompensa total recompensa de voto (V R) t =
R
VR total
V
=
×
total de votos
votos que o candidato SR recebeu
Nota: a recompensa é calculada por candidato SR por rodada (6 horas)
9.2 Comitê
9.2.1 Geral
O comitê é usado para modificar parâmetros de rede dinâmicos TRON, como geração de blocos
recompensas, taxas de transação, etc. O comitê é composto pelos 27 SRs da rodada atual. Cada RS
tem o direito de propor e votar propostas. Quando uma proposta recebe 19 votos ou mais, é
aprovado e os novos parâmetros de rede serão aplicados no próximo período de manutenção (3 dias).
9.2.2 Parâmetros de Rede Dinâmicos
0.
MAINTENANCE_TIME_INTERVAL
uma.
Descrição
Modifique o tempo do intervalo de manutenção em ms. Conhecido como tempo de intervalo de votação SR por
redondo.
b.
Exemplo
[6 * 3600 * 1000] ms - que é 6 horas.
c.
Alcance
[3271000, 2436001000]ms
1.
ACCOUNT_UPGRADE_COST
uma.
Descrição
Modifique o custo de inscrição para uma conta SR.
b.
Exemplo
[9.999.000.000] SUN – que é 9.999 TRX.
c.
Alcance
[0,100 000 000 000 000 000] SOL
2.
CREATE_ACCOUNT_FEE
uma.
Descrição
Modifique a taxa de criação de conta.b.
Exemplo
[100.000] SOL - que é 1 TRX.
c.
Alcance
[0,100 000 000 000 000 000] SOL
3.
TRANSACTION_FEE
uma.
Descrição
Modifique o valor da taxa usada para obter largura de banda extra.
b.
Exemplo
[10] SOL/byte.
c.
Alcance
[0,100 000 000 000 000 000] SOL/byte
4.
ASSET_ISSUE_FEE
uma.
Descrição
Modifique a taxa de emissão de ativos.
b.
Exemplo
[1024.000.000] SOL - que é 1024 TRX.
c.
Alcance
[0,100 000 000 000 000 000] SOL
5.
WITNESS_PAY_PER_BLOCK
uma.
Descrição
Modifique a recompensa de geração de bloco SR. Conhecida como recompensa de bloco unitário.
b.
Exemplo
[32.000.000] SUN - que é 32 TRX.
c.
Alcance
[0,100 000 000 000 000 000] SOL
6.
WITNESS_STANDBY_ALLOWANCE
uma.
Descrição
Modifique as recompensas dadas aos 127 principais candidatos SR. Conhecida como recompensa total de votos
por rodada.
b.
Exemplo
[115.200.000.000] SUN – que é 115.200 TRX.
c.
Alcance
[0,100 000 000 000 000 000] SOL
7.
CREATE_NEW_ACCOUNT_FEE_IN_SYSTEM_CONTRACT
uma.
Descrição
Modifique o custo de criação de conta. Combine os parâmetros de rede dinâmica nº 8 para obter
custo total de criação de conta:
REATE_NEW_ACCOUNT_FEE_IN_SY STEM_CONTRACT
REATE_NEW_ACCOUNT_BANDWIDTH_RATE
C
×C
b. Exemplo [0] SOL. c. Alcance [0,100 000 000 000 000 000] SOL 8. CREATE_NEW_ACCOUNT_BANDWIDTH_RATE
uma.
Descrição
Modifique o custo de criação de conta. Combine os parâmetros de rede dinâmica nº 7 para obter
custo total de criação de conta:
REATE_NEW_ACCOUNT_FEE_IN_SY STEM_CONTRACT
REATE_NEW_ACCOUNT_BANDWIDTH_RATE
C
×C
b. Exemplo [1]. c. Alcance [0.100.000.000.000.000.000] 9. ALLOW_CREATION_OF_CONTRACTS uma. Descrição Para ativar a Máquina Virtual Tron (TVM). b. Exemplo Verdadeiro - definido para ativação e efeito desde 10/10/2018 23:47 UTC. c. Alcance Verdadeiro/Falso 10. REMOVE_THE_POWER_OF_THE_GR uma. Descrição Remova os votos iniciais do GR genesis b. Exemplo Verdadeiro - efetuado em 04/11/2018 08:46 UTC. c. Alcance Verdadeiro/Falso - Aviso: não é possível retornar de Verdadeiro para Falso. 11. ENERGY_FEE uma. Descrição Modifique a taxa de 1 energia. b. Exemplo 20 SOL. c. Alcance [0,100 000 000 000 000 000] SOL 12. EXCHANGE_CREATE_FEE uma. Descrição Modifique o custo de criação de pares de negociação. Conhecido como o custo de criação de uma ordem comercial. b. Exemplo [1.024.000.000] SOL - que é 1024 TRX. c. Alcance [0,100 000 000 000 000 000] SOL 13. MAX_CPU_TIME_OF_ONE_TX uma. Descrição Modifique o tempo máximo de execução de uma transação. Conhecido como limite de tempo limite de uma transação. b. Exemplo 50 ms. c. Alcance
[0, 1000] ms
14. ALLOW_UPDATE_ACCOUNT_NAME
uma.
Descrição
Modifique a opção para permitir que uma conta atualize seu nome de conta.
b.
Exemplo
Falso - que está disponível para proposta no java-tron Odyssey v3.2.
c.
Alcance
Verdadeiro/Falso - Aviso: não é possível retornar de Verdadeiro para Falso.
15.ALLOW_SAME_TOKEN_NAME
uma.
Descrição
Modifique a validação para permitir que diferentes token tenham um nome duplicado.
b.
Exemplo
Falso - que está disponível para proposta no java-tron Odyssey v3.2.
c.
Alcance
Verdadeiro/Falso - Aviso: não é possível retornar de Verdadeiro para Falso.
16. ALLOW_DELEGATE_RESOURCE
uma.
Descrição
Modifique a validação para permitir a emissão de token com nome duplicado, para que o
tokenID do token, no tipo de dados inteiro longo, seria o único atômico
identificação de um token.
b.
Exemplo
Falso - que está disponível para proposta no java-tron Odyssey v3.2.
c.
Alcance
Verdadeiro/Falso - Aviso: não é possível retornar de Verdadeiro para Falso.
17. TOTAL_ENERGY_LIMIT
uma.
Descrição
Modifique todo o limite de energia total da rede.
b.
Exemplo
[50.000.000.000.000.000] SOL - que é 50.000.000.000 TRX.
c.
Alcance
[0.100.000.000.000.000.000] SOL
18. ALLOW_TVM_TRANSFER_TRC10
uma.
Descrição
Permitir transferência TRC-10 token dentro de smart contracts.
ALLOW_UPDATE_ACCOUNT_NAME, ALLOW_SAME_TOKEN_NAME,
Todas as propostas ALLOW_DELEGATE_RESOURCE devem ser aprovadas antes de serem propostas
esta mudança de parâmetro.
b.
Exemplo
Falso - que está disponível para proposta no java-tron Odyssey v3.2.
c.
Alcance
Verdadeiro/Falso - Aviso: não é possível retornar de Verdadeiro para Falso.9.2.3 Criar Proposta
Somente as contas SR têm o direito de propor uma alteração nos parâmetros dinâmicos da rede. 9.2.4 Proposta de Votação
Somente os membros do comitê (SRs) podem votar em uma proposta e o membro que não votar a tempo será considerado como discordo. A proposta fica ativa por 3 dias após ser criada. A votação pode ser alterado ou recuperado durante o período de votação de 3 dias. Terminado o período, a proposta será sucesso (mais de 19 votos) ou fracasso (e fim). 9.2.5 Cancelar Proposta
O proponente pode cancelar a proposta antes que ela entre em vigor. 9.3 Estrutura
SRs são as testemunhas dos blocos recém-gerados. Uma testemunha contém 8 parâmetros:
1.
endereço: o endereço desta testemunha – por ex. 0xu82h…7237.
2.
voteCount: número de votos recebidos nesta testemunha – por ex. 234234.
3.
pubKey: a chave pública desta testemunha – por exemplo. 0xu82h…7237.
4.
url: o URL desta testemunha – por ex. https://www.noonetrust.com.
5.
totalProduzido: o número de blocos que esta testemunha produziu – por exemplo. 2434.
6.
totalMissed: o número de blocos que esta testemunha perdeu – por exemplo. 7.
7.
lastBlockNum: a última altura do bloco – por exemplo. 4522.
8.
isjobs: um sinalizador booleano.
Estrutura de dados do protobuf:
mensagem Testemunha{
endereço de bytes = 1;
int64 contagem de votos = 2;
bytes pubKey = 3;
string url=4;
int64 totalProduzido = 5;
int64 totalPerdidos = 6;
int64 últimoBlockNum = 7;
bool isJobs = 8;
}
- Desenvolvimento de DApps 10.1 APIs
A rede TRON oferece uma ampla seleção de mais de 60 gateways de API HTTP para interagir com o rede via Full e Solidity Nodes. Além disso, TronWeb é uma biblioteca JavaScript abrangente contendo funções de API que permitem aos desenvolvedores implantar smart contracts, altere o blockchain estado, consulta blockchain e informações de contrato, negociação no DEX e muito mais. Estas APIs os gateways podem ser direcionados para uma rede privada local, a rede de teste Shasta ou a rede principal TRON.
10.2 Redes
TRON possui uma rede de teste Shasta e também uma rede principal. Os desenvolvedores podem se conectar às redes por
implantando nós, interagindo via TronStudio ou usando APIs por meio do serviço TronGrid. O TronGrid
O serviço consiste em clusters de nós com balanceamento de carga hospedados em servidores AWS em todo o mundo. Como DApp
o desenvolvimento aumenta e os volumes de chamadas de API aumentam, o TronGrid responde com sucesso ao aumento em
Tráfego de API.
10.3 Ferramentas
TRON oferece um conjunto de ferramentas de desenvolvimento para permitir que os desenvolvedores criem DApps inovadores.
TronBox é uma estrutura que permite aos desenvolvedores testar e implantar smart contracts através do TronWeb
API. TronGrid é um serviço de API hospedado e com balanceamento de carga que permite aos desenvolvedores acessar o
TRON rede sem precisar executar seu próprio nó. TronGrid oferece acesso tanto ao Shasta
testnet, bem como a rede principal TRON. TronStudio é um desenvolvimento integrado abrangente
Ambiente (IDE) que permite aos desenvolvedores compilar, implantar e depurar seu Solidity smart
contratos. TronStudio contém um nó completo interno que cria um ambiente local privado para
smart contract testes antes da implantação. A biblioteca API TronWeb conecta desenvolvedores ao
rede por meio de uma ampla seleção de chamadas de API HTTP agrupadas em JavaScript.
10.4 Recursos
O TRON Developer Hub é um site abrangente de documentação de API adaptado para 12 desenvolvedores que desejam desenvolver na rede TRON. O Developer Hub fornece um alto nível compreensão conceitual de TRON e orienta os usuários nos detalhes da interação com o 12 Centro do desenvolvedor: https://developers.tron.network/
rede. Os guias orientam os desenvolvedores na configuração, implantação e interação do nó com aplicativos inteligentes
contratos, interação e implementação de API, construção de DApps de amostra e uso de cada um dos
ferramentas para desenvolvedores. Além disso, os canais da comunidade de desenvolvedores estão disponíveis através do Discord.
13
13Discordância: https://discordapp.com/invite/GsRgsTD
- Conclusão
TRON é uma solução blockchain escalável que empregou métodos inovadores para lidar com desafios enfrentados pelas redes blockchain legadas. Tendo alcançado mais de 2 milhões de transações por dia, com mais de 700 mil contas TRX e ultrapassando 2.000 TPS, TRON permitiu à comunidade em criando uma rede descentralizada e democratizada.
ธรรมาภิบาล
9.1 ตัวแทนระดับสูง 9.1.1 ทั่วไป
ทุกบัญชีในเครือข่าย TRON สามารถสมัครและมีโอกาสที่จะเป็น Super ตัวแทน (แสดงเป็น SR) ทุกคนสามารถลงคะแนนให้ผู้สมัคร SR ได้ ผู้สมัคร 27 อันดับแรกด้วย ผู้โหวตมากที่สุดจะกลายเป็น SR ที่มีสิทธิ์และหน้าที่ในการสร้างบล็อก คะแนนเสียงคือ นับทุกๆ 6 ชั่วโมง และ SR จะเปลี่ยนตามไปด้วย
เพื่อป้องกันการโจมตีที่เป็นอันตราย การสมัครเป็น SR มีค่าใช้จ่าย เมื่อสมัคร 9999 TRX จะถูกเผาจากบัญชีของผู้สมัคร เมื่อสำเร็จแล้ว บัญชีดังกล่าวจะสามารถเข้าร่วม SR ได้ การเลือกตั้ง 9.1.2 การเลือกตั้ง
TRON ต้องใช้อำนาจ (แสดงเป็น TP) ในการลงคะแนนเสียง และจำนวน TP ขึ้นอยู่กับผู้ลงคะแนนเสียง สินทรัพย์ที่ถูกแช่แข็ง (TRX)
TP คำนวณด้วยวิธีต่อไปนี้:
ทีพี
1 TRX ถูกแช่แข็งเพื่อรับแบนด์วิธ
1
=
ทุกบัญชีในเครือข่าย TRON มีสิทธิ์ลงคะแนนให้ SR ของตนเอง
หลังจากการเปิดตัว (เลิกระงับ และใช้งานได้หลังจาก 3 วัน) ผู้ใช้จะไม่มีเนื้อหาที่ถูกแช่แข็งและสูญเสียทั้งหมด ทีพี ตามนั้น ส่งผลให้การลงคะแนนเสียงทั้งหมดเป็นโมฆะสำหรับการลงคะแนนเสียงที่กำลังดำเนินอยู่และรอบต่อไป เว้นแต่ TRX ถูกระงับการลงคะแนนเสียงอีกครั้ง
โปรดทราบว่าเครือข่าย TRON จะบันทึกเฉพาะการโหวตล่าสุดเท่านั้น ซึ่งหมายความว่าทุกการโหวตใหม่ จะลบล้างคะแนนเสียงก่อนหน้านี้ทั้งหมด 9.1.3 รางวัล ก. โหวตรางวัล
เรียกอีกอย่างว่ารางวัลผู้สมัคร ซึ่งผู้สมัคร 127 อันดับแรกจะอัปเดตทุกๆ รอบ (6
ชั่วโมง) จะแบ่ง 115,200 TRX เมื่อขุดได้ รางวัลจะแบ่งตามน้ำหนักคะแนนโหวต
ผู้สมัครแต่ละคนจะได้รับ ในแต่ละปี รางวัลรวมสำหรับผู้สมัครจะเท่ากับ 168,192,000 TRX
รางวัลโหวตรวมต่อรอบ
ทำไมต้อง 115,200 TRX ทุกรอบ?
15, 00 TRX
รางวัลคะแนนโหวตรวมต่อรอบ (VR/รอบ)
1
2
=
VR/รอบ = 16 T RX/บล็อก × 20 บล็อค/นาที × 60 นาที/ชม × 6 ชม./รอบ
หมายเหตุ: ค่านี้กำหนดโดย WITNESS_STANDBY_ALLOWANCE = 115,200 TRX ดูพารามิเตอร์เครือข่ายแบบไดนามิก
รางวัลคะแนนเสียงทั้งหมดต่อปี
ทำไมต้อง 168,192,000 TRX ทุกปี?
168, 192, 000 T RX = รางวัลคะแนนโหวตทั้งหมดต่อปี (V R/ปี)
V R/ปี = 115, 200 T RX/รอบ × 4 รอบ/วัน × 365 วัน/ปี
ข. รางวัลบล็อก
หรือที่เรียกว่า Super Representative Reward ซึ่งผู้เข้าชิง 27 อันดับแรก (SRs) ที่ได้รับเลือก
ทุกรอบ (6 ชั่วโมง) จะแบ่งประมาณ 230,400 TRX เมื่อขุดได้ รางวัลจะแบ่งเท่าๆ กัน
ระหว่าง 27 SR (ลบบล็อกรางวัลทั้งหมดที่พลาดเนื่องจากข้อผิดพลาดของเครือข่าย) รวมของ
336,384,000 TRX จะมอบให้ทุกปีแก่ 27 SR
รางวัลบล็อกทั้งหมดต่อรอบ
ทำไมต้อง 230,400 TRX ทุกรอบ?
230, 400 T RX = รางวัลบล็อคทั้งหมดต่อรอบ (BR/รอบ)
BR/รอบ = 32 T RX/bloc × 20 บล็อก/นาที × 60 นาที/ชม × 6 ชม./รอบ
หมายเหตุ: รางวัลบล็อกหน่วยถูกกำหนดโดย WITNESS_PAY_PER_BLOCK = 32 TRX ดูเครือข่ายแบบไดนามิก
พารามิเตอร์
รางวัลบล็อกทั้งหมดต่อปี
ทำไมต้อง 336,384,000 TRX ทุกปี?
336, 384, 000 T RX = รางวัลบล็อกทั้งหมดต่อปี (BR/ปี)
BR/ปี = 230, 400 T RX/รอบ × 4 รอบ/วัน × 365 วัน/ปี
1 มกราคม 2021
จะไม่มีอัตราเงินเฟ้อบนเครือข่าย TRON ก่อนวันที่ 1 มกราคม 2021 และ TRON DAO จะ
มอบรางวัลบล็อกและรางวัลผู้สมัครทั้งหมดก่อนวันที่ดังกล่าว
ค. การคำนวณรางวัล
การคำนวณรางวัล SR
รางวัลทั้งหมด
รางวัลการโหวต (VR)
รางวัลบล็อก (BR)
ที
=
+
ร
วี อาร์ ทั้งหมด
วี
=
×
คะแนนเสียงทั้งหมด
คะแนนโหวต ผู้สมัคร SR ที่ได้รับ
ร
บล็อกพลาด
2
บี
=
27
รวม BR -
× 3
หมายเหตุ: รางวัลจะคำนวณต่อ SR ต่อรอบ (6 ชั่วโมง)
อันดับที่ 28 ถึงอันดับที่ 127 การคำนวณรางวัลผู้สมัคร SR รางวัลทั้งหมด รางวัลการโหวต (VR) ที =
ร
วี อาร์ ทั้งหมด
วี
=
×
คะแนนเสียงทั้งหมด
คะแนนโหวต ผู้สมัคร SR ที่ได้รับ
หมายเหตุ: รางวัลจะคำนวณต่อผู้สมัคร SR ต่อรอบ (6 ชั่วโมง)
9.2 คณะกรรมการ
9.2.1 ทั่วไป
คณะกรรมการใช้เพื่อแก้ไขพารามิเตอร์เครือข่ายไดนามิก TRON เช่น การสร้างบล็อก
รางวัล ค่าธรรมเนียมการทำธุรกรรม ฯลฯ คณะกรรมการประกอบด้วย SR 27 รายการในรอบปัจจุบัน เอสอาร์แต่ละคน
มีสิทธิเสนอและลงคะแนนเสียงข้อเสนอได้ เมื่อข้อเสนอได้รับคะแนนเสียง 19 เสียงขึ้นไปก็คือ
ได้รับการอนุมัติและพารามิเตอร์เครือข่ายใหม่จะถูกนำไปใช้ในช่วงการบำรุงรักษาครั้งถัดไป (3 วัน)
9.2.2 พารามิเตอร์เครือข่ายแบบไดนามิก
0.
การบำรุงรักษา_TIME_INTERVAL
ก.
คำอธิบาย
แก้ไขช่วงเวลาการบำรุงรักษาเป็นมิลลิวินาที เรียกว่าช่วงเวลาการลงคะแนนเสียง SR ต่อ
รอบ
ข.
ตัวอย่าง
[6 * 3600 * 1,000] ms - ซึ่งก็คือ 6 ชั่วโมง
ค.
พิสัย
[3271,000, 2436001,000] มิลลิวินาที
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.
ธุรกรรม_ค่าธรรมเนียม
ก.
คำอธิบาย
แก้ไขจำนวนค่าธรรมเนียมที่ใช้เพื่อเพิ่มแบนด์วิธเพิ่มเติม
ข.
ตัวอย่าง
[10] อาทิตย์/ไบต์
ค.
พิสัย
[0,100 000 000 000 000 000] อาทิตย์/ไบต์
4.
ASSET_ISSUE_FEE
ก.
คำอธิบาย
ปรับเปลี่ยนค่าธรรมเนียมการออกสินทรัพย์
ข.
ตัวอย่าง
[1,024,000,000] SUN - ซึ่งก็คือ 1,024 TRX
ค.
พิสัย
[0,100 000 000 000 000 000] อาทิตย์
5.
WITNESS_PAY_PER_BLOCK
ก.
คำอธิบาย
แก้ไขรางวัลการสร้างบล็อก SR รู้จักกันในชื่อรางวัลบล็อกหน่วย
ข.
ตัวอย่าง
[32,000,000] อาทิตย์ - ซึ่งก็คือ 32 TRX
ค.
พิสัย
[0,100 000 000 000 000 000] อาทิตย์
6.
WITNESS_STANDBY_ALLOWANCE
ก.
คำอธิบาย
ปรับเปลี่ยนรางวัลที่มอบให้กับผู้สมัคร SR 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 Virtual Machine (TVM) ข. ตัวอย่าง จริง - ตั้งค่าให้เปิดใช้งานและมีผลตั้งแต่ 10/10/2018 23:47 UTC ค. พิสัย จริง/เท็จ 10. REMOVE_THE_POWER_OF_THE_GR ก. คำอธิบาย ลบคะแนนการกำเนิด GR เริ่มต้น ข. ตัวอย่าง จริง - มีผลเมื่อ 4/11/2561 08:46 UTC ค. พิสัย จริง/เท็จ - หมายเหตุ: ไม่สามารถตั้งค่ากลับเป็นเท็จจากจริงได้ 11. พลังงาน_ค่าธรรมเนียม ก. คำอธิบาย แก้ไขค่าธรรมเนียม 1 พลังงาน ข. ตัวอย่าง 20 อาทิตย์ ค. พิสัย [0,100 000 000 000 000 000] อาทิตย์ 12. EXCHANGE_CREATE_FEE ก. คำอธิบาย ปรับเปลี่ยนต้นทุนการสร้างคู่การซื้อขาย เรียกว่าต้นทุนในการสร้างคำสั่งซื้อขาย ข. ตัวอย่าง [1,024,000,000] SUN - ซึ่งก็คือ 1,024 TRX ค. พิสัย [0,100 000 000 000 000 000] อาทิตย์ 13. MAX_CPU_TIME_OF_ONE_TX ก. คำอธิบาย แก้ไขเวลาดำเนินการสูงสุดของหนึ่งธุรกรรม เรียกว่าขีดจำกัดการหมดเวลาของ หนึ่งธุรกรรม ข. ตัวอย่าง 50 มิลลิวินาที ค. พิสัย
[0, 1,000] มิลลิวินาที
14. ALLOW_UPDATE_ACCOUNT_NAME
ก.
คำอธิบาย
แก้ไขตัวเลือกเพื่อให้บัญชีอัปเดตชื่อบัญชีของตน
ข.
ตัวอย่าง
เท็จ - ซึ่งสามารถเสนอได้จาก java-tron Odyssey v3.2
ค.
พิสัย
จริง/เท็จ - หมายเหตุ: ไม่สามารถตั้งค่ากลับเป็นเท็จจากจริงได้
15. ALLOW_SAME_TOKEN_NAME
ก.
คำอธิบาย
แก้ไขการตรวจสอบความถูกต้องของการอนุญาตให้ token ที่แตกต่างกันมีชื่อซ้ำกัน
ข.
ตัวอย่าง
เท็จ - ซึ่งสามารถเสนอได้จาก java-tron Odyssey v3.2
ค.
พิสัย
จริง/เท็จ - หมายเหตุ: ไม่สามารถตั้งค่ากลับเป็นเท็จจากจริงได้
16. ALLOW_DELEGATE_RESOURCE
ก.
คำอธิบาย
แก้ไขการตรวจสอบความถูกต้องของการอนุญาตให้ออก token ด้วยชื่อที่ซ้ำกัน ดังนั้น
tokenID ของ token ซึ่งเป็นประเภทข้อมูลจำนวนเต็มยาว จะเป็นอะตอมเพียงชนิดเดียว
บัตรประจำตัวของ token
ข.
ตัวอย่าง
เท็จ - ซึ่งสามารถเสนอได้จาก java-tron Odyssey v3.2
ค.
พิสัย
จริง/เท็จ - หมายเหตุ: ไม่สามารถตั้งค่ากลับเป็นเท็จจากจริงได้
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 contracts
ALLOW_UPDATE_ACCOUNT_NAME, ALLOW_SAME_TOKEN_NAME,
ข้อเสนอ ALLOW_DELEGATE_RESOURCE ทั้งหมดต้องได้รับการอนุมัติก่อนที่จะเสนอ
การเปลี่ยนแปลงพารามิเตอร์นี้
ข.
ตัวอย่าง
เท็จ - ซึ่งสามารถเสนอได้จาก java-tron Odyssey v3.2
ค.
พิสัย
จริง/เท็จ - หมายเหตุ: ไม่สามารถตั้งค่ากลับเป็นเท็จจากจริงได้9.2.3 สร้างข้อเสนอ
เฉพาะบัญชี SR เท่านั้นที่มีสิทธิ์เสนอการเปลี่ยนแปลงในพารามิเตอร์เครือข่ายแบบไดนามิก 9.2.4 การเสนอการลงคะแนนเสียง
เฉพาะสมาชิกคณะกรรมการ (SR) เท่านั้นที่สามารถลงคะแนนเสียงให้กับข้อเสนอและสมาชิกที่ไม่ลงคะแนนเสียงได้ทันเวลา จะถือว่าไม่เห็นด้วย ข้อเสนอมีผลใช้งานเป็นเวลา 3 วันหลังจากสร้างขึ้น โหวตก็ได้ สามารถเปลี่ยนแปลงหรือเรียกคืนได้ในช่วงหน้าต่างลงคะแนนเสียง 3 วัน เมื่อสิ้นสุดระยะเวลาข้อเสนอจะสิ้นสุดลง สำเร็จ (19+ โหวต) หรือล้มเหลว (และสิ้นสุด) 9.2.5 ยกเลิกข้อเสนอ
ผู้เสนอสามารถยกเลิกข้อเสนอก่อนที่จะมีผลใช้บังคับ 9.3 โครงสร้าง
SR เป็นพยานของบล็อกที่สร้างขึ้นใหม่ พยานประกอบด้วย 8 พารามิเตอร์:
1.
ที่อยู่: ที่อยู่ของพยานนี้ – เช่น 0xu82h…7237.
2.
voteCount: จำนวนคะแนนเสียงที่ได้รับจากพยานคนนี้ - เช่น 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 โหวตนับ = 2;
ไบต์ pubKey = 3;
สตริง url = 4;
int64 ผลรวมที่ผลิต = 5;
int64 รวมพลาด = 6;
int64 ล่าสุดBlockNum = 7;
บูลคืองาน = 8;
}
- การพัฒนา DApp 10.1 API
เครือข่าย TRON มีเกตเวย์ HTTP API ให้เลือกมากกว่า 60+ รายการสำหรับการโต้ตอบกับ เครือข่ายผ่าน Full และ Solidity Nodes นอกจากนี้ TronWeb ยังเป็นไลบรารี JavaScript ที่ครอบคลุมอีกด้วย มีฟังก์ชัน API ที่ช่วยให้นักพัฒนาสามารถปรับใช้ smart contracts เปลี่ยน blockchain สถานะ, สอบถาม blockchain และข้อมูลสัญญา, ซื้อขาย DEX และอื่นๆ อีกมากมาย API เหล่านี้ เกตเวย์สามารถมุ่งตรงไปยังไพรเวทเน็ตเฉพาะที่, เทสเน็ต Shasta หรือ TRON เมนเน็ต
10.2 เครือข่าย
TRON มีทั้ง Shasta testnet และ Mainnet นักพัฒนาอาจเชื่อมต่อกับเครือข่ายโดย
การปรับใช้โหนด การโต้ตอบผ่าน TronStudio หรือใช้ API ผ่านบริการ TronGrid ตรอนกริด
บริการประกอบด้วยคลัสเตอร์โหนดที่สมดุลโหลดซึ่งโฮสต์บนเซิร์ฟเวอร์ AWS ทั่วโลก ในฐานะ DApp
การพัฒนาขยายขนาดและปริมาณการเรียก API เพิ่มขึ้น TronGrid ประสบความสำเร็จในการเพิ่มจำนวน
การรับส่งข้อมูล API
10.3 เครื่องมือ
TRON นำเสนอชุดเครื่องมือการพัฒนาที่ช่วยให้นักพัฒนาสามารถสร้าง DApps ที่เป็นนวัตกรรมใหม่ได้
TronBox เป็นเฟรมเวิร์กที่ช่วยให้นักพัฒนาสามารถทดสอบและปรับใช้ smart contracts ผ่านทาง TronWeb
เอพีไอ TronGrid เป็นบริการ API ที่สมดุลโหลดและโฮสต์ซึ่งช่วยให้นักพัฒนาสามารถเข้าถึง
TRON เครือข่ายโดยไม่ต้องรันโหนดของตนเอง TronGrid ให้การเข้าถึงทั้ง Shasta
testnet เช่นเดียวกับ TRON Mainnet TronStudio เป็นการพัฒนาแบบรวมที่ครอบคลุม
สภาพแวดล้อม (IDE) ที่ช่วยให้นักพัฒนาสามารถคอมไพล์ ปรับใช้ และดีบัก Solidity smart ของตนได้
สัญญา TronStudio มีโหนดเต็มภายในที่สร้างสภาพแวดล้อมท้องถิ่นส่วนตัวสำหรับ
smart contract การทดสอบก่อนการปรับใช้งาน ไลบรารี TronWeb API เชื่อมต่อนักพัฒนาเข้ากับ
เครือข่ายผ่านการเรียก HTTP API ที่หลากหลายซึ่งรวมอยู่ใน JavaScript
10.4 ทรัพยากร
TRON Developer Hub คือไซต์เอกสารประกอบ API ที่ครอบคลุมซึ่งปรับแต่งมาโดยเฉพาะ 12 นักพัฒนาที่ต้องการสร้างบนเครือข่าย TRON Developer Hub มอบระดับสูง ความเข้าใจแนวคิดของ TRON และแนะนำผู้ใช้ผ่านรายละเอียดการโต้ตอบกับ 12 ศูนย์กลางนักพัฒนา: https://developers.tron.network/
เครือข่าย คู่มือนี้จะแนะนำนักพัฒนาเกี่ยวกับการตั้งค่าโหนด การปรับใช้ และการโต้ตอบกับระบบอัจฉริยะ
สัญญา การโต้ตอบและการใช้งาน API การสร้าง DApps ตัวอย่าง และการใช้แต่ละอย่าง
เครื่องมือสำหรับนักพัฒนา นอกจากนี้ ช่องทางชุมชนนักพัฒนายังมีให้บริการผ่าน Discord
13
13 ความขัดแย้ง: https://discordapp.com/invite/GsRgsTD
- บทสรุป
TRON เป็นโซลูชัน blockchain ที่ปรับขนาดได้ ซึ่งได้ใช้วิธีการที่เป็นนวัตกรรมใหม่สำหรับการแก้ปัญหา ความท้าทายที่เครือข่าย blockchain เดิมต้องเผชิญ มีธุรกรรมมากกว่า 2 ล้านรายการต่อวัน ด้วยบัญชี TRX มากกว่า 700,000 บัญชี และมากกว่า 2,000 บัญชี TPS, TRON ได้เปิดใช้งานชุมชนใน การสร้างเครือข่ายกระจายอำนาจและเป็นประชาธิปไตย