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