原创 PlatON
由于区块链技术本身的特点及发展方向,隐私交易愈加成为人们关注的热点,在保证去中心化的同时保护用户交易的数据隐私是资产价值自由流动之本,本文将分为三部分详细解析PlatON上的隐私交易,为分布式金融的持续蓬勃发展提供至关重要的底层支撑。
| 隐私交易简介
隐私交易是区块链关注的热点,如采用环签名技术的门罗Monero,zk-SNARK技术的Zcash。在底层计算网络实现交易的隐匿性也会带来以下问题:
- 算法升级:密码学算法发展较为迅速,新的算法应用到主链并且与现有系统适配需要很漫长的过程。
- 漏洞修复:主链的漏洞升级需要协调矿工或验证人来配合升级,影响范围较广,周期较长。
基于智能合约的隐私Token则能做到灵活的算法方案,快速地漏洞修复,影响面较小,只影响到该隐私Token的用户,是实现隐私Token的良好的平台。
PlatON在Alaya网络上基于WASM智能合约平台实现了隐私交易模块confidential-transaction。该模块意在解决日益剧增的交易匿名化需求。通过零知识证明算法达到隐匿身份,算法插件化来满足多种隐私的需求。
|合约架构
合约架构的主要满足以下几个目标:
- 可扩展,整个框架能够适配更多的算法,扩展隐私交易的生态。
- 可升级,对于合约漏洞,如算法漏洞等,能够进行快速升级,及时避免漏洞导致经济损失。
- 易于发行,Token的发行方不需要具备对算法原理的了解,仅需要判断算法是否满足需求,就能发行隐私Token。
上述架构图中由如下模块组成
- ConfidentialToken-隐私Token合约,由Token发行方进行部署。
- Registry-注册表合约,ACL合约地址会注册在Registry,ConfidentialToken每次交易都是通过Registry获取ACL最新地址,这样ACL可以进行动态升级。
- ACL-访问控制合约,负责管理隐私Token的注册信息,验证算法合约与存储合约版本。
- TokenManager-Token管理合约,ACL关于ARC20合约存取操作都是通过TokenManager与ARC20合约进行交互。
- Validator-验证合约,实现对各种算法的验证功能,每种验证合约可以根据算法自定义账户地址。
- Storage-存储合约负责存储每笔转账的必要信息,用于验证是否存在双花操作。
- ARC20-标准Token合约
从可扩展角度,开发者可以实现多种验证算法,注册到ACL合约中,就能供隐私Token发行方使用。
从可升级的角度,ACL、Validator、Storage都可以进行动态升级。满足了功能扩展,漏洞修复等不同升级的需求。
从易于发行角度,项目方仅需要部署ConfidentialToken,即可实现隐私Token。
(未完待续)
本文转载自https://mp.weixin.qq.com/s/8rvkgLriTKinltdUj_AJwg