I'm upgrading an existing embedded application (a Ricoh MFP) to support both Omnikey 5321 v2 and Omnikey 5325 card readers for authentication purposes. For now, I'll leave the 5325 model aside (but any tips on that would be helpful) and focus on the 5321 model. I'm using only the contactless reader and Standard Mifare 1K cards. The deployment environment is a custom VM based on JVM 1.4 (before anyone answers that, there'开发者_运维技巧s no use telling me to upgrade the VM, that's not my call). Ricoh supplies some custom libraries to work with smartcards, but when it comes to the PC/SC specification, I can't get it to work with contactless cards (the very library seems to be designed to work with contact cards only). I've already contacted their dev support but they're taking too long to answer and I just can't afford to waste any more time, so here I am.
My question is, since I can't get it to work with Ricoh libraries, is there some library to deal with contactless readers/smartcards using JDK 1.4 by itself? Or even external libraries will do, as long as they're 1.4-compliant. I've googled around and found a solution that matches both my reader and card, but it's for Java 6. I reckon I can use some of it (the APDU command table, for instance), but surely not the javax.smartcardio package.
For Java 6 (in case anyone ever needs it): http://www.pikopong.com/blog/2009/02/11/reading-mifare-1k-card-using-java-in-linux/
Thanks in advance.
Have you tried http://jmrtd.org/installation.shtml Yes, it stated 1.6, but you may be able to backport what is needed by your application. GPL though.
Otherwise it is useful for the dependencies under linux, mainly PCSC-Lite, and develop your own glue between native and java.
精彩评论