现代密码学笔记-Chapter4

一、数学基础

1.群环域

1.1 半群

  • 封闭性:运算无溢出
  • 结合律:运算无先后顺序

1.2 群(单元运算)

  • 半群
  • 存在单位元:无运算作用
  • 存在逆元:元素可逆,相乘为单位元

1.3 交换群

  • 满足交换律,不分左乘右乘(反例:矩阵乘法运算)

1.4 环(二元运算)

  • 加法支持交换群
  • 乘法支持半群(不要求可逆和交换律)
  • 乘法在加法上可分配(满足分配律,有运算优先级)

1.5 域

  • 乘法群是交换群(去0,乘法不满足此单位元)

2. 乘法逆元

Lemma:记 Z n ∗ = { a ∣ 0 < a < n , gcd ( a , n ) = 1 } \mathbb{Z}^*_n=\{a|0<a<n,\textrm{gcd}(a,n)=1\} Zn={a0<a<n,gcd(a,n)=1},则每一元素都存在逆元;
Proof:分为两各方面: ∣ a × Z n ∗ ∣ = ∣ Z n ∗ ∣ |a\times\mathbb{Z}^*_n |=|\mathbb{Z}^*_n| a×Zn=Zn a × Z n ∗ ⊆ Z n ∗ a\times\mathbb{Z}^*_n \subseteq \mathbb{Z}^*_n a×ZnZn。当第二个 Z n ∗ \mathbb{Z}^*_n Zn具体化为1时,第一个 Z n ∗ \mathbb{Z}^*_n Zn中对应元素为逆元。

  • 反证法:若 a × b ≡ a × c  mod  n a\times b\equiv a\times c \textrm{ mod }n a×ba×c mod n,则存在 a b = k 1 n + r , a c = k n + r ab=k_1n+r,ac=k_n+r ab=k1n+r,ac=kn+r,即余数相同。可得 a ( b − c ) = ( k 1 − k 2 ) n a(b-c)=(k_1-k_2)n a(bc)=(k1k2)n,由于a和n互素,则a是 k 1 − k 2 k_1-k_2 k1k2的因子,即 k 1 − k 2 = k 3 a k_1-k_2=k_3a k1k2=k3a,立即推 a ( b − c ) = k 3 a n a(b-c)=k_3an a(bc)=k3an,即 b − c = k 3 n ∈ ( − n , n ) b-c=k_3n\in(-n,n) bc=k3n(n,n),矛盾得证。
  • gcd ( a , n ) = 1 , gcd ( c , n ) = 1 \textrm{gcd}(a,n)=1,\textrm{gcd}(c,n)=1 gcd(a,n)=1,gcd(c,n)=1,则 gcd ( a c , n ) = 1 \textrm{gcd}(ac,n)=1 gcd(ac,n)=1,立即推 a c ∈ Z n ∗ → × Z n ∗ ⊆ Z n ∗ ac\in\mathbb{Z}^*_n\rightarrow \times \mathbb{Z}^*_n \subseteq \mathbb{Z}^*_n acZn×ZnZn

3. 费马定理

a p − 1 ≡ 1  mod  p a^{p-1}\equiv 1 \textrm{ mod }p ap11 mod p
由于 a × Z p = Z p a\times\mathbb{Z}_p=\mathbb{Z}_p a×Zp=Zp
a × 2 a × ⋯ ( p − 1 ) a = ( p − 1 ) ! a p − 1 ≡ [ ( a  mod  p ) × ( 2 a  mod  p ) ⋯ ( ( p − 1 ) a  mod  p ) ] ≡ ( p − 1 ) !  mod  p a\times 2a\times \cdots (p-1)a=(p-1)!a^{p-1}\equiv [(a\textrm{ mod }p)\times(2a\textrm{ mod }p)\cdots((p-1)a\textrm{ mod }p)]\equiv(p-1)!\textrm{ mod }p a×2a×(p1)a=(p1)!ap1[(a mod p)×(2a mod p)((p1)a mod p)](p1)! mod p

4. 欧拉函数

φ ( n ) \varphi(n) φ(n)是小于n且与n互素的正整数的个数

  • φ ( p ) = p − 1 \varphi(p)=p-1 φ(p)=p1
  • n = p 1 α 1 p 2 α 2 ⋯ p t α t n=p_1^{\alpha_1}p_2^{\alpha_2}\cdots p_t^{\alpha_t} n=p1α1p2α2ptαt φ ( n ) = n ( 1 − 1 p 1 ) ⋯ ( 1 − 1 p t ) \varphi(n)=n(1-\frac{1}{p_{1}})\cdots(1-\frac{1}{p_t}) φ(n)=n(1p11)(1pt1)

5. 欧拉定理

若a和n互素,则 a φ ( n ) ≡ 1  mod n a^{\varphi(n)}\equiv 1 \textrm{ mod} n aφ(n)1 modn

6. 卡米歇尔定理

对满足 gcd ( a , n ) = 1 \textrm{gcd}(a,n)=1 gcd(a,n)=1的所有 a a a,使得 a m ≡ 1  mod  n a^m\equiv 1 \textrm{ mod }n am1 mod n同时成立的最小正整数m称为n的卡米歇尔函数,记为 λ ( n ) \lambda(n) λ(n)

  • 重点记忆:若a和n互素,则 a λ ( n ) ≡ 1  mod  n a^{\lambda(n)}\equiv 1 \textrm{ mod } n aλ(n)1 mod n
  • n = p 1 α 1 p 2 α 2 ⋯ p t α t n=p_1^{\alpha_1}p_2^{\alpha_2}\cdots p_t^{\alpha_t} n=p1α1p2α2ptαt λ ( n ) = lcm ( λ ( p 1 α 1 ) , ⋯   , λ ( p t α t ) ) \lambda(n)=\textrm{lcm}(\lambda(p_1^{\alpha_1}),\cdots,\lambda(p_t^{\alpha_t})) λ(n)=lcm(λ(p1α1),,λ(ptαt)),其中若 n = p α n=p^{\alpha} n=pα λ ( n ) = φ ( n ) \lambda(n)=\varphi(n) λ(n)=φ(n)
    • 扩展:在Paillier等加密体制中, n = p q , λ = lcm ( p − 1 , q − 1 ) = lcm ( λ ( p ) , λ ( q ) ) n=pq,\lambda=\textrm{lcm}(p-1,q-1)=\textrm{lcm}(\lambda(p),\lambda(q)) n=pq,λ=lcm(p1,q1)=lcm(λ(p),λ(q)),又 g ∈ Z n 2 ∗ g\in\mathbb{Z}^*_{n^2} gZn2,则 gcd ( g , n ) = 1 \textrm{gcd}(g,n)=1 gcd(g,n)=1。立即推, g λ ≡ 1  mod  n , g λ = 1 + k n g^{\lambda}\equiv 1 \textrm{ mod } n,g^{\lambda}=1+kn gλ1 mod n,gλ=1+kn,后续可按流程解密,不赘叙
    • 再扩展:在HRES等体制中, λ ( n 2 ) = lcm ( λ ( p 2 ) , λ ( q 2 ) ) = lcm ( p 2 − p , q 2 − q ) = n lcm ( p − 1 , q − 1 ) = n λ ( n ) \lambda(n^2)=\textrm{lcm}(\lambda(p^2),\lambda(q^2))=\textrm{lcm}(p^2-p,q^2-q)=n\textrm{lcm}(p-1,q-1)=n\lambda(n) λ(n2)=lcm(λ(p2),λ(q2))=lcm(p2p,q2q)=nlcm(p1,q1)=nλ(n)

7. 扩展欧几里得算法

始终保持: a Y 1 + b Y 2 ≡ 1 aY_1+bY_2\equiv 1 aY1+bY21,得到 Y 1 ≡ a − 1  mod  b , Y 2 ≡ b − 1  mod  a Y_1\equiv a^{-1}\textrm{ mod }b,Y_2\equiv b^{-1}\textrm{ mod }a Y1a1 mod b,Y2b1 mod a

循环次数QX_1X_2X_3Y_1Y_2Y_3
初值-10a01b
1 r 1 r_1 r101b1-0* r 1 r_1 r10-1* r 1 r_1 r1a-b* r 1 r_1 r1
t r t r_t rt Y 1 ( 旧 ) Y_1(旧) Y1() Y 2 ( 旧 ) Y_2(旧) Y2() Y 3 ( 旧 ) Y_3(旧) Y3() a − 1 a^{-1} a1 b − 1 b^{-1} b11

注意 gcd ( a , b ) = 1 \textrm{gcd}(a,b)=1 gcd(a,b)=1

8. 中国剩余定理CRT

m 1 , m 2 , ⋯   , m k m_1,m_2,\cdots,m_k m1,m2,,mk是两两互素的正整数, M = ∏ i = 1 k m i M=\prod_{i=1}^km_i M=i=1kmi,则一次同余方程组:
{ a 1 (  mod  m 1 ) ≡ x a 2 (  mod  m 2 ) ≡ x ⋮ a k (  mod  m k ) ≡ x \begin{cases}a_1(\textrm{ mod }m_1)\equiv x \\ a_2(\textrm{ mod }m_2)\equiv x\\ \vdots\\a_k(\textrm{ mod }m_k)\equiv x \end{cases} a1( mod m1)xa2( mod m2)xak( mod mk)x
有模 M M M下的唯一解: x ≡ ( M m 1 e 1 a 1 + ⋯ + M m k e k a k ) ( mod  M ) x\equiv ( \frac{M}{m_1}e_1a_1+\cdots+\frac{M}{m_k}e_ka_k)(\textrm{mod }M) x(m1Me1a1++mkMekak)(mod M),其中 e i e_i ei是逆元,满足 M m i ⋅ e i ≡ 1  mod  m i ( i = 1 , 2 , ⋯   , k ) \frac{M}{m_i}\cdot e_i\equiv1 \textrm{ mod } m_i (i=1,2,\cdots,k) miMei1 mod mi(i=1,2,,k)

9. 平方剩余

对满足 gcd ( a , n ) = 1 \textrm{gcd}(a,n)=1 gcd(a,n)=1 x 2 ≡ a  mod  n x^2\equiv a \textrm{ mod }n x2a mod n有解

  • 若p是素数,则a恰有两个平方根,一个在 0 ∼ p − 1 0\sim p-1 0p1,一个在 ( p − 1 ) / 2 + 1 ∼ p − 1 (p-1)/2+1\sim p-1 (p1)/2+1p1

9.1 Legendre符号

  • ( a p ) ≡ a p − 1 2  mod  p (\frac{a}{p})\equiv a^{\frac{p-1}{2}} \textrm{ mod } p (pa)a2p1 mod p
    ( a p ) = { 0 , 如 果 a 被 p 整 除 − 1 , 如 果 a 是 模 p 的 平 方 剩 余 1 , 如 果 a 是 模 p 的 非 平 方 剩 余 (\frac{a}{p})=\begin{cases}0,\quad 如果a被p整除 \\-1,如果a是模p的平方剩余\\1,如果a是模p的非平方剩余 \end{cases} (pa)=0,ap1ap1ap
    ( a b p ) = ( a p ) ( b p ) (\frac{ab}{p})=(\frac{a}{p})(\frac{b}{p}) (pab)=(pa)(pb)

9.2 Jacobi符号

n = p 1 α 1 p 2 α 2 ⋯ p t α t n=p_1^{\alpha_1}p_2^{\alpha_2}\cdots p_t^{\alpha_t} n=p1α1p2α2ptαt,则 ( a n ) = ( a p 1 ) α 1 ( a p 2 ) α 2 ⋯ ( a p t ) α t (\frac{a}{n})=(\frac{a}{p_1})^{\alpha_1}(\frac{a}{p_2})^{\alpha_2}\cdots(\frac{a}{p_t})^{\alpha_t} (na)=(p1a)α1(p2a)α2(pta)αt

  • 注意:当m、n是大于2 的奇数时, ( m n ) = ( − 1 ) ( ( m − 1 ) ( n − 1 ) 4 ) ( n m ) (\frac{m}{n})=(-1)^{(\frac{(m-1)(n-1)}{4})}(\frac{n}{m}) (nm)=(1)(4(m1)(n1))(mn)
  • 特别的, m ≡ n ≡ 3  mod  4 m\equiv n\equiv 3 \textrm{ mod }4 mn3 mod 4 ( m n ) = − ( n m ) (\frac{m}{n})=-(\frac{n}{m}) (nm)=(mn);否则, ( m n ) = ( n m ) (\frac{m}{n})=(\frac{n}{m}) (nm)=(mn)

定理 p ≡ q ≡ 3  mod  4 p\equiv q\equiv 3 \textrm{ mod }4 pq3 mod 4时,求解方程 x 2 ≡ a  mod  n x^2\equiv a \textrm{ mod }n x2a mod n与分解 n n n是等价的

  1. 分解 n = p q n=pq n=pq后,根据Rabin密码体制可快速求四个不同的解,并利用中国剩余定理得到 x x x
  2. 已知 a  mod  n a \textrm{ mod }n a mod n后,根据两个不同的平方根 u u u w w w,且 u ≤ w  mod  n u\leq w \textrm{ mod }n uw mod n。由于 u 2 ≡ w 2  mod  n u^2\equiv w^2 \textrm{ mod }n u2w2 mod n,则 ( u + w ) ( u − w ) e q u i v 0  mod  n (u+w)(u-w)equiv 0 \textrm{ mod }n (u+w)(uw)equiv0 mod n,可推出 p ∣ ( u + w ) , q ∣ ( u − w ) p|(u+w),q|(u-w) p(u+w),q(uw) p ∣ ( u − w ) , q ∣ ( u + w ) p|(u-w),q|(u+w) p(uw),q(u+w),由欧几里得算求最大公因子即可求出 gcd ( n , u + w ) = p , gcd ( n , u − w ) = q \textrm{gcd}(n,u+w)=p,\textrm{gcd}(n,u-w)=q gcd(n,u+w)=p,gcd(n,uw)=q(第二种亦然)。

二、密码算法

1. RSA

1.1 基本流程

  1. n = p q , φ ( n ) = ( p − 1 ) ( q − 1 ) n=pq,\varphi(n)=(p-1)(q-1) n=pq,φ(n)=(p1)(q1)是欧拉函数,同样是卡米歇尔函数
  2. 1 < e < φ ( n ) , gcd ( φ ( n ) , e ) = 1 , d ⋅ e ≡ 1  mod  n 1<e<\varphi(n),\textrm{gcd}(\varphi(n),e)=1,d\cdot e\equiv 1 \textrm{ mod }n 1<e<φ(n),gcd(φ(n),e)=1,de1 mod n
  3. c ≡ m e  mod  n c\equiv m^e \textrm{ mod }n cme mod n
  4. m ≡ c d  mod  n m\equiv c^d \textrm{ mod }n mcd mod n
  • 正确性: m ≡ c d  mod  n ≡ m e d  mod  n ≡ m k φ ( n ) + 1  mod  n m\equiv c^d \textrm{ mod }n\equiv m^{ed} \textrm{ mod }n\equiv m^{k\varphi(n)+1} \textrm{ mod }n mcd mod nmed mod nmkφ(n)+1 mod n
    • m与n互素时,由欧拉定理 m φ ( n ) ≡ 1  mod  n m^{\varphi(n)} \equiv 1 \textrm{ mod }n mφ(n)1 mod n得证
    • 不互素时,则 p ∣ m p|m pm q ∣ m q|m qm,由欧拉定理 m φ ( p ) ≡ 1  mod  p → m k φ ( n ) ≡ 1  mod p m^{\varphi(p)} \equiv 1 \textrm{ mod }p\rightarrow m^{k\varphi(n)} \equiv 1 \textrm{ mod p} mφ(p)1 mod pmkφ(n)1 mod p得证

1.2 共模攻击

  • 满足公开钥 gcd ( e 1 , e 2 ) = 1 \textrm{gcd}(e_1,e_2)=1 gcd(e1,e2)=1
    { c 1 ≡ m e 1  mod  n c 2 ≡ m e 2  mod  n \begin{cases}c_1\equiv m^{e_1} \textrm{ mod }n \\c_2\equiv m^{e_2} \textrm{ mod }n\end{cases} {c1me1 mod nc2me2 mod n
  • 由扩展欧几里得算法求出 r e 1 + s e 2 = 1 re_1+se_2=1 re1+se2=1,其中两个值一正一负 r < 0 , s > 0 r<0,s>0 r<0,s>0。实质上可以求 r r r φ ( n ) \varphi(n) φ(n)的加法逆元来保持正值。
  • 可解得 m ≡ ( c 1 − 1 ) − r c 2 s  mod  n m\equiv (c_1^{-1})^{-r}c_2^{s}\textrm{ mod }n m(c11)rc2s mod n

1.3 低指数攻击

  • 模数 n 1 , n 2 , n 3 n_1,n_2,n_3 n1,n2,n3两两互素,否则可根据欧几里得算法最大公因子进而分解模数
    { c 1 ≡ m 3  mod  n 1 c 2 ≡ m 3  mod  n 2 c 3 ≡ m 3  mod  n 3 \begin{cases}c_1\equiv m^{3} \textrm{ mod }n_1 \\c_2\equiv m^{3} \textrm{ mod }n_2\\c_3\equiv m^{3} \textrm{ mod }n_3\end{cases} c1m3 mod n1c2m3 mod n2c3m3 mod n3
  • 由中国剩余定理可解得 m 3  mod  n 1 n 2 n 3 m^3 \textrm{ mod }n_1n_2n_3 m3 mod n1n2n3,并开立方根。

2. Rabin

  • 同一密文对应两个以上的明文(最多四个)
  • 破解难度等价于大整数分解

2.1 基本流程

  1. p ≡ q ≡ 3   m o d   4 , n = p q , e = 2 p\equiv q\equiv 3 \bmod{4},n=pq,e=2 pq3mod4,n=pq,e=2
  2. c ≡ m 2   m o d   n c\equiv m^2 \bmod{n} cm2modn
  3. 求解 c c c n n n的平方根。
    3.1 计算 c c c p p p q q q的平方根
    { m p ≡ c p + 1 4   m o d   p m q ≡ c q + 1 4   m o d   q \begin{cases}m_p\equiv c^{\frac{p+1}{4}} \bmod{p} \\m_q\equiv c^{\frac{q+1}{4}} \bmod{q}\\\end{cases} {mpc4p+1modpmqc4q+1modq
    3.2 用扩展欧几里得算法求解逆元 y p , y q y_p ,y_q yp,yq满足: y p ⋅ p + y q ⋅ q = 1 y_p \cdot p + y_q \cdot q = 1 ypp+yqq=1
    3.3 用中国剩余定理找出四个拼平方根(当 m p m_p mp(即 c ≡ 0   m o d   p c \equiv 0 \bmod{p} c0modp)或 m q m_q mq为0时只有两个值)
    { r 1 ≡ ( y p ⋅ p ⋅ m q + y q ⋅ q ⋅ m p )   m o d   n r 2 ≡ n − r 1 r 3 ≡ ( y p ⋅ p ⋅ m q − y q ⋅ q ⋅ m p )   m o d   n r 4 ≡ n − r 3 \begin{cases}r_1\equiv \left( y_p \cdot p \cdot m_q + y_q \cdot q \cdot m_p \right) \bmod{n} \\ r_2\equiv n - r_1 \\ r_3\equiv \left( y_p \cdot p \cdot m_q - y_q \cdot q \cdot m_p \right) \bmod{n} \\ r_4\equiv n - r_3 \\ \end{cases} r1(yppmq+yqqmp)modnr2nr1r3(yppmqyqqmp)modnr4nr3

2.2 正确性

证明1:模n同余等价于模p模q同余

  • a ≡ b   m o d   p a\equiv b \bmod{p} abmodp,则 p ∣ ( a − b ) p|(a-b) p(ab),同理 q ∣ ( a − b ) q|(a-b) q(ab),立即推 n ∣ ( a − b ) n|(a-b) n(ab),即 a ≡ b   m o d   n ≡ b   m o d   p q a\equiv b \bmod{n}\equiv b \bmod{pq} abmodnbmodpq
  • a ≡ b   m o d   n a\equiv b \bmod{n} abmodn,则 n ∣ ( a − b ) n|(a-b) n(ab),又 p ∣ n , q ∣ n p|n,q|n pn,qn,立即推 p ∣ ( a − b ) , q ∣ ( a − b ) p|(a-b),q|(a-b) p(ab),q(ab),即 a ≡ b   m o d   p , a ≡ b   m o d   q a\equiv b \bmod{p},a\equiv b \bmod{q} abmodp,abmodq

证明2: p ≡ q ≡ 3   m o d   4 p\equiv q\equiv 3 \bmod{4} pq3mod4易求解 m p 2 ≡ c   m o d   p m_p^2 \equiv c \bmod{p} mp2cmodp

  • 由平方剩余知 ( c p ) ≡ c p − 1 2 ≡ 1   m o d   p (\frac{c}{p})\equiv c^{\frac{p-1}{2}} \equiv1 \bmod{p} (pc)c2p11modp
  • p ≡ 3  mod  4 p\equiv 3 \textrm{ mod }4 p3 mod 4 p + 1 = 4 k p+1=4k p+1=4k,即 p + 1 4 \frac{p+1}{4} 4p+1是整数
  • m p 2 ≡ c p + 1 2 ≡ c ⋅ c 1 2 ( p − 1 ) ≡ c ⋅ 1   m o d   p m_p^2 \equiv c^{\frac{p+1}{2}} \equiv c\cdot c^{\frac{1}{2}(p-1)} \equiv c \cdot 1 \bmod{p} mp2c2p+1cc21(p1)c1modp

3. ECC

  • 短密钥(RSA-1024对应ECC-60)
  • 存在单位元、逆元,关于x轴对称

3.1 基本概念

定义在 F p m F_{p^m} Fpm上的椭圆曲线方程为: y 2 = x 3 + a x + b , a , b ∈ F p m y^2 = x^3 + ax + b,a,b\in F_{p^m} y2=x3+ax+ba,bFpm,且 4 a 3 + 27 b 2 ≠ 0 4a^3 + 27b^2\ne0 4a3+27b2=0
椭圆曲线 E ( F p m ) E(F_{p^m}) E(Fpm)定义为: E ( F p m ) = { ( x , y ) ∣ x , y ∈ F p m E(F_{p^m}) = \{(x, y)| x, y\in F_{p^m} E(Fpm)={(x,y)x,yFpm且满足方程 } ∪ { O } \}∪\{O\} }{O},其中 O O O是无穷远点。
椭圆曲线 E ( F p m ) ( m ≥ 1 ) E(F_{p^m}) (m\ge 1) E(Fpm)(m1)上的点满足加法运算规则构成交换群:

  1. O + O = O O + O = O O+O=O
  2. ∀ P = ( x , y ) ∈ E ( F p m ) ∖ { O } , P + O = O + P = P \forall P = (x, y)\in E(F_{p^m})\setminus\{O\},P + O = O + P = P P=(x,y)E(Fpm){O}P+O=O+P=P
  3. ∀ P = ( x , y ) ∈ E ( F p m ) ∖ { O } \forall P = (x, y)\in E(F_{p^m})\setminus\{O\} P=(x,y)E(Fpm){O} P P P的逆元素 − P = ( x , − y ) , P + ( − P ) = O -P = (x,-y),P + (-P) = O P=(x,y)P+(P)=O
  4. 两个非互逆的不同点相加的规则:
    P 1 = ( x 1 , y 1 ) ∈ E ( F p m ) ∖ { O } , P 2 = ( x 2 , y 2 ) ∈ E ( F p m ) ∖ { O } P_1 = (x_1, y_1)\in E(F_{p^m})\setminus\{O\},P_2 = (x_2, y_2)\in E(F_{p^m})\setminus\{O\} P1=(x1,y1)E(Fpm){O}P2=(x2,y2)E(Fpm){O},且 x 1 ≠ x 2 x_1\ne x_2 x1=x2
    P 3 = ( x 3 , y 3 ) = P 1 + P 2 P_3=(x_3, y_3) =P_1+P_2 P3=(x3,y3)=P1+P2,则 { x 3 = λ 2 − x 1 − x 2 , y 3 = λ ( x 1 − x 3 ) − y 1 , \begin{cases}x_3=\lambda^2-x_1-x_2, \\y_3=\lambda(x_1-x_3)-y_1,\\\end{cases} {x3=λ2x1x2,y3=λ(x1x3)y1,
    其中 λ = y 2 − y 1 x 2 − x 1 \lambda = \frac{y_2-y_1}{x_2-x_1} λ=x2x1y2y1
  5. 倍点规则:
    P 1 = ( x 1 , y 1 ) ∈ E ( F p m ) ∖ { O } P_1 = (x_1, y_1)\in E(F_{p^m})\setminus\{O\} P1=(x1,y1)E(Fpm){O},且 y 1 ≠ 0 y_1\ne 0 y1=0
    P 3 = ( x 3 , y 3 ) = P 1 + P 1 P_3 = (x_3, y_3) = P_1+ P_1 P3=(x3,y3)=P1+P1,则 { x 3 = λ 2 − 2 x 1 , y 3 = λ ( x 1 − x 3 ) − y 1 , \begin{cases}x_3=\lambda^2-2x_1, \\y_3=\lambda(x_1-x_3)-y_1,\\\end{cases} {x3=λ22x1,y3=λ(x1x3)y1,
    其中 λ = 3 x 1 2 + a 2 y 1 \lambda = \frac{3x_1^2+a}{2y_1} λ=2y13x12+a

3.2 应用

  1. 有限域上离散对数问题(DLP)
    有限域 F q m F_{q^m} Fqm ( q q q 为奇素数, m ≥ 1 m\ge1 m1)的全体非零元素构成一个乘法循环群,记为 F q m ∗ F_{q^m}^* Fqm F q m ∗ F_{q^m}^* Fqm中存在元素 g g g,使得 F q m ∗ = { g i ∣ = 0 ≤ i ≤ q m − 2 } F_{q^m}^*=\{g^i | =0\le i \le q^m-2\} Fqm={gi=0iqm2},称 g g g为生成元。 F q m ∗ F_{q^m}^* Fqm中元素 a a a的阶是满足 a t = 1 a^t=1 at=1的最小正整数 t t t。群 F q m ∗ F_{q^m}^* Fqm的阶为 q m − 1 q^m-1 qm1,因此 t ∣ q m − 1 t | q^m-1 tqm1
    设乘法循环群 F q m ∗ F_{q^m}^* Fqm的生成元为 g g g y ∈ F q m ∗ y\in F_{q^m}^* yFqm有限域上离散对数问题是指确定整数 x ∈ [ 0 , q m − 2 ] x\in [0,q^m-2] x[0,qm2],使得
    y = g x y = g^x y=gx F q m ∗ F_{q^m}^* Fqm上成立。
  2. 椭圆曲线离散对数问题(ECDLP)
    已知椭圆曲线 E ( F p m ) ( m ≥ 1 ) E(F_{p^m}) (m\ge 1) E(Fpm)(m1),阶为 n n n的点 P ∈ E ( F p m ) P\in E(F_{p^m}) PE(Fpm) Q ∈ < P > Q\in<P> Q<P>椭圆曲线离散对数问题是指确定整数 k ∈ [ 0 , n − 1 ] k\in [0, n-1] k[0,n1],使得 Q = [ k ] P Q=[k]P Q=[k]P成立。
  • Diffie-Hellman密钥交换
  • ElGamal密码体制
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值