背景
TON (The Open Network) 是一个由 Telegram 团队设计和开发的去中心化区块链平台。它的目标是提供一个高性能和可扩展的区块链平台,以支持大规模的去中心化应用 (DApps) 和智能合约。
账号生成
TON 账号地址的生成方式与大多数区块链不同,它是一个智能合约地址。TON 主要使用 Ed25519 算法生成公钥,并以此生成公钥地址。
- 公钥生成:通过私钥计算出的原始公钥,形如
E39ECDA0A7B0C60A7107EC43967829DBE8BC356A49B9DFC6186B3EAC74B5477D
。 - 美化后的公钥:携带了公钥的一些信息和校验位,形如
Pubjns2gp7DGCnEH7EOWeCnb6Lw1akm538YYaz6sdLVHfRB2
。
账号地址的计算过程涉及智能合约地址,需要先计算地址,接收初始代币,然后才能部署合约。
钱包合约
用户钱包合约在接收到用户的消息时读取了几个参数,如 stored_seqno
、stored_subwallet
、public_key
和 plugins
。用户的公钥确保了钱包合约的所有权,用户发起的交易都需要对 in_msg
签名,然后通过自己的钱包合约验证签名后,由合约去调用链上的一切操作。
Jetton Token
Token 是资产在链上的表现形式,Jetton 是 TON token 的标准形式,由 Jetton-minter 和 Jetton-wallet 两部分合约组成。
- Jetton-minter 合约:记录代币的总量、管理员、钱包代码等信息。
- Jetton-wallet 合约:为用户部署,记录用户的余额、所有权、代币 Minter 合约地址、用户钱包代码等信息。
交易
当 TON 中的某个帐户发生某些事件时,它会引发一笔交易,常见事件是“接收某个消息”。交易包括以下内容:
- 最初触发合约的传入消息
- 由传入消息引起的合约行动
- 发送给其他参与者的传出消息
交易特性:
- 异步:交易可能需要通过消息传递到多个不同的智能合约去执行一系列调用。
- 手续费:异步特性可能导致手续费难以预估。
- 反弹:当调用的合约不存在或抛出错误时,交易会反弹回一个 bounced 消息。
资产安全
TON 有很多特性可能带来安全问题,用户需要了解以下常见陷阱:
- 手续费截留攻击:攻击者利用精心构造的代币合约,让钱包的预估转账手续费超高,而实际执行时却只是截留手续费。
用户在交易时,应注意手续费的变化,避免成为手续费诈骗的受害者。
Views: 0