橢圓曲線加密技術(shù)介紹
2019年3月29日,第十二期北大軟微-八分量協(xié)同實(shí)驗(yàn)室學(xué)術(shù)沙龍活動(dòng)如期展開。本次技術(shù)沙龍討論的主題是安全橢圓曲線加密算法的選取。北京大學(xué)的沈晴霓教授、方躍堅(jiān)副教授、Trias胡志琳以及軟微學(xué)院眾位博士生、碩士生參與了此次沙龍,并由博士生馮新宇做出分享。
學(xué)術(shù)界已經(jīng)提出了很多不同的ECC選擇標(biāo)準(zhǔn),每一個(gè)都試圖確保橢圓曲線離散對(duì)數(shù)問題(ECDLP)是困難的。而ECDLP是在給定用戶公鑰的情況下查找ECC用戶密鑰的問題。
但遺憾的是,雖然標(biāo)準(zhǔn)曲線在安全實(shí)現(xiàn)理論上可行,但實(shí)踐卻表明,ECDLP并不足以完全保障ECC的安全性。人們發(fā)現(xiàn),很多攻擊可以繞過(guò)困難問題,在不解決ECDLP的情況下破壞了現(xiàn)實(shí)中在使用的ECC。
因此,如何選擇更優(yōu)質(zhì)的曲線來(lái)保障安全,并能夠比較簡(jiǎn)單的高效率實(shí)現(xiàn),就成了安全曲線相關(guān)課題擺在明面上的難題。
為了達(dá)到上述目的,許多解決方案通過(guò)各國(guó)的學(xué)術(shù)論文被提了出來(lái)。但隨后很多的研究表明,許多所謂能提高效率的決策都不靠譜,有的并沒有作用,還有的雖然有用,但是會(huì)損害安全性。
通過(guò)研究發(fā)現(xiàn),基于橢圓曲線的密碼系統(tǒng)主要有7個(gè)系統(tǒng)參數(shù)T=(q,F(xiàn)R,a,b,G,n,h),其中q表示所選擇的有限域;FR是有限域上的元素的表示方法;a和b表示橢圓曲線的參數(shù);G是在曲線上選擇的基點(diǎn);n表示該基點(diǎn)的階,是一個(gè)足夠大的素?cái)?shù);h是n的余因子,是一個(gè)小整數(shù)。
在所有橢圓曲線公鑰密碼體系的實(shí)現(xiàn)中,有兩種類型的基本運(yùn)算:一類是在密碼體系設(shè)計(jì)階段要用到的基本運(yùn)算,另一類是運(yùn)行階段所要用到的。第一類是橢圓曲線密碼體系基本參數(shù)的選取,包括安全橢圓曲線的尋找和基點(diǎn)的選取兩部分;第二類是橢圓曲線有限域上的各種代數(shù)運(yùn)算,包括點(diǎn)加、倍點(diǎn)和數(shù)乘三種運(yùn)算。
另外,曲線系數(shù)的選取必須滿足判別式δ=4a3+27b2≠0,這是曲線選取的必要條件。異常曲線和超奇異曲線已經(jīng)被證明是不安全曲線,一定要避免使用。
在沙龍的后半段,大家提到安全快速的橢圓曲線密碼并行的實(shí)現(xiàn)方法。目前的實(shí)現(xiàn)方法都是串行的,而關(guān)于新的并行設(shè)計(jì)橢圓曲線加密方法的研究也為數(shù)不多,如果能在這個(gè)領(lǐng)域有所突破,無(wú)論理論上還是實(shí)踐中,都會(huì)是一件非常引人矚目的事。另外,倘若能在單點(diǎn)的基礎(chǔ)上,發(fā)展為多點(diǎn)并行,毫無(wú)疑問還會(huì)大大提升橢圓曲線加密的處理效率?;蛘?,通過(guò)軟硬件結(jié)合的方式來(lái)提高安全性,比如已經(jīng)有項(xiàng)目通過(guò)SGX與區(qū)塊鏈的結(jié)合來(lái)實(shí)現(xiàn)安全高效的方案。
下一期沙龍除了對(duì)有創(chuàng)新價(jià)值的學(xué)術(shù)論文進(jìn)行分析,還將對(duì)并行的實(shí)現(xiàn)思路進(jìn)行討論。Trias每周都會(huì)和北大舉辦沙龍活動(dòng),對(duì)區(qū)塊鏈技術(shù)以及Trias項(xiàng)目有疑問的小伙伴可以隨時(shí)將問題拋在技術(shù)交流群里,我們會(huì)及時(shí)作出回應(yīng)噢。