随着全同态加密的迅速发展,一些全同态加密库应运而生。学术界和工业界非常关注各个全同态加密库的计算效率和性能,以便做出更好的应用选择。
为了回答“全同态加密库具体性能如何?”这个问题,格密链科技自主研发全同态加密测试系统(HEbenchmark)。该系统可以全面评估比较全同态加密库的性能,能够自动化的完成整个测试过程。例如:选择参数,执行测试,密文计算与明文计算进行性能比较,测试结果的统计分析与图表生成。
目前全同态加密界缺乏一个综合通用的基准测试工具。此外,由于数据是在不同平台上产生的,使得对各个全同态加密库无法直接比较评价。虽然测试在原则上是可重复的,但是测试软件依赖于具体环境,使得再现别人的测试结果变得困难。
格密链科技研发的全同态加密测试系统(HEbenchmark)的主要贡献是为全同态加密方案的测试提供一个通用的系统。在本系统中,用户可以根据自己的需求,在测试系统设置参数,生成密钥、公钥、密文后,进行运算、解密,验证结果并生成测试报告。
方案概述
我们的测试系统的设计是由三个目标驱动的。首先,我们想以黑盒方式通过测量密钥生成,加密,解密和计算的持续时间来评估同态加密库的性能。其次,我们想通过将使用同态加密的系统与不提供安全性的系统进行比较,来描述保障隐私的额外开销。最后,我们想要提供一个报告生成器,可以直观的表现出全同态加密库的性能。
![338ece8cf6c8c507c28687d70f79c8a8.png](https://img-blog.csdnimg.cn/img_convert/338ece8cf6c8c507c28687d70f79c8a8.png)
测试流程
![d13e5aff3892f54ebdb08ce0a6cdb5f1.png](https://img-blog.csdnimg.cn/img_convert/d13e5aff3892f54ebdb08ce0a6cdb5f1.png)
报表生成器从本地文本读取,该文本包含所有的时间和正确性数据,以及测试的所有参数。自动分析被测全同态加密库(即其输出是否与基线值一致)。对这些数据进行图表、曲线处理。
![b6cee87618ffa5ae41db409b96730b45.png](https://img-blog.csdnimg.cn/img_convert/b6cee87618ffa5ae41db409b96730b45.png)
![7c9f02aaa39e852f37b557acf53a48ab.png](https://img-blog.csdnimg.cn/img_convert/7c9f02aaa39e852f37b557acf53a48ab.png)
系统使用介绍
系统分为三个菜单栏:使用介绍,基本测试,高级测试。基本测试包括SEAL BFV、SEAL CKKS、HElib测试,高级测试包括SEAL BFV、SEAL CKKS、HElib、HElib海明距离、SEAL CKKS海明距离、逻辑回归测试。
![1826b172b2a788e60c67ddabfd04f738.png](https://img-blog.csdnimg.cn/img_convert/1826b172b2a788e60c67ddabfd04f738.png)
![db9f9d8e560ce150ae0eb8c2ba29236e.png](https://img-blog.csdnimg.cn/img_convert/db9f9d8e560ce150ae0eb8c2ba29236e.png)
![81f6d07a4100aac161c8948bfdea3e47.png](https://img-blog.csdnimg.cn/img_convert/81f6d07a4100aac161c8948bfdea3e47.png)
系统还能够对测试结果执行自动分析,结论由报告生成器工具自动生成。例如以测试HElib库为例。报告生成器工具自动确定HElib库在测试期间正确率100%:对于所有1582个测试,HElib的输出与明文基线的输出相匹配。另外,HElib的总耗时间与不安全明文基线之间的平均比率约为260。为了更详细地分析HElib和明文基线的总耗用时间,报告生成器创建了下图中的两个图。图中的左图显示了HElib的总运行时间和1582个基线运行时间的直方图。为了易读性,数据被分组为百分位数:图表显示测试中的最快1%(即1582中前16个最快测试中取最快的一个),然后进行下一个1%的测试(即1582中16到32个最快测试中取最快的一个),依此类推。右图显示了HElib与基线之间的比率;换句话说,它是左图上两条曲线之间的商。这些数字表明,全同态加密的开销随着评估的电路变得更深和更复杂而增长。
![26760a69691aea7743a088d6bec57f18.png](https://img-blog.csdnimg.cn/img_convert/26760a69691aea7743a088d6bec57f18.png)
![72b0279961cdb21f9b653761b86d97b3.png](https://img-blog.csdnimg.cn/img_convert/72b0279961cdb21f9b653761b86d97b3.png)
![10c36c7ba39d53e34820f65533af4110.png](https://img-blog.csdnimg.cn/img_convert/10c36c7ba39d53e34820f65533af4110.png)
本系统可以按照用户设定的参数,实现密钥、公钥的生成,密文计算,明文计算,密文的解密,噪音预算,统计各个步骤的时间。具有友好的使用界面和报告生成界面。该系统具有灵活性,能够将已知的任何全同态加密库加入测试,本系统目前可以提供Seal库中的BFV方案和CKKS方案和HElib库的BGV方案的测试演示,并能够生成详细的数据分析报表,直观准确的给出全同态加密库的各项性能指标,便于非专业客户使用。为全同态加密的实践应用,提供了一个良好的评估测试工具。
格密链科技研发快报:全同态加密测试系统mp.weixin.qq.com![8e0496d4804c66856310928522d21f73.png](https://img-blog.csdnimg.cn/img_convert/8e0496d4804c66856310928522d21f73.png)
文章首发在微信公众号:btc201800知识星球ID:28018093音频发布在喜马拉雅上“区块链杂谈 (第2季)” http://xima.tv/Bjq4se解读区块链白皮书 http://xima.tv/RNU1Q8