每天一道面试题:非对称加密之RSA算法

Posted YP校招

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每天一道面试题:非对称加密之RSA算法相关的知识,希望对你有一定的参考价值。

YP校招 YP校招小程序正式上线!曝匿名薪资,看校招行情,就上YP校招!

说到非对称加密,很多人的第一反应可能都是RSA加密了。RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院RSA就是他们三人姓氏开头字母拼在一起组成的。

算法原理

  RSA算法基于一个事实:将两个大素数相乘十分容易,但是想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。RSA算法三个参数:n、e1、e2

n=pq (p、q为2个大质数) n的二进制所占用的位数即秘钥的长度。
e1与e2是一对相关的值,e1可以任意取,但要求e1与(p-1)(q-1)互质;要求(e2e1)mod((p-1)(q-1))=1。
(n,e1),(n,e2)就是密钥对,其中(n,e1)为公钥,(n,e2)为私钥。

RSA的弊端

由于RSA算法的原理都是大数计算,使得RSA最快的情况也比对称加密算法慢上好几倍。速度一直是RSA的缺陷,一般来说RSA只用于小数据的加密,比如说用于加密传输对称加密方法的密钥。RSA的速度是对应同样安全级别的对称加密算法的1/1000左右。

以上是关于每天一道面试题:非对称加密之RSA算法的主要内容,如果未能解决你的问题,请参考以下文章

非对称加密BTC算法面试题

一文详解非对称加密算法之RSA算法

加密算法之非对称加密RSA

7 Go密码学(四) 非对称加密之RSA

非对称加密及RSA加密算法

国庆长假之真正搞懂非对称加密算法