Set default DigestAlgorithm with SHA256

This commit is contained in:
Paul van Brouwershaven
2022-07-15 17:22:57 +02:00
parent dcc44d5779
commit 50420e5013

View File

@@ -162,6 +162,9 @@ func (context *SignContext) SignPDF() error {
if context.SignData.Signature.DocMDPPerm == 0 {
context.SignData.Signature.DocMDPPerm = 1
}
if !context.SignData.DigestAlgorithm.Available() {
context.SignData.DigestAlgorithm = crypto.SHA256
}
context.OutputBuffer = filebuffer.New([]byte{})
@@ -199,6 +202,9 @@ func (context *SignContext) SignPDF() error {
context.SignatureMaxLength += uint32(hex.EncodedLen(512))
}
// Add size of digest algorithm twice (for file digist and signing certificate attribute)
context.SignatureMaxLength += uint32(hex.EncodedLen(context.SignData.DigestAlgorithm.Size() * 2))
// Add size for my certificate.
degenerated, err := pkcs7.DegenerateCertificate(context.SignData.Certificate.Raw)
if err != nil {