/usr/src/linux-headers-5.15.0-190/include/crypto
NameSizeModeActions
internal/-0755rm
acompress.h90730644editdlrm
aead.h188320644editdlrm
aes.h25630644editdlrm
akcipher.h132320644editdlrm
algapi.h75450644editdlrm
arc4.h4840644editdlrm
asym_tpm_subtype.h5210644editdlrm
authenc.h6350644editdlrm
b128ops.h24710644editdlrm
blake2b.h16370644editdlrm
blake2s.h26800644editdlrm
blowfish.h4150644editdlrm
cast5.h5900644editdlrm
cast6.h6070644editdlrm
cast_common.h2320644editdlrm
chacha.h33950644editdlrm
chacha20poly1305.h16990644editdlrm
cryptd.h20500644editdlrm
ctr.h14560644editdlrm
curve25519.h20650644editdlrm
des.h17240644editdlrm
dh.h25740644editdlrm
drbg.h92090644editdlrm
ecc_curve.h13370644editdlrm
ecdh.h24870644editdlrm
engine.h42090644editdlrm
gcm.h8670644editdlrm
gf128mul.h96470644editdlrm
ghash.h3880644editdlrm
hash.h348590644editdlrm
hash_info.h9980644editdlrm
hmac.h1730644editdlrm
if_alg.h68440644editdlrm
kpp.h101440644editdlrm
md5.h4970644editdlrm
nhpoly1305.h22360644editdlrm
null.h3460644editdlrm
padlock.h4380644editdlrm
pcrypt.h8150644editdlrm
pkcs7.h11810644editdlrm
poly1305.h25000644editdlrm
public_key.h24400644editdlrm
rng.h67480644editdlrm
scatterwalk.h39890644editdlrm
serpent.h6960644editdlrm
sha1.h12100644editdlrm
sha1_base.h25120644editdlrm
sha2.h38490644editdlrm
sha3.h8790644editdlrm
sha256_base.h26210644editdlrm
sha512_base.h32550644editdlrm
skcipher.h204280644editdlrm
sm2.h7490644editdlrm
sm3.h8970644editdlrm
sm3_base.h26080644editdlrm
sm4.h11440644editdlrm
streebog.h9490644editdlrm
twofish.h7430644editdlrm
xts.h11250644editdlrm
Edit: /usr/src/linux-headers-5.15.0-190/include/crypto/dh.h (2574B)
/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Diffie-Hellman secret to be used with kpp API along with helper functions * * Copyright (c) 2016, Intel Corporation * Authors: Salvatore Benedetto */ #ifndef _CRYPTO_DH_ #define _CRYPTO_DH_ /** * DOC: DH Helper Functions * * To use DH with the KPP cipher API, the following data structure and * functions should be used. * * To use DH with KPP, the following functions should be used to operate on * a DH private key. The packet private key that can be set with * the KPP API function call of crypto_kpp_set_secret. */ /** * struct dh - define a DH private key * * @key: Private DH key * @p: Diffie-Hellman parameter P * @q: Diffie-Hellman parameter Q * @g: Diffie-Hellman generator G * @key_size: Size of the private DH key * @p_size: Size of DH parameter P * @q_size: Size of DH parameter Q * @g_size: Size of DH generator G */ struct dh { void *key; void *p; void *q; void *g; unsigned int key_size; unsigned int p_size; unsigned int q_size; unsigned int g_size; }; /** * crypto_dh_key_len() - Obtain the size of the private DH key * @params: private DH key * * This function returns the packet DH key size. A caller can use that * with the provided DH private key reference to obtain the required * memory size to hold a packet key. * * Return: size of the key in bytes */ unsigned int crypto_dh_key_len(const struct dh *params); /** * crypto_dh_encode_key() - encode the private key * @buf: Buffer allocated by the caller to hold the packet DH * private key. The buffer should be at least crypto_dh_key_len * bytes in size. * @len: Length of the packet private key buffer * @params: Buffer with the caller-specified private key * * The DH implementations operate on a packet representation of the private * key. * * Return: -EINVAL if buffer has insufficient size, 0 on success */ int crypto_dh_encode_key(char *buf, unsigned int len, const struct dh *params); /** * crypto_dh_decode_key() - decode a private key * @buf: Buffer holding a packet key that should be decoded * @len: Length of the packet private key buffer * @params: Buffer allocated by the caller that is filled with the * unpacked DH private key. * * The unpacking obtains the private key by pointing @p to the correct location * in @buf. Thus, both pointers refer to the same memory. * * Return: -EINVAL if buffer has insufficient size, 0 on success */ int crypto_dh_decode_key(const char *buf, unsigned int len, struct dh *params); #endif