公鑰密碼算法的基礎是解決特定數學難題的棘手性,rsa公鑰算法是基於大素數分解問題,假定的是分解一個由兩個或多個大素數相乘的積是不可能的;而ecc密碼系統則是基於橢圓曲線離散對數問題,即求解橢圓曲線上任意一點相對於生成點的離散對數是不可能的。橢圓曲線密碼系統可以在密鑰更短的情況下達到與rsa相同的安全級別,從而節省密鑰存儲空間和傳輸帶寬,對比如下表所示:
橢圓曲線采用如下函數定義:
橢圓曲線公鑰算法則限制在素數域上的離散點上,並定義了一系列運算。
對橢圓曲線來說最流行的有限域是以素數為模的整數域(參見模運算) GF(p),或是特征為2的伽羅瓦域 GF(2m)。后者在專門的硬件實現上計算更為有效,而前者通常在通用處理器上更為有效。在素數域下, 曲線參數有為(p,a,b,G,n,h); 在二元域下, 曲線參數為(m,f,a,b,G,n,h).
p定義的是素數域Fp
m定義的是二元域2m
G為生成點坐標
n為G的階,使nG=O(曲線的無窮遠點)成立的最小正整數
h為輔參,h≤4,通常取1
有限域:在數學中,有限域(英語:finite field)或伽羅瓦域(英語:Galois field,為紀念埃瓦里斯特·伽羅瓦命名)是包含有限個元素的域。有限域中元素的個數稱為有限域的階。
有限域還在學習研究中,后續繼續完善。
參考: