• 算法导论数论RSA公钥加密系统


    RSA 公钥加密系统

    1.Alice :PA ,SA ;Bob PB,SB(P公钥,S密钥)

    2.任何消息M 属于D

    M=SA(PA(M));

    M=PA(SA(M));

    3.发送消息方案:

    1. Bob取得Alice 公钥PA

    (2)Bob 计算出M密文C=PA(M),把C发送给Alice

    (3)Alice收到密文后用SA恢复出原始信息M=SA(C);

    4. 数字签名

                (1)Alice用SA计算出M`的数字签名σ=SA(M`)

                (2)把(M`,σ)发给Bob

                (3)Bob利用PA验证等式M`=PA(σ);

    5. RSA加密

                (1)随机取两个大素数p,q

                (2)n=pq

                (3)φ(n)=(p-1)(q-1),取与φ(n)互质的小奇数e

                (4)对模φ(n)计算出e的乘法逆元d

                (5)P=(e,n)公钥

                (6)S=(d,n)密钥

                     加密:P(M)=(modn)

                     解密:S(C)=(modn)

        证明:逆变换成立M=SA(PA(M));M=PA(SA(M)),即证:=M(modn)

             P(S(M))=S(P(M))=(modn)

             ed=1+k(p-1)(q-1)

            (1)若M!=0(modp)

             =M=M(modp)

    (2)若M=0(modp),成立

    (3)类似,对q,= M(modq)

    所以=M(modn)

  • 相关阅读:
    对图像边缘进行随机均匀采样的C#算法实现
    [淡藤]最近几年在Chinapub上买的书
    重新认识C#: 玩转指针
    又是一年春来到
    需求定律在起着作用
    haha, 愚人节听鱼人歌
    名字就叫奥格工作室!
    effective c++ 第六章
    com 名字对象(1)IBindCtx
    com 名字对象(2)创建名字对象(IMoniker)
  • 原文地址:https://www.cnblogs.com/inpeace7/p/2403076.html
Copyright © 2020-2023  润新知