I'm working with certificates programmatically through .NET. I usually give the certificate a DN by giving it string like this: "c=eg,s=cairo,st=Nozha,cn=Foo Ltd.,..”

But there is another way to give a DN by initializing an object of type X500DistinguishedName.

I knew from IETF that X500 standard relates to the LDAP, I’ve read a lot of articles (not the whole IETF RFC) about LDAP to understand it and its relationship with certificates. But the LDAP is a big topic that relates to servers, databases, read/query...what does all that have to do with certificates?, what I see is that the DN for certificates is like the name of the child.. The only thing that may be common is the hierarchical representation of RDNs.

Is there something behind this I don’t understand?

  • LDAP is a directory protocol that allows dynamically looking up identity information (when online); X.509 certificates are static documents that carry identity information (even when offline). They both represent identity, so by their nature they will have commonalities. You would choose which to use at which time based on your requirements, such as a tech need (x.509 for SSL/TLS), dynamic changes (LDAP for Identity & Access Management, managing roles for RBAC), interchange with untrusted third parties (X.509), etc. Jan 18, 2021 at 23:51
  • X.500 name format in subject and issuer fields is a heritage of X.509 profile. Although X.500 refers to DAP directory, there is no mapping between X.500 name in certificate and DAP directory. I'm not aware of any app that would use these fields for direct mapping to DAP entity.
    – Crypt32
    Jan 19, 2021 at 9:25


You must log in to answer this question.

Browse other questions tagged .