How can a PC/SC client find out whether a given card terminal supports the ct-bcs protocol, or safe PIN input? From the driver perspective, I'd have thought that IFDGetCapabilities would be the place to specify the device characteristics, but I haven't seen a tag that could be used to specify those capabilities...
The problem is that applications which want to support a wide range of readers have to use different commands for e.g. requesting a PIN: when using a reader without display and/or PIN keyboard, the PIN must be entered through the computer keyboard and then be verified by the card. When using a reader with display and PIN keyboard, the PIN should be entered at the reader, and thus different commands have to be sent to the card/reader.
In order to not limit the application to a fixed set of readers, it must have a way to find out the class of the reader.
If there currently is no way to find out whether a device supports ct-bcs commands, how safe is it to define custom tags? Is there a range of tag values that is not going to be redefined by PC/SC internally that could be used?
Are there any plans of defining a tag for this purpose?
Or are there other ways of finding out the reader capabilities w.r.t. ct-bcs commands / safe PIN input?
Thanks,
</jum>
