RSA加解密过程及实现

RSA加解密过程及实现
RSA加解密过程及实现

********************

本科生作业

********************

兰州理工大学

计算机与通信学院

2017年春季学期

信息安全课程

专业:物联网工程

姓名:

学号:

授课教师:郭显

成绩:

RSA 加解密过程及其实现

1.RSA 概述

1.1 RSA 算法

RSA 加密算法是一种最常用的非对称加密算法,CFCA 在证书服务中离不了它。在公钥加密标准和电子商业中,RSA 被广泛使用。 RSA 算法使用乘方运算,明文以分组为单位进行加密,每个分组的二进制值均小于n ,也就是说,分组的大小必须小于或等于1)(log 2+n 位,在实际应用中,分组的大小i 位,其中12

2+≤

解密过程如下: n M C e mod =

n M n M n C M ed d e d m od m od )(m od ===

其中收发双方均已知n ,发送方已知e ,只有接收方已知d ,因此公钥加密算法的公钥为PU={e,n},私钥为PR={d,n}。该算法要能做公钥加密,必须满足以下条件:

(1)可以找到e,d,n,使得对所有的M

ed =mod 。 (2)对所有的M

(3)由e 和n 确定d 是不可行的。

1.2 公钥与私钥

(1)随意选择两个大素数p 和q ,p 不等于q ,计算pq n =。

(2)根据欧拉函数,不大于n 且与n 互素的整数个数为)1)(1(--q p

(3)选择一个整数e 与)1)(1(--q p 互素,并且e 小于)1)(1(--q p

(4)用以下这个公式计算d : ))1)(1mod((1--≡q p de

(5)将p 和q 的记录销毁。),(e n 是公钥,),(d n 是私钥。),(d n 是秘密的。Alice 将她的公钥),(e n 传给Bob ,而将她的私钥),(d n 藏起来。

相关主题