pub fn encrypt_secret_share(paillier_pk: &EncryptionKey, server_secret_share: &BigInt) -> BigInt {
    let mut paillier_randomness = Randomness::sample(paillier_pk);
    let server_encrypted_secret_share = Paillier::encrypt_with_chosen_randomness(
        paillier_pk,
        RawPlaintext::from(server_secret_share),
        &paillier_randomness,
    )
    .0
    .into_owned();
    paillier_randomness.0.zeroize_bn();
    server_encrypted_secret_share
}
/// encrypt server secret share under paillier public key
encrypt server secret share under paillier public key
encrypt server secret share under paillier public key
pub fn encrypt_secret_share(paillier_pk: &EncryptionKey, server_secret_share: &BigInt) -> BigInt {
    let mut paillier_randomness = Randomness::sample(paillier_pk);
    let server_encrypted_secret_share = Paillier::encrypt_with_chosen_randomness(
        paillier_pk,
        RawPlaintext::from(server_secret_share),
        &paillier_randomness,
    )
    .0
    .into_owned();
    paillier_randomness.0.zeroize_bn();
    server_encrypted_secret_share
}
pub fn encrypt_secret_share ( paillier_pk : & EncryptionKey , server_secret_share : & BigInt ) -> BigInt { let mut paillier_randomness = Randomness :: sample ( paillier_pk ) ; let server_encrypted_secret_share = Paillier :: encrypt_with_chosen_randomness ( paillier_pk , RawPlaintext :: from ( server_secret_share ) , & paillier_randomness , ) . 0 . into_owned ( ) ; paillier_randomness . 0 . zeroize_bn ( ) ; server_encrypted_secret_share }
encrypt server secret share under paillier public key
encrypt server secret share under paillier public key
paillier_pk
&EncryptionKey
server_secret_share
&BigInt