-
Notifications
You must be signed in to change notification settings - Fork 2.1k
sys/psa_crypto: add monocypher as ed25519 software backend #21822
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cdd7e57 to
06f5645
Compare
8bba6f7 to
c4b71d5
Compare
Contributor
Author
|
Rebased this on |
benpicco
approved these changes
Nov 7, 2025
Contributor
Murdock agrees 👀 diff --git a/tests/sys/psa_crypto/Makefile.ci b/tests/sys/psa_crypto/Makefile.ci
index 5c1a01c4f4..dfd176a483 100644
--- a/tests/sys/psa_crypto/Makefile.ci
+++ b/tests/sys/psa_crypto/Makefile.ci
@@ -1,14 +1,7 @@
BOARD_INSUFFICIENT_MEMORY := \
- arduino-duemilanove \
- arduino-leonardo \
- arduino-mega2560 \
- arduino-nano \
- arduino-uno \
- atmega328p \
- atmega328p-xplained-mini \
- atmega8 \
bluepill-stm32f030c8 \
i-nucleo-lrwan1 \
+ nucleo-c031c6 \
nucleo-f030r8 \
nucleo-f031k6 \
nucleo-f042k6 \
@@ -19,6 +12,7 @@ BOARD_INSUFFICIENT_MEMORY := \
slstk3400a \
stk3200 \
stm32c0116-dk \
+ stm32c0316-dk \
stm32f030f4-demo \
stm32f0discovery \
stm32g0316-disco \ |
Contributor
Author
Kind of - apparently monocypher is also 32-bit only? Anyways, I'll probably need such an update for |
Contributor
|
On it 🫡 |
Contributor
|
There you go: diff --git a/tests/sys/psa_crypto_eddsa/Makefile.ci b/tests/sys/psa_crypto_eddsa/Makefile.ci
index 6a2fca3caf..4e4f6862b6 100644
--- a/tests/sys/psa_crypto_eddsa/Makefile.ci
+++ b/tests/sys/psa_crypto_eddsa/Makefile.ci
@@ -1,14 +1,14 @@
BOARD_INSUFFICIENT_MEMORY := \
- arduino-duemilanove \
- arduino-leonardo \
- arduino-nano \
- arduino-uno \
- atmega328p \
- atmega328p-xplained-mini \
- atmega8 \
+ nucleo-c031c6 \
nucleo-f031k6 \
+ nucleo-f042k6 \
nucleo-l011k4 \
+ nucleo-l031k6 \
samd10-xmini \
stk3200 \
+ stm32c0116-dk \
+ stm32c0316-dk \
stm32f030f4-demo \
+ stm32g0316-disco \
+ weact-g030f6 \
# |
switch from c25519 to monocypher as default
c4b71d5 to
7f85d3a
Compare
Contributor
Author
|
Thanks 🤗 Applied, force-pushed and queued to merge again :) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Area: pkg
Area: External package ports
Area: sys
Area: System
Area: tests
Area: tests and testing framework
CI: ready for build
If set, CI server will compile all applications for all available boards for the labeled PR
Type: enhancement
The issue suggests enhanceable parts / The PR enhances parts of the codebase / documentation
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Contribution description
Monocypher offers an implementation of Ed25519 that is much faster than the
c25519implementation, at the cost of higher flash consumption: See Table 4 of https://arxiv.org/pdf/2106.05577This PR adds monocypher as a PSA Crypto API backend and enables it as default software backend.
Testing procedure
make -C tests/sys/psa_crypto_eddsa all flash testshould selectmonocypheras default onBOARD=nativeand complete successfully.On a
BOARD=nrf52840dk, we get the following numbers:Issues/PRs references
Builds on and includes #21821