FPGA側信道分析實驗套件

  側信道分析理論與技術是密碼工程學的重要知識點與科研方向,未來具有廣闊的應用前景,目前高校、研究所、以及相關企事業單位對該研究領域廣泛關注。北京數緣科技有限公司于2016年獲得日本TROCHE有限責任公司授權,代理SAKURA-G硬件側信道分析實驗板。隨后本公司在該實驗板的基礎上配備了FPGA下載器、濾波器、探頭等必備硬件,以及明文發送、能量分析等必備的中文版軟件,構成了FPGA側信道分析實驗套件,型號為 MMSCASet-04。 套件可以任意方式實現任意密碼算法的硬件電路,并對其進行計時分析、能量分析、電磁分析等實驗,同時還提供了針對AES算法的中間值泄露分析、相關能量分析的示例源代碼。該套件的主要部件如下:
  (1)日本原廠提供的部件
  •  SAKURA-G開發板1塊
  •  USB-B數據線1根
  •  外接電源線1根、螺絲螺母若干
  (2)數緣科技提供的部件
  •  FPGA側信道分析實驗軟件,型號 MMSCA-411
  •  英國原裝進口示波器 PicoScope 3403D 1 臺
  •  美國原裝進口 Mini-Circuits 低通濾波器 1 個
  •  國產 Xilinx 下載器 1 套(含下載器 1 個、排線轉接頭 1 個、排線 2 根、 USB-B 數據線 1 根)
  •  國產高阻探頭 1 個
  •  國產 SMA 轉 BNC 線 1 根
  •  配套資料 U 盤 1 個

圖1 SAKURA-G開發板功能圖


圖2 SAKURA-G硬件側信道分析實驗套件實物圖

   SAKURA-G 官方網站提供了一例 AES 算法硬件實現電路,共采用 10 個時鐘完成 AES 算法的 10 輪加密迭代運算,同時還提供了控制 USB 接口為該 AES 電路發送明文、密鑰,并返回密文的上位機程序。數緣科技在該程序基礎上進行功能擴展,集成了 PicoScope 示波器采波功能、以及泄露分析與相關能量分析程序,形成了一套完整的針對于 AES 算法的側信道分析軟件。本軟件操作簡單,只需要依次點擊打開示波器,開始采波,就可以采集到包含 11 組尖峰的波形,分別對應第 0 輪(異或白密鑰)到第 10 輪的輪運算。同時,用戶也可以改變采波參數來精確采集指定位置的波形。

圖3  上位機控制軟件與 AES 硬件的能量波形

  波形采集完成之后,可將波形讀入軟件,從而進行波形顯示、泄露分析、相關能量分析等操作。實驗表明,在FPGA側信道分析實驗套件的實現環境下,只需要采集 2000 條能量波形,就可以很高的概率恢復出正確密鑰。

圖 4 針對 AES 算法白化密鑰結果進行泄露分析的實驗圖

圖 5 針對 AES 算法第二個字節密鑰進行能量分析的結果

圖 6 AES 算法相關能量分析的效率分析實驗圖


  FPGA側信道分析實驗套件的主要指標如下:
  •  支持側信道:計時分析、能量分析、電磁分析、時鐘故障分析
  •  支持穩壓電源外部供電
  •  FPGA 芯片2個,32Mbit ROM,晶振48MHz,支持接口USB、SMA、GPIO
  •  支持濾波降噪,帶寬DC至48 MHz,阻抗50Ω
  •  高阻探頭帶寬大于50MHz ,放大倍數10:1