Opaque S7 wrapper around a
shared_ptr<std::map<uint32_t, EvalKey<DCRTPoly>>>. Produced
by the multi_eval_*_key_gen() family and by
get_eval_sum_key_map() / get_eval_automorphism_key_map();
consumed by multi_add_eval_sum_keys(),
multi_add_eval_automorphism_keys(), insert_eval_sum_key(),
and insert_eval_automorphism_key(). The map is keyed by a
rotation/automorphism index and carries one EvalKey per
index.
Value
An S7 object of class EvalKeyMap, inheriting from OpenFHEObject,
whose ptr property holds an external pointer to the C++
std::map<uint32_t, EvalKey<DCRTPoly>>. It carries one evaluation
key per rotation or automorphism index and acts as the transport
format for the multi-party key protocols; it is produced by the
multi_eval_*_key_gen() family rather than by calling this
constructor directly.
Details
Users do not construct or index into an EvalKeyMap
directly — it is a transport format for the multi-party
eval-key protocols. In a single-user protocol the same data
is tracked inside the CryptoContext's internal key
registry (populated by EvalSumKeyGen() /
EvalRotateKeyGen()) and is only exposed as an EvalKeyMap
when the distributed-party flow needs to exchange it.
