TLDR; 目前 Bitwarden 是足够安全和易用的,和 Keepass 的本地模式不同,Bitwarden 是客户端+服务端的模式,用哪种取决于你个人的习惯,一般来说如果一款工具能满足自己需要且用得习惯就没必要换。
1. Bitwarden 是客户端 /服务端架构,客户端维护本地缓存,实时与服务端同步,可以用官方在线服务,也可以用官方服务端软件自建,也可以用第三方 Vaultwarden 服务端自建。
2. 无论服务端使用官方还是第三方的,都默认提供一个 Web 网页端,除此之外都支持官方的所有客户端(可以自己配置服务器地址),官方提供 Widnows ( 4 种安装渠道)、macOS ( 3 种安装渠道)、Linux ( 4 种官方安装渠道)、Android 、iOS 原生应用,同时提供 Chrome 、Safari 、Firefox 、Edge 、Opera 、Vivaldi 、Brave 、TorBrowser 插件,提供 Windows 、macOS 、Linux 平台的 CLI 客户端。
3. 官方支持 Windows Hello 及兼容硬件、Touch ID ( iPhone 、mac )、Face ID 、手机指纹解锁(主流安卓手机)。
4. CLI 客户端搭配第三方的 Chezmoi 工具可以用来管理 SSH key ,但只是把 SSH key 自动加解密到 Bitwarden 的安全笔记,没有监听 SSH 提示选择 key 的功能,你可以在连 SSH 前手动选择从哪个安全笔记解密 SSH key ,可能也可以实现一样的目的。官方论坛有这个功能的 request ,目前投票达到 482 ,不知道官方有没有计划。
5. 不管使用应用还是浏览器插件,都是需要用主密码解密数据库,然后使用一些 Crypto API 进行管理,自己可以设定有效期和作废时机,作废后需要重新输入密码解密;用应用的话就是自动模拟输入到输入框里;用浏览器插件的话是使用自己独立的一套机制,不与浏览器自己的密码管理功能联动,同样是模拟输入到输入框。
6. 有 Bitwarden Authenticator (TOTP),支持 Steam Guard TOTPs 。
7. 可以查看历史版本密码。
8.1. 一般来说能不能读内存,取决于操作系统和读取工具所获得的特权。当然专业领域还存在 Confidential Computing ,但目前网上的研究结果来看( 2019 年),Keepass 和 Bitwarden 都没有达到 Confidential Computing 的程度,只是在不需要一些保密信息的情况下会主动清除保密信息,比如使用主密码解锁完会立即清除主密码及其关联密钥,锁定后会立即清除解密数据。
https://www.reddit.com/r/Bitwarden/comments/au87od/bitwarden_memory_test/8.2. 有自动清除剪贴板功能。不知道题主说的防读剪贴板是什么,一般来说剪贴板的读取权限是由操作系统来管理的,操作系统不允许特定进程读取特定剪贴板项需要系统支持,除非不用剪贴板。keepass 的官方文档也说了会复制到系统的剪贴板,并提供自动清除机制
https://keepass.info/features.html 。一般都是首选自动填写,这样可以避免剪贴板安全问题,2020 年就有人问如何禁用 Keepassxc 的剪贴板来避免相关安全问题
https://www.reddit.com/r/KeePass/comments/hlstz6/how_to_use_keeepassxc_without_using_clipboard/8.3. TCATO 官方还没做,但有第三方开源实现
https://github.com/anonymous1184/bitwarden-autotype#bitwarden-auto-type我用 Bitwarden 的原因:
1. 以前是 LastPass 的付费用户,自从 LastPass 摆烂之后就寻找替代品,Bitwarden 对我来说使用方式几乎一样。
2. 为了避免境外服务被 GFW 影响,我选择自建,我有家庭服务器,可以很方便运行任何服务,和完善的公网访问方案。
3. Vaultwarden 提供本来官方版本需要付费的特性。
4. Bitwarden 官方开源,第三方 Vaultwarden 也是开源,且 Vaultwarden 使用 Rust 编写,和其他独立开源项目比具有一定的先天品控优势。
5. Bitwarden 是商业公司,领工资开发的产品(包括基金会驱动的开源项目),只要不像 LastPass 那样摆烂,肯定比用爱发电的要更精锐一些。