Dear all,

> lsusb -v shows the field 'iSerial'. I have some readers which use '0'
> for this field, which means they don't include a serial number. A
> value
> bigger than 0 is the index to the USB string, which contains the
> actual
> serial number.

Thank you Frank and others for your answers.

> You could try to use a hash of the full USB descriptor as identifier.
> This works if readers of the same type differ in some fields. However,
> I
> don't know if this will always work for any kind of reader family. 

I understand that iSerial is usually set to zero. If we mix all kind of
hardware, a value of zero will be more frequent. Anyway our hardware has
a value set to zero and we don't plan to buy new hardware. And we should
be able to test and add any kind of hardware.

Initially, I was planning to use the same bench for OpenSC regression
testing and initialization, but this is nonsense. Smartcards can be
initialized using a smartcard printer. Tokens should be initialized
one-by-one. Maybe using a cheap robot. 

Regression testing is a different process:

For OpenSC regression testing, I am moving towards a farm with KVM
virtual systems running. One the one side there should be virtual
systems. On the other side a bench with 64 readers with cards inserted
and tokens plugged-in. 

The bench should be flexible enough to test several systems (Windows XP,
Vista, 7 and 8) and variations (SP1, SP2, etc ...) and recent GNU/Linux
systems, deb or RPM variations.

USBip can be used as a glue to serve the readers to the system. 

To simplify everything:
* There should be only one virtual system running at a time. 
* Each system should be connecting to one remote smartcard only.

After booting the bench running Debian GNU/Linux, we can use a virtual
guest OS to identify each device:

First, we list all available devices:
usbip -l 10.8.0.100 (address of bench)

Then we attach each devices, query the reader and detach it.

opensc-tool -l returns the name of the smartcard reader.
opensc-tool --serial allows to identify the smartcard/token inserted.

As there is only ONE usb device connected at time, there should be no
conflict. Everytime a device is plugged-in, we need to run discovery
again.

The result is written to a text file and served to the farm using
Apache. 

If you think of a more simple solution, please advise.

Kind regards,
-- 
                  Jean-Michel Pouré - Gooze - http://www.gooze.eu

Attachment: smime.p7s
Description: S/MIME cryptographic signature

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

Reply via email to