深入学习区块链的隐私保护(一)概述

区块链作为公开账本解决了各方信任问题,但却带来了一个新的问题:用户的隐私如何得到保证?这在传统的集中式系统中,不存在此问题,或者说只有“可信”第三方拥有上帝视角。如果在区块链上用户的交易信息被恶意敌手进行分析和利用,将给用户带来严重的威胁。隐私保护问题不仅在公链中需要考虑,在部署商业应用的联盟链中显得更为迫切。如何解决公开、透明与隐私保护之间的矛盾,一直是区块链技术发展的重要方向,至今仍未完全解决。并且在一些特定的应用场景,需要根据实际需求结合各种密码组件设计相应的隐私保护算法。

比特币没有提供真正的匿名性,可以称为伪匿名性,是因为比特币的账户地址从其对应的公钥中直接得到,不与用户在真实世界中的身份绑定,而现实中则使用CA(Certificate Authority)进行身份认证。比特币在区块链上的所有交易都是公开的,因此任何人都可以追踪到某个地址的交易。虽然创建新地址进行交易看来起增加了匿名性,但仍然不能解决所有交易都被公开的事实。论文【1】对用户地址间的关系进行了分析,结果如图1。而在联盟链应用场景中,例如银行间的转账,如果采用区块链系统进行记录交易,虽然严格一致的账本省去了繁琐的对账工作,但没有任何一家银行希望自己的资金往来完全暴露。并且欧盟于2018年5月实施了GDPR【2】(General Data Protection Regulation),这意味着在欧盟的企业如果想将用户的个人数据进行上链,那么必须保证用户数据的链上隐私性。

深入学习区块链的隐私保护(一)概述_第1张图片

                                                                                     图1. 比特币地址关系图

针对链上的一笔交易而言,接收者地址、发送者地址以及交易金额都是需要考虑的问题,以及除此之外的附加数据。对接收者和发送者地址的隐私保护我们称为匿名性;对交易金额的隐私保护我们称为机密性。在保证匿名性和机密性的同时,要达成多方校验和共识,我们称之为公开可验证性。常用在区块链隐私保护中的高级密码组件/方法如下:

  1.  签名类:签名类的隐私保护手段有盲签名、群签名以及环签名等。盲签名就是接收者在不让签名者获取所签署消息具体内容的情况下所采取的一种特殊的数字签名技术,消息者先将消息盲化,而后让签名者对盲化的消息进行签名,最后消息拥有者对签字除去盲因子,得到签名者关于原消息的签名,例如基于椭圆曲线的盲签名ECBDS【3】。群签名是群参与者利用群公钥和自己的私钥对消息进行签名,验证者对消息进行验证时,无法确定该消息是群中的哪一个成员进行了签名,但群签名中存在管理员,群的管理员可以揭示签名者。而环签名则在群签名的基础上,去掉了群管理员的角色。群签名/环签名的方案例如可链接的群签名【4】和可追踪的环签名【5】等。
  2. 非交互式零知识证明:非交互式零知识证明是指证明者无需交互,就能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。常见的NIZK有zk-SNARKs【6】、zk-STARKs【7】、Bulletproofs【8】等。
  3. 同态加密技术:同态加密是一种特殊的加密方法,对密文直接进行处理,与对明文进行处理后再加密得到的结果相同。同态加密分为全同态和部分同态。全同态为可以对密文进行加减乘除四则运算,例如BGV方案【9】;部分同态分为加法同态、乘法同态、减法同态和除法同态。常用的有加法同态paillier【10】、Pederson承诺【11】和椭圆曲线点乘【12】等。
  4. 可信执行环境:可信执行环境在系统中是一个独立的环境,受硬件机制保护,与现有系统隔离,提供从文件到内存的全方位安全。它作为一个安全、可靠、中立的环境,可以用来执行区块链系统中隐私性要求比较高的业务逻辑,例如将密文解密成明文再进行运算,不用担心明文数据被窃取,在离开可信环境前,再将结果转化成密文在区块链中传输。可信执行环境有SGX【13】等。

目前有不少区块链上的隐私保护项目,将其分为两类,一种基于UTXO,另一种基于账户性。基于UTXO的项目有Mixcoin【14】、Zcash【15】、Monero【16】和Hawk【17】等。基于账户性的项目有Zether【18】和AZTEC【19】等。本文给出了区块链隐私保护的学习知识图谱,有兴趣的小伙伴可以一起多交流。

深入学习区块链的隐私保护(一)概述_第2张图片

                                                                                     图2. 隐私保护知识图谱

参考文献:

【1】Meiklejohn S, Pomarole M, Jordan G, et al. A fistful of bitcoins: characterizing payments among men with no names[C]//Proceedings of the 2013 conference on Internet measurement conference. 2013: 127-140.

【2】Voigt P, Von dem Bussche A. The eu general data protection regulation (gdpr)[J]. A Practical Guide, 1st Ed., Cham: Springer International Publishing, 2017.

【3】Abe M, Okamoto T. Provably secure partially blind signatures[C]//Annual International Cryptology Conference. Springer, Berlin, Heidelberg, 2000: 271-286.

【4】Liu J K, Wei V K, Wong D S. Linkable spontaneous anonymous group signature for ad hoc groups[C]//Australasian Conference on Information Security and Privacy. Springer, Berlin, Heidelberg, 2004: 325-335.

【5】Fujisaki E, Suzuki K. Traceable ring signature[C]//International Workshop on Public Key Cryptography. Springer, Berlin, Heidelberg, 2007: 181-200.

【6】Parno B, Howell J, Gentry C, et al. Pinocchio: Nearly practical verifiable computation[C]//2013 IEEE Symposium on Security and Privacy. IEEE, 2013: 238-252.

【7】Ben-Sasson E, Bentov I, Horesh Y, et al. Scalable, transparent, and post-quantum secure computational integrity[J]. IACR Cryptology ePrint Archive, 2018, 2018: 46.

【8】Bünz B, Bootle J, Boneh D, et al. Bulletproofs: Short proofs for confidential transactions and more[C]//2018 IEEE Symposium on Security and Privacy (SP). IEEE, 2018: 315-334.

【9】Brakerski Z, Gentry C, Vaikuntanathan V. (Leveled) fully homomorphic encryption without bootstrapping[J]. ACM Transactions on Computation Theory (TOCT), 2014, 6(3): 1-36.

【10】https://en.wikipedia.org/wiki/Paillier_cryptosystem

【11】Pedersen T P. Non-interactive and information-theoretic secure verifiable secret sharing[C]//Annual international cryptology conference. Springer, Berlin, Heidelberg, 1991: 129-140.

【12】https://en.wikipedia.org/wiki/Elliptic-curve_cryptography

【13】McKeen F, Alexandrovich I, Berenzon A, et al. Innovative instructions and software model for isolated execution[J]. Hasp@ isca, 2013, 10(1).

【14】Bonneau J, Narayanan A, Miller A, et al. Mixcoin: Anonymity for bitcoin with accountable mixes[C]//International Conference on Financial Cryptography and Data Security. Springer, Berlin, Heidelberg, 2014: 486-504.

【15】Sasson E B, Chiesa A, Garman C, et al. Zerocash: Decentralized anonymous payments from bitcoin[C]//2014 IEEE Symposium on Security and Privacy. IEEE, 2014: 459-474.

【16】Noether S, Mackenzie A. Ring confidential transactions[J]. Ledger, 2016, 1: 1-18.

【17】Kosba A, Miller A, Shi E, et al. Hawk: The blockchain model of cryptography and privacy-preserving smart contracts[C]//2016 IEEE symposium on security and privacy (SP). IEEE, 2016: 839-858.

【18】Bünz B, Agrawal S, Zamani M, et al. Zether: Towards Privacy in a Smart Contract World[J]. IACR Cryptology ePrint Archive, 2019, 2019: 191.

【19】Williamson Z J. The aztec protocol[J]. https://github.com/AztecProtocol/AZTEC, 2018.

你可能感兴趣的:(区块链的隐私保护)