如果让你找一款好用的密码管理工具,我相信你的答案很可能是 1Password 这类知名且老牌的工具,它们往往比系统提供的密码工具拥有更多功能,凭借多年累积的口碑和技术经验,在安全性方面也有保障。 开发者 Yachen 从 2009 年开始使用 1Password,到现在已经有将近 10 年时间。使用 1Password 的时候, Yachen 经常遇到一些影响体验的小问题,比如同步速度慢、动画细节突兀等;在更新 1Password 7 之后, Yachen 对 1Password 的不满终于迎来了一次「爆发」:云服务成为了必选项且不可关闭、加入了家庭共享及团队协作等许多他不需要的功能、最基本的密码填充功能经常失效…… 于是, Yachen 决定自己开发一款密码管理工具,也就是本文介绍的 Elpass。本文会从 Elpass 的基础功能、开发者对其安全性和便利性等多角度的想法、以及未来计划等方面,帮你了解开发者对它的定位、以及 Elpass 是否适合你。 基础功能 介绍 Elpass 的基础功能前,先说说 Elpass 的导入和导出数据的功能。在导入功能方面,除了支持自己的格式,Elpass 支持了 1Password 格式和通用的 .csv 格式文件,考虑到大部分密码管理工具都提供了通用的 .csv 格式的文件导出功能,在迁移数据方面不会有太大问题。在导出功能方面,Elpass 支持自有的 .elpassexpoert 格式以及通用的 .csv 格式的文件导出功能。 密码工具发展到今天,仅能存储互联网账户和密码已经不能满足多数人的需求了,大部分密码管理也提供了银行卡、软件授权等信息的存储功能。在这方面,Elpass 支持的数据类别有 5 类: 账号:支持存储用户名、密码、域名、备注、一次性密码。 银行卡:支持添加借记卡、信用卡、预付卡,提供银联、VISA、MasterCard、JCB 等常用发卡机构的支持。 身份信息:存储身份证、驾驶证等具有唯一身份标识码的证件信息。 安全备注:存储敏感的纯文本信息。 密码:存储单一密码信息,比如 Wi-Fi 密码、保险箱密码等。
与 1Password 相比,Elpass 不支持存储文件和软件授权信息。对于前者, Yachen 表示有计划在之后的更新中加入对文件的支持;至于软件授权信息, Yachen 认为其不属于需要被加密保存的敏感类型数据,因此没有加入这项功能。另外,由于使用场景较少,Elpass 没有提供 watchOS 客户端。 除了能存密码,如何方便地填充密码也是密码管理工具需要考虑的重要事情。在移动端,Elpass 支持了 iOS 12 之后加入的密码填充特性,在桌面端,Elpass 提供了 Safari、Chrome、Firefox 浏览器插件,能够在常用的浏览器中一键填充账号和密码。
智能列表 「智能列表」(Smart Items) 是 Elpass 的一项特色功能,目前提供了两类列表:高安全级 (High Security Level)、一次性密码项目 (OTP Configured)。Elpass 支持为密码项目设置安全等级 (下文会介绍),分为 Convenient (方便)、Moderate (一般)、High (高级) 三档,「高安全级」列表会显示等级为「High」的密码项目。 「一次性密码」是在传统的固定密码外,通过算法自动生成的 6 位数密码,它每隔 30 秒会根据变化一次,用于在验证账号密码之后进行二步验证,能够进一步保障账户的安全性。「一次性密码项目」列表会显示增加了一次性密码的项目。 「智能列表」类似 1Password 的「暸望塔」功能,后者会告诉你哪些密码可能被泄漏了、哪些密码太简单了、哪些密码被重复使用了以及哪些账号还没有设置一次性密码。目前,Elpass 的「智能列表」不仅数量较少,实用性也稍显不足:比如,与其知道哪些账号设置了一次性密码,不如像 1Password 选出支持但还没设置一次性密码的项目,让我们及时为它们加上一次性密码,更能保障数据的安全性。 不过, Yachen 表示「Smart Items」会在未来增加自定义设置选项,我们将能够自定义筛选密码项目的条件,创建符合自己需求的智能列表。 安全性 对于密码管理工具来说,最重要的功能不是如何管理和快速填充密码,安全性才是开发者首先要考虑的事。接下来,我将从同步功能及加密算法 2 个方面,向你介绍 Elpass 在安全性方面的思考和做法。 不提供云服务的同步功能 虽然 1Password 的云服务是让 Yachen 对其不满的原因之一,却不是因为他信不过开发团队的技术水平或者用意; Yachen 解释,虽然自己愿意也相信 1Password,但是他也认为「将鸡蛋全放一个篮子里」不是明智的做法,这是他坚持不用 1Password 云存储服务的主要原因。 因此,Elpass 不提供账号系统和同步功能,应用会将所有密码数据存在设备本地,你可以选择用 iCloud 或 Dropbox 这类老牌、在安全性方面也足够有保障的服务,将本地数据与其它设备进行同步。如果你仍然信不过这些云服务,可以选择牺牲一些便利性,只将它们存在设备本地。 Yachen 还表示,不排除未来会加入对于更多国内云存储服务的支持,不过还需要对服务的 API 开放程度进行调研,判断开发工作的可行性。
为了保障安全性,Elpass 没有加入任何第三方追踪 SDK,保证了密码数据没有任何通过其它网络请求泄露的可能性。 Yachen 告诉我,Elpass 仅在购买和激活等关键操作上会产生网络请求,如果你想了解更多细节,他也准备了一份 文档 ,描述了应用可能会产生的所有网络请求。 我又进一步询问 Yachen ,如果在之后找到了足够安全的方法、或者某项需要云服务的功能在用户中呼声很高,比如家庭共享和团队协作功能,是否会重新考虑这项决定,开发账号系统和云服务功能。 Yachen 的答案依然是不会;他表示,即使之后需要开发家庭或团队共享功能,也会借助 iCloud、Dropbox 这类第三方云存储服务实现它们。 开源的加密算法 Elpass 使用了 Argon2id 算法对应用主密码进行 hash,然后通过 BLAKE2B 算法推导出不同用途的 sub-key,最后使用 XSalsa20 + Poly1305 算法进行加密。 Yachen 告诉我,Elpass 的每个环节都采用了目前最先进的算法以保证应用能够应对最先进的攻击手段,我们不用担心 Elpass 会有数据安全性方面的问题。 为了进一步证实 Elpass 的安全性, Yachen 开源了加密算法的核心源代码,供所有用户和安全专家审查。如果你感兴趣,可以在 这里 找到源代码,了解更多技术细节。 便利性 比起同类工具,Elpass 在关注数据安全性的同时,也为用户填充密码的场景做了一些便利性的特色功能。 安全等级 如上文所说,Elpass 的每个密码项目都有安全等级,根据安全等级的不同,我们可以选择在填充安全等级低的密码项目时,跳过应用主密码或者生物认证,直接填充密码;在填充等级高的密码项目时,由于这些密码往往涉及了个人财务或者工作方面的内容,我们可以选择在填充这类密码的时候,进行主密码或生物识别验证,以确保不会造成财物等方面的损失。
配合安全等级功能,我们可以为 Elpass 设置一个相对较长的锁定时间,比如应用默认的 60 分钟;这样,不管是在填充密码、还是在应用里查看密码的时候,都可以在一些不必要的场景下,跳过生物验证步骤,提高使用 Elpass 填充密码的体验。
对于这项功能,我询问了 Yachen 是否有考虑过会降低安全性的问题。 Yachen 认为,密码管理工具除了安全性,便利性也是必不可少的特性。
Yachen 解释说,智能设备发展到现在,和过去已经有了很大的不同,基本都有了指纹、面部验证等生物识别功能。对于有良好习惯的用户来说,解锁设备已经表示进入了一个比较安全的环境,在大部分场景下没有必要进行额外的验证。同样出于这样的想法,Elpass 还提供了登录 Mac 后自动解锁 Elpass 的功能,开启选项后 Elpass 会将应用主密码存储在系统钥匙串应用里,我们不再需要手动输入一长串复杂密码解锁应用。
不过,考虑到不同项目的重要性存在现在差异,Elpass 的安全等级功能能够为比较重要的密码数据提供足够的安全性保护,避免意外发生导致密码泄露,造成不可挽回的严重损失。
在 macOS 应用里填充密码
支持在 macOS 应用里填充密码,是 Elpass 相比同类产品的一大优势。
以 1Password 为例,如果我们想在其它非浏览器的应用里填充密码,需要用快捷键唤出 1Password mini 窗口、搜索需要填充密码的项目、复制密码、在应用里粘贴密码并按下确认键。
用 Elpass,我们只需要授予应用辅助功能权限,应用就会在我们填充密码时自动弹出选择框,让我们快速选择和输入要用的密码。
目前,要使用 Elpass 在应用中的自动填充功能,我们需要在密码项目中填写正确的登录域名,让 Elpass 能够识别正在登录的 App。如果你在用的 App 没有被 Elpass 识别,需要根据 Elpass 的官方文档 手动获取和添加域名之后,再使用这项功能。Yachen 还告诉我,由于技术方面的限制,像 Spotify、Adobe Creative Cloud 这类登录页面使用了网页技术的应用,无法使用这项功能。
另外,Elpass 会在之后的版本更新中为密码项目关联应用的按钮,我们将能直接通过它选择应用进行关联,会比目前的方法方便不少。
无干预自动填充网页密码
比起 1Password 等同类产品,Elpass 的另一大优势就是无干预自动填充网页密码的功能了。简单来说,当我们在浏览器打开网站的登录页面时,只要 Elpass 存储了网站的登录信息,应用会自动将账号和密码填充进入登录框,不再需要我们按下快捷键或者点击插件图标。对于国内的淘宝、京东等每次都要重新登录的网站,这项功能无疑能帮我们省不少事。
在登录账号的过程中,Elpass 与 1Password 一样,会将一次性密码复制到剪贴板,方便我们进行粘贴和填写。Elpass 的 iOS 和 macOS 客户端都会在复制一次性密码之后再次以通知的方式显示一次性密码,如果一次性密码没有正确复制到剪贴板,我们也可以快速地输入它,不需要再次到应用里查看。
如果你嫌自动复制并粘贴一次性密码的方式不够快,还可以选择让 Elpass 直接弹出一次性密码的辅助窗口,我们可以在窗口里看到一次性密码,并选择复制或者直接填写它。这个过程只需要通过鼠标完成操作,不需要在鼠标和键盘之间进行切换,会更符合我们的使用习惯。
付费模式:订阅制
Elpass 使用订阅制,价格为 ¥148 / 年,订阅后可用于个人的所有 iPhone、iPad、Mac 设备,开发者表示可能会在之后加入按月订阅选项。
Yachen 认为,使用「一次性」的付费模式对于开发者来说肯定会产生维护成本问题:在 Apple 生态下,经过几次系统版本更新之后,开发者如果不做适配工作,应用会变得难用甚至不可用。为了挽回成本,开发者只能推出大版本重新收费,为了满足用户期待,「大版本」往往代表了更多新功能的加入,最后可能会让应用变得「臃肿不堪」。
因此, Yachen 为 Elpass 选择了订阅制的付费模式,他认为这样可以让开发者不以「新功能」为目的,持续性地维护好应用的现有功能,也能以更合理地角度为应用考虑和加入新功能。
未来的开发计划
作为密码管理工具新秀,Elpass 相比同类产品仍然还缺了不少实用功能。为此, Yachen 给我展示了已经在计划中的几项功能:
标签(Tags)功能 附件 自定义项目图标 Mini 窗口 Markdown 笔记 针对单个项目的 AutoFill 行为设置
Yachen 表示,Elpass 虽然还处在初级阶段,但是在未来半年里 Elpass 会快速地进行迭代,尽快地增加更多实用功能。不过,在被问到对于上述功能的具体时间规划时, Yachen 表示还需要对这些功能进行评估、确定优先级,在此之前还无法确定开发工作的优先级。
最后, Yachen 否定了会开发 Windows 和 Android 版的计划。对于有需求的用户,Elpass 在未来可能针对这两个平台提供辅助程序,让用户能够通过 iOS 或 macOS 应用推送到 Windows 或 Android 设备的剪贴板里。
你可以在 官网 下载和购买 Elpass,由于沙盒方面的限制,Mac App Store 版本的 Elpass 不支持在应用中填充密码,默认无法隐藏 Dock 图标 (可手动开启选项);通过 App Store 或 Mac App Store 版本 Elpass 订阅高级版之后,可以直接切换到官网版本使用。
评论 (0)