Skip to content

Latest commit

 

History

History
198 lines (158 loc) · 34.6 KB

README.md

File metadata and controls

198 lines (158 loc) · 34.6 KB

TIPs

TRON Improvement Proposals (TIPs) describe standards for the TRON platform, including core protocol specifications, client APIs, and contract standards.


Contents


TIPs Guide

ID Title Author Type Category Hard fork Status
TIP 10 TRON Token Standard [email protected] Standards Track Core false Final
TIP 12 TRON Event Subscription Model [email protected] Informational TRC false Final
TIP 13 Design of TRON account [email protected] Standards Track Core false Final
TIP 16 TRON Account Multi-Signature [email protected] Standards Track Core true Final
TIP 17 TRON Adaptive Energy Limit Model [email protected] Standards Track Core true Final
TIP 19 TRC-19 Deferred transaction [email protected] Standards Track Core true Deferred
TIP 20 TRC-20 Token Standard [email protected] Standards Track TRC true Final
TIP 23 Add the account world status tree root to the block header [email protected] Standards Track Core true Accepted
TIP 24 Implement of DB storage with RocksDB [email protected] Standards Track Core false Final
TIP 26 Create2 [email protected] Standards Track VM false Final
TIP 28 Built-in Message Queue in Event Subscription Model [email protected] Informational false Final
TIP 29 Bitwise shifting instructions in Tron [email protected] Standards Track VM true Final
TIP 30 Code hash instructions [email protected] Standards Track VM true Final
TIP 31 Trigger constant contract [email protected] Standards Track VM true Final
TIP 32 Clear the ABI of contract [email protected] Standards Track VM true Final
TIP 37 Forbid using TransferContract & TransferAssetContract for contract account [email protected] Standards Track VM true Final
TIP 41 Optimize transactionHistoryStore occupancy space [email protected] Standards Track Core false Final
TIP 43 Precompiled contract function for signature parallel verification [email protected] Standards Track VM true Final
TIP 44 Address.isContract instructions [email protected] Standards Track VM true Final
TIP 51 Rate limit of API traffic [email protected] Standards Track Interface false Final
TIP 53 Optimize the current TRON delegation mechanism [email protected] Standards Track Core true Final
TIP 54 Automatically active non-existent account when transferring TRX/TRC10 asset in a smart contract [email protected] Standards Track VM true Final
TIP 60 Precompiled contract function for multi-signature verification [email protected] Standards Track VM true Accepted
TIP 62 Tron consensus algorithm introduction [email protected] Standards Track Core false Final
TIP 64 Tron tron mix consensus Analytics [email protected] Standards Track Core false Draft
TIP 101 Wallet Keystore Specification [email protected] Standards Track TRC false Last Call
TIP 102 Hierarchical Deterministic Wallet [email protected] Standards Track TRC false Last Call
TIP 104 Data Signing Specification [email protected] Standards Track TRC false Last Call
TIP 105 Multi-signature Permission Operation [email protected] Standards Track TRC true Final
TIP 120 ECDSA Signature Encoding Specification [email protected] Standards Track TRC false Final
TIP 127 Support Tron-DEX based on system contracts [email protected] Standards Track CORE false Draft
TIP 128 TIP128 Lite Fullnode support [email protected] Standards Track CORE false Draft
TIP 135 Shielded TRC-20 Contract [email protected] Standards Track TRC false Final
TIP 137 Zero-knowledge Proof Verification functions [email protected] Standards Track VM true Final
TIP 138 Pedersen hash function [email protected] Standards Track VM true Final
TIP 156 Vote instructions in TVM [email protected] Standards Track VM true Withdrawn
TIP 157 Freeze instructions in TVM [email protected] Standards Track VM true Final
TIP 165 TRC-165 Standard Interface Detection In Contract [email protected] Standards Track TRC true Final
TIP 171 STAKE instructions in TVM [email protected] Standards Track VM true Withdrawn
TIP 174 CHAINID instructions in TVM [email protected] Standards Track VM true Final
TIP 175 SELFBALANCE instructions in TVM [email protected] Standards Track VM true Final
TIP 176 altbn128 operation energy reduction in TVM [email protected] Standards Track VM true Final
TIP 178 TOKENISSUE and UPDATEASSET Instruction in TVM [email protected] Standards Track VM true Withdrawn
TIP 191 Signed Data Standard [email protected] Standards Track TRC false Final
TIP 196 Reward SRs with the transaction fees charged for bandwidth and Energy [email protected] Standards Track Core true Final
TIP 204 Make MAX_FEE_LIMIT configurable as a chain property [email protected] Standards Track VM false Final
TIP 207 A proposal to improve network resources model [email protected] Standards Track Core true Draft
TIP 209 Adapt to Solidity 0.6.0 [email protected] Standards Track VM false Final
TIP 222 Improve transaction execution speed [email protected] Standards Track TRC true Final
TIP 250 Include transaction results on the chain [email protected] Standards Track Core true Final
TIP 268 SmartContract ABI optimization [email protected] Standards Track VM false Final
TIP 269 Optimize the performance of block processing [email protected] Standards Track Core false Final
TIP 271 Vote for SR in Smart Contract [email protected] Standards Track VM true Final
TIP 272 Compatible with EVM [email protected] Standards Track VM true Final
TIP 276 Optimize block verification logic [email protected] Standards Track Core false Final
TIP 281 Optimize the query of database [email protected] Standards Track Core false Final
TIP 285 Node startup optimization [email protected] Standards Track Core false Final
TIP 289 Block Broadcast Optimization [email protected] Standards Track Core true Final
TIP 290 Dynamic store optimization [email protected] Standards Track Core true Final
TIP 292 Add a proposal to adjust the free net limit in an account [email protected] Standards Track TRC true Final
TIP 293 Add a proposal to adjust the total net limit [email protected] Standards Track TRC true Final
TIP 295 Optimize assets of account [email protected] Standards Track Core false Final
TIP 298 Reformat manifest [email protected] Standards Track Core false Final
TIP 306 Adapt to solidity_0.8.4 [email protected] Standards Track VM false Final
TIP 318 Adapt to Ethereum London Upgrade [email protected] Standards Track VM false Final
TIP 343 DB params optimization [email protected] Standards Track Core false Draft
TIP 344 Optimize instruction execution for TVM [email protected] Standards Track VM false Final
TIP 362 Optimized node broadcast data caching [email protected] Standards Track Core false Final
TIP 366 Node startup optimization [email protected] Standards Track Core false Final
TIP 369 Node support prometheus metrics [email protected] Standards Track Core false Final
TIP 370 Node support conditionalized stop [email protected] Standards Track Core false Final
TIP 382 TIP-382: Optimize the data structure of account assets [email protected] Standards Track Core false Final
TIP 383 TIP-383: Optimize transaction cache loading [email protected] Standards Track Core false Final
TIP 387 TIP-387: Transaction memo fee [email protected] Standards Track Core false Final
TIP 388 TIP-388: Optimize light node synchronization logic [email protected] Standards Track Core false Final
TIP 391 TIP-391: Optimize fetch block process [email protected] Standards Track Core false Final
TIP 397 Raise limit of the 13th network parameter [email protected] Standards Track VM true Final
TIP 425 TIP-425: Speed up TCP connection establishment [email protected] Standards Track Net false Final
TIP 428 TIP-428: Increase the probability that the block processing thread acquires the lock [email protected] Standards Track Core false Final
TIP 440 Transaction cache optimization [email protected] Standards Track Core false Final
TIP 461 Optimize data consistency for system abnormals [email protected] Standards Track Core false Final
TIP 465 New reward calculation algorithm [email protected] Standards Track Core true Final
TIP 467 Stake 2.0 - A new TRON stake model [email protected] Standards Track Core false Final
TIP 474 Optimize the return value of chainid opcode [email protected] Standards Track VM true Final
TIP 476 Delegate Data Structure Optimization [email protected] Standards Track Core false Final
TIP 491 Dynamic Energy Model [email protected] Standards Track VM true Final
TIP 534 Remove Vulnerable APIs [email protected] Standards Track Core false Final
TIP 541 Support canceling unstaking in Stake 2.0 [email protected] Standards Track Core true Final
TIP 542 Resource delegating supports customizable lock period [email protected] Standards Track Core true Final
TIP 543 Implement EIP-3855 PUSH0 instruction [email protected] Standards Track VM true Final
TIP 544 Add data to the http interfaces interacting with smart contract [email protected] Standards Track Interface false Final
TIP 547 Connection precheck before P2P communication [email protected] Standards Track Networking false Final
TIP 548 Node Discovery via DNS [email protected] Standards Track Networking false Final
TIP 549 P2P support IPv6 protocol [email protected] Standards Track Networking false Final
TIP 550 P2P message snappy compression [email protected] Standards Track Networking false Final
TIP 555 Network upgrade logic optimization [email protected] Standards Track Core false Final
TIP 586 GRPC Implementation for Resource Price Interfaces [email protected] Standards Track Core false Final
TIP 592 Supplement Disconnect Reasons in Java-tron [email protected] Standards Track Networking false Final
TIP 621 Add code version column to HelloMessage [email protected] Standards Track Networking false Final
TIP 635 Optimize Reward Withdrawal To Improve TPS [email protected] Standards Track Core true Final
TIP 652 Announce EIP-6049 Deprecate SELFDESTRUCT [email protected] Meta VM false Review
TIP 653 Adjust energy cost of SUICIDE and VOTEWITNESS opcodes in TVM [email protected] Standards Track VM true Review
TIP 712 TRON typed structured data hashing and signing [email protected] Standards Track Interface false Final
TIP 721 TRC-721 Non-Fungible Token Standard [email protected] Standards Track TRC true Final
TIP 1102 TIP-1102: Opt-in account exposure [email protected] Standards Track Interface false Final
TIP 1155 Multi Token Standard [email protected] Standards Track TRC false Final
TIP 1193 TIP-1193: TRON Provider JavaScript API [email protected] Standards Track Interface false Final
TIP 3326 TIP-3326: Wallet Switch TRON Chain Method [email protected] Standards Track Interface false Final
TIP 4906 TRC-4906: Fork from ERC-4907 Rental NFT <lopeed_prcy> Standards Track TRC false Final

To Submit a TIP

Before you submit a TIP, you need to create an issue for comment and add the issue URL to your TIP header.

1. Fork the repository by clicking "Fork" in the top right.

2. Add your TIP to your fork of the repository. There is a TIP template here.

3. Submit a Pull Request to TRON's TIPs repository.

Your first PR should be a first draft of the final TIP. It must meet the formatting criteria enforced by the build (largely, correct metadata in the header). An editor will manually review the first PR for a new TIP and assign it a number before merging it.

Make sure you include a discussions-to header with the URL to a discussion forum or open GitHub issue where people can discuss the TIP as a whole. If a TIP is about the feature development of java-tron, and a PR of the development exists, in your TIP and your java-tron's PR you need to refer each other's github link.

When you believe your TIP is mature and ready to progress past the draft phase, you should do one of two things:

  • For a Standards Track TIP of type Core, ask to have your issue added to the agenda of an upcoming All Core Devs meeting, where it can be discussed for inclusion in a future hard fork. If implementers agree to include it, the TIP editors will update the state of your TIP to 'Accepted'.

  • For all other TIPs, open a PR changing the state of your TIP to 'Final'. An editor will review your draft and ask if anyone objects to its being finalized. If the editor decides there is no rough consensus, they may close the PR and request you fix the issues in the draft before trying again.


TIP Status

TIPs are separated into several statuses.

  • Draft: A TIP that is undergoing rapid iteration and changes.

  • Last Call: A TIP that is done with its initial iteration and ready for review by a wide audience.

  • Accepted: A core TIP that has been in the Last Call for at least 2 weeks and any technical changes that were requested have been addressed by the author. The process for Core Devs to decide whether to encode a TIP into their clients as part of a hard fork is not part of the TIP process. If such a decision is made, the TIP will move to the final.

  • Final (non-Core): A TIP that has been in the Last Call for at least 2 weeks and any technical changes that were requested have been addressed by the author.

  • Final (Core): A TIP that the Core Devs have decided to implement and release in a future version or has already been released.

  • Active: If the TIPs are never meant to be completed, the TIPs may have a status of “Active”.

  • Abandoned: If a TIP is no longer pursued by the original authors or it may not be a (technically) preferred option anymore.

  • Rejected: A TIP that is fundamentally broken or a Core TIP that was rejected by the Core Devs and will not be implemented.

  • Superseded: A TIP which was previously Final but is no longer considered state-of-the-art. Another TIP will be in the Final status and cite the Superseded TIP.

  • Deferred: A TIP which isn't accepted now, it may be accepted in the future.


TIP Types

TIPs are separated into several types, and each has its list of TIPs.

  • Standard Track: Describes any change that affects most or all TRON implementations, such as a change in block or transaction validity rules, proposed application standards/conventions, or any change or addition that affects the interoperability of applications using TRON. Furthermore, Standard TIPs can be broken down into the following categories.

    1.Core: Improvements requiring a consensus fork, as well as changes that are not necessarily consensus critical but may be relevant to "core dev" discussions.

    2.Networking: Includes improvements around network protocol.

    3.Interface: Includes improvements around client API/RPC specifications and standards.

    4.TRC: Application-level standards and conventions, including contract standards such as token standards (TRC-20).

    5.TVM: Includes improvements around TRON Virtual Machine.

  • Informational: Describes a TRON design issue, or provides general guidelines or information to the TRON community, but does not propose a new feature.

For further discussion, please enter Telegram