(图片来自谷歌)
1.1、【进制——一种计数方法】
1.1.1、【进制】
1)、二进制:(0,1)计算机机器语言唯一能明白的;
2)、十六进制:(0-9、A、B、C、D、E、F),每一个十六进制的字符代表4个二进制组合的数字;
3)、十进制:(0-9);
1.1.2、【计量术语】
1)、位(bit):最小的数据单位;
2)、字节(Byte):8个bit组成,存储空间的最小单位;
(图片来自谷歌)
1.2、【加密】
1.2.1、【对称加密】
用相同密钥对原文进行加密和解密;
加密过程:密钥+原文——密文;
解密过程:密文-密钥——原文;
缺点:无法确保密钥被安全的传递;
1.2.2、【非对称加密——公钥与私钥】
公钥用于加密,私钥用于解密;
公钥由私钥生成,私钥可以推导出公钥;
从公钥无法推导出私钥;
优点:解决了密钥传输中的安全性问题;
解决了信息传递的问题,如何验证是“确实是发送者发送的,信件没有被篡改?”
(图片来自谷歌)
1.3、【哈希——Hash】
1.3.1、【哈希】
将一段数据(任意长度)经过一道计算,转换为一段定长的数据。(http://www.fileformat.info);
1.3.2、【不可逆性】
几乎无法通过Hash结果推导出原文,即无法通过X的Hash值,而推导出X;
1.3.3、【无碰撞性】
几乎没有可能找到一个Y,使得Y的Hash值等于X的哈希值;
1.3.4、【使用场景】
1)发布文件的完整性验证;
2)服务器中保存用户的密码;
3)数字签名;
1.3.5、【哈希用例——用户密码的存储】
1)、明文存储——无安全防护;
2)、哈希存储——彩虹表攻击(Rainbow Table Attack);
3)、(盐+哈希)存储——彩虹表失效;
(图片来自谷歌)
1.4、【数字签名——Digital Signature】
1.4.1、【证书授权中心CA——Certificate Authority】
1)、CA解决了电子商务中公钥的可信度问题;
2)、负责证明“我确实是我”;
3)、CA 是受信任的第三方,公钥的合法性检验;
4)、CA证书内容:
正书持有人的公钥;
证书授权中心名称;
证书有效期;
证书授权中心的数字签名;
1.4.2、【CA证书用例——Https】
1)、Https访问网站
客户端通过Https的服务器发安全链接请求;
服务器用私钥加密网页内容,连同CA证书一样发给客户端;
客户端会根据CA证书验证CA是否合法;
如果验证失败,客户端弹出警告信息;
如果验证通过,客户端使用CA证书中心公钥向服务器发送加密信息;
领取专属 10元无门槛券
私享最新 技术干货