pub fn enc(pk: PublicKey, randomness: [u8; 32]) -> ([u8; 32], Ciphertext)
Encapsulate: generate a ciphertext and an associated shared symmetric key.