VehicleHelper release security
Windows Authenticode signing runbook
Sign the immutable release, timestamp it, verify the trust chain, record the post-signing hash, and only then publish the candidate.
consent_0133SHA-256RFC 3161RSA public trust
Current state: procedure and tooling are ready; a validated public signing identity is still required. This page does not claim the current VehicleHelper download is signed.
Choose the identity
Microsoft Artifact SigningBest managed/CI path when the legal publisher is eligible for Public Trust in a supported region.
OV RSA certificateUse a public CA and its hardware token/HSM or remote signing service when Artifact Signing is unavailable in the publisher’s region.
Do not use self-signedIt does not establish public SmartScreen trust. EV no longer gets an automatic first-download bypass.
What signing changes
- Windows can display the validated publisher.
- Publisher reputation can carry across consistently signed versions.
- Smart App Control can evaluate a trusted RSA signature.
- A new publisher or new file hash may still receive an initial SmartScreen warning while reputation builds.
Release order — do not reorder
- Build a uniquely versioned, immutable `win-x64` release.
- Sign every shipped PE file after its final byte change. Sign `VehicleHelper.exe` and any separately shipped/extracted helper EXEs or DLLs.
- Add an RFC 3161 SHA-256 timestamp.
- Verify with SignTool and PowerShell.
- Record SHA-256 after signing.
- Package/upload without modifying signed files, then use the existing `artheru` approval gate.
- Test the downloaded bytes and every helper-launching code path on clean Windows 11.
Download signing scriptPlain runbook
CA certificate in Windows store
.\Sign-WindowsRelease.ps1 `
-BinaryPath .\VehicleHelper.exe `
-CertificateThumbprint 'YOUR_THUMBPRINT'
The private key stays in the certificate provider. The script never accepts a PFX password.
Microsoft Artifact Signing
.\Sign-WindowsRelease.ps1 `
-BinaryPath .\VehicleHelper.exe `
-MetadataPath .\metadata.json `
-DlibPath .\Azure.CodeSigning.Dlib.dll
Use matching x64 SignTool/dlib versions and the region-specific Artifact Signing endpoint.
Required verification
signtool.exe verify /pa /all /v .\VehicleHelper.exe
Get-AuthenticodeSignature .\VehicleHelper.exe |
Format-List Status,StatusMessage,SignerCertificate,TimeStamperCertificate
Get-FileHash -Algorithm SHA256 .\VehicleHelper.exe
Ship only when SignTool exits 0, PowerShell reports Valid, the publisher is the expected legal identity, the timestamp exists, and the uploaded hash matches.