Matter::Crypto::CryptoBase
Inherits Reference < Object
Abstract interface for cryptographic operations required by Matter protocol Implementations can be platform-specific or use standard OpenSSL bindings
Instance methods
Compute SHA-256 hash @param data Data to hash (can be single buffer or array of buffers) @return 32-byte hash
Derive key using HKDF with SHA-256 @param secret Input key material @param salt Salt value @param info Context/application specific info @param length Desired output length (default 32 bytes) @return Derived key
Derive key using PBKDF2 with SHA-256 @param secret Secret/password @param salt Salt value @param iterations Iteration count @param key_length Desired key length @return Derived key
Decrypt using AES-128-CCM with Matter-specific parameters @param key 16-byte AES key @param data Ciphertext with authentication tag @param nonce 13-byte nonce @param aad Additional authenticated data (optional) @return Plaintext @raise Exception if authentication fails
Encrypt using AES-128-CCM with Matter-specific parameters @param key 16-byte AES key @param data Plaintext to encrypt @param nonce 13-byte nonce @param aad Additional authenticated data (optional) @return Ciphertext with 16-byte authentication tag appended
Compute shared secret using ECDH @param private_key Local private key @param peer_public_key Peer's public key @return Shared secret (32 bytes for P-256)
Generate cryptographically secure random bytes @param length Number of bytes to generate @return Random bytes
Create ECDSA signature using P-256 @param private_key EC private key @param data Data to sign (can be array for multiple buffers) @param dsa_encoding Signature encoding format (ieee-p1363 or der) @return Signature bytes
Create HMAC-SHA256 signature @param key HMAC key @param data Data to sign @return HMAC signature
Verify ECDSA signature using P-256 @param public_key EC public key @param data Data that was signed @param signature Signature to verify @param dsa_encoding Signature encoding format @raise Exception if verification fails