欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

c# 使用谷歌身份验证GoogleAuthenticator的示例

程序员文章站 2022-04-28 16:59:22
此功能相当于给系统加了个令牌,只有输入对的一组数字才可以验证成功。类似于qq令牌一样。一丶创建最核心的一个类googleauthenticator此类包含了生成密钥,验证,将绑定密钥转为二维码。其中g...

此功能相当于给系统加了个令牌,只有输入对的一组数字才可以验证成功。类似于qq令牌一样。

一丶创建最核心的一个类googleauthenticator

此类包含了生成密钥,验证,将绑定密钥转为二维码。

其中generatesetupcode 这个方法是用于把绑定的密钥直接转成二维码图片,然后再转成base64图片 输出再页面上,这样在app上直接用扫一扫即可绑定。

二丶由于生成的密钥不可以直接使用,需要进行base32进行编码。下面是base32encoding类

三丶主程序里面直接调用方法

//key系统的账号,guid是进行加密的字符串,要求唯一,不然密钥会重复,所以这里使用guid.   2为二维码的大小约120x120px。

setupcode结果类为

manualentrykey 是手机绑定的密钥。如果想手动输入密钥绑定就使用此字符串。
qrcodesetupimageurl 是将密钥转成的二维码图片

下载这个app

c# 使用谷歌身份验证GoogleAuthenticator的示例

进入app后直接绑定,就会出现一下界面,即为绑定成功,然后我们就可以使用此令牌验证了。

c# 使用谷歌身份验证GoogleAuthenticator的示例

验证方法

//guids 之前生成密钥的字符,此时当做唯一键来查询,checkcode为手机上动态的6位验证吗。校验成功会返回true

这样功能就完成了。

以上就是c# 使用谷歌身份验证googleauthenticator的示例的详细内容,更多关于c# 使用谷歌身份验证googleauthenticator的资料请关注其它相关文章!