Crate orion

source ·
Expand description

A usable pure-Rust cryptography library.

Authenticated secret-key encryption

orion::aead offers authenticated secret-key encryption using XChaCha20Poly1305.

Password hashing and verification

orion::pwhash offers password hashing and verification using Argon2i.

Key derivation

orion::kdf offers key derivation using Argon2i.

Message authentication

orion::auth offers message authentication and verification using BLAKE2b.


orion::hash offers hashing using BLAKE2b.

Key exchange

orion::kex offers ephemeral key exchange using X25519 and BLAKE2b.

A note on no_std:

When Orion is used in a no_std context, the high-level API is not available, since it relies on access to the systems random number generator.

More information about Orion is available in the wiki.


  • aeadsafe_api
    Authenticated secret-key encryption.
  • authsafe_api
    Message authentication.
  • Errors for Orion’s cryptographic operations.
  • hashsafe_api
  • [Caution] Low-level API.
  • kdfsafe_api
    Key derivation.
  • kexsafe_api
    Ephemeral key exchange.
  • pwhashsafe_api
    Password hashing and verification.
  • Utilities such as constant-time comparison.