内容简介:本文介绍了如何使用非对称加密来实现信息安全领域中热点话题-数字签名本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。
本文介绍了如何使用非对称加密来实现信息安全领域中热点话题-数字签名
什么是非对称加密
非对称加密算法需要两个密钥:publickey和privatekey。如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
-
公钥:可以公开的密钥
-
私钥:需要妥善保管的密钥,知道人越少越好
-
数据的机密性只能单方向保证
-
加密效率低
什么是数字签名
将数字签名理解为附加到消息或文档中的代码。在生成数字签名之后,其可以作为证明消息从发送方到接收方的传输过程中没有被篡改的证据。
签名的生成
- 有原始数据对其进行哈希运算-> 散列值
- 使用非对称加密的私钥对散列值加密 -> 签名
- 将原始数据和签名一并发送给对方
签名的验证
- 接受数据
- 原始数据
- 数字签名
- 数字签名,需要使用公钥解密,得到散列值
- 对原始数据进行hash运算,得到新的散列值
- 散列值进行比对
go实现Rsa数字签名
使用rsa生成密钥对
- 生成密钥对
- 序列化
- 保存到磁盘文件
使用私钥对数字签名
使用公钥进行签名认证
结果展示
GitHub https://github.com/potaxie/go-crypto
Wechatpotaxie
什么是非对称加密
非对称加密算法需要两个密钥:publickey和privatekey。如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
-
公钥:可以公开的密钥
-
私钥:需要妥善保管的密钥,知道人越少越好
-
数据的机密性只能单方向保证
-
加密效率低
什么是数字签名
将数字签名理解为附加到消息或文档中的代码。在生成数字签名之后,其可以作为证明消息从发送方到接收方的传输过程中没有被篡改的证据。
签名的生成
- 有原始数据对其进行哈希运算-> 散列值
- 使用非对称加密的私钥对散列值加密 -> 签名
- 将原始数据和签名一并发送给对方
签名的验证
- 接受数据
- 原始数据
- 数字签名
- 数字签名,需要使用公钥解密,得到散列值
- 对原始数据进行hash运算,得到新的散列值
- 散列值进行比对
go实现Rsa数字签名
使用rsa生成密钥对
- 生成密钥对
- 序列化
- 保存到磁盘文件
使用私钥对数字签名
使用公钥进行签名认证
结果展示
GitHub https://github.com/potaxie/go-crypto
Wechatpotaxie
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。
- 发表于 1小时前
- 阅读 ( 11 )
- 学分 ( 5 )
- 分类:隐私
以上所述就是小编给大家介绍的《非对称加密Rsa数字签名Go实战》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 对称加密,非对称加密,数字签名,数字证书,SSL握手
- 非对称加密 Rsa 数字签名 Go 实战
- 区块链语言Solidity校验椭圆曲线加密数字签名(附实例)
- [原]数字签名
- 数字签名与HTTPS详解
- 【go密码学】-数字签名
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
PHP for the World Wide Web, Second Edition (Visual QuickStart Gu
Larry Ullman / Peachpit Press / 2004-02-02 / USD 29.99
So you know HTML, even JavaScript, but the idea of learning an actual programming language like PHP terrifies you? Well, stop quaking and get going with this easy task-based guide! Aimed at beginning ......一起来看看 《PHP for the World Wide Web, Second Edition (Visual QuickStart Gu》 这本书的介绍吧!