hOpenPGP-3.6.1: native Haskell implementation of OpenPGP (RFC9580)
Safe HaskellNone
LanguageHaskell2010

Data.Conduit.OpenPGP.Decrypt

Synopsis

Documentation

data DecryptKeyResolution Source #

Build a stateful PKESKResolver that iterates over a pre-populated candidate list. The returned resolver yields candidates in order and returns ResolveExhausted once the list is depleted. | How to resolve secret keys for PKESK-encrypted messages.

Constructors

DecryptWithoutPKESK

Do not attempt PKESK decryption; fall through to manual session-key input via the passphrase callback instead.

DecryptWithKeyring SecretKeyring

Resolve secret keys from a SecretKeyring. Only unencrypted secret keys (not passphrase-protected) are used. For passphrase-protected keys, use DecryptWithKeyringAndPassphrase.

DecryptWithKeyringAndPassphrase SecretKeyring (SomePKPayload -> IO (Maybe Passphrase))

Resolve secret keys from a SecretKeyring, unlocking passphrase- protected keys using the provided callback. The callback receives the public key payload and returns the passphrase, or Nothing to skip.

DecryptWithUnwrapCandidatesCallback (KeyIdentifier -> PubKeyAlgorithm -> IO [PKESKRecipientKey])

Preferred callback form for non-keyring key material. The callback receives a typed key identifier (8-octet key ID, fingerprint, or wildcard) plus the packet public-key algorithm, then returns all matching candidates in priority order. hOpenPGP iterates candidates deterministically without re-calling the callback for each retry.

data PKESKRecipientKey Source #

Constructors

PKESKRecipientKey 

Fields