认证,验证身份(比较多的,口令,指纹)
根据不同人的身份授权
授权之后,进行操作,对于这些操作,需要审计
网络之中安全通讯,加密
实现这些加密算法,linux有些工具openssl,gpg
对称加密,
称得上算法,算法必须是公开的才叫算法,你一个人用的算法就不算算法
军事发送信息
往后退三位,凯撒算法,并不能公开
在古罗马的时候已经使用
加密解密用的同一把钥匙,123等于key
key1=key2 秘钥是相等的
对称秘钥算法,速度快
encryption加密
DES数据加密标准
AES更加秘密 ,可以选择128,192,256位
对称加密看起来效率高,用的同一把钥匙
缺点如下
发给多个人就需要多把秘钥
秘钥分发苦难
非对称,这两把秘钥不相同,加密解密用的钥匙不一样
public公钥
sercret/private私钥
两个不同的字符串
公钥是可以公开的,私钥是不可公开的
如果把公钥加密了,就只能拿对应私钥来解密
黑客拿到了数据由于没有BOB的私钥也解不开
怎么证明数据来自阿里斯,用alice公钥
非对称比对称,
可以知道数据来源,拿到公钥推算不出私钥,但公钥可以通过私钥推算出,但是私钥不能用公钥推算
pub公钥,不带。pub就是私钥
RSA在中国银行,进行转账的加密
DES加密一个G数据大约需要4分钟 解密大约8分钟,数据会变成2G
RSA 加密一个G需要1分钟,解密需要64小时,数据还是1G
一般不会用非对称算法加密大量的数据
用私钥加密,一般叫数字签名(数字证书)
银行发的U盾里面其实就是放了私钥
哈希算法,散列是一个意思
用哈斯算法对数据的处理,处理得出的交摘要digest
数据不同,digest摘要必不同
不可逆推数据本身
digest长度固定大小
MD5:128位
sha1:160位
sha512 :512位
数据不变摘要不会变
修改文件,查看文件摘要是否变化
恢复文件就又恢复原来的摘要
)
可以把多个文件哈希值存到一个文件里
check检查此文件记录的哈希值和现有文件的哈希值是否一致,不一样提示,一样就ok
少一个空格就不匹配
16进制相当于4个2进制,多了4x8=32位的,128+32=160,
sha1非常常见,有些就是存文件用哈希值命名
内容一样,哈希值一样
哈希值,可以跟你下载的文件比对,如果一样就可以用,不一样就说明已经被破坏
md5sum -c等价于 --check
128位就是MD5,摘要用A的私钥来加密(把原文和数字签名作为一个整体)
再用B的公钥加密,就成密文了
B收到后,要验证你的数据来源,同时确认数据是否只有自己解得开
用B的私钥解,因为是用B的公钥加密就解开了
解开得到(数字签名和原文)的一个整体
用相同的哈希算法,计算得到相同的摘要值,
数字签名解密只能拿A的公钥,解密完得到摘要
如果一致,就证明数据没有串改过
digest摘要
Sa A 的私钥
Pb B的公钥
Sb B的私钥