非对称加密 Rsa 数字签名 Go 实战
摘要:非对称加密算法需要两个密钥:publickey 和 privatekey。如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
什么是非对称加密
非对称加密算法需要两个密钥:publickey 和 privatekey。如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
•公钥:可以公开的密钥•私钥:需要妥善保管的密钥,知道人越少越好•数据的机密性只能单方向保证•加密效率低
什么是数字签名
将数字签名理解为附加到消息或文档中的代码。在生成数字签名之后,其可以作为证明消息从发送方到接收方的传输过程中没有被篡改的证据。
签名的生成
•有原始数据对其进行哈希运算-> 散列值•使用非对称加密的私钥对散列值加密 -> 签名•将原始数据和签名一并发送给对方
签名的验证
•接受数据
原始数据数字签名
•数字签名,需要使用公钥解密,得到散列值•对原始数据进行 hash 运算,得到新的散列值•散列值进行比对
go 实现 Rsa 数字签名
使用 rsa 生成密钥对
•生成密钥对•序列化•保存到磁盘文件
使用私钥对数字签名
使用公钥进行签名认证
结果展示
GitHub https://github.com/potaxie/go-crypto
Wechat potaxie
本文作者: potaxie
来源链接:mp.weixin.qq.com
- 免责声明
- 世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
- 风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
- 世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。