区块链可以确保哪些数据安全
扫描二维码
随时随地手机看文章
11月13号20:00,Trias创始人阮安邦博士以及Trias CTO魏明博士受邀参加BlockMania 主办的「博士大爆炸」第五期AMA直播,分享主题为「数据安全与数据确权」,他们为大家剖析了当前互联网行业痛点—数据安全问题背后深层次的原因,并分享了Trias运用区块链技术保障数据安全和承载数据确权的解决方案。
以下为AMA全程回顾
我们都知道区块链有防篡改的特性,那么为何中心化的解决方案无法解决「防篡改」的问题呢?为何非得用区块链的分布式方案?
Trias CTO魏明博士:
互联网公司常用的关系型数据库,例如mySQL,建一条数据记录,将用户的各种属性值存在里面。
然而这样的中心化数据库是很难从技术角度来保证数据不可被篡改的。如果有外部攻击者在后台程序里留后门,注入一段代码,修改了数据库中的账户余额,或者公司内部成员有数据库权限,直接登进数据库修改账户余额。
在这两种情况下,数据库都被篡改了。我们在进行与客户的技术交流时,客户提出,遭遇到这样的情况,他们可以通过备份还原器进行还原。但是如果黑客攻破了备份还原器呢?
如果使用区块链来存储数据资源,就不会发生这样的情况,原因是所有区块链上的节点都完整地保留一份交易的历史记录,任何单个节点想修改这些历史记录,其他节点都可以用自己保存的备份来证伪,并将作弊者踢出网络,从而保证你的数据不被随便地篡改或者是被删除。
从更宏观的角度来看,中心化的问题是显而易见的。不但成本与网络参与者的关系从正和变为零和。继续增长的最简单的方法是从用户中提取数据,并在受众和利润方面与补充竞争。
此外,用户放弃隐私以及对自己数据的控制权,并且容易遭受安全漏洞。中心化平台存在的这些问题在未来可能会变得更加突出。在这种背景下,区块链的解决方案会实现将数据权益真正还给产生数据的用户。
但区块链的特性中好像并没有直接关于「确保数据防泄漏」的属性,那么大家常说的区块链可以确保数据安全,到底指的是什么呢?
Trias CTO 魏明博士:
数据安全其实主要是两个维度,一是数据的不可篡改性;另外一个就是数据的隐私安全性。
其实许多人会混淆「可信」与「安全」,能不能严格按照给出的命令执行,这就是可信问题;至于这个命令对不对,数据隐私不隐私,这就是一个安全问题了。
而区块链技术本身并不解决任何的安全问题,因此他还是需要搭配安全技术一起使用的,比如非对称加密、安全随机数等。
刚才我们聊了区块链解决数据防篡改方案,但是又会遇到新的问题,隐私性怎么办呢?
其实很多人在区块链上进行交易时,都会发现一个问题。我可以通过查看你的地址,就能大概知道你有多少币,其实这些信息用户还是不希望被别人知道的。
从这个角度来说,区块链上的数据在隐私安全方面还有很多事情要做。最近很多的项目,包括我们Trias,一直在解决一个问题,既要保证数据的不可篡改性,又要做到数据的隐私安全性。
我们的解决方案是,是基于可信硬件、可信程序的数据防泄露。在可信程序中保证数据或信息在网上与文件中不会被泄露。在隐私保护技术上,Trias主要使用了隐藏地址(Stealth Addresses)和zk-SNARKs(简洁的,非交互的零知识证明)。
之所以选择这样的技术路径,是因为:
(1)以我们现在落地的经验来看,基于现在已有的传统的安全技术比如DLP、AES加密、HTTPS加密、UEBA用户行为画像等等。其实对于数据泄露和非法篡改效果一直都不够理想;而不论使用任何单一安全技术,比如XX加密,XX墙,XX人工智能分析,我们认为都不能很好的解决问题,得根据不同的安全技术特性和特点来选择对应的组合来进行解决;
(2)在(1)的基础上我们选择了TEE+区块链的方式。因为TEE可以解决可信运行环境,区块链可以解决数据真实性不会被非法篡改,正好是非常好的互补组合。
首先,TEE的一个独特之处是可以将任务与所有不可信的软件隔离开来,甚至包括操作系统内核。因此,就连云服务提供商这样的平台所有者也无法访问TEE中的数据。
其次,隐藏地址来源于BIP63,我们在工程上做了实现,隐藏地址的实现基于目前最为成熟和先进的椭圆加密ECC体系,具有很高的效率的同时又具有优良的性能。
最后,目前较为可行的数据隐私保护形式是零知识证明。零知识证明理论是一个非常重要的理论和思维方式,给我们提供了一种能向别人证明拥有某知识但不透漏该知识的一种思维和方法。由S.Goldwasser、S.Micali及C.Rackoff在20世纪80年代初提出的。
它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。大量事实证明,零知识证明在密码学中非常有用。如果能够将零知识证明用于验证,将可以有效解决许多问题。
Trias充分运用了「零知识证明」这一密码学原理,在区块链记录中隐藏了交易者的信息,包括交易的金额等,因此除了密钥所有者,即使别人获取到了某钱包地址所对应的IP,也无法追溯整个交易链,以此确保隐私的安全,即匿名。
Facebook被曝出近7000页内部机密文件被泄露,一方面展现了硬核高科技公司也会遭遇数据泄露问题,一方面从这些被泄露的文件中也能看出Facebook是如何将用户数据作为谈判筹码来巩固自己在互联网世界的霸主地位的。然而普通用户既没有得到应有的保护,也没有收到数据价值的收益,您怎么看待这个问题?
Trias CTO 魏明博士:
许多在欧洲有业务的国内公司都在询问我们GDPR,因为国外客户首先担心的是数据如何获取,盈利后是否把利益合理分配给数据贡献者,如果没有的话那就是在窃取。
而在充满中小企业的国内市场,我们可以看到国内公司都宣传拥有先进的AI技术可以分析数据得到模型。
如果按照GDPR的严格标准,可能国内大部分移动互联网公司以及流量生意公司都会被罚。
好在随着我国《网络安全法》的实施,数据保护的现状已经有所改善。从最近的几次专项整治中可以看出,中国接下来对数据安全和隐私的要求一定会越来越高,包括获取用户数据的途径和使用方式,未来中国数据隐私相关的市场会很大。
大家越来越认同数据是生产资料,与劳动力、土地、资金相提并论。因此趋势一定是保护数据的所有权和使用权,让数据产生的价值能够被确权、被分享。
但现实也是很骨感,不光技术上还有待突破,其实更多问题是非技术问题。
比如从我们的技术应用落地实践中看出,许多机构对于数据共享的意识仍然非常薄弱,对于如何实现数据共享的认知更少。
比如在医院这个场景下,对于大医院来说,即便信息化程度很低,每天仍有源源不断的病人和收益。而小医院则认为,即便提高了信息化程度,也并不会带来病人和收益,相比之下多一些好的设备和药物,多几个主治医生可能意义更大。
其中的核心问题就是:数据分享的重要性到底有多大?直接的经济效益有多大?
刚刚咱们提到了「把数据价值分享给产生数据的人」,这件事情的前提是数据得到确权,您觉得数据确权对我们当前的互联网生活会造成什么样的影响?
Trias CEO 阮安邦博士:
目前,我们很多核心的机密数据都没法放到云上去。就是因为数据确权问题没有解决。我把数据丢给了云,怎么知道云上的某些有管理员权限的人或者程序,会不会偷偷的把我的数据拷走。
就是因为数据无法确权,导致了现在的云平台还是无法覆盖更大的应用场景,这当然是从这个云计算本身的这个角度出发的。
云计算其实是一个稍微久一点技术,因为现在的热潮已经不是云计算。但是随着人工智能、物联网以及新的技术进入我们的生活,数据确权的重要性也越来越紧迫。
所以,如果数据确权的问题没有被解决,我们其实是很难更深度的与机器进行交互,我们也很难去发挥我们的想象力去创造出方便于我们日常生活的更多的应用模式。
如何用区块链做到「数据确权」呢?
Trias CEO 阮安邦博士:
我认为把原始数据上链来做确权,这并不是区块链可以真正使用的地方。但我们可以用区块链来记录一个数据所有使用过程的日志,也就是说对数据访问行为等这些所有的信息,我们可以把它保存下来。
换句话说,我们或许能用区块链来对数据的使用情况做一个记账,哪个程序在什么时候使用了哪些数据。如果把所有的行为都如实的记录到区块链上,一方面既可以保证这个行为本身的完整性,同时我们并不用太在乎它的私密性,也就是说谁访问了什么数据,我们并不需要去保密。如果这种前提存在,那么我们就可以准确的知道任何一个数据到底被哪些程序使用了。
如果我们能获得这样一个很有意思的属性,就可以用区块链来为任何一段数据的使用记账。现在的区块链,大家都用它来做账户之间的数据转移。如果把区块链用来做数据之间使用权转移的记账,或许它可以帮助我们做数据确权。
数据在被传输的过程中可能会被转移「所有权」,也就是当属于A的数据被传输给B以后,A就无法再保证数据只属于自己,不被第三方滥用。针对这个痛点,是否有解决方案?
Trias CEO 阮安邦博士:
数据确权、数据隐私保护、数据流转在技术上还是难点,线下点对点传输等强中心化的解决方案不能满足应用的需要,而零知识证明、同态加密在理论上可行但在公链上进行实操还有各种各样的技术难点需要攻克。
在我看来所有基于密码学的方案,是比我们日常基于工程或者从硬件角度做优化的方案更安全。因为密码学,有严格的数学论证。比方说,零知识证明解决的问题就是:我如何在你不知道我是否知道这个事情的情况下,知道我确实知道这样的事情。
同态加密也是类似的这个这样的一个情况。它想要解决的问题就是如何在不知道被处理的数据是什么的情况下,用数学的办法,正确的处理这些数据并且返回它应该有的结果。
我认为所有的基于密码学的方案,它都会在一定程度上引入非常大的计算复杂度。一方面,这样的计算复杂度是很难随着这个硬件的提高而被消除的。因为,只要硬件的效率提高了,那些不用密码学的方式来进行数据加密和数据处理的技术也在同样的提高。从长远来说,它们的效率永远都会比另外一种不基于密码学的方案要慢。
从另外的角度来说,现在有很多技术是在强调数据的传输、数据的存储、数据在加密的过程中如何最大化的去缩小数据被解密的时间长。这些方式的根本问题在于:他们从头到尾都是要求用户把数据发给第三方。
接下来要介绍的Trias,会在这方面做的出一些创新。
单从一个数据拥有者来说,想把某份数据交给别人来处理。数据拥者就想知道他能否只做约定好的事情,为此,进行数据处理的那一方需要向用户证明是如何处理用户数据的。信任是一个传递的关系。如果A不相信B说的任何一句话,A就没法相信B是安全的,同样的,A也就没法相信B的技术是可靠的。
在我看来,这其实就是一个信任问题。即便有一个非常强的以密码学为基础的算法或解决方案,它在理论上无懈可击,效率也非常好。但在实现的过程中也可能出现漏洞。比如,因为程序员的某个BUG被人攻破导致数据泄露。当你把数据交给别人,这些都是不可避免的事情。
所以Trias从另一个方向来解决数据确权以及数据安全性的问题,就是不需要把数据发给别人,不需要让别人拿着你的数据去在他们的机房做处理。
所以针对上述问题,Trias采用了TEE可信计算和零知识证明技术结合的方式来完成数据确权和安全保护。
通过零知识证明,使用户只能通过非透明加密凭证确定其数据的运算结果和获取权力,而无法获知实际的数据运算过程与内容,从根本上杜绝了交易就会泄露隐私的情况。
然后通过TEE可信计算的加固,保证了双方数据确权的时候不会监守自盗,使用恶意的内鬼程序破坏零知识证明的加解密环境,为客户根本上的解决数据确权与安全的问题。