Central Layer(L1)
Last updated
Last updated
The Central-Layer serves as the foundational Layer 1 public blockchain within TPA, boasting EVM compatibility. It operates on a node implementation based on a forked iteration of geth (Go Ethereum) with minimal modifications and adopts the PoS (Proof of Stake) consensus algorithm. To ensure the transparent and public nature of blockchain operations, users are granted the opportunity to take on the role of node operators (validators). In line with the objective of delivering a resilient blockchain network, the Central-Layer primarily delegates application execution to the Unity-Layer. Its designated functions encompass the consolidation of transaction batches, management of Tokens/NFTs, administration of bridge information, and similar roles. There may be exceptional instances where specific contracts gain deployment on the Central-Layer through governance approval; however, these deployments are subject to governance control, safeguarding the blockchain's overall stability.
The Central-Layer serves as a secure and stable repository for the data collected within TPA, although it refrains from direct application execution. To ensure the reliable dissemination of information to globally dispersed nodes, block generation occurs at intervals of 15 seconds, preventing excessively short block times. Additionally, to deter meaningless transaction execution, we maintain a vigilant stance on avoiding overly low gas costs, striving to establish an appropriate minimum gas cost. Our objective is to attain a minimum gas cost of approximately 1 cent per transfer, contingent on the prevailing market price.
Block generation operations are orchestrated by a designated node known as the validator, selected through a PoS mechanism employing weighted random shuffling, based on the quantity of TPA tokens staked. Periods known as epochs are scheduled every 5760 blocks, equivalent to approximately one day. As the final block of each epoch concludes, the staking rewards for that epoch are determined, and the subsequent validator is selected. This selection process encompasses the inclusion of new validators or the withdrawal of existing validators and is managed via a dedicated validator contract.
Any individual can assume the role of a validator by staking a minimum of 1000 TPA tokens through the validator contract. The process begins with the validator candidate registering their address within the validator contract. Subsequently, TPA token holders have the freedom to stake their tokens towards any validator or validator candidate's address, with the flexibility to unstake at their discretion. Staking and unstaking actions are accounted for in the concluding block of the current epoch. A validator candidate can ascend to the status of a validator starting from the subsequent epoch by formally declaring their validator role and amassing a stake of 1000 TPA tokens or more at their address. Conversely, if the total staked amount drops below 1000 TPA, the validator will be automatically excluded from the forthcoming epoch.
Validators utilize their registered addresses for block signing purposes. In instances where a validator experiences downtime or is unable to perform their block generation duties, the next validator in line takes on the responsibility of generating the blocks that the inactive validator missed. Staking rewards are calculated for each epoch, contingent on the validator's operational activity. For instance, validators with extended periods of inactivity will not qualify for staking rewards. Nonetheless, the staked TPA tokens remain unaffected. If a validator fails to generate blocks on more than a predetermined number of occasions, it will be deemed inactive and excluded from block generation.
The Central-Layer maintains a design that prohibits the deployment of new smart contracts, allowing exclusively those sanctioned by TPA to be deployed. Transaction execution within this context is facilitated through the payment of gas fees in TPA. Smart contracts eligible for deployment pertain to Tokens/NFTs, Rollups, and Bridge functionalities.