diff --git a/Codec/Encryption/OpenPGP/Signatures.hs b/Codec/Encryption/OpenPGP/Signatures.hs
--- a/Codec/Encryption/OpenPGP/Signatures.hs
+++ b/Codec/Encryption/OpenPGP/Signatures.hs
@@ -33,6 +33,7 @@
   , signUserIDwithRSA
   , crossSignSubkeyWithRSA
   , signDataWithEd25519
+  , signDataWithEd25519Legacy
   , signDataWithEd25519V6
   , signDataWithEd448
   , signDataWithEd448V6
@@ -1531,10 +1532,10 @@
 signDataWithRSAV6 st salt prv has uhas payload =
   signRSAV6Core CleartextCompat st SHA512 salt has uhas prv payload
 
-ed25519Params :: (String, Int, Int, PubKeyAlgorithm)
+-- FIXME: clean this up
+ed25519Params, ed25519LegacyParams, ed448Params :: (String, Int, Int, PubKeyAlgorithm)
 ed25519Params = ("Ed25519", 64, 32, PKA.Ed25519)
-
-ed448Params :: (String, Int, Int, PubKeyAlgorithm)
+ed25519LegacyParams = ("Ed25519Legacy", 64, 32, PKA.EdDSA)
 ed448Params = ("Ed448", 114, 57, PKA.Ed448)
 
 signDataWithEdDSAV4Generic ::
@@ -1573,6 +1574,16 @@
   -> Either SignError SignaturePayload
 signDataWithEd25519 st sk has uhas payload =
   signDataWithEdDSAV4Generic ed25519Params (ed25519Signer sk) CleartextCompat SHA512 st has uhas payload
+
+signDataWithEd25519Legacy ::
+     SigType
+  -> Ed25519.SecretKey
+  -> [SigSubPacket]
+  -> [SigSubPacket]
+  -> ByteString
+  -> Either SignError SignaturePayload
+signDataWithEd25519Legacy st sk has uhas payload =
+  signDataWithEdDSAV4Generic ed25519LegacyParams (ed25519Signer sk) CleartextCompat SHA512 st has uhas payload
 
 signDataWithEd25519V6 ::
      SigType
diff --git a/Codec/Encryption/OpenPGP/Types/Internal/Base.hs b/Codec/Encryption/OpenPGP/Types/Internal/Base.hs
--- a/Codec/Encryption/OpenPGP/Types/Internal/Base.hs
+++ b/Codec/Encryption/OpenPGP/Types/Internal/Base.hs
@@ -486,6 +486,7 @@
 instance Pretty Fingerprint where
   pretty = pretty . bsToHexUpper . unFingerprint
 
+-- FIXME: we should not be exporting this
 key :: String -> AK.Key
 key = AK.fromText . T.pack
 
diff --git a/hOpenPGP.cabal b/hOpenPGP.cabal
--- a/hOpenPGP.cabal
+++ b/hOpenPGP.cabal
@@ -1,6 +1,6 @@
 Cabal-version:       3.4
 Name:                hOpenPGP
-Version:             3.0.1.1
+Version:             3.0.2
 Synopsis:            native Haskell implementation of OpenPGP (RFC9580)
 Description:         native Haskell implementation of OpenPGP (RFC9580), with some backwards compatibility
 Homepage:            https://salsa.debian.org/clint/hOpenPGP
@@ -332,4 +332,4 @@
 source-repository this
   type:     git
   location: https://salsa.debian.org/clint/hOpenPGP.git
-  tag:      v3.0.1.1
+  tag:      v3.0.2
