Strictness of comparing distinguished names

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear list,

I have encountered a behavior difference between the CMS
routines in OpenSSL and the equivalent functionality in
another CMS implementation, and I wonder which is the
correct behavior.

I was examining a CMS signature made by someone else and
found that some implementations accepted it as valid while
others said it was not valid.

In this particular CMS signature, the distinguished name
of the certificate issuer is encoded slightly differently
in the certificate and in the PKCS#7 SignerInfo structure.

Specifically, one element of the name is tagged as a
T61STRING in the actual certificate, but as a UTF8STRING
in the SignerInfo.issuerAndSerialNumber.issuer field.
This name element is actually pure 7 bit printable ASCII
(letters and underscores) in this particular case, so the
two encodings have the same length and the same content-
bytes, only different tag bytes.

I found that openssl accepts this difference, while at
least one Java version does not.

So I am wondering what the officially correct behavior is
when verifying such a case.  Should the
SignerInfo.issuerAndSerialNumber.issuer be treated as
matching or as not matching a certificate in which an
otherwise identical string is tagged differently but
represents the same textual value (because it uses only
the common subset of the two string encodings)?

Enjoy
Jakob
-- 
Jakob Bohm, CIO, Partner, WiseMo A/S.  http://www.wisemo.com
Transformervej 29, 2860 S?borg, Denmark.  Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mta.openssl.org/pipermail/openssl-users/attachments/20151002/78ec520b/attachment.html>


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux