Lines Matching refs:hmac
91 char hmac[15];
95 .hmac = "hmac(sha256)",
99 .hmac = "hmac(sha384)",
103 .hmac = "hmac(sha512)",
111 return hash_map[hmac_id].hmac;
123 if (!strlen(hash_map[i].hmac))
125 if (!strncmp(hash_map[i].hmac, hmac_name,
126 strlen(hash_map[i].hmac)))
231 int nvme_auth_hmac_init(struct nvme_auth_hmac_ctx *hmac, u8 hmac_id,
234 hmac->hmac_id = hmac_id;
237 hmac_sha256_init_usingrawkey(&hmac->sha256, key, key_len);
240 hmac_sha384_init_usingrawkey(&hmac->sha384, key, key_len);
243 hmac_sha512_init_usingrawkey(&hmac->sha512, key, key_len);
251 void nvme_auth_hmac_update(struct nvme_auth_hmac_ctx *hmac, const u8 *data,
254 switch (hmac->hmac_id) {
256 hmac_sha256_update(&hmac->sha256, data, data_len);
259 hmac_sha384_update(&hmac->sha384, data, data_len);
262 hmac_sha512_update(&hmac->sha512, data, data_len);
271 void nvme_auth_hmac_final(struct nvme_auth_hmac_ctx *hmac, u8 *out)
273 switch (hmac->hmac_id) {
275 hmac_sha256_final(&hmac->sha256, out);
278 hmac_sha384_final(&hmac->sha384, out);
281 hmac_sha512_final(&hmac->sha512, out);
292 struct nvme_auth_hmac_ctx hmac;
295 ret = nvme_auth_hmac_init(&hmac, hmac_id, key, key_len);
297 nvme_auth_hmac_update(&hmac, data, data_len);
298 nvme_auth_hmac_final(&hmac, out);
323 struct nvme_auth_hmac_ctx hmac;
338 ret = nvme_auth_hmac_init(&hmac, key->hash, key->key, key->len);
344 memzero_explicit(&hmac, sizeof(hmac));
347 nvme_auth_hmac_update(&hmac, nqn, strlen(nqn));
348 nvme_auth_hmac_update(&hmac, "NVMe-over-Fabrics", 17);
349 nvme_auth_hmac_final(&hmac, transformed_key->key);
487 struct nvme_auth_hmac_ctx hmac;
494 ret = nvme_auth_hmac_init(&hmac, hmac_id, skey, skey_len);
499 memzero_explicit(&hmac, sizeof(hmac));
502 nvme_auth_hmac_update(&hmac, c1, hash_len);
503 nvme_auth_hmac_update(&hmac, c2, hash_len);
504 nvme_auth_hmac_final(&hmac, psk);
550 struct nvme_auth_hmac_ctx hmac;
585 ret = nvme_auth_hmac_init(&hmac, hmac_id, psk, psk_len);
588 nvme_auth_hmac_update(&hmac, hostnqn, strlen(hostnqn));
589 nvme_auth_hmac_update(&hmac, " ", 1);
590 nvme_auth_hmac_update(&hmac, subsysnqn, strlen(subsysnqn));
591 nvme_auth_hmac_update(&hmac, " NVMe-over-Fabrics", 18);
592 nvme_auth_hmac_final(&hmac, digest);