pub mod canonicalize;
pub mod encrypt;
pub mod hash;
pub mod merkle;
pub mod sign;
mod encoding;
mod error;
pub use encoding::{bytes_to_hex, encode_string, hex_to_bytes, u32_be, u64_be, uuid_to_bytes};
pub use error::CryptoError;
pub mod domain {
pub const PAYLOAD_PLAIN: &[u8] = b"VES_PAYLOAD_PLAIN_V1";
pub const PAYLOAD_AAD: &[u8] = b"VES_PAYLOAD_AAD_V1";
pub const PAYLOAD_CIPHER: &[u8] = b"VES_PAYLOAD_CIPHER_V1";
pub const RECIPIENTS: &[u8] = b"VES_RECIPIENTS_V1";
pub const EVENTSIG: &[u8] = b"VES_EVENTSIG_V1";
pub const LEAF: &[u8] = b"VES_LEAF_V1";
pub const NODE: &[u8] = b"VES_NODE_V1";
pub const PAD_LEAF: &[u8] = b"VES_PAD_LEAF_V1";
pub const STREAM: &[u8] = b"VES_STREAM_V1";
pub const RECEIPT: &[u8] = b"VES_RECEIPT_V1";
}
pub const ZERO_HASH: [u8; 32] = [0u8; 32];