()
| 4 | |
| 5 | |
| 6 | def get_seal(): |
| 7 | parms = EncryptionParameters(scheme_type.ckks) |
| 8 | poly_modulus_degree = 8192 |
| 9 | parms.set_poly_modulus_degree(poly_modulus_degree) |
| 10 | parms.set_coeff_modulus(CoeffModulus.Create(poly_modulus_degree, [60, 40, 40, 60])) |
| 11 | scale = 2.0 ** 40 |
| 12 | |
| 13 | context = SEALContext(parms) |
| 14 | ckks_encoder = CKKSEncoder(context) |
| 15 | slot_count = ckks_encoder.slot_count() |
| 16 | |
| 17 | keygen = KeyGenerator(context) |
| 18 | public_key = keygen.create_public_key() |
| 19 | secret_key = keygen.secret_key() |
| 20 | |
| 21 | encryptor = Encryptor(context, public_key) |
| 22 | # evaluator = Evaluator(context) |
| 23 | decryptor = Decryptor(context, secret_key) |
| 24 | |
| 25 | data = [3.1415926] * slot_count |
| 26 | plain = ckks_encoder.encode(data, scale) |
| 27 | cipher = encryptor.encrypt(plain) |
| 28 | |
| 29 | return cipher, context, ckks_encoder, decryptor |
| 30 | |
| 31 | |
| 32 | def serialization_example(): |
no outgoing calls
no test coverage detected