能否让我知道如何使用SEAL库比较两个密文?
我有两个密文C1和C2,它们使用小数编码器进行了编码,然后进行了加密。
有没有办法比较C1和C2是否相等? (C1 == C2返回布尔值)。
我已经检查了ciphertext.h文件,但是找不到比较子例程。
某事告诉我,我可以通过使用BinaryEncoder对其进行编码并逐位比较两个密文来进行比较。
我该如何实施呢?
答案 0 :(得分:1)
有两种选择。首先,您确实可以一点一点地加密您的消息并编写一个比较电路;从运行时间和消息扩展的角度来看,这可能是非常低效的。这是高级功能,因此不能作为SEAL的一部分来实现。
另一种可能的方法是照常加密数字并同态计算它们的差。结果将是0(匹配)或非零(不匹配)。但是,这可能对您的需求没有帮助。在这种情况下,您还可以使用批处理,因此在摊销设置中,您可以获得良好的邮件扩展和性能。
您似乎也对BinaryEncoder感到困惑;如果您要这样做的话,它不会像按位编码那样执行任何操作。您应该查看http://sealcrypto.org上的SEAL手册,并阅读有关编码器的部分。