公钥密码体制
一个系统中,n个用户之间要进行保密通信,为了确保安全性,两两用户之间的密钥不能一样。这种方式下,需要系统提供C n=n×(n-1)/2把共享密钥。这样密钥的数量就大幅增加了,随之而来的产生、存储、分配、管理密钥的成本也大幅增加。而使用公钥密码体制可以大大减少密钥的数量,降低密钥的管理难度。
在公钥密码体制中,加密和解密采用两把不同的钥匙,分别为公钥和私钥。公钥可以公开,而私钥需要严格保密。这种密码系统需要使用单向陷门函数来构造。
单向函数y=f(x)满足下面两个条件:
(1)已知x,要计算y很容易;
(2)已知y,要计算出x很难。
常见的单向函数有SM3、SHA-1、MD5。单向函数的加密效率高,但加密后不能还原。
单向陷门函数y=f(x)满足下面三个条件:
(1)函数f具有陷门。比如,陆逊受困于诸葛亮的八阵图,他只有在诸葛亮老丈人带着走了生门才捡回一命。这里的生门就是陷门。
(2)已知x&#