gpt4 book ai didi

python - 我们可以使用Microsoft SEAL/PySEAL库对加密数据进行除法运算吗

转载 作者:行者123 更新时间:2023-11-30 04:45:56 24 4
gpt4 key购买 nike

我正在使用 PySEAL库,它是 Microsoft SEAL 的一个分支同态加密库,用于在加密数据上实现机器学习算法。为此,我需要除以数字。在examples.py源代码中有执行加法、减法和乘法的示例,但没有执行除法的示例。是否可以使用 PySEAL 库进行除法?如果没有,是否有任何解决方法,例如使用此库中的其他算术运算将两个数字相除的技巧?

最佳答案

SEAL 不支持密文之间的划分。但是,如果您希望将密文除以明文,则可以使用逆乘法,如下所示:

from seal import *

# context is a SEALContext object
# encoder is a FractionalEncoder object
# encryptor is an Encryptor object
# evaluator is an Evaluator object
# decryptor is a Decryptor object

# Encrypt a float
cipher = Ciphertext()
encryptor.encrypt(encoder.encode(7.0), cipher)

# Divide that float by 10
div_by_ten = encoder.encode(0.1)
evaluator.multiply_plain(cipher, div_by_ten)

# Decrypt result
plain = Plaintext()
decryptor.decrypt(cipher, plain)
result = encoder.decode(plain)
print(result)
>> 0.6999999999999996

参见 PySEAL Python examples 中的 example_weighted_average 函数.

关于python - 我们可以使用Microsoft SEAL/PySEAL库对加密数据进行除法运算吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57016865/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com