信息安全中的动态密码认证是什么?
动态密码也称为一次性密码。它用于解决传统密码认证在遇到窃听、重放攻击、制作、猜测等问题时无法应对的问题。
使用动态密码,在登录过程中对认证信息进行随机处理,使每次的认证信息都不同,从而提高登录过程中的信息安全性。这项技术可以有效防止重放攻击,并解决静态密码在传输和数据库中容易被盗取的问题。
有三个字段被传输到认证服务器或 KDC。它们分别是用户的身份标识符、用户密码和用户设备的当前系统时间戳。身份标识符和时间戳首先被哈希处理,然后发送。
在服务器端,服务器检查用户是否为其假定的正确用户。服务器拥有其身份标识符和用户密码对的数据库。服务器首先通过比较时间戳来验证是否存在重放攻击。然后,服务器通过比较接收到的哈希值和服务器生成的哈希值来检查是否提供了正确的密码。接下来的过程是生成用于加密票据的密钥。
动态密码方法通过利用智能卡的处理能力为每次认证尝试生成多个密码,从而增强了传统的密码方法。智能卡每天生成新的密码若干次。主机实现与智能卡相同的算法,因此它在任何给定时间都知道密码令牌当前有效的密码。
卡发行者通过同步过程启动系统中的每张卡,将初始化代码或种子加载到密码令牌和主机中。种子和决定密码的算法都是保密的。每张卡的种子值和初始化代码都是唯一的,因此在任何给定时间,没有两张卡的密码相同。如果没有理解算法、种子和初始化值,在任何给定时间预测有效密码的可能性很小。
在认证过程中,密码令牌显示当前密码,该密码被发送到主机。验证器将接收到的密码与正常值进行比较。如果标识符连接,则主机接受卡。由于每个密码的生命周期都很短,并且算法随每张卡而变化并保持秘密,因此此方法提供了卡的真实性。
这种方法在不使用 CAD 的情况下实现了身份验证。相反,用户将数据(即卡识别号和密码)输入到计算机终端,从而启用远程登录。用于此身份验证方法的智能卡需要电池、显示屏,有时还需要键盘。