密码学数学基础知识¶
基本模运算¶
如果有a_1\equiv b_1\pmod n,a_2\equiv b_2\pmod n, 那么就有: $$ a_1+a_2\equiv b_1+b_2\pmod n\\ a_1-a_2\equiv b_1-b_2\pmod n\\ a_1\times a_2\equiv b_1\times b_2\pmod n $$
拓展GCD¶
(g,s,k)=ex_gcd(a, b)
其中g=gcd(a,b)
,sa+kb=g
当ab互质时,g=1
,存在(s,k)
可以线性表出sa+kb=1
逆元¶
a在\bmod n下的逆元记为a^{-1}\pmod n,如果a^{-1}\pmod n为a\pmod n的逆元,那么有a\times a^{-1}\equiv 1\pmod n.
如果要求a^{-1}\pmod n,有a\times a^{-1}\pmod n
进一步a\times a^{-1}+kn=1,所以要求a,n线性表出1,要求a,n互质。
所以存在a^{-1}\pmod n的充要条件是gcd(a, n)=1,然后用拓展GCD算法求算a^{-1}\pmod n
中国剩余定理 CRT¶
问题:
有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?
形式化问题: $$ \begin{cases} x\equiv q_1\pmod {p_1}\\ x\equiv q_2\pmod {p_2}\\ \dots\\ x\equiv q_n\pmod {p_n} \end{cases} $$ 解法:先定义一个w_1=5\times7\times[(5\times7)^{-1}\pmod {3}]
w_1有这样几点性质: $$ w_1\equiv1\pmod 3\\ w_1\equiv0\pmod 5\\ w_1\equiv0\pmod 7 $$ 我们构造类似的w_2,w_3
w_2=3\times7\times[(3\times7)^{-1}\pmod 5]
w_3=3\times5\times[(3\times 5)^{-1}\pmod 7]
就有x\equiv w_1q_1+w_2q_2+w_3q_3\pmod{p_1p_2p_3}满足x的要求
我们给出更形式化的解题过程: $$ w_k=\prod_{i\neq k}p_i[(\prod_{i\neq k}p_i)^{-1}\pmod {p_k}] $$ s_n有这样的性质: $$ \begin{cases} s_k\equiv 1\pmod {p_k}\\ s_k\equiv 0\pmod {p_i, i\neq k} \end{cases} $$
欧拉定理¶
如果a与n互质,那么: $$ a^{\phi(n)}\equiv 1\pmod n $$
费马小定理¶
欧拉定理的特殊形式, 当n为质数时: $$ a^{n-1}\equiv1\pmod n $$