• RSA算法


    建立一个RSA密码体制的过程如下:

      1.用户选择一对不同的大素数p,q,将其保密。

      2.令n=p*q,用户公布n(素数乘以素数还是素数).欧拉函数Ψ(n) = (p-1)*(q-1),保密。

      3.选区正整数d,使其满足gcd(d,Ψ(n)) = 1,将d保密。

      4.根据ed≡1modΨ(n),计算e并将其公布。

      则公开钥k1 = (n,e)

        私钥k2 = (p,q,d)

    下面看两道例题来加深理解

      问题一:在RSA环境中,某用户的公钥是e=31,n=3599.改用户的私钥是什么?

      问题二:假设p=5,q=11,e=3,M=9,应用RSA算法对其实现加密和解密。 

        解答如下:

            (一) 公钥e=31,n=3599

         N=3599=59X61 Ф(N)=58*60=3480

         ed=1 mod Ф(N) 0≤d≤3599

         ∴d=3031 ∴私钥KR={3031,59,61}

               (二)n=p*q=5*11=55,设m=(q-1)*(p-1)=40

           求d,ed=1 mod m 所以d=27 3

         加密:Y=M^e mod n= 9^3 mod 55=41 4

         解密:X=Y^d mod n= 41^27 mod 55=         

  • 相关阅读:
    css3 画小蜜蜂
    css3 绘制书本
    JavaScript 封装插件学习笔记(一)
    Jquery 多行拖拽图片排序 jq优化
    可输入式下拉框
    竖向展开式菜单
    checkbox 全选或取消
    JQuery.lazyload 图片延迟加载
    轻量级弹出框 lightbox
    onoffswitch-checkbox
  • 原文地址:https://www.cnblogs.com/hxsyl/p/2864359.html
Copyright © 2020-2023  润新知