Difference between revisions of "Distinguished Encoding Rules"

From MgmtWiki
Jump to: navigation, search
(References)
(Context)
Line 3: Line 3:
  
 
==Context==
 
==Context==
The rules were created by the ITU standard S.690 which defines BER, CER and DER. Only DER has seen broad adoption in the [[Public Key Infrastructure]] used for TSL and other certificates.
+
The encoding rules are defined by the ITU standard S.690 which defines BER, CER and DER. Only DER has seen broad adoption in the [[Public Key Infrastructure]] used for TSL and other certificates. This is because BER and others give the developers options about encoding while DER does not. That makes it possible for a DER signed object to be deconstructed and reconstrued and will have the same hash and hence the same signature.
  
 
See the wiki page on [[Distinguished Name]]  (DN).
 
See the wiki page on [[Distinguished Name]]  (DN).
 
  
 
==Solution==
 
==Solution==

Revision as of 14:54, 29 June 2021

Full Title

Distinguished Encoding Rules (DER) we created to ASN.1 as a syntax for the digital representation of real-word entities such as entries in a telephone directory.

Context

The encoding rules are defined by the ITU standard S.690 which defines BER, CER and DER. Only DER has seen broad adoption in the Public Key Infrastructure used for TSL and other certificates. This is because BER and others give the developers options about encoding while DER does not. That makes it possible for a DER signed object to be deconstructed and reconstrued and will have the same hash and hence the same signature.

See the wiki page on Distinguished Name (DN).

Solution

  • This section describes a solution for Microsoft .NET 5.0 called pem-utils.
  • The code described was created by Wouter Huysentruit for .NET 4.7.1 (and NetStandard 2.0).
  • The revised code for .NET 5.0 in in the github repository https://github.com/TomCJones/pem-utils.

References

  • The [best Microsoft reference to DER] is in the Certificate Enrollment API, not in Windows apis.