
IBM已在GitHub上发布了用于Linux的FHE工具包的源代码。该实用程序在IBM Z和x86平台上运行,并受Ubuntu,Fedora和CentOS支持。
长期以来,全同态加密(FHE)一直被认为是密码术中的圣杯。这项任务确实似乎是不现实的。 FHE加密类型涉及第三方对加密数据的操作,而无法解密数据本身或操作结果。
这怎么可能?
举一个简单的例子,假设您有一堆电子邮件,并且想要使用第三方垃圾邮件过滤器来检查它们是否为垃圾邮件。垃圾邮件过滤器在服务器上起作用是因为开发人员试图使算法保密:要么隐藏源代码,要么垃圾邮件过滤器取决于他们不想公开的非常大的数据库,因为这很容易使攻击变得容易,或者其他。没关系,最主要的是垃圾邮件过滤器无论如何都可以在服务器上工作-并且您不能自己运行它。在这种情况下该怎么办?您还关心数据的机密性,并且不想以开放的,未加密的形式将电子邮件的内容传输给第三方。这是完全同态加密的要点:

因此,该服务将算法保密,而您将数据保密。但是FHE允许您成功地将该算法应用于此数据,以便任何一方都不了解对方的秘密。
完全同态加密有很多用途,包括在区块链中,服务器可以在不泄露信息内容的情况下操纵加密的客户端数据。也就是说,服务器可以在不知道客户端请求的情况下满足客户端的请求。
同态加密的其他用途:
- 更加高效的隐藏地址协议和用于隐私协议的更通用的可伸缩性解决方案,如今要求每个用户亲自扫描整个区块链以查找传入交易。
- , , .
- , ( , , , ).
通常,存在不同类型的同态加密,其中一些加密功能比其他加密功能更强大。它们的不同之处在于可以对加密数据执行的操作。
部分同态加密仅允许您对加密数据执行一次操作,加法或乘法
部分同态加密(有些同态)仅在有限的数据集上完全起作用。
最后,完全同态加密允许对任何数据集进行无限的加法和乘法运算。
实现部分同态加密非常容易:例如,在RSA中实现乘法:
, , 以便
椭圆曲线提供了类似的折叠选项。但要实现这两个加法和乘法,同时要困难得多。自1978年Rivest,Adleman和Dertuzos提出问题并提出“同态加密”一词以来,就一直在寻求这种方案。 30年来,完全同态系统的存在尚未得到证明,Rivest本人认为该想法不受实施。斯坦福大学研究生克雷格·金特里(Craig Gentry)
的博士学位论文发表后,才在2009年取得了重大突破。他描述了在理想晶格上完全同态密码系统的可能构造。在他的论文中,他还提出了一个创新的引导思想。...这个技巧将部分FHE方案变成了完全同态加密方案。引导方法如下图所示。简而言之,在这里,私钥的比特以同态方案用公钥加密,并作为“启动密钥”发布,这允许对重新加密的密文执行同态加密,从而将噪声减小到原始大小。也就是说,我们“刷新”密文,就好像擦除旧密钥的错误一样。

简而言之,解密过程本身是一种计算,因此可以将其实现为同态方案,该方案接受密文位和密钥的位作为输入。
Gentry的加密方案是一项重大突破,但引入了一个新错误,该错误与原始加密中的错误数量无关。作者本人描述了解决该问题的复杂方法,但是在2011年提出的经修改的Brackersky and Vaikuntanathan方案(该方案被称为BGV(Brackersky-Gentry-Vaikuntanatan))变得更加成功。2013年,IBM发布了免费的加密库HELib,该库支持同态加密和BGV方案。 2020年1月,发布了HELib 1.0.0版。
2013年,绅士再次宣布自己。与Sahai和Waters的合著者一起,提出了第三代完全同态加密方案-GSW(Gentry,Sahai和Waters)方案,该方案再次使用晶格加密和boostsapping。
在多年的发展中,基于HELib的功能已经创建了一套完整的工具,具有集成的IDE示例。
IBM先前已经发布了适用于macOS和iOS的完全同态加密工具。他承诺将来会发布Android版本的源代码。
Linux版本的发布不是出于演示目的,而是在与欧洲国家及其首都建立数据库的数据库上工作(金融行业的第二个示例是基于匿名交易的加密基础的神经网络对欺诈的识别)。到目前为止,同态加密还没有实际应用。根据该例如,Gentry自己在2009年,如果要对文本进行加密,则在Google中处理搜索查询将需要进行大约一万亿倍的计算。尽管如此,IBM所做的优化已大大改善了该库的性能,因此在几年或几十年中,它很可能会在Web应用程序中得到广泛使用。IBM说,该库现在可以在IBM Z大型机上运行。