橢圓曲線加密與並行性的研究

買賣虛擬貨幣
2019年3月29日,第十二期北大軟微-八分量協同實驗室學術沙龍活動如期展開。本次技術沙龍討論的主題是安全橢圓曲線加密演算法的選取。北京大學的沈晴霓教授、方躍堅副教授、Trias胡志琳以及軟微學院眾位博士生、碩士生參與了此次沙龍,並由博士生馮新宇做出分享。

上期的沙龍介紹了橢圓曲線,並對橢圓曲線數字簽名演算法(ECDSA)和橢圓曲線密碼學(ECC)做出了簡述,並分享了一下最受外界關注的領域,如門限簽名技術等。在此基礎上,本期的沙龍對橢圓曲線加密技術做出進一步挖掘。

學術界已經提出了很多不同的ECC選擇標準,每一個都試圖確保橢圓曲線離散對數問題(ECDLP)是困難的。而ECDLP是在給定使用者公鑰的情況下查詢ECC使用者金鑰的問題。

但遺憾的是,雖然標準曲線在安全實現理論上可行,但實踐卻表明,ECDLP並不足以完全保障ECC的安全性。人們發現,很多攻擊可以繞過困難問題,在不解決ECDLP的情況下破壞了現實中在使用的ECC。

因此,如何選擇更優質的曲線來保障安全,並能夠比較簡單的高效率實現,就成了安全曲線相關課題擺在明面上的難題。

為了達到上述目的,許多解決方案透過各國的學術論文被提了出來。但隨後很多的研究表明,許多所謂能提高效率的決策都不靠譜,有的並沒有作用,還有的雖然有用,但是會損害安全性。

透過研究發現,基於橢圓曲線的密碼系統主要有7個系統引數T=(q,FR,a,b,G,n,h),其中q表示所選擇的有限域;FR是有限域上的元素的表示方法;a和b表示橢圓曲線的引數;G是在曲線上選擇的基點;n表示該基點的階,是一個足夠大的素數;h是n的餘因子,是一個小整數。

在所有橢圓曲線公鑰密碼體系的實現中,有兩種型別的基本運算:一類是在密碼體系設計階段要用到的基本運算,另一類是執行階段所要用到的。第一類是橢圓曲線密碼體系基本引數的選取,包括安全橢圓曲線的尋找和基點的選取兩部分;第二類是橢圓曲線有限域上的各種代數運算,包括點加、倍點和數乘三種運算。

另外,曲線係數的選取必須滿足判別式δ=4a3+27b2≠0,這是曲線選取的必要條件。異常曲線和超奇異曲線已經被證明是不安全曲線,一定要避免使用。

在沙龍的後半段,大家提到安全快速的橢圓曲線密碼並行的實現方法。目前的實現方法都是序列的,而關於新的並行設計橢圓曲線加密方法的研究也為數不多,如果能在這個領域有所突破,無論理論上還是實踐中,都會是一件非常引人矚目的事。另外,倘若能在單點的基礎上,發展為多點並行,毫無疑問還會大大提升橢圓曲線加密的處理效率。或者,透過軟硬體結合的方式來提高安全性,比如已經有專案透過SGX與區塊鏈的結合來實現安全高效的方案。

下一期沙龍除了對有創新價值的學術論文進行分析,還將對並行的實現思路進行討論。Trias每週都會和北大舉辦沙龍活動,對區塊鏈技術以及Trias專案有疑問的小夥伴可以隨時將問題拋在技術交流群裡,我們會及時作出迴應噢。


出品 | Trias團隊

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;