说说签名与验签

简介

本文会比较简短

目的很简单

就是提升自己对【签名】与【验签】的熟悉程度 ------ 熟悉签名、验签的【整体流程】

正文

签名简介

【签名】用于验证消息来源和完整性。需配合哈希算法(如 SHA-256)和密钥对(用私钥签名,用公钥验证)。

它只用于非对称加密(也就是发送方和接收方分别有自己的公钥和私钥)

签名和验签的流程【这是最重要的部分,要十分熟练】

发送方(签名):

a. 对原始消息计算哈希值(摘要)。

b. 使用发送方自己的私钥,对这个哈希值进行签名运算,生成数字签名。

c. 将【原始消息】和【数字签名】一起发送给接收方。

接收方(验签):

a. 接收后,将收到的内容分离成【原始消息】和【数字签名】两部分。

b. 使用发送方的公钥对数字签名进行【验签】运算,从而解出一个哈希值 H1。【⚠️⚠️ 注意,这边说的是验签,这个词会比"解密"更精准】

c. 最关键的一步: 使用【相同的哈希算法】,对收到的原始消息单独计算一次哈希值 H2。【⚠️⚠️ 注意,也就是双方的哈希算法是提前约定好的】

d. 将计算得到的 H2 与从签名中解出的 H1 进行比对。

如果 H1 == H2:验签成功!证明:1. 消息确实来自发送方(认证性)。2. 消息在传输中未被篡改(完整性)。

如果 H1 != H2:验签失败!证明消息要么被篡改,要么不是声称的发送方所发。

最后

此前只注意"签名"这个词,不太注意"验签"这个词

导致最开始在看一些内容的时候有点懵

特此总结!

相关推荐
ZhengEnCi1 小时前
Agent 规则管理:让 Memory 做索引、让 Skill 存规则——上下文上限实测与分工方案
后端
nice_lcj5202 小时前
深入理解 Java 反射:从 Class 对象到方法调用(含性能实测 + 迷你 IOC 实战 + 面试考点)
java·开发语言·后端·面试
骑着蜗牛撵大象3272 小时前
2026 后端 AI 工程化:Spring AI 管调用、MCP 管工具、Agent 内嵌管自治
java·人工智能·后端·spring·ai·可观测性·mcp
摸爬滚打的小李3 小时前
Spring XML + WAR + Tomcat 项目启动
后端
IT_陈寒4 小时前
SpringBoot自动配置的坑,这次终于爬出来了
前端·人工智能·后端
RainbowFish4 小时前
# RAG 与智能体记忆:从原理到工程实践 > 一篇给学习者的总结。
后端
苏三说技术5 小时前
为什么越来越多人用Arthas 4 ?
后端
ServBay5 小时前
AI 开发平台出事后,API Key 泄露要怎么办
后端·aigc·ai编程
程序员老申5 小时前
解剖 PDF 底层二进制:一行代码如何抓出假薪资流水的 3 处破绽
后端
JuiceFS5 小时前
从 Meta 的工程实践看 EB 级 AI 存储架构
人工智能·后端