架构师_程序员

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 84|回复: 2
打印 上一主题 下一主题

[资料] .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/

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


备注: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.
帖子永久地址: 

架构师_程序员 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与架构师_程序员享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和架构师_程序员的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、架构师_程序员管理员和版主有权不事先通知发贴者而删除本文

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
沙发
发表于 6 天前 | 只看该作者
来看看,谢谢分享
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
板凳
发表于 6 天前 | 只看该作者
NET/C# 基于 TOTP 生成一次性密码
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

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

Mail To:help@itsvse.com

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

GMT+8, 2020-8-3 11:10

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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