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

《深入浅出HTTPS​​​​​​​​​​​​​​​​​》读书笔记(28):DSA数字签名

《深入浅出HTTPS​​​​​​​​​​》读书笔记(28):DSA数字签名

 

对称加密算法有很多算法,标准算法是RSA机密算法,数字签名技术也有一个标准DSS(Digital Signature Standard),其标准算法就是DSA签名算法(Digital Signature Algorithm)

 

(1)DSA算法的内部结构

 

p、q、g是公共参数,通过参数会生成密钥对

 

DSA的密钥对生成就取决于这三个公共参数,计算签名和验证签名也要依赖参数文件。

 

(2)生成DSA密钥对

 

◎选取一个随机数作为私钥x,0 < x < q。

◎基于私钥生成公钥,g^x mod p。

从中可以看出RSA算法、DH算法、DSA算法基于离散数学。

 

(3)签名生成

 

◎生成一个随机数k,1 < k < q。

◎计算r = ( g^k mod p ) mod q。

◎计算s = ( k^(-1) (H(m) + xr)) mod q, H是特定的摘要算法。

◎签名值就是(r, s),随同原始消息m一起发送。

 

(4)签名验证

 

◎假如r和s大于q或者小于0,则验证直接失败。

◎计算w = s^(-1) mod q。

◎计算u1 = H(m).w mod q。

◎计算u2 = r.w mod q。

◎计算v = ( g^u1 * y^u2 mod p ) mod q。

◎如果v等于r,则签名验证成功,否则失败。

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

相关文章:

  • type 属性的用途和实现方式(图标,表单,数据可视化,自定义组件)
  • PSINS工具箱学习(四)捷联惯导更新算法
  • P1Linux和Docker常用终端命令:保姆级图文详解
  • Windows重装后NI板卡LabVIEW恢复正常
  • 深度解析统计学四大分布:Z、卡方、t 与 F 的关联与应用
  • zkServer.sh脚本
  • CV(10)--目标检测
  • UML系列之Rational Rose笔记七:状态图
  • C++单例模式的设计
  • 基于springboot的自习室预订系统
  • shell笔记
  • 《鸿蒙Next微内核:解锁人工智能决策树并行计算的加速密码》
  • AI刷题-最大矩形面积问题、小M的数组变换
  • Redis集群部署详解:主从复制、Sentinel哨兵模式与Cluster集群的工作原理与配置
  • LeetCode热题100(三十四) —— 23.合并K个升序链表
  • kalilinux - 目录扫描之dirsearch
  • 浅谈云计算04 | 云基础设施机制
  • 文件上传 分片上传
  • 【0391】Postgres内核 checkpointer process ① 启动初始化
  • 链路追踪SkyWalking
  • Uniapp判断设备是安卓还是 iOS,并调用不同的方法
  • 计算机网络 (42)远程终端协议TELNET
  • rtthread学习笔记系列-- 23 环形缓冲块 ringblock
  • HunyuanVideo 文生视频模型实践
  • Qt——QTableWidget 限制单元格输入范围的方法(正则表达式输入校验法、自定义代理类MyItemDelegrate)
  • 深度学习论文: CAS-ViT: Convolutional Additive Self-attention Vision Transformers
  • PyCharm文档管理
  • QNAP 上常用的几款软件
  • LabVIEW智能水肥一体灌溉控制系统
  • 提问:玩游戏输入法总弹出来咋回事哎