区块链学习笔记(三)【密码学基础】

对称加密

用相同的密钥对原文进行加密和解密

加密过程: 密钥 + 原文 => 密文

解密过程: 密文  - 密钥 => 原文

缺点: 无法保证密钥被安全传递


非对称加密

公钥由私钥生成,私钥可以推导出公钥,公钥无法推导出私钥。公钥用于加密,私钥用于解密

优点:解决了密钥传输过程中的安全问题


hash函数

将一段数据(任意长度)经过一道计算,转换成一段定长的数据

http://www.fileformat.info/tool/hash.htm(一个在线hash计算网站)

不可逆性:几乎无法通过hash的结果推导出原文

无碰撞性:几乎没有可能找到一个y,使得y的哈希值等于x的哈希值

使用场景:发布文件的完整性验证/服务器中保存用户密码/数字签名



证书授权中心CA

CA解决了电子商务中公钥的可信度问题,CA是受信任的第三方,用于公钥的合法性检验,负责证明“我确实是我”

CA证书内容:

证书持有人的公钥/证书授权中心的名称/证书有效期/证书授权中心的数字签名

CA证书用例:

https访问网站

客户端通过https向服务器发送安全链接请求

服务器用私钥加密网页内容,连同CA证书一起发送给客户端

客户端会根据CA证书验证CA是否合法,验证失败则客户端弹出警告信息;如果验证通过,客户端使用CA证书中的公钥向服务器发送加密信息

(CA更加详细的解释可以参考https://www.cnblogs.com/handsomeBoys/p/6556336.html)