隐私保护概述
区块链技术是一种分布式的互联网数据库技术,基于其去中心化、去信任化、公开透明等技术特点,可以在不依赖于第三方可信机构的情况下,为陌生节点之间建立点对点的可信价值传递。
相对于传统的中心化架构,区块链机制不依赖特定中央服务器处理和存储数据,因此能够避免集中式服务器单点崩溃和数据篡改的风险。除此之外,区块链技术天然具有部分安全和隐私属性:P2P 网络难实现网络监听(邻居节点的发送方式);区块链地址由用户自行创建,和用户身份无关;去中心化架构能有效应对网络攻击(不需要在中心服务器存储账户、口令,避免数据泄露)。
但是,区块链隐私保护并不是 100% 完美。 为了使各节点快速达成共识,系统中所有交易均是公开透明的,从而带来了数据隐私泄露问题。 尽管区块链中用户的地址是匿名的,但一些组织或个人可以通过地址跟踪用户的交易数据,分析交易规律,从而取得用户交易地址间的关联性,并结合网络外部信息进一步推测用户真实身份信息。
在 CITA 的架构中,为保护“账本”的相关隐私,采用了多元的技术方案来对用户身份与上链数据进行隐私保护。
密码学方案
特点:系统安全性好(所有的参与方都参与了对数据有效性、合法性的校验),但是只能提供转账隐私,有前向安全风险。
隐私保护范围:可以对用户身份和交易数据进行隐私保护。
CITA 采用了零知识证明技术。用此技术实现隐私交易的操作示例可以参考 零知识证明。
- 零知识证明技术:证明者向验证者提供关于交易发送者、接受者身份和交易细节的证明,证明内容不透露交易双方身份和交易细节等相关信息。
数据隔离
特点:数据有效隔离;无前向安全风险。
隐私保护范围:可以对交易数据进行隐私保护。
- 侧链:综合了几种多链与跨链方案后,CITA 在底层实现了 侧链方案 来实现隐私交易。几个相关合作方共同起一条主链,其中的某几个参与方可以向主链注册一条侧链,在侧链上进行交易、验证,从而使侧链数据与主链数据隔离开,从而实现侧链交易数据的隐私保护。此方案无中心化风险,灵活性更高。
- 链外存储:将需要参与共识和需要共享的核心数据,和其他的数据如合同明文、批量大数据、隐私、个人信息分离,数据脱敏后再上链,或者将数据摘要上链,必要时再授权访问明文等其他数据。链外存储是将要保护的隐私数据,链上是可以公开的数据。这种方法是当前可行性较好的方案,可以基于 CITA 进行设计实现。
可信硬件
特点:架构简洁,对存储空间要求低,具有很高的灵活性;但是受制于厂商(需要依靠厂家提供的序列号验证硬件真伪)。
隐私保护范围:对用户身份、上链数据(交易数据、存证数据)和智能合约的隐私保护。
- SGX:SGX 是一项新的隐私保护技术,通过计算机的核心处理器 CPU 来构建可信执行环境 TEE,SGX 可以将智能合约中的关键操作封装到 Enclave 中,即便操作系统或者 VMM(Hypervisor)也无法影响 Enclave 里面的代码和数据。Enclave 的安全边界只包含 CPU 和它自身,极大的保证了数据的安全性。已有项目搭建了 CITA 联盟链平台,并使用 SGX 可信执行环境技术,实现了交易数据的隐私性和监管的穿透性。
几种方案对比
解决方案 | 发送者 | 接受者 | 数据信息 | 性能 |
---|---|---|---|---|
零知识证明 | ✔️ | ✔️ | ✔️ | 中 |
侧链 | ❌ | ❌ | ✔️ | 较好 |
链外存储 | ❌ | ❌ | ✔️ | 好 |
SGX | ❌ | ❌ | ✔️ | 较好 |
✔️:能够提供隐私保护
❌:不能提供隐私保护