1
TossPig 351 天前 2
Vaultwarden
|
2
xinge666 350 天前 via iPhone 1
|
3
BigShot404 350 天前
|
4
ladypxy 350 天前 via iPhone
Authy
|
5
ab 350 天前
google authenticator + 苹果密码
前者扫完再用 ios 相机也扫一次。 后者既可当做备份也可以方便 safari 使用。 |
6
bobryjosin 350 天前 via Android
yubico authenticator 需要你有一个 yubikey ,全平台都有客户端,离线不联网,代价是出门需要额外带一个硬件,丢失损坏不能恢复存储的 2fa ,我一般是两个 yubikey+authy 都存一份。
|
7
SenLief 350 天前 1
密码管理器不是都带 totp
|
8
arfaWong 350 天前
自建 bitwarden
|
9
gletec 350 天前 via Android
密码管理器自带 totp 记录。而且很多是支持自动填入的,都不需要你自己手动输入。
|
10
netnr 350 天前 via Android
在用 Aegis ,而且可以导出
|
11
uuhhme 350 天前 via Android
ente 跨平台,支持导出二维码,现在用的挺好。同时 iCloud 钥匙串备份一份,无忧
|
12
qistchan 350 天前
自建 bitwarden+1 ,自带 TOTP
|
13
surbeta 350 天前
Authy,用了很多年了
|
14
n2l 350 天前
Authy PC 版好像得挂代理才能上去。
|
15
lisxour 350 天前
|
16
vacuitym 350 天前
用的 Google 的
|
17
zjcoding 350 天前
google ,可以导入导出
|
18
youngkingdom 350 天前
自建 bitwarden+1
|
19
woshicixide 350 天前
用的微软的 authenticator
|
20
wuxiao2522 350 天前
Authy
|
21
woshicixide 350 天前
被你这么一说也想换了
|
22
lw0717 350 天前
我也被 Microsoft Authenticator 坑过,换了 Google 的
|
23
nothingistrue 350 天前
Microsoft Authenticator Q&A 第一个就是,不能在 Android 和 iOS 之间切换。事实上你刚开始看到 iOS 备份需要 icloud ,Android 备份不需要,就该猜到两个平台之间的备份是独立的。Microsoft Authenticator 的 2FA 只是附加功能,它的主功能是 Microsoft Account 的免密登录器,这是物理密钥,它的「备份/恢复」不是复制粘贴,而是密钥迁移,这要想跨平台就太为难了。
TOTP 2FA ,虽然技术上不是物理密钥(它的密钥可以随意复制),但你最好还是别搞什么跨平台同步。想要跨平台同步就没法用平台私有的文件系统加密防护,同步服务商只能在自己的服务端用主密码来保护密钥(不负责人的甚至会明文存储密钥),一旦服务商发生泄漏你就乐开花了——重置 2FA 可比重置密码的操作繁琐多了。 最好还是各用各的,这样除了安全性高之外,还天然给你的众多 2FA 多了一套备份。 Microsoft Authenticator 是使用相同的主帐号来在多个设备中断上各用各的的。 |
24
weidaizi 350 天前
https://github.com/MuggleWei/yoauth
我用自己写的,一个本地的,纯命令行终端下的 TOTP generator ;支持 linux/windows/mac/android ,要备份直接复制本地数据文件就 ok 了 |
25
ztxcccc 350 天前
歪一下楼,之前谷歌那个更新了以后很多人反馈同步有问题,现在解决了吗?我还在用很旧的版本
|
26
mikaelson 350 天前
我倒是想问有没有能自动填充的?
虽然用的浏览器插件,但是每次都要点一下。。。。 还有就是,比如 jumpserver 这一类的跳板机,有办法在用本地 ssh 客户端的时候也能自动填充吗。。。太麻烦了 |
27
mhqschen 350 天前
@woshicixide #19 那么多血淋淋的案例,怎么还敢用
|
28
click OP |
31
MuSeCanYang 350 天前
2 FAS
|
34
NoOneNoBody 350 天前
import pyotp
totp = pyotp.TOTP(...) print(totp.now()) |
35
CodeCodeStudy 350 天前
php 的代码,不依赖第三方库
```php <?php class TOTP { private static $base32Map = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567'; private static function base32Decode($in) { $l = strlen($in); $n = $bs = 0; for ($i = 0; $i < $l; $i++) { $n <<= 5; $n += stripos(self::$base32Map, $in[$i]); $bs = ($bs + 5) % 8; @$out .= $bs < 5 ? chr(($n & (255 << $bs)) >> $bs) : null; } return $out; } public static function getOTP($secret, $digits = 6, $period = 30, $offset = 0) { if (strlen($secret) < 16 || strlen($secret) % 8 != 0) return ['err' => 'length of secret must be a multiple of 8, and at least 16 characters']; if (preg_match('/[^a-z2-7]/i', $secret) === 1) return ['err' => 'secret contains non-base32 characters']; $digits = intval($digits); if ($digits < 6 || $digits > 8) return ['err' => 'digits must be 6, 7 or 8']; $seed = self::base32Decode($secret); $time = str_pad(pack('N', intval($offset + time() / $period)), 8, "\x00", STR_PAD_LEFT); $hash = hash_hmac('sha1', $time, $seed, false); $otp = (hexdec(substr($hash, hexdec($hash[39]) * 2, 8)) & 0x7fffffff) % pow(10, $digits); return ['otp' => sprintf("%'0{$digits}u", $otp)]; } } echo TOTP::getOTP('xxx')['otp']; ``` |
36
LCD 350 天前 via Android
试一下,freeotp
|
37
sayoll 347 天前
|
38
click OP 感谢大家的回复,最后我还是用回了 MS Authenticator 。因为微软账户好像只支持 MS Authenticator
|