美文网首页
RSA加密算法数学基础

RSA加密算法数学基础

作者: 不懂球的2大业 | 来源:发表于2019-12-09 15:35 被阅读0次

1.同余类

  • 概念:给定正整数m,全体整数可按照模m是否同余分成若干两两不相交的集合,使得每一个集合中的任意两个正整数对模m一定同余,而属于不同集合的任意两个整数对模m不同余,每一个这样的集合称为模m同余类或剩余类
  • 例子:取m=7,则\{0,7,14,...\}是模7的同余类。
  • 定理:对于给定的正整数m,有且恰有m个不同的模m的剩余类。
  • m的m个剩余类可分别记为[i]i为该剩余类中整数除m所得的余数,可分别如下表示:
    [0]=\{...,-2m,-m,0,m,2m,...\}
    [1]=\{...,-2m+1,-m+1,1,m+1,2m+1,... \}
    [2] = \{...,-2m+2,-m+2,2,m+2,2m+2,... \}
    ...
    [m-1] = \{...,-2m+(m-1),-m+(m-1),m-1,m+(m-1),2m+(m-1),... \}

2.完全剩余系

  • 概念:在整数模m的所有剩余类中各取一个代表元素a_1,a_2,...,a_m,(a_i\in [i-1],i = 1,2,...,m),则称a_1,a_2,...,a_m为模m完全剩余系。完全剩余系0,1,2,...,m-1称为最小非负完全剩余系
  • 例子:7,15,16,-4,-10,5,-1为模7的一组完全剩余系。0,1,2,3,4,5,6为模7的最小非负完全剩余系。
  • Z_m表示由m的最小非负完全剩余系集合Z_m = \{ 0,1,2,...,m-1\}Z_m中的加法、减法、乘法都是模m下的运算。
  • 定理:设m是正整数,整数a满足gcd(a,m)=1b是任意整数。若x遍历模m的一个完全剩余系,则ax+b也遍历模m的一个完全剩余系。
  • 定理:设m_1,m_2是两个互素的正整数。如果x遍历模m_1的一个完全剩余系,y遍历模m_2的一个完全剩余系,则m_1y+m_2x遍历模m_1m_2的一个完全剩余系。

3.欧拉函数

  • 在模m的一个剩余类当中,如果有一个数与m互素,则该剩余类中所有的数均与m互素,这时称该剩余类与m互素。
  • 概念:与m互素的剩余类的个数称为欧拉函数,记为\phi(m)\phi(m)等于Z_m当中与m互素的数的个数。对于任意一个素数p\phi(p)=p-1
  • 例子:\phi(6)=2,表示Z_6中与6互素的数的个数,既1,5

4.简化剩余系

  • 概念:在与m互素的\phi(m)个模m的剩余类中各取一个代表元a_1,a_2,...,a_{\phi(m)},它们组成的集合称为模m的一个既约剩余系或简化剩余系。Z_m中与m互素的数构成模m的一个既约剩余系,称为最小非负既约剩余系
  • 定理:设m是正整数。整数a满足gcd(a,m)=1。若x遍历模m的一个既约剩余系,则ax也遍历模m的一个既约剩余系。
  • 定理:设m_1,m_2是两个互素的正整数。如果x遍历模m_1的一个既约剩余系,y遍历模m_2的一个既约剩余系,则m_1y+m_2x遍历模m_1m_2的一个既约剩余系。

5.欧拉定理

  • 推论:设m,n是两个互素的整数,则\phi(mn)=\phi(m)\phi(n)
  • 定理:若m = p_1^{e_1}p_2^{e_2}...p_k^{e_k},则\phi(m) = m\prod_{i=1}^{k}(1-{1\over{p_i}})
    证明:当m = p^{e}为单个素数的方幂时,在模m的完全剩余系\{0,1,2,...,p^e-1\}p^e整数中与p不互素的只有p的倍数,共有p^{e-1},因此与p^e互素的数共有p^e-p^{e-1},即\phi(p^e)=p^{e}-p^{e-1}=p^e(1-{1\over p}),根据上面的推论有\phi(m) = \phi(p_1^{e_1})\phi(p_2^{e_2})...\phi(p_k^{e_k})=\prod_{i=1}^{k}p^{e_i}_i(1-{1\over{p_i}})=m\prod_{i=1}^{k}(1-{1\over{p_i}})
  • 例子:\phi(120)=120\cdot(1-{1\over2})(1-{1\over3})(1-{1\over5})=32
  • 定理:设m是正整数,r\in{Z_m},若gcd(r,m)=1,则存在整数s\in{Z_m},使得rs\equiv1(mod\ m),整数s也成为r模整数m下的乘法逆元。
  • 例子:求15\ (mod\ 26)的乘法逆元。
    解:1526互素,存在乘法逆元。做辗转相除法,可得:
    26 = 1\times15+11
    15 = 1\times11+4
    11 = 2\times4+3
    4=1\times3+1
    由此有:
    1 = 4-3
    \ \ =4-(11-2\times4)
    \ \ =3\times4-11
    \ \ =3\times(15-11)-11
    \ \ =3\times15-4\times11
    \ \ =3\times15-4\times(26-15)
    \ \ =7\times15-4\times26
    所以15\ mod(\ 26)的乘法逆元为7
  • 欧拉定理:设m是正整数,r\in{Z_m},若gcd(r,m)=1,则r^{\phi(m)}\equiv{1}(mod\ m)

参考文献:

电子科技大学-现代密码学课件。

相关文章

  • RSA加密算法数学基础

    1.同余类 概念:给定正整数,全体整数可按照模是否同余分成若干两两不相交的集合,使得每一个集合中的任意两个正整数对...

  • # RSA 公钥加密算法

    # RSA 公钥加密算法 # RSA 公钥加密算法

  • 非对称加密算法RSA 学习

    非对称加密算法RSA 学习 RSA加密算法是一种非对称加密算法。RSA是1977年由罗纳德·李维斯特(Ron Ri...

  • 非对称加密算法

    非对称加密算法,RSA,也挺好玩。原来之前的数学 逻辑都是用到这些地方了。。 为提高保密强度,RSA密钥至少为50...

  • RSA加密算法详解

    什么是RSA算法? RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是197...

  • 乘法逆元的计算

    计算乘法逆元是学习加密算法的基础,在 RSA、ECC 和 AES 加密算法中都会用到,在网上提供的方法也有,比如扩...

  • 6.1 密码学专题 - 非对称加密算法 - RSA 算法

    密码学专题 - 非对称加密算法 - RSA 算法 6.1 RSA 算法 第一个较完善的非对称加密算法 RSA,它既...

  • 2019-10-26

    今天做了rsa加密算法

  • iOS逆向与安全1.0 :RSA加密

    摘自百度百科-RSA: RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业 中RSA被...

  • RSA公私钥和签名、验签过程

    RSA加密算法介绍 RSA又叫非对称加密算法,这类加密算法有2个秘钥,你可以选择一个作为私钥(自己保存,重要),另...

网友评论

      本文标题:RSA加密算法数学基础

      本文链接:https://www.haomeiwen.com/subject/kaibgctx.html