On 3/5/2012 10:45 AM, evalues evalues wrote:
> Hello,
>
> how data is stored in this structure? I have been testing with numerical data 
> and I think that the data are converted to hexadecimal in pairs and from 
> right to left. For example, if I have the number
> 55.555.555 is converted into 85 85 85 85. It is a problem when the number 
> ends in zero, because, if I have the number 1.000.000 is converted to16 0 0 0 
> and if I have the number 10.000.000 is converted
> to the same value (16000). Due to this, for two objects with identifiers 
> 1.000.000 and 10.000.000, in opensc they are converted to the same identifier 
> 16 0 0 0. I don't know if I have interpreted
> something bad or if really exist this error in opensc.

You did not say how you were providing 55.555.555

It looks like the routine you are using is only looking at hex
digits and ignoring the "."s, and the fact that 1.000.000 has an
odd number of digits.

One place where it is created is in src/tools/pkcs15-tool.c:
   sc_pkcs15_hex_string_to_id(opt_auth_id, &auth_id)

sc_pkcs15_id has an octet string and a length.
(The octet string could be printable.)

So depending on the tool you are trying to use, you can
pass in the hex characters, and let it convert it,

31:2e:30:30:30:2e:30:30:30 would be your 1.000.000
31:30:2e:30:30:30:2e:30:30:30 would be 10.000.000
or if you are writing your own code, copy the
asci characters and set the length.

>
> Thank you.
>
>
> _______________________________________________
> opensc-devel mailing list
> opensc-devel@lists.opensc-project.org
> http://www.opensc-project.org/mailman/listinfo/opensc-devel

-- 

  Douglas E. Engert  <deeng...@anl.gov>
  Argonne National Laboratory
  9700 South Cass Avenue
  Argonne, Illinois  60439
  (630) 252-5444
_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to