Skip to content

CABF SMIME BR 7.1.2.3.m - Adobe Extensions#763

Merged
christopher-henderson merged 8 commits intozmap:masterfrom
mara-soldan:smime_br_lint_7.1.2.3.m
Nov 19, 2023
Merged

CABF SMIME BR 7.1.2.3.m - Adobe Extensions#763
christopher-henderson merged 8 commits intozmap:masterfrom
mara-soldan:smime_br_lint_7.1.2.3.m

Conversation

@mara-soldan
Copy link
Copy Markdown
Contributor

Adding lints to check the presence and criticality of the Adobe x509 Extensions to cover SMIME BR 7.1.2.3.m:

Generation Adobe Extensions
Strict Prohibited
Multipurpose andLegacy MAY be present and SHALL NOT be marked critical. May include the Adobe Time‐stampX509 extension (1.2.840.113583.1.1.9.1) or the Adobe ArchiveRevInfo extension(1.2.840.113583.1.1.9.2)

Copy link
Copy Markdown
Contributor

@robplee robplee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is fine and the only real change needed should be no trouble.

)

func init() {
lint.RegisterLint(&lint.Lint{
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, the lint.Lint type is actually deprecated so this should be creating a lint.CertificateLint which is fairly similar but packages most of the fields that aren't the Lint into a LintMetadata struct. Same comment applies on the other lint too.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

addressed

Comment thread v3/util/oid.go Outdated

var (
//extension OIDs
AdobeTimestampOID = asn1.ObjectIdentifier{1, 2, 840, 113583, 1, 1, 9, 1} // Adobe Timestamp x509 extension
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the correct formatting "timestamp" or "time-stamp". RFC3161 has it as "Time-stamp" and most online references I can find follow this trend although I've not found any record of Adobe actually defining what their OID should be called.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

addressed

Copy link
Copy Markdown
Contributor

@robplee robplee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Really, only a couple of minor nits to address in this one.

return &adobeExtensionsLegacyMultipurposeCriticality{}
}

// CheckApplies returns true if the certificate's policies assert that it conforms to the multipurpose or legacy policy requirements defined in the SMIME BRs
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This comment doesn't mention the extra requirement that the certificate must be a subscriber certificate

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

addressed

Comment thread v3/lints/cabf_smime_br/lint_adobe_extensions_legacy_multipurpose_criticality.go Outdated
Comment thread v3/lints/cabf_smime_br/lint_adobe_extensions_legacy_multipurpose_criticality.go Outdated
Comment thread v3/lints/cabf_smime_br/lint_adobe_extensions_strict_presence.go Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants