非对称密钥加密算法概述

  • 非对称密钥加密算法概述

①密钥:在明文转换为密文或将密文转换为明文的算法中输入的参数。

②非对称密钥:在加密和解密的步骤中使用的密钥不同。一个公开发布,即公开密钥,另一个由用户自己秘密保存,即私用密钥。两个密钥之间有数学联系,但无法通过公钥推出私钥。

③两种非对称密钥加密对比:

公钥加密:加密密钥是公开的,发送方用其对信息进行加密,接收方用私钥进行解密。

私钥加密(eg.数字签名):解密密钥是公开的,发送方用私钥对信息进行加密,接收方用公钥进行解密。

④非对称加密算法的要点:

1、找到合适的数学工具,使由私钥推出所对应的公钥十分容易,但由公钥推出私钥十分困难;

2、使加密密钥能对信息进行良好加密,即在不知道解密密钥的情况下无法解开加密信息。

  • 实际应用:RSA算法

①运算方法:取余运算(迪菲-赫尔曼算法)

②步骤:

1、取两个非常大的质数P和Q,计算:P*Q=N,(P-1)*(Q-1)=M;

2、找与M互质的整数E,找一个整数D,使D*E mod M=1;

3、其中,在公钥加密中,E、N为公钥,D为私钥;在数字签名中,D、N为公钥,E为私钥。

  • RSA算法的数学原理

①RSA算法优势:

由公钥E、N无法推出私钥D,目前效率相对最高的方法为暴力破解N

②数学原理:

大数分解问题存在非对称性,即由质数P、Q得出N十分容易,而分解N得到P、Q十分困难,即解决该问题的计算复杂度很高。

③设计实验:

1、实验目的:探究算法的时间复杂度随问题描述规模扩大的变化。

2、实验步骤:

(1)编写python程序,该程序可实现生成指定范围内的两个素数、计算它们的乘积,并对这个乘积进行分解;

(2)运行程序,依次输入范围:10^5以内、10^6以内、10^7以内、10^8以内、10^9以内,用计算机测量得出结果的时间;

(3)多次测量取平均值;

(4)将所得结果整理编入excel表格并绘制散点图像。

3、实验结果:所得的结果大致成指数函数图像。

4、实验结论:算法的时间复杂度随问题描述规模扩大大致呈指数上升。

  • 非对称加密算法的缺陷与解决

①非对称加密算法缺陷:

由于其算法复杂,使得加密解密速度没有对称加密解密的速度快。故非对称加密算法只能用于加密传输小量信息,无法用于大文件。

②解决方案:

发送方使用非对称加密方法,用接收方发布的公开密钥加密密码本,接收方再用自己持有的私有密钥解密密码本,这样就保证了密码本不被泄露。接着,双方使用该密码本对要传递的明文文本进行对称加密,进行传递,并在此次通讯后废弃该密码本。这样既保证了通讯的秘密性,也保证了翻译的高效性。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值