* [RFC] cryptodev: clarify usage of the block ciphers
@ 2023-08-11 17:41 Arkadiusz Kusztal
0 siblings, 0 replies; only message in thread
From: Arkadiusz Kusztal @ 2023-08-11 17:41 UTC (permalink / raw)
To: dev; +Cc: gakhil, kai.ji, ciara.power, Arkadiusz Kusztal
Some of the API comments incorrectly limited the usage of symmetric
crypto fields to block ciphers.
Signed-off-by: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>
---
lib/cryptodev/rte_crypto_sym.h | 20 ++++++--------------
1 file changed, 6 insertions(+), 14 deletions(-)
diff --git a/lib/cryptodev/rte_crypto_sym.h b/lib/cryptodev/rte_crypto_sym.h
index 76c868c503..d1ae982b93 100644
--- a/lib/cryptodev/rte_crypto_sym.h
+++ b/lib/cryptodev/rte_crypto_sym.h
@@ -139,6 +139,7 @@ enum rte_crypto_cipher_algorithm {
RTE_CRYPTO_CIPHER_AES_XTS,
/**< AES algorithm in XTS mode */
+ /* Should we not deprecate this algorithm by now?*/
RTE_CRYPTO_CIPHER_ARC4,
/**< (A)RC4 cipher algorithm */
@@ -284,7 +285,7 @@ struct rte_crypto_cipher_xform {
*
* - For block ciphers in CTR mode, this is the length
* of the counter (which must be the same as the block
- * length of the cipher).
+ * length of the cipher) or a 12-byte nonce (AES only)
*
* - For CCM mode, this is the length of the nonce,
* which can be in the range 7 to 13 inclusive.
@@ -661,7 +662,7 @@ struct rte_crypto_sym_op {
uint32_t length;
/**< The message length, in bytes, of the source buffer
* on which the cryptographic operation will be
- * computed. This must be a multiple of the block size
+ * computed.
*/
} data; /**< Data offsets and length for AEAD */
struct {
@@ -703,22 +704,12 @@ struct rte_crypto_sym_op {
* and the length encoding in the first two bytes of the
* second block.
*
- * - the array should be big enough to hold the above
- * fields, plus any padding to round this up to the
- * nearest multiple of the block size (16 bytes).
- * Padding will be added by the implementation.
- *
* - Note that PMDs may modify the memory reserved
* (first 18 bytes and the final padding).
*
* Finally, for GCM (@ref RTE_CRYPTO_AEAD_AES_GCM), the
* caller should setup this field as follows:
*
- * - the AAD is written in starting at byte 0
- * - the array must be big enough to hold the AAD, plus
- * any space to round this up to the nearest multiple
- * of the block size (16 bytes).
- *
*/
rte_iova_t phys_addr; /**< physical address */
} aad;
@@ -749,8 +740,9 @@ struct rte_crypto_sym_op {
* source buffer on which the cryptographic
* operation will be computed.
* This is also the same as the result length.
- * This must be a multiple of the block size
- * or a multiple of data-unit length
+ * For block ciphers, this must be a
+ * multiple of the block size,
+ * or for the AES-XTS a multiple of the data-unit length
* as described in xform.
*
* @note
--
2.34.1
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-08-11 17:42 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-11 17:41 [RFC] cryptodev: clarify usage of the block ciphers Arkadiusz Kusztal
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).