寫在前面:
學習筆記,方便復習
非原創標明出處
我們都在努力奔跑,我們都是追夢人
by skecchiart
概念
對數 在數學中,對數是對求冪的逆運算,正如除法是乘法的倒數,反之亦然。 這意味着一個數字的對數是必須產生另一個固定數字(基數)的指數 如果a的x次方等於N(a>0,且a不等於1),那么數x叫做以a為底N的對數,記作x==logaN 其中,a叫做對數的底數,N叫做真數 ——bia度百科 |
階 設a,p是整數,a和p互素,那么:使an ≡ 1 (mod p)成立的最小正整數n叫做a模p的階 ——bia度百科 |
原根 設m是正整數,a是整數,若a模m的階等於φ(m),則稱a為模m的一個原根 ——bia度百科 即:aφ(m) ≡ 1 (mod m) 此處a模m的階為φ(m)
循環節見: |
離散對數 在整數中,離散對數是一種基於同余運算和原根的一種對數運算 在任何群G([◹]初等群論)中可為所有整數k定義一個冪數為bx,而離散對數logba是指使得bx ≡ a的整數k 離散對數在一些特殊情況下可以快速計算,然而,通常沒有具非常效率的方法來計算它們 公鑰密碼學中幾個重要算法的基礎,是假設尋找離散對數的問題解,在仔細選擇過的群中,並不存在有效率的求解算法 ——bia度百科 |
The discrete log problem is of fundamental importance to the area of public key cryptography. Many of the most commonly used cryptography systems are based on the assumption that the discrete log is extremely difficult to compute; the more difficult it is, the more security it provides a data transfer One way to increase the difficulty of the discrete log problem is to base the cryptosystem on a larger group ——Wikipedia |
譯: 離散對數問題在公鑰密碼領域具有重要意義,許多最常用的密碼系統都是基於這樣一個現象:離散對數極難計算,而它越困難,提供數據傳輸的安全性就越高 提高離散對數問題難度的一種方法是將密碼建立在一個較大的群上 |
舉個例子:
對數
8==23
log28==3
離散對數
8+n*k ≡ 23 (mod k)
log2(8+n*k) ≡ 3 (mod φ(k))
指數循環節見[◹]同余定理
實現
-
[◹]Baby-step giant-step算法
-
[◹]拓展Baby-step giant-step算法