IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 加签和验签 -> 正文阅读

[网络协议]加签和验签

基本概念

  • 明文/密文:明文是没有经过加密的数据,密文是加密后的数据

  • 公钥/私钥:公钥和私钥是相对来说的,一般公钥用来解密,私钥用来解密

  • 对称加密/非对称加密:对称加密公钥和私钥相同,非对称加密公钥和私钥不同,不论公钥私钥都可被称为密钥

  • 加密/解密:加密是明文转密文,解密是密文转明文

  • 原始报文/摘要/数字签名:原始报文即为经过加密处理的报文,当原始报文经过了一些 hash 算法处理之后就成为了数字摘要,如果经过sha256 或者 RSA 处理之后,当数字摘要经过密钥加密之后就成为了数字签名

加签

加签的过程就是 hash 函数对原始报文做一个 hash 之后得到数字摘要,然后再把数字摘要通过密钥做一次加密之后得到一个数字签名,一般请求方会把 [原始报文]+[数字签名] 一起发给服务端,让服务端验证签名

在这里插入图片描述

验签

服务端拿到 [原始报文]+[数字签名] 之后先对数字签名部分使用密钥解密之后拿到数字摘要,再把原始报文通过 hash 算法加密之后比较两个数字摘要是不是一样的来验证签名

在这里插入图片描述

举例

一般最简单的加签,验签方式

如请求方传过来原始报文和加密后的报文,因为原始报文和加密后的报文无法推出加密方式,然后在服务端对原始报文做一个加密,如果和传过来的密文相同则验证成功。其实主要是验证原始报文和加密后的报文的对应关系是否成立

一些常见的 jwt 方式,auth 2.0

总结抽象

其实验签的过程就是请求方把原文和密文一起传过来,然后服务端验证方需要验证原文和密文是匹配的,可以通过原文加密后等于密文来验证,或者密文解密后和原文一致来验证。如果这个加密解密方式是非对称的,那么用户即使知道多组原文密文的组合也无法推算出密钥是什么,因此就无法篡改

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-03-16 22:56:30  更:2022-03-16 22:57:54 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:26:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码