Здесь у вас есть универсальные драйверы USB для считывателей смарт-карт, а также демон, который может определять, когда подключены новые считыватели, и некоторая диагностическая информация, когда считыватели инициируют соединение со смарт-картой (либо через контакт, либо бесконтактно / NFC). ).
http://www.linuxnet.com/
Затем jpcsc можно использовать в качестве java API для карты, чтобы вы могли читать и писать. Вы абстрагированы от оборудования считывателя, но вам все еще нужно много знать о специфике смарт-карты - какой версии Javacard / GlobalPlatform она использует, какие ключи шифрования используются, если вы хотите установить безопасное соединение, и т.д.
Или вы можете купить полную среду разработки, включая карту, ридер и IDE (обычно основанную на Eclipse), у производителя смарт-карт, такого как G & D, Oberthur, Gemalto ...