You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There's a feature in algos.SignedDigestAlgorithm to set parameters to Null when using certain algorithms. "rsassa_pkcs1v15" is missing.
While this is easily fixed, same problem occurs for KeyEncryptionAlgorithm.
I'm wondering why you're using different classes, according to rfc5652 both SignatureAlgorithmIdentifier and KeyEncryptionAlgorithmIdentifier are the same as AlgorithmIdentifier. And rfc4055 defines this "parameters MUST be present and MUST be NULL" constraint for AlgorithmIdentifier.
So shouldn't the logic for Null be inside AlgorithmIdentifier and the other two classes inherit from here?
The text was updated successfully, but these errors were encountered:
The reason algos.SignedDigestAlgorithmId and cms.KeyEncryptionAlgorithmId are different is because they are for different purposes - in other words, primarily for semantics.
I'm not keen in using inheritance with a class that has _fields, especially when one of the fields would need to be redefined for the child class.
I created a mixin in 381a4da that should ensure we have core.Null() for parameters of the various structures that use the OIDs from RFC 4055. I'm not 100% happy with the solution, if only because if someone created their own AlgorithmIdentifier structure that uses the OIDs, they would have to include algos._ForceNullParameters, which intended to be "private".
There's a feature in algos.SignedDigestAlgorithm to set parameters to Null when using certain algorithms. "rsassa_pkcs1v15" is missing.
While this is easily fixed, same problem occurs for KeyEncryptionAlgorithm.
I'm wondering why you're using different classes, according to rfc5652 both SignatureAlgorithmIdentifier and KeyEncryptionAlgorithmIdentifier are the same as AlgorithmIdentifier. And rfc4055 defines this "parameters MUST be present and MUST be NULL" constraint for AlgorithmIdentifier.
So shouldn't the logic for Null be inside AlgorithmIdentifier and the other two classes inherit from here?
The text was updated successfully, but these errors were encountered: