Repository navigation
WARDEN 0.3.7 > 这份草稿由 tools\release.ps1 自动生成 ✓ 发之前自己读一遍、补上"这次改了什么" ✓ ## 文件与校验值(SHA256) ``` 0c2bceebb16c670b0a23e84c264e25c3a2941b6b28105c7673538d9da39249d7 WARDEN.exe
0e95768363ad7695e18ae949938948c37f22a63f739838d8eab2666551fa4565 WARDEN-Setup.exe
9974472926d4365935ed95e4977f2e9c52eebd05b9850566c3ed3398836a9fe1 warden-cli.exe
ee3c81221f2fa70b3e741b1121e116c26993e07a828376f300545175c42e529c RedTeam.exe ## 怎么装 1. 把 `WARDEN-Setup.exe` 拷到目标机器(离线也能装 ✓) 2. 双击 → 按向导走(默认装在 `%LOCALAPPDATA%\Programs\WARDEN`,不需要管理员权限 ✓) ## 怎么验证来源(★ 别只看哈希 ✗ 哈希本身也可能被一起换掉 ✓) 1. 导入发布者公钥(README 里也有同一份指纹 ✓): gpg --recv-keys EBFB6B895D8EEC8F59CE0A26E23876CBBDAE330F 2. 校验校验和文件【本身】的签名(这一步才是关键 ✓): gpg --verify SHA256SUMS.txt.asc SHA256SUMS.txt 3. 再对文件算哈希,和 SHA256SUMS.txt 里的逐条比: sha256sum -c SHA256SUMS.txt # Linux / Git Bash Get-FileHash WARDEN-Setup.exe -Algorithm SHA256 # Windows PowerShell ``` 4. 签名在这里 → SHA256SUMS.txt.asc ✓(发布者指纹:`EBFB6B895D8EEC8F59CE0A26E23876CBBDAE330F`) ## 许可证 AGPL-3.0-or-later —— 注意:把 WARDEN 做成在线服务也要开源 ✓ ## 这次改了什么 见下一节 ↓
这次改了什么(0.3.7)
唯一实质变更:更新内嵌的发布者公钥。
- 10-12 给发布密钥新增了一个 [S] 签名子密钥(
6DF25BD4A2362396),
从此发布物由子密钥签名、主密钥保持离线 ✓ - 但 0.3.6 及更早版本里内嵌的是旧公钥(不含该子密钥)✗
→ 结果:它们验不过由新子密钥签出来的发布物(实测报No public key) - 0.3.7 把三处内嵌公钥全部更新:
keys\PGP-PUBLIC-KEY.asc、src\PgpVerify.cs、tools\setup\PgpVerify.cs✓
指纹不变(仍是EBFB6B895D8EEC8F59CE0A26E23876CBBDAE330F)✓ 只是多了一个子密钥 ✓
附带的工程修复
- 给 4 个含中文却缺 UTF-8 BOM 的脚本补上 BOM(
build.ps1、tools\release.ps1、
tools\pre-release-check.ps1、tools\tools-build.ps1)
—— 否则在 Windows PowerShell 5.1 下会因中文被按 ANSI 解码而解析失败 ✗(实测踩到)
升级提示
- 用 0.3.6 及更早版本的用户,建议升级到 0.3.7:只有 0.3.7 及以后的内置公钥能验证本次签名 ✓
- 发布物签名指纹仍为
EBFB6B895D8EEC8F59CE0A26E23876CBBDAE330F✓ 可用它核对 ✓