時爭光,鄭夢策,胡紅鋼,俞能海
基于在線計數(shù)的改進快速泄露評估
時爭光1,2,鄭夢策1,2,胡紅鋼1,2,俞能海1,2
(1. 中國科學院電磁空間信息重點實驗室,安徽 合肥 230027; 2. 中國科學技術大學網絡空間安全學院,安徽 合肥 230027)
快速泄露評估(FLA,fast leakage assessment)在2017年被提出,利用“計數(shù)”的思想極大地提升了計算效率。首先對快速泄露評估的性能進行分析,然后提出基于在線計數(shù)的方法對評估流程進行改進,并使用FPGA對該方法進行實現(xiàn)。根據(jù)實驗結果對比,所提方法不僅可以減少評估中所需要占用的內存,而且能夠縮短評估所用時間,使評估效率得到明顯提升。
泄露評估;在線處理;高效計算;側信道防護
側信道分析攻擊是目前密碼學領域一個比較熱門的課題,它揭示了密碼算法本身的安全性與實際的安全性之間的差距,即使是理論上安全的密碼算法,在實際運行過程中也不一定是安全的,它可能會存在其他形式的安全薄弱點,如側信道信息泄露。側信道分析技術始于Kocher等[1]在1999年提出的差分能量分析,他們發(fā)現(xiàn)密碼設備運行過程中能量消耗與密碼算法的中間值之間存在聯(lián)系,原因是密碼設備的某些操作在處理“0”和“1”時會產生不同的能量消耗,而這些不同可能與密鑰有關系。因此,攻擊者可以通過側信道信息間接獲取到密碼設備的中間值信息,從而破解出設備的密鑰。
側信道分析技術發(fā)展至今,給密碼設備的安全性帶來了極大的威脅,在FIPS 140-3標準草案中已經明確要求商用密碼設備需要能夠抵抗側信道分析攻擊[2]。出于安全需求,研究者提出了一些防護措施,最常見的兩種方法是隱藏[3]和掩碼[4],其目的是掩蓋能量消耗的不同或者打破能量消耗與密碼算法中間值之間的聯(lián)系,而如何驗證防護措施的有效性成為一個新的問題。
泄露評估是檢驗密碼設備測信道信息泄露和驗證防護措施有效性中最常用的手段。Coron等[5]在2001年首次提出了泄露評估的概念,其目的是檢驗兩組數(shù)據(jù)是否有明顯的不同。目前的主流方法是由密碼學研究機構在2013年提出的測試向量泄露評估(TVLA,test vector leakage assessment)[2],該方法基于檢驗,它精心選擇輸入數(shù)據(jù)得到兩組能量曲線作為待測數(shù)據(jù),然后使用檢驗對兩組數(shù)據(jù)進行兩組非特定的Fixed-VS.-Random檢驗與896組特定的Fixed-VS.-Fixed檢驗,以判斷這兩組待測數(shù)據(jù)是否有明顯的不同,TVLA因其標準的評估流程和對泄露的敏感性成為廣泛接受的評估方法。之后,Ding等在文獻[6]中提出了一些檢驗的使用建議,可以加速采集過程并增強對泄露的檢測能力。然而,檢驗的方法存在一些局限性,它只能在檢測到泄露時聲明泄露存在,卻不能在未檢測到泄露時聲明泄露不存在,并且統(tǒng)計值的計算受到能量曲線條數(shù)等因素的影響。因此,Bache等[7]提出了一種基于置信區(qū)間的評估方法對檢驗進行了擴展,并在此基礎上提出了一個評估流程的框架[8]。
無論是檢驗還是置信區(qū)間的方法,都需要先得到兩組待檢驗數(shù)據(jù)各自的均值和方差。因此,在數(shù)據(jù)量較大時,如何盡可能提升計算效率成為一個研究重點。傳統(tǒng)的基于定義的方法計算均值和方差需要多次遍歷整個數(shù)據(jù)集合,效率較低[9]。2015年,Schneider等[10]提出了基于增量計算的方法,該方法只需要遍歷整個數(shù)據(jù)集合一次便可以迭代地更新數(shù)據(jù)的均值和方差;在2017年,Reparaz等[11]基于計數(shù)的思想,提出了快速泄露評估,該方法遍歷一遍數(shù)據(jù)集合,將數(shù)據(jù)處理為計數(shù)矩陣的形式并存儲,之后使用計數(shù)矩陣可以快速地計算出均值和方差,比文獻[10]的方法計算效率高了幾個量級。
本文對快速泄露評估的性能進行了分析,探究影響其性能的因素并給出了相應的使用建議;之后基于在線計數(shù)的思想對快速泄露評估進行了改進,并將改進前后的評估方法使用FPGA進行了實現(xiàn);根據(jù)實驗結果,改進后的方法能夠顯著地減少評估所用的內存和時間,極大地提升評估效率。
本節(jié)首先對主要使用的符號進行說明,然后對檢驗和快速泄露評估進行簡要的介紹。

檢驗是TVLA中常用的檢驗方法,它于2011年在文獻[12]中首次被應用于泄露評估。檢驗通過計算兩組待檢驗數(shù)據(jù)的相似性,來檢驗設備的同一操作在處理不同數(shù)據(jù)時消耗的能量是否有明顯的差異。對于兩組待測數(shù)據(jù),檢驗通常將它們取自同一分布作為零假設,之后通過計算得出一個概率來檢驗是否接受零假設。

表1 符號說明






基于TVLA的泄露評估方法通常采用分步的策略來部署,其流程主要分為以下幾個階段。



預處理階段:遍歷原始數(shù)據(jù)矩陣將其轉化為對應計數(shù)矩陣。
計算階段:基于所得計數(shù)矩陣計算各列數(shù)據(jù)的均值和方差,并進行檢驗。


(2)采樣點的采樣精度,即的大小,因為計數(shù)矩陣的行數(shù)為2,所以采樣精度的增加會影響到所構建的計數(shù)矩陣的規(guī)模。對于0來說,值的增加會使集合中的元素個數(shù)以指數(shù)量級增長,之后計算階段需要遍歷的次數(shù)和所用時間會隨之增加。


根據(jù)實驗結果,本節(jié)得到一些結論,并給出如下使用建議。






③預處理階段:無。

考慮到方案實現(xiàn)需要幾個核心功能,即數(shù)據(jù)采集、在線處理(即可編程)和數(shù)據(jù)發(fā)送功能,本文選擇了一塊FPGA作為開發(fā)平臺,其型號為賽靈思Virtex-7XC7VX485T-2FFG1761,簡稱VC707(如圖1所示),在該FPGA上主要實現(xiàn)兩種方案采集階段和發(fā)送階段的功能。

圖1 實驗所用VC707FPGA開發(fā)板
Figure 1 The VC707 FPGA board
實驗中所選用的待測設備(DUT)為ChipWhisperCW303測試板,在其上運行的是無防護的串行AES算法,算法運行過程中測量板上的電壓變化作為能量曲線。在VC707上有一個1M采樣率的ADC模塊——XADC,實驗使用專用外部差分模擬輸入信道來采集能量曲線。在實驗中,XADC被設置工作在雙端輸入,連續(xù)采樣模式,在每次采樣的轉換階段,它會在狀態(tài)寄存器中產生一個16 bit的值,其中高12 bit為有效值,為了實驗方便,取其高8 bit作為采樣結果。在發(fā)送階段,F(xiàn)PGA上的UART模塊將所采集的數(shù)據(jù)發(fā)送到PC上。


根據(jù)兩組實驗結果,本文分別對各個階段的運行時間進行單獨分析。


圖2 在Np= 1 000 時,兩種方案在不同N0下各階段的運行時間
Figure 2 Required time of each stage over0withN= 1 000 in two designs

圖3 在N0= 2 000時,兩種方案在不同Np下各階段的運行時間
Figure 3 Required time of each stage overNwith0= 2 000 in two designs


圖4 兩種方案在不同N0和Np下的總運行時間
Figure 4 Total required time of two designs over0andN
本文首先分析了快速泄露評估能夠提升評估效率的原因,之后提出了兩個影響其性能的因素,分別是計數(shù)矩陣的變量類型和采樣精度;對這兩個因素分別進行了分析和實驗,并根據(jù)結果給出了使用建議。
然后,在保留快速泄露評估特點的基礎上,本文基于在線計數(shù)思想對其進行了改進,通過將預處理階段的操作加入采集階段的方法,可以在采集階段直接獲得相應的計數(shù)矩陣。這樣不僅可以減少存儲數(shù)據(jù)所需的內存,簡化采集流程,使其適用于可用內存有限的評估場景,而且可以在原始能量曲線條數(shù)較多時顯著減少評估所用時間,提升整個評估流程的效率。
雖然在線計數(shù)帶來了明顯的提升,但是有一些局限性,因為所存儲的是處理后的計數(shù)矩陣,而非原始的能量曲線,所以該方法在處理階段只適用于使用快速泄露評估的方法來處理,且后續(xù)難以進一步對原始數(shù)據(jù)進行分析和利用。此外,當采集過程中出現(xiàn)錯誤時該方法不能發(fā)現(xiàn)和處理,因此該方法要求實驗中有良好的采集環(huán)境。
[1] KOCHER P, JAFFE J, JUN B. Differential power analysis[C]//Advances in Cryptology -CRYPTO' 99. 1999: 388-397.
[2] BECKER G, COOPER J, DEMULDER E, et al. Test vector leakage assessment (TVLA) methodology in practice[C]//International Cryptographic Module Conference 2013.
[3] TIRI K, VERBAUWHEDE I. A logic level design methodology for a secure DPA resistant ASIC or FPGA implementation[C]//Proceedings Design, Automation and Test in Europe Conference and Exhibition. 2004, 1: 246-251.
[4] CNUDDE T D, REPARAZ O, BILGIN B, et alMasking AES with d+1 shares in hardware[C]//Cryptographic Hardware and Embedded Systems-CHES. 2016: 194-212.
[5] CORON J S, KOCHER P, NACCACHE D. Statistics and secret leakage[C]//International Conference on Financial Cryptography. 2001: 157-173.
[6] DING A ASimpler, faster, and more robust t-test based leakage detection[C]//Constructive Side-Channel Analysis and Secure Design. 2016: 163-183.
[7] BACHE FConfdent leakage assessment—a side-channel evaluation framework basedon confdence intervals[C]//Design, Automation Test in Europe Conference Exhibition-DATE. 2018. 1117-1122.
[8] BACHEFEvaluation of (power) side-channels in cryptographic implementations[J]. IT-Information Technology, 2019,61(1): 15-28.
[9] CHAN T F, GOLUB G H, LEVEQUE R J. Algorithms for computing the sample variance: analysis and recommendations[J]. American Statistician, 1983, 37(3): 242-247.
[10] SCHNEIDER T, MORADI A. Leakage assessment methodology[C]//Cryptographic Hardware and Embedded Systems – CHES. 2015: 495-513.
[11] REPARAZ O, GIERLICHS B, VERBAUWHEDE I. Fast leakage assessment[C]//Cryptographic Hardware and Embedded Systems(CHES). 2017: 495-513.
[12] GILBERT G, BENJAMIN J, JAFFE J, et alA testing methodology for side-channel resistance validation [C]//NIST Non-Invasive Attack Testing Workshop, 2011.
[13] UG960-7 series FPGA AMS targeted reference design[EB].
Improved fast leakage assessment based on online counting
SHI Zhengguang1,2, ZHENG Mengce1,2, HU Honggang1,2, YU Nenghai1,2
1. Key Laboratory of Electromagnetic Space Information, Chinese Academy of Science, Hefei 230027, China 2. School of Cyber Science, University of Science and Technology of China, Hefei 230027, China
Fast leakage assessment (FLA) was proposed in 2017, which made use of the idea of "counter" and significantly improves the computing efficiency. The performance of FLA was analyzed, an online-counting based method was proposed to improve the evaluation flow, and the method was also validated via FPGA implementation. According to the comparisons of experimental results, the proposed method could not only decrease the required memory but also lower the runtime of the evaluation flow. Hence it can improve the evaluation efficiency significantly.
leakage assessment, online processing, efficient computation, side-channel countermeasures
TP309
A
10.11959/j.issn.2096?109x.2021017
2020?10?22;
2021?01?18
胡紅鋼,hghu2005@ustc.edu.cn
國家自然科學基金(61632013, 61972370, 62002335);中央高?;究蒲袠I(yè)務費專項資金(WK3480000007)
The National Natural Science Foundation of China (61632013, 61972370, 62002335), Fundamental Research Funds for Central Universities in China (WK3480000007)
時爭光, 鄭夢策, 胡紅鋼, 等. 基于在線計數(shù)的改進快速泄露評估[J]. 網絡與信息安全學報, 2021, 7(2): 141-150.
SHI Z G, ZHENG M C, HU H G, et al. Improved fast leakage assessment based on online counting[J]. Chinese Journal of Network and Information Security, 2021, 7(2): 141-150.
時爭光(1994? ),男,河南開封人,中國科學技術大學碩士生,主要研究方向為密碼學、側信道分析與泄露評估。

鄭夢策(1990? ),男,浙江寧波人,博士,主要研究方向為應用密碼學。
胡紅鋼(1978? ),男,四川彭州人,中國科學技術大學教授、博士生導師,主要研究方向為密碼學、編碼、網絡安全。

俞能海(1964? ),男,安徽無為人,中國科學技術大學教授、博士生導師,主要研究方向為多媒體數(shù)據(jù)處理與分析和數(shù)字內容安全。