在公钥系统中,我们采用公钥加密,私钥解密的方式,使得报文能够比较安全的传输。
假设A和B通信,但他们之间不通过对称密钥,B有一个公钥 K+B 和一个私钥 K−B 。为了与B实现通信,A首先需要获得B的公钥 K+B 对报文m进行加密,即 K+B(m) ;B收到A的加密报文后用私钥 K−B 进行解密,即 K−B(K+B(m))=m 。其中的加解密算法通常使用RSA(RSA取创始人Ron Rivest, Adi Shamir, Leonard Adleman的姓氏首字母)。
RSA工作方式
加密时,首先把报文m做e次的幂运算,然后做模n的算数运算,即 me%n ;解密则先把上述密文值做d次幂,再做模n运算,即 (me)d%n=m(ed