对称加密 非对称加密

基本概念:

1.密钥

密钥是指用来完成加密、解密、完整性验证等密码学应用的秘密信息(不能泄露),是一串非常大的数字,可以通过随机数生成器(random number generator, RNG)或伪随机数生成器(pseudorandom number generator, PRNG)随机生成。

密钥的度量单位是 “位” bit,而不是 “字节” byte。比如,密钥长度是 128 位,就是 16 字节的二进制串;密钥长度是 1024 位,就是 128 字节的二进制串。

密钥是加密算法的输入参数,加密算法使用密钥加解密,但是密钥并不是由加密算法本身生成的。

remark: 密钥与加密算法没有直接的关系,密钥实质是很大的整数,但不同的加密算法对密钥有不同的要求。比如对称加密算法 AES128,要求密钥是 128 位的整数,再如非对称加密算法 RSA1024,要求密钥是 1024 位的整数,且必须是质数,这些大整数都是由随机数生成,与加密算法无关

 

2.什么是对称加密,非对称加密

对称加密是指加解密使用的是同样的密钥 非对称加密是指加解密使用的密钥不同。

对称加密的优缺点

对称加密的特点是简单快速。密钥越大,加密越强,但加解密过程越慢。 密钥容易被黑客拦截

非对称加密使用了一对密钥,公钥和私钥。私钥由解密方安全保管,公钥可以发给任何请求它的人。数据使用公钥加密,私钥解密。因为私钥不通过网络发送出去,所以非对称加密的安全性很高。 非对称加密很安全,但和对称加密比起来,非常慢。

非对称加密算法在实际应用中的用途

1用于身份认证

一条加密信息若能用A 的公钥能解开,则该信息一定是用A 的私钥加密的,该能确定该用户是A。 

2用于陌生人通信

A 和B 两个人互不认识,A 把自己的公钥发给B,B 也把自己的公钥发给A,则双方可以通过对方的公钥加密信息通信。C 虽然也能得到A、B 的公钥,但是他解不开密文。

3用于敏感的秘钥交换场景下

A 先得到B 的公钥,然后A 生成一个随机秘钥,例如13245768,之后A 用B 的公钥加密该秘钥,得到加密后的秘钥,例如dxs#fd@dk,之后将该密文发给B,B 用自己的私钥解密得到123456,之后双方使用13245768 作为对称加密的秘钥通信。C 就算截获加密后的秘钥dxs#fd@dk,自己也解不开,这样A、B 二人能通过对称加密进行通信。

非对称加密一般不会单独拿来使用,他并不是为了取代对称加密而出现的,非对称加密速度比对称加密慢很多,极端情况下会慢1000 倍,所以一般不会用来加密大量数据,通常我们经常会将对称加密和非对称加密两种技术联合起来使用,例如用非对称加密来给称加密里的秘钥进行加密(即秘钥交换)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值