nvme_auth_generate_psk(9)
๐ NAME ๐
okay so bestie, meet nvme_auth_generate_psk โ this is the nvme_auth_generate_psk(9) page from the Kernel API Manual, and it is literally here to generate a PSK for TLS โจ
๐ SYNOPSIS ๐
int nvme_auth_generate_psk (u8 hmac_id , const u8 *skey , size_t
skey_len , const u8 *c1 , const u8 *c2 , size_t hash_len , u8 **ret_psk
, size_t *ret_len );
๐ ARGUMENTS ๐
hmac_idโ Hash function identifier ๐skeyโ Session key ๐๏ธskey_lenโ Length ofskey๐c1โ Value of challengeC1๐ฏc2โ Value of challengeC2๐ฏhash_lenโ Hash length of the hash algorithm ๐งฎret_pskโ Pointer to the resulting generated PSK ๐ซถret_lenโ length ofret_psk๐
๐ธ DESCRIPTION ๐ธ
okay so hereโs the tea: this function generates a PSK for TLS as specified in the NVMe base specification, section 8.13.5.9: Generated PSK for TLS. iconic behavior, honestly ๐
The generated PSK for TLS shall be computed applying the HMAC function using the hash function H( ) selected by the HashID parameter in the DH-HMAC-CHAP_Challenge message with the session key KS as key to the concatenation of the two challenges C1 and C2 (i.e., generated PSK = HMAC(KS, C1 || C2)). ๐งโจ
Returns 0 on success with a valid generated PSK pointer in ret_psk and the length of ret_psk in ret_len, or a negative error number otherwise. ๐
๐ SEE ALSO ๐
- Kernel file
./drivers/nvme/common/auth.c๐ nvme_auth_augmented_challenge(9)nvme_auth_gen_session_key(9)nvme_auth_generate_digest(9)nvme_auth_derive_tls_psk(9)
mwah ๐ โ source/version ./drivers/nvme/common, October 2026, bestie ๐ซถ
๐ฆ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms