返回上级目录:iOS面试和知识点整理
RSA应用场景
由于 RSA算法的加密解密速度要比对称算法速度慢很多,在实际应用中,通常采取如下:
1.数据本身的加密和解密使用对称加密算法(AES)。
2.用RSA算法加密并传输对称算法所需的密钥。
参考:iOS使用RSA加密
RSA加密、签名区别
简单的说,加密是为了防止信息被泄露,而签名是为了防止信息被篡改。
RSA的公钥和私钥到底哪个才是用来加密和哪个用来解密?
公钥和私钥都可用于加密和解密。但是不同场景使用不同的密钥来加密。
1、私钥用于签名、公钥用于验签
签名和加密作用不同,签名并不是为了保密,而是为了保证这个签名是由特定的某个人签名的,而不是被其它人伪造的签名,所以私钥的私有性就适合用在签名用途上。
私钥签名后,只能由对应的公钥解密,公钥又是公开的(很多人可持有),所以这些人拿着公钥来解密,解密成功后就能判断出是持有私钥的人做的签名,验证了身份合法性。
2、公钥用于加密、私钥用于解密,这才能起到加密作用
因为公钥是公开的,很多人可以持有公钥。若用私钥加密,那所有持有公钥的人都可以进行解密,这是不安全的!
若用公钥加密,那只能由私钥解密,而私钥是私有不公开的,只能由特定的私钥持有人解密,保证的数据的安全性。
参考:rsa公钥和私钥到底哪个才是用来加密,哪个用来解密?