Releases: Alpaq92/TopSecret.ProtectedString
Releases · Alpaq92/TopSecret.ProtectedString
Release list
v2.1.1
v2.1.0
v2.0.0
2.0.0 (2026-07-04)
⚠ BREAKING CHANGES
- security: KeyAtRestProtectorFactory now performs a destructive (generate-and-discard) availability probe on Android the first time KeyAtRestProtection.HardwareBackedRequired or HardwareBackedPreferred is used and no external provider is registered, mirroring the existing Apple behavior. Also, protectors built under earlier 1.x releases wrapped their master key under a single fixed Keystore alias; that alias is now superseded (swept on next construction) and no attempt is made to migrate a key wrapped under it — restart any long-lived process holding a 1.x Android hardware-tier protector across the upgrade.
Features
- security: fix Android Keystore rotation bug, harden SEP key generation (f95219c)
Bug Fixes
- demo: paint the first loading dot immediately, tighten cadence to 150ms (9b3d11c)
v1.1.0
v1.0.1
v1.0.0
1.0.0 (2026-07-04)
⚠ BREAKING CHANGES
- argon2: ComputeArgon2idHash / VerifyArgon2idHash no longer throw PlatformNotSupportedException on net10.0-browser at the default DegreeOfParallelism = 1 — they now complete successfully. Callers that were catching PlatformNotSupportedException specifically to detect "running in the browser" for this API will no longer see it for the default case; DegreeOfParallelism > 1 still throws on a single-threaded host.
Features
- argon2: switch to TopSecret.Cryptography.Argon2 — Argon2id now runs in the browser (91f8b10)
Bug Fixes
- browser: shrink BouncyCastle's key-material reclaim window (e74358d)
Documentation
v0.1.2
v0.1.1
v0.1.0
0.1.0 (2026-07-04)
Features
- Bump the nuget-minor-and-patch group with 3 updates (1f4538a)
- Bump the nuget-minor-and-patch group with 3 updates (017c553)
- demo: fresh random inputs every run; async-aware test runner (610819b)
- demo: run Argon2 in the browser at p=1; lengthen intro; run-again status text (dbc97aa)
- live NUnit test run in the demo; line-by-line output; metric + UX fixes (a8052d8)
- ProtectedString and ProtectedBlob — encrypted in-memory secrets for .NET (830ab1d)
Bug Fixes
- argon2: fail fast on the browser instead of wedging inside the KDF (20949e1)
- CI restore across TFMs, wasm demo run-again, larger demo blob (597e5bd)
- ci: unhang the ubuntu leg — drive swtpm in linuxTrm raw mode (077ad45)
- demo: Run again shows immediate status, no blank, no delay (c004cae)
- deps: Bump actions/checkout from 4 to 7 (3cba776)
- deps: Bump actions/checkout from 4 to 7 (b426b48)
- deps: Bump actions/deploy-pages from 4 to 5 (48a80c4)
- deps: Bump actions/deploy-pages from 4 to 5 (bede632)
- deps: Bump actions/setup-dotnet from 4 to 5 (5916d5b)
- deps: Bump actions/setup-dotnet from 4 to 5 (a77452b)
- deps: Bump actions/upload-pages-artifact from 3 to 5 (649baa3)
- deps: Bump actions/upload-pages-artifact from 3 to 5 (a7f3a4c)
- deps: Bump dependabot/fetch-metadata from 2 to 3 (4e01fd4)
- deps: Bump dependabot/fetch-metadata from 2 to 3 (09bd445)
- green CI, working Run-again, Pages registration, 0.1.0 bootstrap (127e77d)
- revert stray Roslyn bump, scope Pages restore, harden dependabot (a9e00a8)
Documentation
- badges in one flowing row, no forced line breaks (0c8bf85)
- HTML badge tags (deterministic render), drop blank lines in header (8d86020)
- left-align the live-demo call-to-action, lengthen it (fcc13e9)
- MIT-only LICENSE for auto-detection; full-height demo terminal (0324cc3)
- shared NuGet readme for all five packages; honest Argon2 browser status (5be18af)
- spacing below badges; demo(wasm): autoscroll xterm as output streams (978b80f)