密钥和加密算法是个什么关系?
但是有谁能告诉我密钥到底是什么东西?最好能举个例子。
比如明文“Run”
如何用密钥和算法来得到一个密文?
主要的问题就是我觉得密钥和算法是一个东西。- -
既然密钥是个替代关系那还要算法干什么?
请知情人解答。谢谢。
最好用通俗点的话来讲。 展开
密钥是一种参数(它是在明文转换为密文或将密文转换为明文的算法中输入的数据),加密算法是明文转换成密文的变换函数,同样的密钥可以用不同的加密算法,得到的密文就不一样了。
举一个示例,例如凯撒密码,该字母向后旋转n位,该n是密钥, 向后移动的方法称为算法。 尽管使用相同的算法,但是对明文用不同的密钥加密的结果不一样。
例如,Run使用Key = 1(密钥)的凯撒密码,即Svo,而Key = 2(密钥)的加密,则成为Twp,因此密钥和算法存在很大差异。
现在大多数公钥密码系统都使用RSA算法,但是每个人的密钥的密文不同。 通常,该算法是公共的,密钥不是公共的。 加密算法恰好包含两个输入参数,一个是明文,另一个是密钥。
扩展资料:
1、密钥算法
使用极其复杂的加密算法,即使解密者可以加密他选择的任意数量的明文,也无法找出破译密文的方法。 秘密密钥的一个弱点是解密密钥必须与加密密码相同,这引发了如何安全分配密钥的问题。
2、公钥算法
满足三个条件:第一个条件是指在对密文应用解密算法后可以获得明文。 第二个条件是指不可能从密文中得出解密算法。 第三个条件是指即使任何明文形式的选择都无法解密密码,解密程序也可以加密。 如果满足上述条件,则可以公开加密算法。
密钥是一种参数(它是在明文转换为密文或将密文转换为明文的算法中输入的数据),加密算法是明文转换成密文的变换函数,同样的密钥可以用不同的加密算法,得到的密文就不一样了。
举个很简单的例子,比如凯撒密码,就是将字母循环后移n位,这个n就是一个密钥,循环后移的方法叫做算法,虽然用的是相同的算法,但是对明文用不同的密钥加密的结果不一样。
比如Run用Key=1(密钥)的凯撒密码,变成Svo,用Key=2(密钥)加密就成了Twp,所以密钥和算法是明显不同的,再比如现在公钥密码体系大多用的RSA算法,但每个人的密钥不一样,密文才不同,一般来说,算法是公开的,而密钥是不公开的一个加密算法正好包含两个输入参数,一个是明文,一个是密钥。
扩展资料:
1,秘密密钥算法:
使用极其复杂的加密算法,即使破译者能够对选择的任意数量的明文进行加密,也无法找出破译密文的方法。秘密密钥的一个弱点是解密密钥必须和加密密码相同,这就产生了如何安全地分发密钥的问题。
2,公开密钥算法:
满足三个条件:第一个条件是指将解密算法作用于密文后就可以获得明文;第二个条件是指不可能从密文导出解密算法;第三个条件是指破译者即使能加密任意数量的选择明文,也无法破译密码。如果满足以上条件,则可以公开加密算法。
密钥和加密算法的区别:
密钥是一种参数(它是在明文转换为密文或将密文转换为明文的算法中输入的数据);
加密算法是明文转换成密文的变换函数...是算法;
同样的密钥可以用不同的加密算法呀,得到的密文就不一样了。
举个很简单的例子,比如凯撒密码,就是将字母循环后移n位,这个n就是一个密钥,循环后移的方法叫做算法,对明文用不同的密钥加密的结果不一样,虽然他们用的是相同的算法。
比如Run用Key=1(密钥)的凯撒密码,变成Svo,用Key=2(密钥)加密就成了Twp,所以密钥和算法是明显不同的,再比如现在公钥密码体系大多用的RSA算法,但每个人的密钥不一样,密文才不同。
另外,一般来说,算法是公开的,而密钥是不公开的。
对明文用不同的密钥加密的结果不一样,虽然他们用的是相同的算法
比如Run用Key=1(密钥)的凯撒密码,变成Svo,用Key=2(密钥)加密就成了Twp,所以密钥和算法是明显不同的,再比如现在公钥密码体系大多用的RSA算法,但每个人的密钥不一样,密文才不同
另外,一般来说,算法是公开的,而密钥是不公开的~
一个加密算法正好包含两个输入参数,一个是明文,一个是密钥,理解了吧?
解密:密文+私钥=》明文
基础:因为有了算法理论,才可以计算选择公钥和私钥