[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Empty IA5String



Steven Legg writes:
> Component matching allows any string matching rule to be applied to any
> string component of any ASN.1 type. There is nothing to prevent those
> string components having zero length. We might be able to force the
> IA5 String syntax to have at least one character but we can't do the
> same for every string component of every ASN.1 type.

Can that be explained briefly, or can you suggest some parts of rfc3687
to read to see what's going on?  I'd rather not read 42 pages of RFC
just to follow this thread.

At the moment I'm kind of hoping I've misunderstood you completely -
currently I'm wondering: (No need to reply to the following if the
explanation is just that I misunderstand:-)

Why should an empty string be treated as a valid Directory String,
instead of having the comparison return Undefined or an error?

More generally, if one can pass any string to any matching rule
regardless of the expected syntax (is that assertion syntax or attribute
syntax?), why should e.g. numericStringMatch("xx123", "123") be treated
as anything sensible, with a defined result?

Are IA5 String, Printable String and Numeric String defined in terms of
an 8-bit encoding (e.g. UTF-8) in ASN.1?  Otherwise, when using
caseIgnoreIA5Match, numericStringMatch or telephoneNumberMatch to
compare an attribute component with an 8-bit assertion value, which
character encoding is that assertion value presumed to use?  (I expect
the attribute component's syntax provides the component's character
encoding.)

-- 
Hallvard