git: tcplay - Use cryptoapi instead of /dev/crypto
Michael Neumann
mneumann at crater.dragonflybsd.org
Mon Apr 14 07:27:08 PDT 2025
commit c06d1031abbee2577e05da83882039fa6d19302a
Author: Michael Neumann <mneumann at ntecs.de>
Date: Sun Apr 13 13:34:28 2025 +0200
tcplay - Use cryptoapi instead of /dev/crypto
tcplay(8) is a BSD-licensed Truecrypt/Veracrypt compatible
implementation by Alex Hornung.
libtcplay and tcplay no longer depend on the existence of /dev/crypto.
OpenBSD, for one, removed /dev/crypto. Also, there are two bug
reports #3311 and #3370 related to tcplay and/or cryptodev. I could
not reproduce them anymore before this commit. So they might have
already been fixed by other commits or they might be heisebugs.
Why can't we use the algorithms from LibreSSL?
Well, while we could use AES from LibreSSL, LibreSSL does not support
Twofish and Serpent, two non-standardized algorithms. So we'd either
have to drop Twofish and Serpent, or use cryptoapi for just those.
Note that when using tcplay, all file encryption is performed by
"dm_target_crypt" under the hood.
Tested by creating a Veracrypt-encrypted drive using a chain of AES,
Twofish and Serpent on Windows and then trying to open and use it on
DragonFly. Works flawlessly.
Summary of changes:
lib/libtcplay/Makefile | 9 +-
lib/libtcplay/{crypto-dev.c => crypto-api.c} | 135 ++++++++-------------------
2 files changed, 49 insertions(+), 95 deletions(-)
copy lib/libtcplay/{crypto-dev.c => crypto-api.c} (50%)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/c06d1031abbee2577e05da83882039fa6d19302a
--
DragonFly BSD source repository
More information about the Commits
mailing list