似乎只有部分同态加密(PHE)对于现代(2011)使用是实用的。但是,我很难找到使我能够利用这项技术的库(FOSS 或其他)。
El Gamal 是执行 PHE 的算法的一个示例,但wiki 页面没有清楚地解释支持哪些盲数学运算以及如何实现它们。
潜在用例
PHE 是一种可以抽象使用的东西,可以将数学运算卸载到第 3 位,而无需该方知道潜在价值是什么。例如,可以执行 x+y=z 并且它将具有有效的加密结果,但所有 3 个值都不会以未加密的格式为第三方所知。这有利于保护股票市场分析数据、PII 或任何被视为专有或机密的数据。
问题
那么,存在哪些加密算法以及允许我对加密数据进行操作的库?我感兴趣的操作示例包括
- 加减
- 乘法或除法
- 比较(加密 X 大于加密 Y)
- 一种技术,可以让我比较单词“Ap”的二进制/加密 ASCII 版本,并使用“Apple”的加密版本执行 Contains() 或 StartsWith()