现代加密方式已经嵌入无数的数字系统和组件,成为保护数据安全性和隐私相关的必要工具。但是密码学现在最大的限制,在于需要处理和分析敏感数据的时候必须进行解密。然而,包括医疗、法律、制造商、金融和在线选举等在内,有大量的领域需要对数据进行分析处理;如果能不使用加密密钥就直接对数据进行分析,就能达成目标的同时,还能确保数据的隐私性。
这就产生了同态加密的概念。同态加密使用基于格加密的算法来隐藏输入值、中值、输出值,甚至函数本身可以让任何没有密钥的人进行计算。换而言之,同态加密可以直接使用于加密数据。
尽管说全同态加密(FHE)才诞生了十年多,伴随强大算力的计算机和更好的算法,使得全同态加密得以落地。
绕过解密
同态加密的想法能追溯到1978年。那个时候,几个MIT的研究人员设计了一种能够加密情况下,进行在单一数学计算(通常是乘法或者加法)的框架。这个概念在2009年得以实现,由Craig Gentry,在斯坦福的博士毕业论文中,设计了第一个全同态加密机制。
Gentry的设计只是一个起步。在过去十多年中,随着云计算、物联网的发展,第三方数据分享需求日益增多,而安全隐患也越来越多,从而进一步推动了同态加密的发展,诞生了一些更强大的同态加密算法。如今,同态加密圈的参与者包括IBM、微软、美国国防部高级研究计划局,以及一些创业公司等。
微软研究院的高级密码学家Josh Benaloh认为,直接在加密后的数据上进行计算有非常大的收益,因为这种计算方式能让数据计算进行外包,又能避免数据泄露的风险。
同态加密的落地领域十分广泛。举例而言,如果一个企业想证明他们有足够的资源处理某个项目,或者他们需要给一个外部公司或者政府部门提交数据进行审计;同态加密能够基于提交的敏感财务信息判断其是否合规,而不需要将原有的数据进行呈现。
当和区块链结合的时候,同态加密未来可以融入新的智能合同、工作协议、分摊结算等现在尚无法实现的东西。它可以让区块链中的成员更灵活、安全地分享数据,包括在链上加入或者移除某个成员等。
这些收益不止在于商业层面。同态加密还能让个人提交自身的基因数据来识别自身的风险因素,而不需要泄露这个人的真实身份。
同态加密还支持下一代的网络安全功能。比如,可以通过简洁、无交互的快速加密验证方式,进行“零知识”证明代码中不含有错误,从而实现在不显示产权代码的前提下开发没有漏洞的软件。
隐私问题
同态加密还能使数据的所有者对数据有更强、更颗粒化的控制,意味着数据所有者能基于数据的使用方,按需对数据的接入权限进行许可、拒绝和限制。
同态加密技术对大数据环境尤其适合,因为大数据环境会需要涉及大量的云端计算能力,还要保持其中数据的隐私性。
Gentry表示:“云端可以对加密的数据进行处理,甚至使用的函数本身都是被加密的——这样云端除了数据的体量之外,对数据一无所知。”
以微软的ElectionGuard为例,能让公民确认自己的选票是否被计入,而不需要影响整个选票池的安全和隐私性。每个投票都被加密,并且分配了一个独特的识别码。选票会被计入,但是每个人的身份依然会被隐藏,且不可见。该平台尚处试点阶段,目标是产生可验证、安全、可审计的投票结果。
另一方面,开源项目Microsoft SEAL则提供了一个代码库,供使用者直接运用同态加密,而不需要自己开发复杂的数学公式。该平台能处理所有加密后的实数加法运算与乘法运算,可以通过API被各类环境调用。IBM也开发了一款名为HElib的免费开源同态加密代码库。两个平台都能通过GitHub发行。
同态加密还有多久?
尽管说同态加密领域已经有了很大的突破,但是如果要将同态加密引入业务流之中,依然还有大量的工作要做。其中的一个问题就是性能。在落地中,现有的算法都需要极高的算力上限,意味着加密数据所使用的计算时间会相比未加密数据高出数倍之久。在Benaloh看来,需要的算力之大,使得在落地实践上极其困难。
同态加密在某些领域的效果尤为明显。很多时候,该技术会被微调以适应特别的需求。暂时来看,开发能够适应大范围现实工作中任务的同态加密软件也才刚刚浮现出曙光。
“如果要让全同态加密技术在大部分目的中变得可行,需要改进算法以减少算力消耗。”Benaloh提到,“我们需要进一步改良算法,从而使他们更易于进行全同态加密。”
不过,同态加密的未来似乎很光明,有不少专家认为这项技术能得到广泛运用,在未来数年就能对业界引起巨大影响。
数世点评:
我们一直在说,安全会影响业务的进程——这一点在数据上也不例外。加密后的数据固然更加安全,但是使用起来却需要经过解密、再加密的过程,中途还可能存在数据泄露的风险。同态加密在理念上能解决“解密、再加密”的多余过程,但是暂时来看无论是算法本身,还是对算力的需求依然不够成熟。但是,不可否认的是,同态加密是未来密码学领域的一大方向,而我们国家也需要有更多的数学家,去研发属于我们国家的同态加密算法。