数字签名

简介:

数字签名的目的:

完整性            确保数据在传输过程中没有被篡改

身份认证        确保你收到的数据是对应的人员发送过来的

不可否认性    发送方不能否认签名数据

 

数字签名要素:

原文

摘要

证书

 

哈希算法:

md2、md5(128位散列值)、国密sm3(256位)

主要作用  将原来比较大的数据散列成较小的值

Hash,一般翻译做"散列",也有直接音译为"哈希"的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。

这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一确定输入值(不能从散列值推算出原文)。

 

签名数据包:

attached  版本、哈希算法、原文、摘要、证书、CRL

detached  版本、哈希算法、摘要、证书     (detached中不包括原文信息,原文信息需要通过其他方式发送给验签方)

raw裸签   摘要   (裸签中不包括原文和证书信息)

 

签名验签过程:

wKioL1f6B0mybZrLAAEtSADGtM0560.png

1.首先client端利用哈希算法散列原文数据

2.然后利用自己的私钥将散列值加密

3.client端将证书、原文、散列值发送给server端

4.server利用证书中的公钥解密加密数据,得到散列值

5.然后利用同样的哈希算法将原文散列,对比两个散列值是否相同

数字信封的目的:

机密性  确保原文在加密后无法破解

解决了单独使用对称算法或非对称算法加密的缺点

 

数字信封流程:

wKioL1f6C9XS8c_zAAFwpAO0g9E585.png

A先用由计算机随机生成的一组一次使用的对称密钥会话密钥(Session Key加密信息原文,形成密文,然后B的公钥对会话密钥进行加密处理,并将加密的会话密钥附在密文后一起发送给BB在收到密文和加密的会话密文后,先用自己的私钥对加密的会话密钥解密,获得会话密钥,然后再用会话密钥解密密文,最终获得信息原文。


本文转自 红色的菠萝 51CTO博客,原文链接:http://blog.51cto.com/10460741/1859892


相关文章
|
1天前
|
安全 数据安全/隐私保护
在非对称加密中,公钥和私钥的生成过程是如何进行的?
【5月更文挑战第13天】在非对称加密中,公钥和私钥的生成过程是如何进行的?
7 3
|
18天前
|
算法 安全 数据安全/隐私保护
公钥密码学:解密加密的魔法世界
【4月更文挑战第20天】
32 2
公钥密码学:解密加密的魔法世界
|
9月前
|
自然语言处理 网络协议 安全
为什么用公钥加密却不能用公钥解密?
为什么用公钥加密却不能用公钥解密?
205 0
|
算法 数据安全/隐私保护
数字签名技术
通过阅读本篇文章,你可以了解到如下知识: 1. 数字签名是什么 2. 数字签名的作用 3. 签名 和 验签的流程 4. RSA、RSA2 签名算法
260 0
|
安全 数据安全/隐私保护 C++
加密/解密 公钥/私钥
加密/解密 公钥/私钥
471 0
加密/解密 公钥/私钥
|
算法 数据安全/隐私保护
|
算法 网络安全 数据安全/隐私保护
【计算机网络】网络安全 : 数字签名 ( 数字签名简介 | 数字签名实现 | 数字签名功能 | 保密数字签名 )
【计算机网络】网络安全 : 数字签名 ( 数字签名简介 | 数字签名实现 | 数字签名功能 | 保密数字签名 )
348 0
|
算法 网络安全 数据安全/隐私保护
【计算机网络】网络安全 : 公钥密码体质 ( 公钥 - 加密密钥 | 私钥 - 解密密钥 | 与对称密钥体质对比 | 特点 | 数字签名引入 )
【计算机网络】网络安全 : 公钥密码体质 ( 公钥 - 加密密钥 | 私钥 - 解密密钥 | 与对称密钥体质对比 | 特点 | 数字签名引入 )
236 0
|
机器学习/深度学习 算法 数据安全/隐私保护
一些加密算法
参考文献:https://mp.weixin.qq.com/s?__biz=MzU1MzE3Njg2Mw==&mid=2247485826&idx=1&sn=60126c394a72cd6bfaf31a32bc04dce3&chksm=fbf793f2...
1107 0