[xmlsec] Problem with some cert which has a negative serial number
Aleksey Sanin
aleksey at aleksey.com
Mon Feb 21 09:04:12 PST 2005
OK, let me think about this. It should be possible to fix but
I need to figure out the simeplest way of doing this.
Aleksey
Chandler Peng wrote:
> Aleksey Sanin wrote:
>
>> OK, I see it now. However, I am not sure I understand how to fix
>> your problem w/o breaking Michael's code because it seems that
>> in his case "B2 ..." is *always* a positive integer. I am coping
>> this email to Michael too get his opinion.
>>
>> Meantime, it would be great if you can try to parse your certificate
>> with openssl and check if it would consider this number negative or
>> positive.
>
>
> I have checked the cert in openssl.0.9.4 and get the result list below
> using the command "openssl asn1parse -inform DER -in c:\10.cer".
> The serial number in cert is "80E3EDD4CCCA58A846A9D734E3C3D90B", the
> result parsed by openssl is "-7F1C122B3335A757B95628CB1C3C26F5".
> I attached the certificate for you analysis.
>
> 0:d=0 hl=4 l= 502 cons: SEQUENCE
> 4:d=1 hl=4 l= 351 cons: SEQUENCE
> 8:d=2 hl=2 l= 3 cons: cont [ 0 ]
> 10:d=3 hl=2 l= 1 prim: INTEGER :02
> 13:d=2 hl=2 l= 16 prim: INTEGER
> :-7F1C122B3335A757B95628CB1C3C26F5
> 31:d=2 hl=2 l= 13 cons: SEQUENCE
> 33:d=3 hl=2 l= 9 prim: OBJECT :md5WithRSAEncryption
> 44:d=3 hl=2 l= 0 prim: NULL
> 46:d=2 hl=2 l= 13 cons: SEQUENCE
> 48:d=3 hl=2 l= 11 cons: SET
> 50:d=4 hl=2 l= 9 cons: SEQUENCE
> 52:d=5 hl=2 l= 3 prim: OBJECT :commonName
> ..........
>
> Thanks,
> Chandler
>
>>
>> Aleksey
>>
>>
>> Chandler Peng wrote:
>>
>>> Dear Aleksey ,
>>>
>>> That bug you refer to resolved a problem how to transfer a positive
>>> decimal string to a positive integer . For example , there is a
>>> serial number "00 B2 2F 00 00 /00 02 20 73 3B 25 34 C4 42 6F"/ in the
>>> certificate , the serial number is a positive integer for the first
>>> byte is 0x00(the first bit is 0) . The libxmlsec will transfer the SN
>>> to "/3613992633088206991095317234205295" /in decimal format and
>>> transfer back to /"B2 2F 00 00 00 02 20 73 3B 25 34 C4 42 6F" /in der
>>> format . That is a bug for the integer "00 B2 2F 00 00 /00 02 20 73
>>> 3B 25 34 C4 42 6F" is not equal to /the integer "B2 2F 00 00 /00 02
>>> 20 73 3B 25 34 C4 42 6F". /That bug has been fixed in CVS./
>>>
>>> /This bug we reported is different with that bug.
>>> For example , if there is a serial number "B2 2F 00 00 /00 02 20 73
>>> 3B 25 34 C4 42 6F"/ in the certificate , the serial number is a
>>> negative integer for the first byte is 0xB2(the first bit is 1) . The
>>> libxmlsec will transfer the SN to
>>> "/3613992633088206991095317234205295" /in decimal format and transfer
>>> back to /"00 B2 2F 00 00 00 02 20 73 3B 25 34 C4 42 6F" /in der
>>> format . This is a bug for "B2 2F 00 00 /00 02 20 73 3B 25 34 C4 42
>>> 6F" /is a negative integer and
>>> "/3613992633088206991095317234205295"/ is a positive decimal format
>>> string. They are not equal.
>>>
>>> It seem that there should be a flag in decimal format to distinguish
>>> whether the decimal string is positive or not , does'nt it?
>>>
>>> --Chandler
>>>
>>> Aleksey Sanin wrote:
>>>
>>>> I guess you are using xmlsec-mscrypto library and if this is
>>>> the case then I believe that this bug was already fixed in CVS:
>>>>
>>>> http://www.aleksey.com/pipermail/xmlsec/2005/002487.html
>>>>
>>>> It would be great if you can try the CVS version and report if your
>>>> problem still exists.
>>>>
>>>> Thanks,
>>>> Aleksey
>>>> _______________________________________________
>>>> xmlsec mailing list
>>>> xmlsec at aleksey.com
>>>> http://www.aleksey.com/mailman/listinfo/xmlsec
>>>
>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> _______________________________________________
>>> xmlsec mailing list
>>> xmlsec at aleksey.com
>>> http://www.aleksey.com/mailman/listinfo/xmlsec
>>
>>
>> _______________________________________________
>> xmlsec mailing list
>> xmlsec at aleksey.com
>> http://www.aleksey.com/mailman/listinfo/xmlsec
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> xmlsec mailing list
> xmlsec at aleksey.com
> http://www.aleksey.com/mailman/listinfo/xmlsec
More information about the xmlsec
mailing list