如何开始使用智能卡编程?我在这里问他需要的所有工具包才能入门:书籍,教程,硬件等.
我打算和几个智能卡程序员一起玩,我对这个领域很陌生.
编辑:我最感兴趣的是那些与类Unix操作系统兼容的程序员.此外,我不确定这是如何工作的...但我想用C/C++编程
每当我需要访问智能卡以用于安全应用程序时,它都可以通过以下任一方式:
Microsoft CryptoAPI
该卡的PKCS#11库.
要使用Microsoft CryptoAPI访问卡,需要使用特定于卡的加密服务提供程序(CSP).CSP位于CryptoAPI层下.
但是,如果您使用"C/C++"在Unix/Linux上进行开发,那么您可能需要查看RSA 的PKCS#11标准.该标准规定了一个名为Cryptoki(加密令牌接口)的'C'API,它在所有类型的加密设备之上提供了一个共同的抽象.几乎所有的智能卡供应商都为他们的卡提供了PKCS#11库,您可以使用Cryptoki API对其进行编程.
如果要访问较低级别的智能卡/读卡器,可以使用PC/SC或CT-API等API.
用于在Windows,Linux和Mac OS X上实现的智能卡访问的PC/SC事实标准
CT-API仅提供非常小的功能; 不太适合现代应用程序.
如果您有兴趣编写在智能卡上运行的Java小程序,那么您可能希望查看http://java.sun.com/javacard/
可能有用的资源
OpenSC是一套用于智能卡的库和工具.它旨在与PKCS#11支持卡配合使用.OpenCT为读卡器以及由卡和读卡器组成的令牌(即usb令牌和其他"完整"设备)提供驱动程序.
http://www.linuxnet.com/ MUSCLE - 在Linux环境中使用智能卡的运动
PKCS#15 - 加密令牌信息格式标准
智能卡手册
一对PKCS#11介绍在2009年的RSA的conf给出.
PyKCS11围绕PKCS#11的Python包装器.与直接在Cryptoki级别工作相比,这些类型的包装器可以提供更简单的更高级别的接口.
智能卡联盟