当前位置: 首页 > news >正文

OTP一次性密码、多因子认证笔记

文章目录

      • 双因子认证(多因子认证)
      • otp算法(ONE-TIME PASSWORD)
        • otp算法大概分为几部
      • otp的机制
        • 服务端
        • 客户端(app端)
        • 两种主流算法
        • otp流程图
      • otp是通用的吗

手机验证码天天在用,但是居然不知道这个是otp,伤自尊了,必须弄清原理。

先要知道几个概念。

双因子认证(多因子认证)

这个比较好理解,账号+密码认证是最基础的认证。
再加一层手机otp认证就是双因子认证。
如果还有其他认证,就叫多因子认证。

otp算法(ONE-TIME PASSWORD)

一次性算法

otp算法大概分为几部

密钥生成
密码生成

otp的机制

服务端

保存账号、密钥、客户等信息。
当您需要绑定时,会将上述信息以二维码的形式展现出来。

客户端(app端)

客户端扫描二维码,主要是密钥、账号及客户名称等信息。
这样就在app端添加一条对应记录。
因为算法是一致的,所以 密钥+计数器 算出的结果也会一致。
这样app端获取到的验证码发给服务器验证,一致就会通过,登录成功。

注:发现了吧,因为密码等信息都在二维码上,也就是说,谁获取到了二维码,就相当于具有了获取验证码的能力。所以一定要妥善保管二维码,如果泄露了,他人就有能力来登录了。

两种主流算法

1、totp
基于时间的算法,主流。

基于时间主要是解决计数器问题,而基于时间做计数器非常方便,例如以30s为步长,当前时间毫秒数/30,就可以作为计数器的值。

既方便,还有一定的容错,即使差个一两秒问题也不大。

2、hotp
基于hashcode的算法。(这个用的不多,基于时间的用的多)

otp流程图

otp是通用的吗

是通用的,实现otp功能的app不只一个。
如:
freeotp
google身份验证器
身份宝

实际上都是可以的,但是双因子客户一般会推荐一个,那就按推荐的来吧,也没任何问题。

http://www.lryc.cn/news/469351.html

相关文章:

  • 玉米生长阶段检测系统源码&数据集全套:改进yolo11-dysample
  • 【机器学习】决策树算法
  • P2818 天使的起誓
  • 数字信号处理实验简介
  • Flask-SQLAlchemy 组件
  • Could not retrieve mirrorlist http://mirrorlist.centos.org错误解决方法
  • 最新PHP网盘搜索引擎系统源码 附教程
  • SpringBoot面试热题
  • ASP.NET Core8.0学习笔记(二十三)——EF Core自引用
  • springboot童装销售管理系统-计算机毕业设计源码92685
  • OpenCV中的图像通道合并
  • Flutter TextField和Button组件开发登录页面案例
  • 【vue + mockjs】Mockjs——数据接口模拟
  • ssm订餐系统-计算机毕业设计源码26763
  • 4.2-7 运行MR应用:词频统计
  • 查看Chrome安装路
  • 深入剖析Canvas的getBoundingClientRect:精准定位与交互事件实现
  • SQL SERVER 2005/2008/2012/2016/2020 数据库状态为“可疑”的解决方法(亲测可用)
  • Linux: network: wireshark IO图的一个问题
  • TMGM平台可靠么?交易是否安全?
  • 软工毕设开题建议
  • Python自动化发票处理:使用Pytesseract和Pandas从图像中提取信息并保存到Excel
  • 新手直播方案
  • 【大模型理论篇】主流大模型的分词器选择及讨论(BPE/BBPE/WordPiece/Unigram)
  • 入侵检测算法平台部署LiteAIServer视频智能分析平台行人入侵检测算法
  • 000010 - Mapreduce框架原理
  • OpenCV未定义标识符CV_XXX
  • flask服务通过gunicorn启动
  • 用更多的钱买电脑而不是手机
  • 10.25学习