Expand description

rainbow

This crate provides bindings to and wrappers around the following implementations from PQClean:

  • rainbowI-circumzenithal - clean
  • rainbowI-classic - clean
  • rainbowI-compressed - clean
  • rainbowIII-circumzenithal - clean
  • rainbowIII-classic - clean
  • rainbowIII-compressed - clean
  • rainbowV-circumzenithal - clean
  • rainbowV-classic - clean
  • rainbowV-compressed - clean

Notes

This implementation requires a lot of stack space. You need to specify RUST_MIN_STACK=800000000, probably. Rainbow does no longer get the claimed security, see https://eprint.iacr.org/2022/214.pdf

Re-exports

pub use crate::rainbowicircumzenithal::detached_sign as rainbowicircumzenithal_detached_sign;
Deprecated
pub use crate::rainbowicircumzenithal::keypair as rainbowicircumzenithal_keypair;
Deprecated
pub use crate::rainbowicircumzenithal::open as rainbowicircumzenithal_open;
Deprecated
pub use crate::rainbowicircumzenithal::public_key_bytes as rainbowicircumzenithal_public_key_bytes;
pub use crate::rainbowicircumzenithal::secret_key_bytes as rainbowicircumzenithal_secret_key_bytes;
pub use crate::rainbowicircumzenithal::sign as rainbowicircumzenithal_sign;
Deprecated
pub use crate::rainbowicircumzenithal::signature_bytes as rainbowicircumzenithal_signature_bytes;
pub use crate::rainbowicircumzenithal::verify_detached_signature as rainbowicircumzenithal_verify_detached_signature;
Deprecated
pub use crate::rainbowiclassic::detached_sign as rainbowiclassic_detached_sign;
Deprecated
pub use crate::rainbowiclassic::keypair as rainbowiclassic_keypair;
Deprecated
pub use crate::rainbowiclassic::open as rainbowiclassic_open;
Deprecated
pub use crate::rainbowiclassic::public_key_bytes as rainbowiclassic_public_key_bytes;
pub use crate::rainbowiclassic::secret_key_bytes as rainbowiclassic_secret_key_bytes;
pub use crate::rainbowiclassic::sign as rainbowiclassic_sign;
Deprecated
pub use crate::rainbowiclassic::signature_bytes as rainbowiclassic_signature_bytes;
pub use crate::rainbowiclassic::verify_detached_signature as rainbowiclassic_verify_detached_signature;
Deprecated
pub use crate::rainbowicompressed::detached_sign as rainbowicompressed_detached_sign;
Deprecated
pub use crate::rainbowicompressed::keypair as rainbowicompressed_keypair;
Deprecated
pub use crate::rainbowicompressed::open as rainbowicompressed_open;
Deprecated
pub use crate::rainbowicompressed::public_key_bytes as rainbowicompressed_public_key_bytes;
pub use crate::rainbowicompressed::secret_key_bytes as rainbowicompressed_secret_key_bytes;
pub use crate::rainbowicompressed::sign as rainbowicompressed_sign;
Deprecated
pub use crate::rainbowicompressed::signature_bytes as rainbowicompressed_signature_bytes;
pub use crate::rainbowicompressed::verify_detached_signature as rainbowicompressed_verify_detached_signature;
Deprecated
pub use crate::rainbowiiicircumzenithal::detached_sign as rainbowiiicircumzenithal_detached_sign;
Deprecated
pub use crate::rainbowiiicircumzenithal::keypair as rainbowiiicircumzenithal_keypair;
Deprecated
pub use crate::rainbowiiicircumzenithal::open as rainbowiiicircumzenithal_open;
Deprecated
pub use crate::rainbowiiicircumzenithal::public_key_bytes as rainbowiiicircumzenithal_public_key_bytes;
pub use crate::rainbowiiicircumzenithal::secret_key_bytes as rainbowiiicircumzenithal_secret_key_bytes;
pub use crate::rainbowiiicircumzenithal::sign as rainbowiiicircumzenithal_sign;
Deprecated
pub use crate::rainbowiiicircumzenithal::signature_bytes as rainbowiiicircumzenithal_signature_bytes;
pub use crate::rainbowiiicircumzenithal::verify_detached_signature as rainbowiiicircumzenithal_verify_detached_signature;
Deprecated
pub use crate::rainbowiiiclassic::detached_sign as rainbowiiiclassic_detached_sign;
Deprecated
pub use crate::rainbowiiiclassic::keypair as rainbowiiiclassic_keypair;
Deprecated
pub use crate::rainbowiiiclassic::open as rainbowiiiclassic_open;
Deprecated
pub use crate::rainbowiiiclassic::public_key_bytes as rainbowiiiclassic_public_key_bytes;
pub use crate::rainbowiiiclassic::secret_key_bytes as rainbowiiiclassic_secret_key_bytes;
pub use crate::rainbowiiiclassic::sign as rainbowiiiclassic_sign;
Deprecated
pub use crate::rainbowiiiclassic::signature_bytes as rainbowiiiclassic_signature_bytes;
pub use crate::rainbowiiiclassic::verify_detached_signature as rainbowiiiclassic_verify_detached_signature;
Deprecated
pub use crate::rainbowiiicompressed::detached_sign as rainbowiiicompressed_detached_sign;
Deprecated
pub use crate::rainbowiiicompressed::keypair as rainbowiiicompressed_keypair;
Deprecated
pub use crate::rainbowiiicompressed::open as rainbowiiicompressed_open;
Deprecated
pub use crate::rainbowiiicompressed::public_key_bytes as rainbowiiicompressed_public_key_bytes;
pub use crate::rainbowiiicompressed::secret_key_bytes as rainbowiiicompressed_secret_key_bytes;
pub use crate::rainbowiiicompressed::sign as rainbowiiicompressed_sign;
Deprecated
pub use crate::rainbowiiicompressed::signature_bytes as rainbowiiicompressed_signature_bytes;
pub use crate::rainbowiiicompressed::verify_detached_signature as rainbowiiicompressed_verify_detached_signature;
Deprecated
pub use crate::rainbowvcircumzenithal::detached_sign as rainbowvcircumzenithal_detached_sign;
Deprecated
pub use crate::rainbowvcircumzenithal::keypair as rainbowvcircumzenithal_keypair;
Deprecated
pub use crate::rainbowvcircumzenithal::open as rainbowvcircumzenithal_open;
Deprecated
pub use crate::rainbowvcircumzenithal::public_key_bytes as rainbowvcircumzenithal_public_key_bytes;
pub use crate::rainbowvcircumzenithal::secret_key_bytes as rainbowvcircumzenithal_secret_key_bytes;
pub use crate::rainbowvcircumzenithal::sign as rainbowvcircumzenithal_sign;
Deprecated
pub use crate::rainbowvcircumzenithal::signature_bytes as rainbowvcircumzenithal_signature_bytes;
pub use crate::rainbowvcircumzenithal::verify_detached_signature as rainbowvcircumzenithal_verify_detached_signature;
Deprecated
pub use crate::rainbowvclassic::detached_sign as rainbowvclassic_detached_sign;
Deprecated
pub use crate::rainbowvclassic::keypair as rainbowvclassic_keypair;
Deprecated
pub use crate::rainbowvclassic::open as rainbowvclassic_open;
Deprecated
pub use crate::rainbowvclassic::public_key_bytes as rainbowvclassic_public_key_bytes;
pub use crate::rainbowvclassic::secret_key_bytes as rainbowvclassic_secret_key_bytes;
pub use crate::rainbowvclassic::sign as rainbowvclassic_sign;
Deprecated
pub use crate::rainbowvclassic::signature_bytes as rainbowvclassic_signature_bytes;
pub use crate::rainbowvclassic::verify_detached_signature as rainbowvclassic_verify_detached_signature;
Deprecated
pub use crate::rainbowvcompressed::detached_sign as rainbowvcompressed_detached_sign;
Deprecated
pub use crate::rainbowvcompressed::keypair as rainbowvcompressed_keypair;
Deprecated
pub use crate::rainbowvcompressed::open as rainbowvcompressed_open;
Deprecated
pub use crate::rainbowvcompressed::public_key_bytes as rainbowvcompressed_public_key_bytes;
pub use crate::rainbowvcompressed::secret_key_bytes as rainbowvcompressed_secret_key_bytes;
pub use crate::rainbowvcompressed::sign as rainbowvcompressed_sign;
Deprecated
pub use crate::rainbowvcompressed::signature_bytes as rainbowvcompressed_signature_bytes;
pub use crate::rainbowvcompressed::verify_detached_signature as rainbowvcompressed_verify_detached_signature;
Deprecated

Modules

Foreign function interfaces

rainbowI-circumzenithal

rainbowI-classic

rainbowI-compressed

rainbowIII-circumzenithal

rainbowIII-classic

rainbowIII-compressed

rainbowV-circumzenithal

rainbowV-classic

rainbowV-compressed