V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
billlee
V2EX  ›  信息安全

怎么保存双因素认证的 backup codes?

  •  
  •   billlee · 2023-08-23 12:59:06 +08:00 · 2371 次点击
    这是一个创建于 459 天前的主题,其中的信息可能已经有所发展或是发生改变。

    能想到的有几种方式:

    1. 保存在密码管理器
    2. 保存在笔记软件
    3. 抄在笔记本上
    4. 抄/打印在纸上放保险柜

    其中 1 是完全破坏了双因素认证了,2 面临的问题就是笔记软件的本身的安全性可能并没有密码管理器可靠。3 和 2 差不多,笔记本经常随身携带使用,容易丢失,安全性不高。似乎只有 4 是比较靠谱的。

    大家有什么更好的方式吗?

    22 条回复    2023-11-05 11:24:09 +08:00
    jybox
        1
    jybox  
       2023-08-23 13:04:09 +08:00   ❤️ 2
    买几个 SD 卡(小容量很便宜),开文件系统加密(比如 Mac 可以格式化成加密的 APFS ),用来保存所有的 recovery code 和私钥( GPG 、密码货币钱包等)。

    然后放在不同的地点,主要是起到异地备份的作用,但仍然需要记住一个密码。
    NoOneNoBody
        2
    NoOneNoBody  
       2023-08-23 13:05:12 +08:00   ❤️ 1
    关键点是“分开保存”
    0o0O0o0O0o
        3
    0o0O0o0O0o  
       2023-08-23 13:07:07 +08:00 via iPhone
    我选择不保存,我用的 1 ,并且多重备份,能弄丢 TOTP 的 secrets 那我一定也会弄丢 backup codes ,对我来说没有意义
    naminokoe
        4
    naminokoe  
       2023-08-23 13:08:57 +08:00   ❤️ 1
    这太乱了。

    最方便的方式就是用 Safari 浏览器搞双因素认证,把 backup codes 复制粘贴在 Safari 浏览器的密码“备注”框里。Safari 浏览器的密码用指纹登录查看,如下图所示


    你的指纹总不会丢吧?
    ShadowPower
        5
    ShadowPower  
       2023-08-23 13:17:01 +08:00   ❤️ 1
    密码管理器开两个数据库,一个保存密码,一个保存其他数据
    billlee
        6
    billlee  
    OP
       2023-08-23 13:25:11 +08:00
    @NoOneNoBody 确实,关键点是分开。单独的加密文件,单独的密码管理器数据库,都是可靠的。就是要定期恢复演习防止自己忘记主密钥。

    @naminokoe 你这个就是方案 1, 把双因素降级成单因素,出了问题一锅端。
    dode
        7
    dode  
       2023-08-23 13:46:18 +08:00
    谷歌的可以云同步了,只单独保存几份 google 的?
    RunCCx
        8
    RunCCx  
       2023-08-23 14:03:26 +08:00
    @dode 啥时候可以云同步了? 我咋没提示更新
    RunCCx
        9
    RunCCx  
       2023-08-23 14:06:09 +08:00
    保存转移的二维码就行 ,TOTP 可以逆推出来,GitHub: https://github.com/krissrex/google-authenticator-exporter

    或者**加密**文件 放在云盘上
    nothingistrue
        10
    nothingistrue  
       2023-08-23 14:16:18 +08:00
    密码管理器是区分联网和非联网的。纯本地密码管理器,包括像 Keepass+网盘这种自主同步的变相本地密码管理器,并不破坏双因素认证,可以放心使用。

    双因素认证 ,是防止密码在「服务器端」、「网络传输」等外部过程中泄漏后直接裸奔的。不止双因素认证,基本上用户认证这一块,都不会考虑纯客户端的泄漏保护(至于防止帐号共享、社工爆破等其他方面,那些也属于信息安全,但不再属于用户认证这一个子范围)。
    chingyat
        11
    chingyat  
       2023-08-23 14:18:32 +08:00
    打印下来放家里。
    laydown
        12
    laydown  
       2023-08-23 14:22:00 +08:00 via Android
    text 文件,7z 打包加密,放各个云盘上。哦,注意所属账户不要写的太直白。就算被破解了也猜不出来哪个 code 对应那个账户,只有你自己知道。
    dode
        13
    dode  
       2023-08-23 14:28:56 +08:00
    @RunCCx

    去谷歌应用商店看看
    https://applealmond.com/posts/184033
    Nielsen
        14
    Nielsen  
       2023-08-23 14:43:56 +08:00
    放在 Time Machine 磁盘里,开了密码保护。
    ruanimal
        15
    ruanimal  
       2023-08-23 14:52:12 +08:00
    放在另一个密码管理器上
    YGHMXFAL
        16
    YGHMXFAL  
       2023-08-23 14:54:16 +08:00
    [1]对称加密,然后随便扔网盘

    [2]在第 1 步基础上,把密文编码成可打印字符串,然后去打印店里打印+塑封,可选编码方式:

    [A]BASE64,通用

    [B]BASE58,恢复时扫描更友好

    [C]BASE16384,编码成全汉字
    billlee
        17
    billlee  
    OP
       2023-08-23 15:08:02 +08:00 via Android
    @nothingistrue 双因素本来是 what you known and waht you have 吧,密码属于 what you known, 早期的双因素认证方式就是 RSA token (硬件 TOPT ),U 盾,这些是 what you have. Google authenticator 只是 RSA token 的廉价替代,它长期不支持备份和同步也是出于这个考虑。
    28NnCR
        18
    28NnCR  
       2023-08-23 16:10:35 +08:00
    @billlee 在 Stripe 关于“安全地存储备用验证码”给出的解决方案, 可以参考一下
    leefor2020
        19
    leefor2020  
       2023-08-23 18:00:51 +08:00
    我是放在一个文件夹里面,然后本地 AES 加密之后,扔到了 Dropbox
    mmdsun
        20
    mmdsun  
       2023-08-23 19:14:38 +08:00 via iPhone
    我是存 Onedrive 保险箱里面,还有一部分是 Onenote 笔记设密码
    realpg
        21
    realpg  
       2023-08-24 10:17:20 +08:00
    重点不是这个要加密,重点是让别人不知道你把这个东西保存在哪里,以及这个东西是什么
    BloodBlade
        22
    BloodBlade  
       2023-11-05 11:24:09 +08:00
    用的 Keepass ,创建了一个新的密码库专门存这类内容。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1138 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 23:38 · PVG 07:38 · LAX 15:38 · JFK 18:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.