pqfile v4.0.0
Full Changelog: v3.3.0...v4.0.0
Breaking changes
- Argon2id p=4: All new passphrase-protected keys use
p=4(up fromp=1). Keys encrypted with p=1 (pre-4.0) returnPqfileError::LegacyKeyFormatand must be migrated withpqfile repassphrase --from-legacybefore use. - v8 anonymous format:
--anonymous-recipientsnow emits v8, which drops the per-slotkem_variantfield entirely. All slots are a uniform 1616 bytes. v7 files remain readable but v7 write is removed. pqfilelibrary at 4.0.0: The library crate version now matches the CLI/GUI version sequence.PqfileError::LegacyKeyFormatis a new variant introduced in this release.
New features
- Hardware-backed private keys:
pqfile keygen --hardwareandpqfile sign-keygen --hardwarestore the key seed in the OS credential store (Windows Credential Manager, macOS Keychain, Linux Secret Service). The seed never touches disk. pqfile repassphrase: Change or upgrade the passphrase on any key type. Pass--from-legacyto migrate a p=1 key to p=4.- Async I/O (
pqfilefeature"async"):encrypt_stream_asyncanddecrypt_stream_asyncbacked by Tokio. Ciphertext format is identical to the synchronous API. - STABILITY.md: Formal 1.0 stability promise for the public API surface.