diff options
author | Stephan Mueller <smueller@chronox.de> | 2016-10-21 04:58:20 +0200 |
---|---|---|
committer | Jonathan Corbet <corbet@lwn.net> | 2016-12-13 16:38:06 -0700 |
commit | 8d23da22ac33be784451fb005cde300c09cdb19d (patch) | |
tree | ab2c7d35e7020be5e88a740760a205d057d9ab91 /Documentation/crypto | |
parent | c30c98d174e5ecbb5d70c7c92846d4d884f8b38a (diff) | |
download | lwn-8d23da22ac33be784451fb005cde300c09cdb19d.tar.gz lwn-8d23da22ac33be784451fb005cde300c09cdb19d.zip |
crypto: doc - add KPP documentation
Add the KPP API documentation to the kernel crypto API Sphinx
documentation. This addition includes the documentation of the
ECDH and DH helpers which are needed to create the approrpiate input
data for the crypto_kpp_set_secret function.
Signed-off-by: Stephan Mueller <smueller@chronox.de>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Diffstat (limited to 'Documentation/crypto')
-rw-r--r-- | Documentation/crypto/api-kpp.rst | 92 | ||||
-rw-r--r-- | Documentation/crypto/api.rst | 1 | ||||
-rw-r--r-- | Documentation/crypto/architecture.rst | 6 |
3 files changed, 99 insertions, 0 deletions
diff --git a/Documentation/crypto/api-kpp.rst b/Documentation/crypto/api-kpp.rst new file mode 100644 index 000000000000..d87be9224f49 --- /dev/null +++ b/Documentation/crypto/api-kpp.rst @@ -0,0 +1,92 @@ +Key-agreement Protocol Primitives (KPP) Cipher Algorithm Definitions +-------------------------------------------------------------------- + +.. kernel-doc:: include/crypto/kpp.h + :functions: kpp_request + +.. kernel-doc:: include/crypto/kpp.h + :functions: crypto_kpp + +.. kernel-doc:: include/crypto/kpp.h + :functions: kpp_alg + +.. kernel-doc:: include/crypto/kpp.h + :functions: kpp_secret + +Key-agreement Protocol Primitives (KPP) Cipher API +-------------------------------------------------- + +.. kernel-doc:: include/crypto/kpp.h + :doc: Generic Key-agreement Protocol Primitives API + +.. kernel-doc:: include/crypto/kpp.h + :functions: crypto_alloc_kpp + +.. kernel-doc:: include/crypto/kpp.h + :functions: crypto_free_kpp + +.. kernel-doc:: include/crypto/kpp.h + :functions: crypto_kpp_set_secret + +.. kernel-doc:: include/crypto/kpp.h + :functions: crypto_kpp_generate_public_key + +.. kernel-doc:: include/crypto/kpp.h + :functions: crypto_kpp_compute_shared_secret + +.. kernel-doc:: include/crypto/kpp.h + :functions: crypto_kpp_maxsize + +Key-agreement Protocol Primitives (KPP) Cipher Request Handle +------------------------------------------------------------- + +.. kernel-doc:: include/crypto/kpp.h + :functions: kpp_request_alloc + +.. kernel-doc:: include/crypto/kpp.h + :functions: kpp_request_free + +.. kernel-doc:: include/crypto/kpp.h + :functions: kpp_request_set_callback + +.. kernel-doc:: include/crypto/kpp.h + :functions: kpp_request_set_input + +.. kernel-doc:: include/crypto/kpp.h + :functions: kpp_request_set_output + +ECDH Helper Functions +--------------------- + +.. kernel-doc:: include/crypto/ecdh.h + :doc: ECDH Helper Functions + +.. kernel-doc:: include/crypto/ecdh.h + :functions: ecdh + +.. kernel-doc:: include/crypto/ecdh.h + :functions: crypto_ecdh_key_len + +.. kernel-doc:: include/crypto/ecdh.h + :functions: crypto_ecdh_encode_key + +.. kernel-doc:: include/crypto/ecdh.h + :functions: crypto_ecdh_decode_key + +DH Helper Functions +------------------- + +.. kernel-doc:: include/crypto/dh.h + :doc: DH Helper Functions + +.. kernel-doc:: include/crypto/dh.h + :functions: dh + +.. kernel-doc:: include/crypto/dh.h + :functions: crypto_dh_key_len + +.. kernel-doc:: include/crypto/dh.h + :functions: crypto_dh_encode_key + +.. kernel-doc:: include/crypto/dh.h + :functions: crypto_dh_decode_key diff --git a/Documentation/crypto/api.rst b/Documentation/crypto/api.rst index f2bbeb0fe9aa..2e519193ab4a 100644 --- a/Documentation/crypto/api.rst +++ b/Documentation/crypto/api.rst @@ -22,3 +22,4 @@ the IV. Different IV generators are available. api-digest api-rng api-akcipher + api-kpp diff --git a/Documentation/crypto/architecture.rst b/Documentation/crypto/architecture.rst index 34e396bbc6e6..ca2d09b991f5 100644 --- a/Documentation/crypto/architecture.rst +++ b/Documentation/crypto/architecture.rst @@ -161,6 +161,9 @@ applicable to a cipher, it is not displayed: entry below for the specification of the IV generator type used by the cipher implementation) + - kpp for a Key-agreement Protocol Primitive (KPP) cipher such as + an ECDH or DH implementation + - blocksize: blocksize of cipher in bytes - keysize: key size in bytes @@ -219,6 +222,9 @@ the aforementioned cipher types: together with an IV generator (see geniv field in the /proc/crypto listing for the known IV generators) +- CRYPTO_ALG_TYPE_KPP Key-agreement Protocol Primitive (KPP) such as + an ECDH or DH implementation + - CRYPTO_ALG_TYPE_DIGEST Raw message digest - CRYPTO_ALG_TYPE_HASH Alias for CRYPTO_ALG_TYPE_DIGEST |