Commit 5fa8cb2
Add automatic AuthRoot cache for portable trust (#24)
## Summary
- Add automatic Microsoft AuthRoot CAB caching for portable trust
verification when no explicit anchors are supplied, with a 7-day stale
refresh window and environment overrides.
- Route supported `--mode portable verify` calls through portable trust
verification by default when auto trust is enabled, and align the
PowerShell module cache behavior.
- Normalize exact duplicate certificates in Authenticode
`SignedData.certificates` bags so Windows-valid Azure Artifact Signing
signatures parse in the strict Rust CMS stack.
## Validation
- `cargo build --locked`
- `cargo clippy --workspace --all-targets --locked`
- `cargo test -p psign-sip-digest pkcs7_wire --locked`
- `cargo test -p psign-authenticode-trust --lib --locked`
- `cargo test -p psign-authenticode-trust authroot_cache --locked`
- `dotnet build
dotnet/Devolutions.Psign.PowerShell/Devolutions.Psign.PowerShell.csproj`
- `bash scripts/linux-portable-validation.sh`
- `psign-tool --mode portable verify tursodb.exe` with a fresh AuthRoot
cache
Known baseline: full `cargo test --workspace --locked` still fails on
the existing `tests/fixtures/msix-minimal/AppxManifest.xml` fixture
manifest-size mismatch.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>1 parent 0eddd27 commit 5fa8cb2
21 files changed
Lines changed: 881 additions & 69 deletions
File tree
- PowerShell
- crates
- psign-authenticode-trust
- src
- psign-digest-cli/src
- psign-sip-digest/src
- docs
- dotnet/Devolutions.Psign.PowerShell/Trust
- src
- tests
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
95 | 95 | | |
96 | 96 | | |
97 | 97 | | |
98 | | - | |
| 98 | + | |
99 | 99 | | |
100 | 100 | | |
101 | 101 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
86 | 86 | | |
87 | 87 | | |
88 | 88 | | |
89 | | - | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
90 | 92 | | |
91 | 93 | | |
92 | 94 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
20 | 21 | | |
21 | 22 | | |
22 | 23 | | |
23 | | - | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| |||
0 commit comments