From: "PierreGondois" <pierre.gondois@arm.com>
To: devel@edk2.groups.io
Cc: Sami Mujawar <sami.mujawar@arm.com>,
Leif Lindholm <quic_llindhol@quicinc.com>,
Ard Biesheuvel <ardb+tianocore@kernel.org>,
Rebecca Cran <rebecca@bsdio.com>,
Michael D Kinney <michael.d.kinney@intel.com>,
Liming Gao <gaoliming@byosoft.com.cn>,
Edward Pickup <Edward.Pickup@arm.com>
Subject: [PATCH RESEND v1 0/7] Add AesLib and ArmAesLib
Date: Wed, 29 Jun 2022 21:13:48 +0200 [thread overview]
Message-ID: <20220629191355.2618844-1-Pierre.Gondois@arm.com> (raw)
From: Pierre Gondois <pierre.gondois@arm.com>
Bugzilla: Bug 3970 (https://bugzilla.tianocore.org/show_bug.cgi?id=3970)
To fasten AES encryption/decryption process or create a
Deterministic Random Bits Generator (Drbg), add a library using
Arm's AES instructions (AESE AESD, AESMC, AESIMC).
The test vectors available in the CTR_DRBG_AES256 sections of
https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Standards-and-Guidelines/documents/examples/CTR_DRBG_noDF.pdf
were used for validation. Indeed, the Drbg implementation in a
following patch-set relies on the AES encryption.
This patch-set can seen at:
https://github.com/PierreARM/edk2/tree/Arm_Aes_v1
This patch has the following dependency:
- [PATCH v3 00/22] Add Raw algorithm support using Arm FW-TRNG interface
https://edk2.groups.io/g/devel/message/90845
Pierre Gondois (7):
ArmPkg: Update Armpkg.ci.yaml
ArmPkg/ArmDisassemblerLib: Replace RotateRight()
ArmPkg/ArmLib: Add ArmReadIdIsaR5() helper
ArmPkg/ArmLib: Add ArmHasAesExt()
MdePkg/AesLib: Definition for AES library class interface
MdePkg/AesLib: Add NULL instance of AesLib
ArmPkg/ArmAesLib: Add ArmAesLib
ArmPkg/ArmPkg.ci.yaml | 1 +
ArmPkg/ArmPkg.dsc | 3 +-
ArmPkg/Include/Library/ArmLib.h | 12 +-
.../Library/ArmAesLib/AArch64/AArch64AesLib.S | 183 ++++++++++++
ArmPkg/Library/ArmAesLib/Arm/ArmAesLib.S | 183 ++++++++++++
ArmPkg/Library/ArmAesLib/ArmAesLib.c | 261 ++++++++++++++++++
ArmPkg/Library/ArmAesLib/ArmAesLib.h | 96 +++++++
ArmPkg/Library/ArmAesLib/ArmAesLib.inf | 34 +++
.../ArmDisassemblerLib/ArmDisassembler.c | 11 +-
ArmPkg/Library/ArmLib/AArch64/AArch64Lib.c | 13 +
ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h | 1 +
ArmPkg/Library/ArmLib/Arm/ArmLibSupport.S | 7 +-
ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c | 13 +
ArmPkg/Library/ArmLib/Arm/ArmV7Lib.h | 13 +
MdePkg/Include/Library/AesLib.h | 104 +++++++
MdePkg/Library/AesLibNull/AesLibNull.c | 87 ++++++
MdePkg/Library/AesLibNull/AesLibNull.inf | 24 ++
MdePkg/MdePkg.dec | 4 +
MdePkg/MdePkg.dsc | 1 +
19 files changed, 1038 insertions(+), 13 deletions(-)
create mode 100644 ArmPkg/Library/ArmAesLib/AArch64/AArch64AesLib.S
create mode 100644 ArmPkg/Library/ArmAesLib/Arm/ArmAesLib.S
create mode 100644 ArmPkg/Library/ArmAesLib/ArmAesLib.c
create mode 100644 ArmPkg/Library/ArmAesLib/ArmAesLib.h
create mode 100644 ArmPkg/Library/ArmAesLib/ArmAesLib.inf
create mode 100644 MdePkg/Include/Library/AesLib.h
create mode 100644 MdePkg/Library/AesLibNull/AesLibNull.c
create mode 100644 MdePkg/Library/AesLibNull/AesLibNull.inf
--
2.25.1
next reply other threads:[~2022-06-29 19:14 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-29 19:13 PierreGondois [this message]
2022-06-29 19:13 ` [PATCH RESEND v1 1/7] ArmPkg: Update Armpkg.ci.yaml PierreGondois
2022-06-29 19:13 ` [PATCH RESEND v1 2/7] ArmPkg/ArmDisassemblerLib: Replace RotateRight() PierreGondois
2022-06-29 19:13 ` [PATCH RESEND v1 3/7] ArmPkg/ArmLib: Add ArmReadIdIsaR5() helper PierreGondois
2022-06-29 19:13 ` [PATCH RESEND v1 4/7] ArmPkg/ArmLib: Add ArmHasAesExt() PierreGondois
2022-06-29 19:13 ` [PATCH RESEND v1 5/7] MdePkg/AesLib: Definition for AES library class interface PierreGondois
2022-06-30 0:29 ` [edk2-devel] " Yao, Jiewen
2022-07-01 9:48 ` PierreGondois
2022-07-01 11:55 ` Yao, Jiewen
2022-07-01 13:58 ` PierreGondois
2022-07-01 14:40 ` Yao, Jiewen
2022-07-01 15:22 ` PierreGondois
2022-07-01 16:11 ` Yao, Jiewen
2022-07-04 13:16 ` PierreGondois
2022-06-29 19:13 ` [PATCH RESEND v1 6/7] MdePkg/AesLib: Add NULL instance of AesLib PierreGondois
2022-06-29 19:13 ` [PATCH RESEND v1 7/7] ArmPkg/ArmAesLib: Add ArmAesLib PierreGondois
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-list 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=20220629191355.2618844-1-Pierre.Gondois@arm.com \
--to=devel@edk2.groups.io \
/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