raspberrypi / raspberrypi/linux
CONFIG_CRYPTO_SERPENT is not enabled
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 13.2k
- Forks
- 5.5k
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 21
Description
Describe the bug
The serpent encryption algorithm is not supported in the kernel.
Steps to reproduce the behaviour
cryptsetup benchmark- Results for serpent are N/A
Device (s)
Raspberry Pi 4 Mod. B
System
$ cat /etc/rpi-issue
Raspberry Pi reference 2023-05-03
Generated using pi-gen, https://github.com/RPi-Distro/pi-gen, 7c750947a959fb626a70c09fd17c65815df192ac, stage2
$ vcgencmd version
Mar 17 2023 10:50:39
Copyright (c) 2012 Broadcom
version 82f3750a65fadae9a38077e3c2e217ad158c8d54 (clean) (release) (start)
$ uname -a
Linux mainserver 6.1.74-v8+ #1 SMP PREEMPT Sun Jan 28 01:30:24 UTC 2024 aarch64 GNU/Linux
Logs
No response
Additional context
I am not entirely sure why the algorthm is disabled. I can reasonably come up with 2 options:
- Its too slow due to not being properly supported on the hardware side
- It doesnt work at all on some devices
To test both, I have created https://github.com/Aegeontis/rpi-linux-serpent. The repo compiles the kernel in exactly the same way as the upstream one, except enabling serpent support. I installed the compiled kernel from that repo (arm64 on rpi4) and everything works fine. Speeds are acceptable.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Search the kernel configuration for CONFIG_CRYPTO_SERPENT and compare the upstream Raspberry Pi build with the configuration used by the linked rpi-linux-serpent repository. Reproduce the issue with cryptsetup benchmark on a Raspberry Pi 4, then verify that serpent is no longer reported as N/A when the configuration is enabled.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, linux
- Domain
- cryptography, operating-systems, security
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100