I was looking at replacing the ml_kem::EncodedSizeUser trait with KeySizeUser and KeyInit. This works fine for DecapsulationKey (i.e. private keys), but it's a little bit weird for EncapsulationKey since the KeyInit::generate_key* methods don't make sense for public keys.
I was wondering if perhaps they should be moved to their own separate keygen trait.
I was looking at replacing the
ml_kem::EncodedSizeUsertrait withKeySizeUserandKeyInit. This works fine forDecapsulationKey(i.e. private keys), but it's a little bit weird forEncapsulationKeysince theKeyInit::generate_key*methods don't make sense for public keys.I was wondering if perhaps they should be moved to their own separate keygen trait.