基于公钥的加密算法
点击上面蓝色字↑↑↑即可免费订阅! 您的公众号名称 (微信号:设置您的微信号) 一个好的加密算法的重要特点之一是具有这种能力:可以指定一个密码或密钥,并用它来加密明文,不同的密码或密钥产生不同的密文。这又分为两种方式:对称密钥算法和非对称密钥算法。所谓对称密钥算法就是加密解密都使用相同的密钥,非对称密钥算法就是加密解密使用不同的密钥。非常著名的pgp公钥加密以及rsa加密方法都是非对称加密算法。加密密钥,即公钥,与解密密钥,即私钥,是非常的不同的。从数学理论上讲,几乎没有真正不可逆的算法存在。例如,对于一个输入‘a’执行一个操作得到结果‘b’,那么我们可以基于‘b’,做一个相对应的操作,导出输入‘a’。在一些情况下,对于每一种操作,我们可以得到一个确定的值,或者该操作没有定义(比如,除数为0)。对于一个没有定义的操作来讲,基于加密算法,可以成功地防止把一个公钥变换成为私钥。因此,要想破译非对称加密算法,找到那个唯一的密钥,唯一的方法只能是反复的试验,而这需要大量的处理时间。 rsa加密算法使用了两个非常大的素数来产生公钥和私钥。即使从一个公钥中通过因数分解可以得到私钥,但这个运算所包含的计算量是非常巨大的,以至于在现实上是不可行的。加密算法本身也是很慢的,这使得使用rsa算法加密大量的数据变的有些不可行。这就使得一些现实中加密算法都基于rsa加密算法。pgp算法(以及大多数基于rsa算法的加密方法)使用公钥来加密一个对称加密算法的密钥,然后再利用一个快速的对称加密算法来加密数据。这个对称算法的密钥是随机产生的,是保密的,因此,得到这个密钥的唯一方法就是使用私钥来解密。 我们举一个例子:假定现在要加密一些数据使用密钥‘12345’。利用rsa公钥,使用rsa算法加密这个密钥‘12345’,并把它放在要加密的数据的前面(可能后面跟着一个分割符或文件长度,以区分数据和密钥),然后,使用对称加密算法加密正文,使用的密钥就是‘12345’。当对方收到时,解密程序找到加密过的密钥,并利用rsa私钥解密出来,然后再确定出数据的开始位置,利用密钥‘12345’来解密数据。这样就使得一个可靠的经过高效加密的数据安全地传输和解密。
|
删除Word中“删不掉”的空白页,…
容易损坏电脑的小动作,你做了几…
超个性QQ网名!你值得拥有!
为啥手机用电脑USB充电掉电快
收到Enel电子邮件 千万不要点击链…
电脑快捷键大全_计算机常用技巧
photoshop入门教程
耳机插到电脑上没声音,怎么办?
电脑操作基本入门知识
使用电脑小技巧
春节外出是不是感觉电脑的电池不…
电脑有哪些操作系统
电脑病毒杀不掉的主要原因与解决…
电脑基础知识小技巧学习,你get了…
办公软件中的“复制”你真的会吗…
电脑套结机各种突发故障的处理方…
电脑操作五大误区,你中了几条?
伤感QQ网名:孤单成性う
笔记本电脑无线网络连接不上的原…
史上最危险五个电脑病毒
看完这些你就学会了看电脑配置
计算机技术员必装的几款软件
电脑常见的开机故障及解决方法详…
为什么电脑要装操作系统才能用?…
QQ冬季伤感最潮网名~你改了吗?