RSA是基于数论中大素数的乘积难分解理论上的非对称加密法.在此密码术中,使用公钥(public key)和私钥(private key)两个不同的密钥:公钥用于加密,它是向所有人公开的:私钥用于解密,只有密文的接收者持有. 举例:小红希望安全地发送一条消息给小明,消息明文为m,小明的公钥为K+,小明的私钥为K-.通信过程为,小红使用K+加密m,成为密文K+(m),传送给小明,小明收到后使用K-解密这个密文得到原始消息明文,即m = K-(K+(m)). 具体的密钥生成算法如下.随机选择两个大素数