密码管理器或密钥管理员是一类用于生成、检索、保存及管理复杂密码、数字签名的措施,可以由硬件或软件实现。复杂密码的生成一般按需要以随机算法产生(英语:Random password generator),而密码资料则保存于一个以密码、数字签名等方式加密的数据库内。它的作用类似于钥匙圈,方便个人或企业组织集中管理密码、数字签名等身份管理要素。
如今常见的密码管理器有三类:
它们的主要区别是保存密码及数字签名的加密数据库是保存在本机使用的,还是保存在在线存储服务的,还是保存在特定存储设备的。一些密码管理器,如GNOME 钥匙圈、钥匙串、大部分浏览器内置的密码窗体存储功能等,既可在本机访问,也可在用户经过设置以后能使用在线存储服务的。一般密码管理器会要求用户至少需要一个“主控密码”来解锁经过该主控密码加密的存有账号密码信息的数据库。
密码管理器通常以本地安装的软件应用程序的形式存放在用户的个人计算机或移动设备上,例如智能手机。这些应用程序可以离线使用,其中密码数据库独立地存储在与密码管理器软件相同的设备上。或者,密码管理器可以提供或要求在云端存储,其中密码数据库依赖于在线文件托管服务并远程存储,但是由安装在用户设备上的密码管理软件处理。
某些离线密码管理器不需要Internet权限,因此不会因网络而泄漏数据。在某种程度上,完全离线的密码管理器比在线密码管理器更安全,但在便利性和功能方面可能差很远。
在线密码管理器是一个安全存储登录详细信息的网站。它们是更传统的基于桌面的密码管理器的基于Web的版本。
在线密码管理器优于基于桌面的版本的优点是可移植性(它们通常可以在任何具有网页浏览器和网络连接的计算机上使用,无需安装软件),并且可以降低因盗窃或损坏而丢失密码的风险。
在线密码管理器的主要缺点是用户信任托管站点并且键盘记录器不在他们正在使用的计算机上。由于服务器和云端是网络攻击的焦点,如何对在线服务进行身份验证,并且存储在那里的密码使用用户定义的密钥进行加密同样重要。同样,用户倾向于为了方便而绕过安全性。另一个重要因素是:究竟是使用单向还是双向加密。
有混合的解决方案。一些在线密码管理系统分发他们的源代码。它可以单独检查和安装。
安全令牌是基于令牌的密码管理器的一种形式,其中本地可访问的硬件设备(例如智能卡或安全USB闪存设备)用于代替传统的基于文本的密码或者除了传统的基于文本的密码之外还对用户进行认证。存储在令牌中的数据通常是加密的,以防止探测和未经授权的数据读取。一些令牌系统仍然需要在电脑上加载软件以及硬件(智能卡读卡器)和驱动程序以正确读取和解码数据。