INNER CODE UNIT · Rust

deserialize_pubkey_compressed

mratsim/constantine · constantine-rust/constantine-ethereum-bls-sig/src/lib.rs:194

pub fn deserialize_pubkey_compressed(src: &[u8; 48]) -> Result<EthBlsPubKey, ctt_codec_ecc_status> {
    let mut result: MaybeUninit<EthBlsPubKey> = MaybeUninit::uninit();
    unsafe {
        let status = ctt_eth_bls_deserialize_pubkey_compressed(
            result.as_mut_ptr() as *mut ctt_eth_bls_pubkey,
            src.as_ptr() as *const byte,
        );
        match status {
            ctt_codec_ecc_status::cttCodecEcc_Success => Ok(result.assume_init()),
            ctt_codec_ecc_status::cttCodecEcc_PointAtInfinity => Ok(result.assume_init()),
            _ => Err(status),
        }
    }
}

#[must_use]
pub fn deserialize_signature_compressed(
    src: &[u8; 96],

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…