pub fn crypto_box_edwards_seal_open(cipher: &[u8], pk: &[u8], sk: &[u8])
    -> Result<Vec<u8>, DecryptionError>
{
    assert_eq!(sk.len(), 32);
    let montgomery_pk = convert_public_key(pk);
    let hashed_sk = convert_private_key(sk);
    return crypto_box_seal_open(cipher, &montgomery_pk, &hashed_sk);
}
/// Open (decrypt) a sealed (anonymous) crypto box
///
/// This differs from what is in libsodium because it accepts public key in
/// edwards form and convert it to montgomery internally. Also we take first
/// 32 bytes of the sha512 of the key instead of full key, because that's
/// what ed25519 algorithm does before deriving a public key.
///
/// Except key conversion the encryption is compatible.
Open (decrypt) a sealed (anonymous) crypto box
This differs from what is in libsodium because it accepts public key in
edwards form and convert it to montgomery internally. Also we take first
32 bytes of the sha512 of the key instead of full key, because that's
what ed25519 algorithm does before deriving a public key.

Except key conversion the encryption is compatible.
Open ( decrypt ) a sealed ( anonymous ) crypto box This differs from what is in libsodium because it accepts public key in edwards form and convert it to montgomery internally . Also we take first 32 bytes of the sha512 of the key instead of full key because that ' s what ed25519 algorithm does before deriving a public key . Except key conversion the encryption is compatible .
pub fn crypto_box_edwards_seal_open(cipher: &[u8], pk: &[u8], sk: &[u8])
    -> Result<Vec<u8>, DecryptionError>
{
    assert_eq!(sk.len(), 32);
    let montgomery_pk = convert_public_key(pk);
    let hashed_sk = convert_private_key(sk);
    return crypto_box_seal_open(cipher, &montgomery_pk, &hashed_sk);
}
pub fn crypto_box_edwards_seal_open ( cipher : & [ u8 ] , pk : & [ u8 ] , sk : & [ u8 ] ) -> Result < Vec < u8 > , DecryptionError > { assert_eq ! ( sk len ( ) 32 ) ; let montgomery_pk = convert_public_key ( pk ) ; let hashed_sk = convert_private_key ( sk ) ; return crypto_box_seal_open ( cipher , & montgomery_pk , & hashed_sk ) ; }
Open (decrypt) a sealed (anonymous) crypto box
This differs from what is in libsodium because it accepts public key in
edwards form and convert it to montgomery internally.
Open ( decrypt ) a sealed ( anonymous ) crypto box This differs from what is in libsodium because it accepts public key in edwards form and convert it to montgomery internally .
cipher
&[u8]
pk
&[u8]
sk
&[u8]
cipher
&[u8]
pk
&[u8]
sk
&[u8]