From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [DPDK/cryptodev Bug 1669] Cannot use ESN with GMAC authentication
Date: Wed, 05 Mar 2025 01:07:42 +0000 [thread overview]
Message-ID: <bug-1669-3@http.bugs.dpdk.org/> (raw)
[-- Attachment #1: Type: text/plain, Size: 1756 bytes --]
https://bugs.dpdk.org/show_bug.cgi?id=1669
Bug ID: 1669
Summary: Cannot use ESN with GMAC authentication
Product: DPDK
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: cryptodev
Assignee: dev@dpdk.org
Reporter: arieltraver@gmail.com
Target Milestone: ---
Hi all,
I want to use NULL encryption and AES GMAC with an Extended Sequence Number
(ESN), but it seems like DPDK doesn't support doing so.
According to RFC 4303, only the lower-order 32 bits of an ESN are stored in the
packet itself. The whole ESN is passed in separately, as part of the Additional
Authenticated Data (AAD).
DPDK allows you to set this AAD for AEAD encryption modes by adjusting
rte_crypto_op->sym->aead.aad.data and rte_crypto_op->sym->aead.aad.phys_addr.
However, DPDK treats AES GMAC as a separate authentication transform, not as an
AEAD transform with null plaintext. If you aren't using AEAD encryption, there
doesn't seem to be any way to include AAD, either in the crypto op or in the
rte_crypto_auth_xform struct.
As such, you can't supply an ESN without including it in the packet itself,
which violates RFC 4303:2.2.1, or copying the whole packet + ESN to another
buffer just to authenticate.
I'm a new DPDK developer, so apologies if I misunderstood the situation. I did
my best to carefully read all of the crypto examples and even investigated the
implementation of some of the drivers to see how they handle AES GMAC. So far I
have found no clues.
--
You are receiving this mail because:
You are the assignee for the bug.
[-- Attachment #2: Type: text/html, Size: 3635 bytes --]
reply other threads:[~2025-03-05 1:07 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bug-1669-3@http.bugs.dpdk.org/ \
--to=bugzilla@dpdk.org \
--cc=dev@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).