RSA加密算法例子解读

来源:互联网 发布:万科宝能大战结果 知乎 编辑:程序博客网 时间:2024/05/21 11:32

RSA加密算法例子解读

如何得到公钥和密钥


  1. 随机选择两个不相等的质数pq

    例如p=61,q=53

  2. 1 ~ (p-1)(q-1) 随机选择一个整数e,并且要与(p-1)(q-1)互质(最大公约数为1)

    1<e<60×52=3120,且需要和3120互质,随便选取一个符合条件的数17

  3. 计算二元一次方程,ex+(p1)(q1)y=1

    也就是计算 17x+3120y=1,这个很简单,随便拿个数套一下就能得出一个解,例如x=2753,y=-15

  4. 公钥为pq,e和私钥(pq,x)

    公钥为(3233,17)
    私钥为(3233,2753)

如何进行加密和解密


假设m为明文,c为加密后的明文,n=pq

  1. 加密,已知条件为m,(n,e)

    mec(modn)

    例如,明文为65,则加密过程为
    $$ 65^17 ≡ c (mod , 3233)
    于是,65加密后,c=2790,因此传输过程中,65不是以65的形式发送的,而是以2790发送的

  2. 解密,已知条件为c,(n,d)

    cdm(modn)

    也就是求解: 2790^2753 ≡ c (mod , 3233)
    得到c=65

0 0
原创粉丝点击