前言
同RSA(Ron Rivest,Adi Shamir,Len Adleman三位天才的名字)一樣,ECC(Elliptic Curves Cryptography,橢圓曲線密碼編碼學(xué))也屬于公開密鑰算法。目前,國內(nèi)詳細(xì)介紹ECC的公開文獻(xiàn)并不多(反正我沒有找到)。有一些簡介,也是泛泛而談,看完后依然理解不了ECC的實(shí)質(zhì)(可能我理解力太差)。前些天我從國外網(wǎng)站找到些材料,看完后對ECC似乎懵懂了。于是我想把我對ECC的認(rèn)識(shí)整理一下,與大家分享。當(dāng)然ECC博大精深,我的認(rèn)識(shí)還很膚淺,文章中錯(cuò)誤一定不少,歡迎各路高手批評指正,小弟我洗耳恭聽,并及時(shí)改正。文章將采用連載的方式,我寫好一點(diǎn)就貼出來一點(diǎn)。本文主要側(cè)重理論,代碼實(shí)現(xiàn)暫不涉及。這就要求你要有一點(diǎn)數(shù)學(xué)功底。你能理解RSA算法,對公開密鑰算法有一個(gè)了解?!督来鷶?shù)基礎(chǔ)》《初等數(shù)論》之類的書,您先翻一下,這對您理解本文是有幫助的。別怕,我盡量會(huì)把語言通俗些,希望本文能成為學(xué)習(xí)ECC的敲門磚。
一、從平行線談起
平行線,永不相交。沒有人懷疑把:)不過到了近代這個(gè)結(jié)論遭到了質(zhì)疑。平行線會(huì)不會(huì)在很遠(yuǎn)很遠(yuǎn)的地方相交了?事實(shí)上沒有人見到過。所以“平行線,永不相交”只是假設(shè)(大家想想初中學(xué)習(xí)的平行公理,是沒有證明的)。既然可以假設(shè)平行線永不相交,也可以假設(shè)平行線在很遠(yuǎn)很遠(yuǎn)的地方相交了。即平行線相交于無窮遠(yuǎn)點(diǎn)P∞(請大家閉上眼睛,想象一下那個(gè)無窮遠(yuǎn)點(diǎn)P∞,P∞是不是很虛幻,其實(shí)與其說數(shù)學(xué)鍛煉人的抽象能力,還不如說是鍛煉人的想象力)。給個(gè)圖幫助理解一下:
直線上出現(xiàn)P∞點(diǎn),所帶來的好處是所有的直線都相交了,且只有一個(gè)交點(diǎn)。這就把直線的平行與相交統(tǒng)一了。為與無窮遠(yuǎn)點(diǎn)相區(qū)別把原來平面上的點(diǎn)叫做平常點(diǎn)。
以下是無窮遠(yuǎn)點(diǎn)的幾個(gè)性質(zhì)。
▲直線L上的無窮遠(yuǎn)點(diǎn)只能有一個(gè)。(從定義可直接得出)
▲平面上一組相互平行的直線有公共的無窮遠(yuǎn)點(diǎn)。(從定義可直接得出)
▲ 平面上任何相交的兩直線L1,L2有不同的無窮遠(yuǎn)點(diǎn)。(否則L1和L2有公共的無窮遠(yuǎn)點(diǎn)P ,則L1和L2有兩個(gè)交點(diǎn)A、P,故假設(shè)錯(cuò)誤。)
▲平面上全體無窮遠(yuǎn)點(diǎn)構(gòu)成一條無窮遠(yuǎn)直線。(自己想象一下這條直線吧)
▲平面上全體無窮遠(yuǎn)點(diǎn)與全體平常點(diǎn)構(gòu)成射影平面。
同RSA(Ron Rivest,Adi Shamir,Len Adleman三位天才的名字)一樣,ECC(Elliptic Curves Cryptography,橢圓曲線密碼編碼學(xué))也屬于公開密鑰算法。目前,國內(nèi)詳細(xì)介紹ECC的公開文獻(xiàn)并不多(反正我沒有找到)。有一些簡介,也是泛泛而談,看完后依然理解不了ECC的實(shí)質(zhì)(可能我理解力太差)。前些天我從國外網(wǎng)站找到些材料,看完后對ECC似乎懵懂了。于是我想把我對ECC的認(rèn)識(shí)整理一下,與大家分享。當(dāng)然ECC博大精深,我的認(rèn)識(shí)還很膚淺,文章中錯(cuò)誤一定不少,歡迎各路高手批評指正,小弟我洗耳恭聽,并及時(shí)改正。文章將采用連載的方式,我寫好一點(diǎn)就貼出來一點(diǎn)。本文主要側(cè)重理論,代碼實(shí)現(xiàn)暫不涉及。這就要求你要有一點(diǎn)數(shù)學(xué)功底。你能理解RSA算法,對公開密鑰算法有一個(gè)了解?!督来鷶?shù)基礎(chǔ)》《初等數(shù)論》之類的書,您先翻一下,這對您理解本文是有幫助的。別怕,我盡量會(huì)把語言通俗些,希望本文能成為學(xué)習(xí)ECC的敲門磚。
一、從平行線談起
平行線,永不相交。沒有人懷疑把:)不過到了近代這個(gè)結(jié)論遭到了質(zhì)疑。平行線會(huì)不會(huì)在很遠(yuǎn)很遠(yuǎn)的地方相交了?事實(shí)上沒有人見到過。所以“平行線,永不相交”只是假設(shè)(大家想想初中學(xué)習(xí)的平行公理,是沒有證明的)。既然可以假設(shè)平行線永不相交,也可以假設(shè)平行線在很遠(yuǎn)很遠(yuǎn)的地方相交了。即平行線相交于無窮遠(yuǎn)點(diǎn)P∞(請大家閉上眼睛,想象一下那個(gè)無窮遠(yuǎn)點(diǎn)P∞,P∞是不是很虛幻,其實(shí)與其說數(shù)學(xué)鍛煉人的抽象能力,還不如說是鍛煉人的想象力)。給個(gè)圖幫助理解一下:
直線上出現(xiàn)P∞點(diǎn),所帶來的好處是所有的直線都相交了,且只有一個(gè)交點(diǎn)。這就把直線的平行與相交統(tǒng)一了。為與無窮遠(yuǎn)點(diǎn)相區(qū)別把原來平面上的點(diǎn)叫做平常點(diǎn)。
以下是無窮遠(yuǎn)點(diǎn)的幾個(gè)性質(zhì)。
▲直線L上的無窮遠(yuǎn)點(diǎn)只能有一個(gè)。(從定義可直接得出)
▲平面上一組相互平行的直線有公共的無窮遠(yuǎn)點(diǎn)。(從定義可直接得出)
▲ 平面上任何相交的兩直線L1,L2有不同的無窮遠(yuǎn)點(diǎn)。(否則L1和L2有公共的無窮遠(yuǎn)點(diǎn)P ,則L1和L2有兩個(gè)交點(diǎn)A、P,故假設(shè)錯(cuò)誤。)
▲平面上全體無窮遠(yuǎn)點(diǎn)構(gòu)成一條無窮遠(yuǎn)直線。(自己想象一下這條直線吧)
▲平面上全體無窮遠(yuǎn)點(diǎn)與全體平常點(diǎn)構(gòu)成射影平面。

