askar-crypto 0.2.0-pre.2

Hyperledger Aries Askar cryptography
Documentation

askar-crypto

Rust Crate Rust Documentation

The askar-crypto crate provides the basic key representations and cryptographic operations used by aries-askar.

Supported Key Types

Key Type Feature Operations Notes
AES-GCM aes AEAD encryptionJWK export A128GCM and A256GCM
AES-CBC-HMAC-SHA2 aes AEAD encryptionJWK export A128CBC-HS256 and A256CBC-HS512
(X)ChaCha20-Poly1305 chacha AEAD encryptionJWK export aka C20P, XC20P
BLS12-381 bls bls-signature-compatible key generationJWK import/export G1, G2, and G1G2 key types
Ed25519 ed25519 EdDSA signaturesJWK import/export
X25519 ed25519 DH key exchangeJWK import/export
K-256 k256 ECDSA signaturesDH key exchangeJWK import/export aka secp256k1
P-256 p256 ECDSA signaturesDH key exchangeJWK import/export aka nist256p1, secp256r1

'Any' Key support

The any_key feature (which depends on alloc) provides a generic interface for creating and working with any supported key type.

JOSE Authenticated Encryption

This crate provides implementations of the ECDH-ES and ECDH-1PU (draft 3) key agreement operations, for use in deriving the CEK or key wrapping key when producing or consuming JWE envelopes using these protection algorithms.

no-std

This crate supports the optional alloc feature, gating types and operations that depend on a global allocator. The std feature depends on alloc, and adds support for std::error::Error.