智能密码钥匙常见的身份鉴别协议包括内部认证、外部认证与基于PIN的身份鉴别。
内部认证的具体工作过程如下:
步骤1:上位主机生成随机串,通过“内部认证”指令发送给智能密码钥匙,并指定内部认证密钥。
步骤2:智能密码钥匙检索内部认证密钥,用该密钥加密随机串,然后把加密结果送回上位主机。
步骤3:智能密码钥匙用自己持有的内部认证密钥解密回送的结果,比较与原文是否一致。如果二者一致,那么认证通过,反之不通过。
外部认证的具体过程如下:
步骤1:上位主机发送指令,智能密码钥匙生成随机数串回送,并将其缓存。
步骤2.上位主机用自己持有的外部认证密钥加密随机数串,通过“外部认证”指令把它发送给智能密码钥匙。
步骤3:智能密码钥匙用预置的外部认证密钥对当前缓存的随机串加密,将加密结果与外部传入的值进行比较。若二者一致,则认证通过,否则不通过。
验证结束后,智能密码钥匙清除当前缓存的随机串。
PIN的主要用途是,保证只有合法的持有人才能用智能密码钥匙或智能密码钥匙中的某一项或几项功能,以防止拾到智能密码钥匙的人恶意使用或非法伪造。使用时先要求使用者输入PIN,若输入的PIN和智能密码钥匙中存储的PIN相同,则证明此持有人合法。为更深入地加强使用PIN的安全性,还配了错误计数器。该计数器用来记录、限制PIN认证错误的次数,如果一次连续的错误次数多于智能密码钥匙中要求次数,则PIN自锁,即使使用正确的PIN也无法通过认证。