VSIX: intermediate certificates not included in signature
- Dominant language
- C#
- Stars
- 581
- Forks
- 116
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 8
Description
**Describe the bug**
When signing a VSIX, intermediate certificates --- from both the primary and timestamp certificate chains --- are not included in the signature. This can fail verification in offline environments if machines do not already have those intermediate certificates available at verification time.
[Only the end certificate is included in the signature.](https://github.com/dotnet/sign/blob/dc01dca32471b368ad640358778e172d1bd249f9/src/Sign.Core/Tools/VsixSignTool/XmlSignatureBuilder.cs#L181C1-L183C7)
**Repro steps**
Sign a VSIX and inspect at the XML digital signature.
**Expected behavior**
Every non-root certificate in both the primary and timestamp certificate chains will be included in the signature.
**Actual behavior**
Only end certificates are included.
**Additional context**
VsixSignTool.exe neither includes these certificates nor uses them (if present) in certificate chain validation.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.