6. Linux 上的应用

本节将介绍在 Linux 环境中使用智能卡的一些应用程序。如果您是软件开发人员,并且您的开发环境是 Linux,请告知我。我会将您添加到列表中。

6.1. scas

SCAS 是一个简单的程序,用于检查卡内的代码和计算机内的代码。作为展示使用存储卡进行身份验证的一种方式的示例,scas 非常好。

6.2. smartcard

smartcard 是 Linux 中通用的智能卡实用程序,它使用 CT-API。借助 smartcard 实用程序,您可以从智能卡读取/写入数据。只要您的读卡器可以通过 CT-API 访问,就可以使用 smartcard 来控制读卡器。目前,smartcard 只能与使用 I2C 或 3W 协议的存储卡一起使用。还有一个 GTK+/Gnome 图形前端,它支持 smartcard 实用程序的所有功能。

6.3. ssh-smart

正如作者所说,ssh-smart 是智能卡上 ssh 身份验证的基本概念验证。ssh-smart 使用 smartcard 实用程序与智能卡通信。基本上,ssh-smart-add 工具(perl 脚本)调用 ssh-keygen 来生成 RSA 公钥和私钥。然后将私钥放在存储卡上。稍后,可以使用 ssh-smart-addagent 工具从卡中提取私钥,以便与 ssh-agent 一起使用。

6.4. smarttools-rsa

这是另一个用于 Unix 系统的 PAM 模块,但它支持通过智能卡上的私钥进行 RSA 身份验证。您必须拥有 Schlumberger Cyber​​flex Access 卡或 Schlumberger Cryptoflex for Windows Card 以及可用的读卡器才能使用此工具。

6.5. smartsign

此实用程序是与智能卡进行某种程度完整的 PKI 集成。要使用它,您必须建立一个可用的 OpenCA 并拥有 Schlumberger 的“Cyber​​flex Access 16K”智能卡。在 OpenCA 的认证过程中,私钥和公钥证书可以存储在智能卡上,并且私钥稍后可以与 Netscape 一起使用,以签署外发邮件和新闻。此外,smartsign 通过 PAM 模块通过公钥身份验证支持本地用户的身份验证。Smartsign 附带 gpkcs11(PKCS#11 实现)、smastsh(一个允许浏览智能卡内容的命令行 shell)、sign_sc/verify_sc(用于使用智能卡签名和验证任何文件)。

6.6. CITI 项目

在密歇根大学信息技术集成中心 CITI,有一些新项目。例如,Webcard 是一个在 Schlumberger Cyber​​flex Access Java Card 上运行的 Web 服务器。它具有精简的 TCP/IP 堆栈,仅支持 HTTP。该系统旨在拥有一个路由器,该路由器在 ISO7816 中构建 IP 数据包,以及卡中的 Java 虚拟机。详细的技术报告可以在 http://www.citi.umich.edu/projects/smartcard/webcard/citi-tr-99-3.html 找到