目录
article
账户/合同的概念 (Concept of account/contract)
账户与合约 - TON 区块链
1. 合约基础
- 合约地址:合约初始数据和代码的加密哈希值
- 地址唯一识别合约创建时的状态
- 合约状态变化时地址不变
- 局域性:合约只能访问自身数据和余额,无法查看其他合约状态
- 保证合约独立性,支持区块链无限扩展性
2. 合约的功能
- 用户账户:每个用户账户是一个自定义钱包合约
- 多签名合约:由多个用户钱包操作
- 通证合约:代币作为独立合约,指定属性和所有者
- 变更所有权时通过发送信息更新
3. Ton 上的通证
- 每个通证是一个独立的合约
- 属性:所有者等
- 通过信息发送改变所有权
- 检查信息有效性后完成所有权变更
4. 保护网络 - 执行成本与租金
GAS成本:
- 每次执行合约代码时产生,TVM 中每条指令都有成本
- GAS费用:网络中 GAS 价格决定支付的 TON 数量
- 执行时间越长,费用越多,费用从合约余额中扣除
- 余额为零时,执行中止,交易失败
租金:
- 合约生命周期内每秒从余额中扣除的费用
- 防止网络滥用,保护免受拒绝服务攻击
5. 合约冻结
- 冻结原因:余额耗尽,无法支付租金时合约冻结
- 冻结后:
- 合约数据被卸载,存储成哈希值
- 用户可通过匹配哈希值的快照来恢复合约并解冻
6. 设计智能合约时的注意事项
- GAS费用:执行过程中产生的成本
- 租金费用:合约有效期内支付的租金
- 合约必须维持足够的余额来避免冻结