目前主要的摘要算法(即hash算法)
1 MD5 为 128 位
2 SHA1 主要为 256 位
目前主要的加密算法
1 非对称,RSA
2 对称,DES
相关术语
1 指纹:
一般的,我们将信息的摘要也称作信息的'指纹'
2 数字签名:
用私钥加密指纹,即为'数字签名'(非对称加密)
3 数字证书:
谁颁布的 + 颁布给谁 + 他的公钥是什么 + 权威机构对上述信息指纹的签名
4 自签名证书:
在密码学和计算机安全领域中,根证书是未被签名的公钥证书或自签名的证书
6 MAC:
即消息认证码,用私钥加密信息摘要(对称加密)
MAC不仅能够保证信息完整性,还能够保证真实性(谁发的)
7 PKI:
即公钥基础设施(Public Key Infrastructure)。/etc/pki
8 HPPTS:
HPPTS是HTTP+SSL/TCP的简称
证书,公钥,签名之间的关系
证书用来证明指定public key就是xxx的
用xxx的public key能解密签名,就证明这个信息是xxx发来的(没有被第三方劫持)
用信息的指纹 vs 解密后的签名,如果一致,证明信息内容没有被篡改
如何证明公钥的合法性
在https中可以通过CA来进行公证
在SSH中只能通过Client端自己对公钥进行确认(Server端的publish key和private key都是自己生成的,没法公证)
关于token
1 是一个客户端令牌(认证的时候服务端生成,发给客户端)
2 Token的使用流程可以概括为:
用户登录,填写用户名和密码,并发送给服务端
后端验证用户登录信息
验证通过,签名生成一个Token,返回给客户端
客户端存储这个Token,在下一次访问服务端的时候,会附带上这个Token
服务端下一次接收到数据时,验证Token,并返回数据
其它
由于非对称加密算法的复杂度更高,因此非对称加密的速度远没有对称加密算法快
网友评论