站在技术角度学习区块链(二) 简单的密码学
1. 对称加密
定义:使用相同的**进行加密和解密
加密过程:**+原文 = 密文
解密过程:**+密文 = 原文
缺点:无法保证**被安全传递
2.非对称加密
定义:使用公钥进行加密,使用私钥进行解密,公钥由私钥生产,但公钥无法推出私钥。
优点:解决了**传输的安全性问题,保证了信息的确是由发送方发送的,但无法确定信件是否被篡改过(需要签名才能实现防篡改)。
3.Hash
首先需要了解什么是Hash,也可以通过Hash在线计算器进行hash的计算。
Hash的特性:
- 不可逆性:几乎不可能从hash后的串反推出原始串
- 无碰撞行:几乎无法找到一个串y,满足y的hash值和x的hash值相同
4.数字签名
整体签名过程如图所示。
发送方具体流程为:
- 发送方形成发送内容
- 将发送内容按照接收方的公钥进行加密
- 将发送内容进行hash,从而得到发送内容的摘要
- 将密文传输给接收方
接收方具体流程:
- 将密文内容按照接收方的私钥进行解密
- 将摘要密文通过Hash进行解密
- 将摘要内容与密文内容进行对比,判断是否一致
- 如果一致增接收,否则拒绝
小知识:
- 对于同一段内容,发送方用公钥每次进行加密后得到的内容不通,但私钥可以解密得到同样的结果。这样也是为了防止加密算法被攻破。
- 如果用全文作为摘要,则会出现通过发送方的公钥可以解开摘要,也就获得了全文,从而产生数据泄漏
5.证书授权中心(CA,Certificate Authority)
CA是解决电子商务中心公钥可信任的问题。CA中心为每个使用公开**的用户发放一个数字证书,数字证书的作用是证明证书中列出的用户合法拥有证书中列出的公开**。如果一个用户想鉴别另一个证书的真伪,他就用 CA 的公钥对那个证书上的签字进行验证,一旦验证通过,该证书就被认为是有效的。
CA证书的内容包括:
- 证书持有人的公钥
- 证书授权中心名称
- 证书有效期
- 证书授权中心的数字签名