通过加强软件解决方案(如客户端身份验证和安全消息传递),智能卡可以使新一代的应用程序能够利用新兴全球数字经济中的未来机会。智能卡为应用程序开发人员提供了一种安全的机制来增强针对企业和消费者的解决方案。
客户端验证
客户端认证涉及客户端到服务器的识别和验证,以建立安全通信信道。安全协议(例如安全套接字层(SSL)或传输层安全性(TLS))通常与客户端提供的可信公钥证书一起使用,该证书将客户端标识给服务器。客户端可以是在Windows平台上运行的Internet Explorer,服务器可以是Internet信息服务(IIS)或支持SSL / TLS的其他Web服务器。
通过使用密钥交换的公共密钥认证来建立安全会话,以获得唯一的会话密钥,然后可以将其用于确保整个会话中的数据完整性和机密性。您可以通过将证书映射到具有先前建立的访问控制权限的用户或组帐户来实现额外的身份验证。该智能卡通过作为私钥材料的安全存储以及用于执行数字签名或密钥交换操作的加密引擎来增强公钥认证过程。
过去,交互式登录意味着可以通过使用共享凭据的形式(如散列密码)将用户认证到网络。 Windows 2000支持公钥交互式登录,并使用存储在智能卡上的X.509版本3证书以及私钥。代替密码,用户向图形识别和认证(GINA)模块输入PIN码; PIN用于向用户认证卡。
使用智能卡登录到网络提供了强大的身份验证形式,因为它在将用户认证到域时使用基于密码学的身份证明和拥有证明。
例如,如果恶意人员获得用户密码,那么该人可以通过使用密码来承担用户在网络上的身份。许多人选择可以轻易记住的密码,这使得密码本身就很弱并且可以进行攻击。
在智能卡的情况下,同样恶意的人将不得不同时获得用户的智能卡和PIN来伪造用户。这种组合使得攻击更不可能,因为需要额外的信息层来模拟用户。一个额外的好处是,在PIN码连续输入错误多次之后,智能卡被锁定,使智能卡的字典攻击变得非常困难。 (请注意,PIN不必是一系列数字,也可以使用其他字母数字字符)对智能卡的攻击不会被检测到,因为恶意人员必须拥有他或她拥有的智能卡智能卡的合法所有者会注意到它是丢失的。
在智能卡登录期间,通过安全处理从卡中检索用户的公开密钥证书,并将其验证为有效,并从受信任的发行者获取。在认证过程中,基于包含在证书中的公钥的挑战被发布到卡上以验证该卡确实拥有并且可以成功地使用相应的私钥。公钥 - 私钥对成功验证后,证书中包含的用户身份将被用于引用存储在Active Directory中的用户对象,以构建一个令牌,并向客户端返回一个授权票据(TGT)。公共密钥登录已经与Microsoft Internet Explorer 510的Microsoft实施与Internet工程任务组(IETF)草案RFC 1510中指定的公钥扩展兼容。