发布网友 发布时间:2022-04-19 19:12
共1个回答
热心网友 时间:2023-06-24 00:53
1976年美国斯坦福大学的两名学者迪菲和赫尔曼提出了公开密钥密码*的概念。所谓的公开密钥密码*就是使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码*。
在公开密钥密码*中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然秘密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。
与传统的加密方法不同,该技术采用两个不同的密钥来对信息加密和解密,它也称为非对称式加密方法。每个用户有一个对外公开的加密算法E和对外保密的解密算法D, 它们须满足条件: (1)D是E的逆,即D[E(X)]=X; (2)E和D都容易计算。 (3)由E出发去求解D十分困难。 从上述条件可看出,公开密钥密码*下,加密密钥不等于解密密钥。加密密钥可对外公开,使任何用户都可将传送给此用户的信息用公开密钥加密发送,而该用户唯一保存的私人密钥是保密的,也只有它能将密文复原、解密。虽然解密密钥理论上可由加密密钥推算出来,但这种算法设计在实际上是不可能的,或者虽然能够推算出,但要花费很长的时间而成为不可行的。所以将加密密钥公开也不会危害密钥的安全。 数学上的单向陷门函数的特点是一个方向求值很容易,但其逆向计算却很困难。许多形式为Y=f(x)的函数,对于给定的自变量x值,很容易计算出函数Y的值;而由给定的Y值,在很多情况下依照函数关系f(x)计算x值十分困难。例如,两个大素数p和q相乘得到乘积n比较容易计算,但从它们的乘积n分解为两个大素数p和q则十分困难。如果n为足够大,当前的算法不可能在有效的时间内实现。
特点:
(1) 发送者用加密密钥 PK 对明文 X 加密后,在接收者用解密密钥 SK 解密,即可恢复出明文,或写为:
Dsk(Epk(X)) = X
解密密钥是接收者专用的秘密密钥,对其他人都保密。
此外,加密和解密的运算可以对调,即
Epk(Dsk(X)) = X
(2) 加密密钥是公开的,但不能用它来解密,即
Dpk(Epk(X)) ? X
(3) 在计算机上可容易地产生成对的 PK 和 SK。
(4) 从已知的 PK 实际上不可能推导出 SK,即从 PK 到 SK 是“计算上不可能的”。
(5) 加密和解密算法都是公开的。