区块链在企业经营管理中的创新应用(4)
实践中,我们对区块链底层设置了三重防护,包括P2P通讯加密、落盘加密和硬件密钥管理。为了防止数据通讯过程中被第三方嗅探,在P2P网络的数据握手与通讯上采取了加密机制,非交易参与方无法获得区块链上的数据。对区块链节点在本地保存的数据采用高强度的密码算法加密保护,可防止数据泄漏。对于身份认证和交易签名等核心信息,对参与方密钥的管理和保护采取了高等级的硬件保护机制。金融机构与监管机构使用硬件密码机生成并保存私钥,企业用户使用安全芯片IC卡生成并保存私钥,采用智能合约管理用户权限,支持监管方根据用户请求重置业务操作密钥,以应对私钥丢失的情况。
3.并发机制实现多业务并行
公有链上采用串行流水号的形式记录账号的每一笔交易,致使业务无法并行处理。同时公有链上的交易不存在超时的限制,如果一笔合法交易迟迟没有得到区块链确认,业务方无法将其撤回也无法判断何时可以被区块链确认。为解决上述问题,我们采用非串行流水号作为业务标识,并在交易中加入超时时间设置,实现了业务的并发与超时确认功能。
4.隐私保护机制解决两难问题
区块链上的隐私保护一直是技术难题,为兼顾参与方对隐私数据访问控制的要求,以及全网达成共识这两种看似矛盾的需求,我们提出了一套综合隐私保护方案,基于同态加密和零知识证明技术,在满足转贴现交易金额隐私保护的前提下支持票据的DVP交易。
5.看穿机制满足监管要求
隐私保护机制采用零知识证明技术同时实现了全网共识与交易金额私密,但监管方需要借助对隐私数据的看穿机制来实现监管。首先,我们将用户的身份密钥与隐私保护密钥分开,前者用来做交易签名和身份证明,后者则用来对交易金额进行加密保护。其次,用户将隐私保护公钥公开,并与监管方的隐私保护公钥进行非交互式密钥共享算法计算,得到新的隐私保护密钥并公开其公钥。当两个参与方之间进行隐私保护交易时,双方利用对方的新隐私保护公钥再做一次非交互式密钥共享算法计算,得到本次交易的临时隐私保护密钥,并用其作为金额保护密钥。
同样,监管方也可以通过两次非交互式密钥共享算法计算所有的隐私保护交易所使用的临时密钥,因此可以对区块链上的所有交易进行穿透式监管。第三方无法获得非交互式密钥共享算法计算的密钥,因此无法获得隐私保护的交易信息。
6.可控智能合约实现风险可控
由代码控制的业务模型,尤其是涉及数字法币可能会发生因程序漏洞造成的系统性损失。例如TheDAO事件中的智能合约设计漏洞造成数千万美元的潜在损失,并最终导致了项目终止。
为规避分布式业务系统引入的种种不可控风险,我们进行了多种形式的技术创新。如针对智能合约的不可升级问题,设计实现了一种全新的智能合约动态挂载方案,确保在不影响既有数据的情况下对智能合约业务规则进行修改。新设的紧急干预机制支持管理委员会在紧急情况下干预接口暂停业务,待问题修复后再继续运行。
7.区块链中间件降低技术门槛
为便于快速集成,我们封装了区块链中间件,将复杂的区块链分布式业务逻辑封装成了便于通过MQ队列调用的报文接口,同时将区块链上的非结构化数据根据业务规则同步到本地生成结构化关联数据。应用开发人员无需深入了解技术细节,按照传统的报文接口和关系数据库接口即可访问和调用区块链数据,大大简化了与传统系统的整合难度。
思考与展望
经上述技术创新,数字票据区块链平台在实验性生产环境中取得了初步成效,为票据业务创新发展提供了有力的技术支持。但区块链技术仍存在一些影响其应用深化的问题,比如效率和容量问题一直制约着区块链技术在金融领域的正式商用。要解决这个难题,除了工程优化、算法创新等手段持续提升单链性能,还需要系统整体架构上的创新。业界目前正在积极探索的新架构可以归纳为两类:分层及分片。分层思路的代表性方案有状态通道、Plasma、Truebit等,主要特征是“链外持续更新,链上最终确认”;分片是将各业务子项分散在多个子链上完成,并通过主链为子链进行数据转接和最终确认。