架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 47746|回复: 13

[资料] .NET/C# 基于 TOTP 生成一次性密码

[复制链接]
发表于 2020-7-25 18:50:04 | 显示全部楼层 |阅读模式
OTP 是 One-Time Password的简写,表示一次性密码。

市场常见的产品:

  • 宁盾令牌
  • 阿里巴巴的身份宝
  • Google的 身份验证器(google-authenticator)
  • QQ 令牌



动态令牌 OTP、TOTP和HOTP 区别
https://www.itsvse.com/thread-9326-1-1.html
Angular 9 系列(十二)基于OTP生成动态令牌
https://www.itsvse.com/thread-9325-1-1.html
微信小程序实现 OTP 动态口令
https://www.itsvse.com/thread-9329-1-1.html

我们新建一个 .NET 4.5 的项目。

nuget安装插件,命令如下:

我们尝试每60秒生成一个密码,使用sha1算法,代码如下:

我找了一个在线 TOTP Token Generator 的网站,该网站默认算法是 sha1。

https://totp.danhersam.com/

尝试运行程序,生成的动态口令如下图:

QQ截图20200725184624.jpg
备注:SecretKey 必须是 base32 字符串,否则会报错如下:

Character is not a Base32 character

源码下载:

游客,如果您要查看本帖隐藏内容请回复


(完)


评分

参与人数 1MB +1 贡献 +1 收起 理由
conntfs + 1 + 1 很给力!

查看全部评分





上一篇:动态令牌 OTP、TOTP和HOTP 区别
下一篇:Now you can provide attr `wx:key` for a `wx:for` to improve.
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2020-7-28 21:29:28 | 显示全部楼层
NET/C# 基于 TOTP 生成一次性密码
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2021-6-22 09:18:14 | 显示全部楼层

NET/C# 基于 TOTP 生成一次性密码
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2020-10-10 15:08:50 | 显示全部楼层
正想有个客户端认证的解决方案
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2020-7-28 18:35:33 | 显示全部楼层
来看看,谢谢分享
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2020-10-13 17:44:56 | 显示全部楼层
看看,谢谢分享
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2020-10-23 15:16:12 | 显示全部楼层
求源码!
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2021-3-18 14:54:32 | 显示全部楼层
生成的跟电脑上的堆不下
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2021-4-20 11:10:39 | 显示全部楼层
来看看,谢谢分享
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2021-8-14 10:37:31 | 显示全部楼层
有用 谢谢分享
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-3-29 22:01

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表