In [ ]:
import syft as sy
import numpy as np
import torch as th
hook = sy.TorchHook(th)
In [ ]:
pub, pri = sy.keygen()
In [ ]:
x = th.Tensor([1,2,3]).encrypt(protocol="paillier", public_key=pub)
y = th.Tensor([2,2,2])
In [ ]:
out = x.mm(y)
In [ ]:
out = out.decrypt(protocol="paillier", private_key=pri)
In [ ]:
y = th.rand(1,5)
In [ ]:
out = th.add(x,x)
In [ ]:
In [ ]:
out = y.mm(x.transpose())
In [ ]:
y2 = out.decrypt(protocol="paillier", private_key=pri)
In [ ]:
y2
In [ ]:
In [ ]:
from phe import paillier
public_key, private_key = paillier.generate_paillier_keypair()
secret_number_list = [3.141592653, 300, -4.6e-12]
encrypted_number_list = [public_key.encrypt(x) for x in secret_number_list]
[private_key.decrypt(x) for x in encrypted_number_list]
In [ ]:
x = encrypted_number_list[0]
In [ ]:
x +1
In [ ]: