Input key material (high entropy: derived from seed or another key, NOT a human password — for passwords use a password KDF like Argon2id, planned separately).
Random or context salt; may be empty. Fresh salt per derivation is recommended when deriving session-scoped keys.
Purpose/context string.
Output bytes (max 255*32 = 8160).
The derived key material of the requested length.
HKDF-SHA256 per RFC 5869, implemented with the native WebCrypto HKDF primitive (NOT the PBKDF2-based workaround used in some libraries).
Domain separation: all info strings in Me2eM start with
me2em/crypto/v1/…— callers MUST use a unique info per purpose.