Hi,

 

     I had a list of CA certificates, a few with different encoding than
PRINTABLE encoding like T61 and UTF8. I am running into the problem of
not able to verify some of the certificates issued by CA certificates in
cert store despite the fact that they do exist in the store. 

 

Deep analysis of the code revealed that the problem is with sorting and
searching. The sorted list is not correct and hence the binary search
fails. The root cause of the problem turned out to be the function -
X509_NAME_cmp. It appears that it doesn't implement the comparisons as
specified in RFC5280 which refers to RFC4518 for rules to do comparison
for Internationalized Names in Distinguished Names. To quote from
RFC4518 -
 
           The lack of precise specification for character string
matching has
           led to significant interoperability problems.  When used in
           certificate chain validation, security vulnerabilities can
arise.  To
           address these problems, this document defines precise
algorithms for
           preparing character strings for matching.
 
Is there a plan to implement RFC4518 for comparison rules? Or are they
being implemented currently? 
 
Is their a workaround to support a list of CA certificates with mixed
encoding in the meantime?
 
Thanks,
 -Dharmendra 
 

 

Reply via email to