Thread (3 messages) 3 messages, 3 authors, 2019-06-13

Re: [PATCH] crypto: doc - improve the skcipher API example code

From: Herbert Xu <herbert@gondor.apana.org.au>
Date: 2019-06-13 16:41:23
Also in: linux-crypto

Eric Biggers [off-list ref] wrote:
From: Eric Biggers <redacted>

Rewrite the skcipher API example, changing it to encrypt a buffer with
AES-256-XTS.  This addresses various problems with the previous example:

- It requests a specific driver "cbc-aes-aesni", which is unusual.
 Normally users ask for "cbc(aes)", not a specific driver.

- It encrypts only a single AES block.  For the reader, that doesn't
 clearly distinguish the "skcipher" API from the "cipher" API.

- Showing how to encrypt something with bare CBC is arguably a poor
 choice of example, as it doesn't follow modern crypto trends.  Now,
 usually authenticated encryption is recommended, in which case the
 user would use the AEAD API, not skcipher.  Disk encryption is still a
 legitimate use for skcipher, but for that usually XTS is recommended.

- Many other bugs and poor coding practices, such as not setting
 CRYPTO_TFM_REQ_MAY_SLEEP, unnecessarily allocating a heap buffer for
 the IV, unnecessary NULL checks, using a pointless wrapper struct, and
 forgetting to set an error code in one case.

Signed-off-by: Eric Biggers <redacted>
---
Documentation/crypto/api-samples.rst | 176 ++++++++++++---------------
1 file changed, 77 insertions(+), 99 deletions(-)
Patch applied.  Thanks.
-- 
Email: Herbert Xu [off-list ref]
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help