Two-Factor Authentication(2FA),通常称双因素认证,是两种身份认证的手段。算法
想要成为Kubernetes社区贡献者,必需要开启GitHub双因素认证。安全
一般咱们访问网站,使用账号和密码就能够登陆,对于安全要求更高的场合,除了账号和密码之外还须要提供其余的证实来登陆,这样安全系数就会提升,避免账号密码遗失风险。服务器
通常,用于证实一我的身份能够提供如下信息:网站
这些证据信息就称为因素(factor),提供的因素越多,证实力就越强,身份就越可靠。blog
好比,手机银行转账,除了输入密码外,每每还须要输入手机收到的验证码,这是典型的双因素认证。it
GitHub默认不会开启双因素认证,但你能够在安全设置中开启: io
按照GitHub指引便可开启双因素认证。社区
GitHub提供两种双因素认证,一种是经过手机APP,另外一种是经过短信验证码。验证码
手机APP作双因素认证,实现原理主要基于TOTP(Time-based One-time Password)算法,即基于时间的一次性密码。登录
有些银行会给客户派发一个密码器,输入密码后,密码器上会出现几个数字,在网银操做时,除了输入银行卡的支付密码外,还要求输入密码器上的数字。密码器上的数字每隔一段时间就会更新。
那如今使用APP,替代密码器的就是手机。APP替代的是密码器中的软件程序。
简单的将,使用APP开启双因素认证时,GitHub会生成一个密钥,APP经过扫描 GitHub的二维码获取这个密钥,同时还会获取GitHub的帐号信息。经过这个密钥,GitHub 端(服务器端)根据当前时间和密钥可以计算出一个密码。APP 端根据当前时间和密钥也能计算出一个密码,只要时间一致,这两个密码就是一致的。
具体开通步骤再也不赘述,按照 GitHub 指引一步步操做便可。
短信验证码使用起来最方便,但遗憾的是国内用户暂时没法使用。