mirror of
https://github.com/torvalds/linux.git
synced 2026-05-12 16:18:45 +02:00
Add a documentation file Documentation/crypto/libcrypto.rst which provides a high-level overview of lib/crypto/. Also add several sub-pages which include the kernel-doc for the algorithms that have it. This makes the existing, quite extensive kernel-doc start being included in the HTML and PDF documentation. Note that the intent is very much *not* that everyone has to read these Documentation/ files. The library is intended to be straightforward and use familiar conventions; generally it should be possible to dive right into the kernel-doc. You shouldn't need to read a lot of documentation to just call `sha256()`, for example, or to run the unit tests if you're already familiar with KUnit. (This differs from the traditional crypto API which has a larger barrier to entry.) Nevertheless, this seems worth adding. Hopefully it is useful and makes LWN no longer consider the library to be "meticulously undocumented". Reviewed-by: Ard Biesheuvel <ardb@kernel.org> Tested-by: Randy Dunlap <rdunlap@infradead.org> Reviewed-by: Randy Dunlap <rdunlap@infradead.org> Link: https://lore.kernel.org/r/20260418192138.15556-3-ebiggers@kernel.org Signed-off-by: Eric Biggers <ebiggers@kernel.org>
87 lines
1.8 KiB
ReStructuredText
87 lines
1.8 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
Hash functions, MACs, and XOFs
|
|
==============================
|
|
|
|
AES-CMAC and AES-XCBC-MAC
|
|
-------------------------
|
|
|
|
Support for the AES-CMAC and AES-XCBC-MAC message authentication codes.
|
|
|
|
.. kernel-doc:: include/crypto/aes-cbc-macs.h
|
|
|
|
BLAKE2b
|
|
-------
|
|
|
|
Support for the BLAKE2b cryptographic hash function.
|
|
|
|
.. kernel-doc:: include/crypto/blake2b.h
|
|
|
|
BLAKE2s
|
|
-------
|
|
|
|
Support for the BLAKE2s cryptographic hash function.
|
|
|
|
.. kernel-doc:: include/crypto/blake2s.h
|
|
|
|
GHASH and POLYVAL
|
|
-----------------
|
|
|
|
Support for the GHASH and POLYVAL universal hash functions. These algorithms
|
|
are used only as internal components of other algorithms.
|
|
|
|
.. kernel-doc:: include/crypto/gf128hash.h
|
|
|
|
MD5
|
|
---
|
|
|
|
Support for the MD5 cryptographic hash function and HMAC-MD5. This algorithm is
|
|
obsolete and is supported only for backwards compatibility.
|
|
|
|
.. kernel-doc:: include/crypto/md5.h
|
|
|
|
NH
|
|
--
|
|
|
|
Support for the NH universal hash function. This algorithm is used only as an
|
|
internal component of other algorithms.
|
|
|
|
.. kernel-doc:: include/crypto/nh.h
|
|
|
|
Poly1305
|
|
--------
|
|
|
|
Support for the Poly1305 universal hash function. This algorithm is used only
|
|
as an internal component of other algorithms.
|
|
|
|
.. kernel-doc:: include/crypto/poly1305.h
|
|
|
|
SHA-1
|
|
-----
|
|
|
|
Support for the SHA-1 cryptographic hash function and HMAC-SHA1. This algorithm
|
|
is obsolete and is supported only for backwards compatibility.
|
|
|
|
.. kernel-doc:: include/crypto/sha1.h
|
|
|
|
SHA-2
|
|
-----
|
|
|
|
Support for the SHA-2 family of cryptographic hash functions, including SHA-224,
|
|
SHA-256, SHA-384, and SHA-512. This also includes their corresponding HMACs:
|
|
HMAC-SHA224, HMAC-SHA256, HMAC-SHA384, and HMAC-SHA512.
|
|
|
|
.. kernel-doc:: include/crypto/sha2.h
|
|
|
|
SHA-3
|
|
-----
|
|
|
|
The SHA-3 functions are documented in :ref:`sha3`.
|
|
|
|
SM3
|
|
---
|
|
|
|
Support for the SM3 cryptographic hash function.
|
|
|
|
.. kernel-doc:: include/crypto/sm3.h
|