一生只记一个密码: 1Password 简明教程
宋长宁
发表于 2023-1-14 02:28:54
63
0
0
1Password 是由加拿大开发商 AgileBits 开发的一款密码管理软件。除了用来存放账号密码,你还可以存放包括信用卡、身份证件之类的敏感信息。根据官方的发行公告(Release Notes),第一个正式版的 1Password 1.0.0 客户端发行于2006年,距今14年。0 j- Y, l) s4 p. _# a j" O
: t( T( X- T% S; N8 O& l
我们储存在 1Password 中的信息都是被加密的,任何数据在被传输前,1Password 都会使用 AES 256-bit 算法加密3次,即便是开发商 AgileBits 也无法获取。客户端和 1Password 服务器的认证和通信通过零知识证明协议加密。
" }% r: S% b5 N0 ~$ o) R+ d
2014年 OpenSSL 暴露的心脏滴血漏洞(Heartbleed)漏洞对整个互联网造成了难以估量的影响,所有依赖 SSL/TLS 协议的网站或客户端,都可能因此受到攻击。当时很多使用 OpenSSL 服务的科技巨头(e.g. Google, Facebook, Amazon 以及国内各梯队的互联网公司等…)的用户敏感数据被大量 Dump,其中有不少公司甚至明文保存用户密码。如果你愿意了解更多细节,可以搜下 “Akamai secure heap “,Alex Clemmer 专门写了文章来分析这件事,过程很是曲折。
所幸 1Password 并不建立在 SSL/TLS 之上,因此并未受到波及,官方不久后还推出暸望塔(Watchtower)功能,用来检查你使用过的哪些网站遭到数据泄露,这个功能不久后就集成到客户端中。6 l0 G% i% P7 D9 n- B
1Password 的盈利模式完全来自用户付费,因此他们没有任何第三方广告业务,也不使用、分享或出售用户数据。1Password 严格遵守欧盟数据保护通用条例 GDPR,他们在官网隐私介绍页面详细说明了隐私策略。
苹果在2018年为全球超过123,000员工部署企业版1Password。
为什么要用 1Password% |: {2 J) a, |# X7 o% x
这个问题可以拆成两部分:
) x. a4 J ?6 h) V: G5 A
1)为什么要使用「密码管理器」;! ], `* B0 s+ A: Q5 S0 z1 e. K3 V
2)为什么要在众多密码管理器中选择 1Password?
- `$ _5 x X: a7 A% j
对问题1,很多人习惯在所有网站都使用相同密码,而且通常包含生日年月这样非常容易被外人获得的信息。一旦其中某个网站发生数据泄露,你所有的账户都会受到牵连。即便能做到不同账号不同密码,我们为了方便记忆,设定的密码也往往强度不足。
通常,高强度的好密码要满足:2 O" z; D& [0 l6 ` H
# f$ J8 O" L5 w! @( Y
- 长度8位及以上;
- 同时包含大写字母和小写字母;
) | @# w% y' {
- 包含1及以上的特殊符号(e.g. *^%$=…);( Z- P" ]! u' g+ q2 O* e
- 自己能记住。
! H4 Q- b( B# k, a4 ^3 y* }0 e
在使用密码管理器之前,我曾一直用「基本密码」+「特征码」来设置密码,并为此感到洋洋得意。以 Gmail 账户举例,我以基本密码 “Yishi123+-/” + 特征码 “GL”(网站域名的首尾大写字母)作为密码 “Yishi123+-/GL”;如果账户涉及财产,就换个更长的基本密码。
乍一看符合好密码的要求,自己也能记住,看起来比所有网站同用一个密码要强多了不是么。但这样做最多在黑客批量撞库时躲过一劫,实则没什么作用。
9 K- a R U9 Z% ~6 ]; u; `0 C
因为只要黑客通过社工手段定位到你个人,不管你以什么方式组合特征码、特征码有多复杂,只要规则一致的,那么其中一个账号被盗,其他的就都能顺藤摸瓜推理出来。
2 d# D6 W& y- ]4 G w6 k3 p
因此,所谓基本密码+特征码,在安全性上形同虚设。" S l0 z+ a& N0 J
" d& x, h3 ?! ?1 g4 c/ k9 |
有人说,那我每个网站都使用毫无规律的随机长密码。拿小本子把账号密码都记下来,按字母 a-z 给网站排序,每次登录时查下不就行了。除非本子遗失或黑客到家里盗走,我的密码都是万无一失的,也不怕撞库。
这个办法安全系数确实最高。某种程度上,小本子就是你自制的密码管理器,但是用起来麻烦。. _- ^' g. _9 c5 f* ^
小本子丢了或损坏怎么办,人在公开场所怎么办,每天登N个网站就要手动敲N遍毫无规律的密码,诸如此类的缺点很多,余不一一…% R8 P5 W" k) E
而一个专业的密码管理器,就是用来解决这个问题的。4 O7 j7 i$ ?0 }3 W0 j1 I
它本质上做了两件事:
$ Y* ]+ u. S y0 U
1. 帮你生成足够强的随机密码;4 U7 e4 I8 q- c
# C& p* j1 J- X; [# r- m# ?
2. 帮你管理好这些账户,要用时出现,不用时消失。6 G" l% C* r# B9 I) g7 z: B3 I6 q: @' F5 i
对问题2,我亲身使用过的密码管理器有 1Password、LastPass,、KeePass,除此之外还有一大票优秀产品如 DashLane, RoboForm … 等,虽然没用过,但它们都有各自粉丝拥簇。$ K. e' H; }$ X+ r% I
, Q: D# n' r- Y1 m
如果你喜欢彻底开源、轻量、免费,那么我强烈推荐 KeePass,它的开发社区很活跃,光是在 macOS 上,开发者们就贡献了 KyPass,MacPass,KeePassX 等多个客户端的实现,并且功能十分强大。. o5 H8 n' {6 B/ ]6 x7 H# @& J6 Y
但如果你和我一样,除了安全性,同样在意使用体验、灵活性和便利性,本着「能力范围内选择综合素质最好的」原则,那么我推荐 1Password。
7 Y4 r) u/ _3 _4 d
1Password 并非开源,但它遵循公开规范(安全模型的白皮书),任何开发者都可以对其进行黑箱测试。
David Schuetz 在他的博客对 1Password 的工作机制进行了极为详尽的探索,下图便是他总结的核心:: [! v' w9 r$ [& d% _- Z* h% R
我们只需明白,1Password 最关键的安全要素,便是我在图中红框标出的 2SKD(two-secret key derivation)。而这两个所谓的 “Secret key”,分别是主密码(Master password)和 私钥(Secret key)。
你不用看懂这套复杂的流程,只要抓住核心点,即,如何确保「我的密码只有我知道,即便1Password 也无法查看我的敏感信息」即可。关于这点,我会在下文设置主密码的步骤中,详细跟你解释。
开源是个很大的话题,它也并非一切事物的银弹。
1 v4 e6 @" [& C2 e; c& C
受制于篇幅,本文我们主要讲解 1Password 的使用,如果你对开源感兴趣,以后可以单独写一篇文章。
: |1 t/ z& P5 O
准备就绪,接下来就开始我们的 1Password 之旅。
成为第一个吐槽的人