橢圓曲線乘法
橢圓曲線結合 elgamal cryptosystem計算例子展示(手算帶步驟)
判斷乙個橢圓曲線上有幾個點
reference
ecc是由victor miller and neal koblitz1985引入的。
對於dsa, rsa,我們需要很大的金鑰長度,而ecc只需要特別餓小的金鑰大小就能得到相同的安全級別。
key小的好處有:
更快的計算和交流,需要更少的儲存空間等等。。
非奇異(non-singular)橢圓曲線是方程的解(x,y)的集合e
點o,我們叫它是無窮遠處的點 point at infinity.
什麼叫非奇異橢圓曲線?
非奇異橢圓曲線要滿足下面的限制:
那麼奇異橢圓曲線長成什麼樣呢?
非奇異橢圓曲線
我們可以看到非奇異橢圓曲線與x軸的交點有1個或著3個,奇異的橢圓曲線與x軸的交點有兩個。
在非奇異橢圓曲線上,包含兩點的任何直線都包含曲線上唯一的第三點。
包含以下性質
commutativity. p 1 +p 2 = p 2 +p 1
existence of identity. p + o = p
existence of inverses. p + (-p) = o
associativity. (p 1 +p 2 ) + p 3 = p 1 +(p 2 +p 3 ) (true but not easy to prove)
放一張我們課件上的一張圖,這個計算公式是經過推導得到的最終簡化版。
橢圓曲線沒有嚴格意義上的代數乘法公式,我們要做的就是把乘法轉化為加法再進行計算。
例如我們已知橢圓曲線上存在一點a,我們想要計算11a是多少,我們 需要把11a分解為11a = 8a + 2a + a.
要解決這個乘法,我們需要先計算2a= a+a使用上面的加法代數公式。
之後用2a+2a算出4a,4a+4a算出8a。
最後只需要將8a+2a+a計算三個點相加就可以得出答案了。
//看起來貌似很麻煩,事實上也確實如此,在考試中手算會算到吐,而且還不容易一次算對。
現實中我們只需要借助**就可以輕鬆計算了。
接下來我會附上我的一些計算過程來加深理解。
已知橢圓曲線e為
給定橢圓曲線e上的點α=(2,7),計算2α,3α。
考慮橢圓曲線的elgamal密碼系統。設私鑰為s = 7.
a. 公鑰 public key是多少?
b. 編碼:假設文字已被轉換為e上的點x =(10,9),選擇隨機數k = 3。要傳遞的點(數字)是什麼?
c. 解碼:當接收到(b)的資訊時,如何恢復原始文字?
解答:
如何判斷乙個橢圓曲線上有幾個點?
定理:假設一條模為p的橢圓曲線有n個點。
wenbo mao, modern cryptography, prentice-hall, 2003.
jonathan katz and yehuda lindell, introduction to modern cryptography, 2nd edition, crc press, 2015.
w stallings, cryptography and network security, fourth (or later) edition, prentice hall, 2006.
j. pieprzyk, t, hardjono and j. seberry, cryptography: an introduction to computer security,
springer verlag, 2003.
guo, f., susilo, w., mu, y. introduction to security reduction, springer, 2018.
白話橢圓曲線密碼學
橢圓曲線密碼學是下一代的公鑰密碼學,它比之前的公鑰密碼學系統例如rsa和diffe hellman在安全性方面有顯著提高。橢圓曲線密碼學是目前被廣泛使用的最強大的密碼學演算法之一,但是真正理解其工作原理的開發者並不多。橢圓曲線有一系列滿足特定數學方程的點組成。乙個橢圓曲線的方程看起來像這樣 y x ...
密碼學中的橢圓曲線
密碼學中的橢圓曲線 密碼學中的橢圓曲線不是定義在是實數域上的,我們要把橢圓曲線定義在有限域上 顧名思義,有限域是一種只有由有限個元素組成的域 域的概念是從我們的有理數,實數的運算中抽象出來的,嚴格的定義請參考近世代數方面的數。簡單的說,域中的元素同有理數一樣,有自己得加法 乘法 除法 單位元 1 零...
橢圓曲線密碼體制 ECC 簡介
簡單的說橢圓曲線並不是橢圓,之所以稱為橢圓曲線是因為他們是用三次方程來表示,並且該方程與計算橢圓周長的方程相似。對密碼學比較有意義的是基於素數域gf p 和基於二進位制域 gf 2 m 上的橢圓曲線。下面重點介紹基於gf p 上的橢圓曲線 y 2 x 3 a x b modp 其中p是素數,a和b滿...