Tenzro
Custody and wallet

Crypto primitives.

Low-level cryptographic primitives exposed by tenzro-crypto. Use these directly when building outside the SDK.
STATUS
Testnet
CRATE
tenzro-crypto
STABILITY
Stable
TYPE
Reference
01

Signing

use tenzro_crypto::signatures::{Ed25519Signer, Signer};

let kp = Ed25519Signer::generate();
let sig = kp.sign(b"hello");
assert!(kp.public_key().verify(b"hello", &sig));
02

Hashing

use tenzro_crypto::hash::{sha256, keccak256};
let h = sha256(b"hello");
03

AEAD

use tenzro_crypto::aead::aes_gcm;
let (key, nonce) = aes_gcm::generate();
let ct = aes_gcm::encrypt(&key, &nonce, b"plain", b"aad")?;
let pt = aes_gcm::decrypt(&key, &nonce, &ct, b"aad")?;
04

Envelope encryption

X25519 key exchange wraps a per-message AES-256-GCM key. Used by all four TEE providers under enclave_crypto.rs with HKDF-SHA256 key derivation and a vendor-specific domain tag.

Related
← All docs