2016-10-21 02:54:22 +00:00
|
|
|
Block Cipher Algorithm Definitions
|
|
|
|
----------------------------------
|
|
|
|
|
|
|
|
.. kernel-doc:: include/linux/crypto.h
|
|
|
|
:doc: Block Cipher Algorithm Definitions
|
|
|
|
|
|
|
|
.. kernel-doc:: include/linux/crypto.h
|
crypto: skcipher - remove the "blkcipher" algorithm type
Now that all "blkcipher" algorithms have been converted to "skcipher",
remove the blkcipher algorithm type.
The skcipher (symmetric key cipher) algorithm type was introduced a few
years ago to replace both blkcipher and ablkcipher (synchronous and
asynchronous block cipher). The advantages of skcipher include:
- A much less confusing name, since none of these algorithm types have
ever actually been for raw block ciphers, but rather for all
length-preserving encryption modes including block cipher modes of
operation, stream ciphers, and other length-preserving modes.
- It unified blkcipher and ablkcipher into a single algorithm type
which supports both synchronous and asynchronous implementations.
Note, blkcipher already operated only on scatterlists, so the fact
that skcipher does too isn't a regression in functionality.
- Better type safety by using struct skcipher_alg, struct
crypto_skcipher, etc. instead of crypto_alg, crypto_tfm, etc.
- It sometimes simplifies the implementations of algorithms.
Also, the blkcipher API was no longer being tested.
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2019-10-25 19:41:12 +00:00
|
|
|
:functions: crypto_alg ablkcipher_alg cipher_alg compress_alg
|
2016-10-21 02:54:22 +00:00
|
|
|
|
|
|
|
Symmetric Key Cipher API
|
|
|
|
------------------------
|
|
|
|
|
|
|
|
.. kernel-doc:: include/crypto/skcipher.h
|
|
|
|
:doc: Symmetric Key Cipher API
|
|
|
|
|
|
|
|
.. kernel-doc:: include/crypto/skcipher.h
|
2016-10-21 03:00:02 +00:00
|
|
|
:functions: crypto_alloc_skcipher crypto_free_skcipher crypto_has_skcipher crypto_skcipher_ivsize crypto_skcipher_blocksize crypto_skcipher_setkey crypto_skcipher_reqtfm crypto_skcipher_encrypt crypto_skcipher_decrypt
|
2016-10-21 02:54:22 +00:00
|
|
|
|
|
|
|
Symmetric Key Cipher Request Handle
|
|
|
|
-----------------------------------
|
|
|
|
|
|
|
|
.. kernel-doc:: include/crypto/skcipher.h
|
|
|
|
:doc: Symmetric Key Cipher Request Handle
|
|
|
|
|
|
|
|
.. kernel-doc:: include/crypto/skcipher.h
|
2016-10-21 03:00:02 +00:00
|
|
|
:functions: crypto_skcipher_reqsize skcipher_request_set_tfm skcipher_request_alloc skcipher_request_free skcipher_request_set_callback skcipher_request_set_crypt
|
2016-10-21 02:54:22 +00:00
|
|
|
|
|
|
|
Single Block Cipher API
|
|
|
|
-----------------------
|
|
|
|
|
|
|
|
.. kernel-doc:: include/linux/crypto.h
|
|
|
|
:doc: Single Block Cipher API
|
|
|
|
|
|
|
|
.. kernel-doc:: include/linux/crypto.h
|
2016-10-21 03:00:02 +00:00
|
|
|
:functions: crypto_alloc_cipher crypto_free_cipher crypto_has_cipher crypto_cipher_blocksize crypto_cipher_setkey crypto_cipher_encrypt_one crypto_cipher_decrypt_one
|
2016-10-21 02:54:22 +00:00
|
|
|
|
|
|
|
Asynchronous Block Cipher API - Deprecated
|
|
|
|
------------------------------------------
|
|
|
|
|
|
|
|
.. kernel-doc:: include/linux/crypto.h
|
|
|
|
:doc: Asynchronous Block Cipher API
|
|
|
|
|
|
|
|
.. kernel-doc:: include/linux/crypto.h
|
2019-10-25 19:41:10 +00:00
|
|
|
:functions: crypto_free_ablkcipher crypto_ablkcipher_ivsize crypto_ablkcipher_blocksize crypto_ablkcipher_setkey crypto_ablkcipher_reqtfm crypto_ablkcipher_encrypt crypto_ablkcipher_decrypt
|
2016-10-21 02:54:22 +00:00
|
|
|
|
|
|
|
Asynchronous Cipher Request Handle - Deprecated
|
|
|
|
-----------------------------------------------
|
|
|
|
|
|
|
|
.. kernel-doc:: include/linux/crypto.h
|
|
|
|
:doc: Asynchronous Cipher Request Handle
|
|
|
|
|
|
|
|
.. kernel-doc:: include/linux/crypto.h
|
2016-10-21 03:00:02 +00:00
|
|
|
:functions: crypto_ablkcipher_reqsize ablkcipher_request_set_tfm ablkcipher_request_alloc ablkcipher_request_free ablkcipher_request_set_callback ablkcipher_request_set_crypt
|