本發(fā)明涉及計(jì)算機(jī)安全領(lǐng)域。更具體地說(shuō),它涉及一種用于保護(hù)終端免受側(cè)信道攻擊的方法。
背景技術(shù):
1、智能手機(jī)型移動(dòng)終端現(xiàn)在存儲(chǔ)了大量個(gè)人用戶數(shù)據(jù),并被用于諸如交易之類的敏感操作。因此,保護(hù)它們是必要的,并且危害其內(nèi)容的攻擊嘗試越來(lái)越頻繁。
2、側(cè)信道攻擊(sca)是一種計(jì)算機(jī)攻擊,其在不質(zhì)疑安全方法和程序的理論魯棒性的情況下,尋找并利用其實(shí)施方式中的缺陷(無(wú)論是軟件還是硬件)。
3、更具體地說(shuō),雖然算法在數(shù)學(xué)上可能是完全安全的,但在“實(shí)際”使用期間,仍可能出現(xiàn)硬件相關(guān)的缺陷,并且例如,允許獲取用戶認(rèn)證碼等秘密信息。
4、一個(gè)典型的例子是故障注入,也就是說(shuō),故意將錯(cuò)誤引入到系統(tǒng)中,以引發(fā)某些暴露行為。
5、最近,聲學(xué)或消耗攻擊包括要么研究由處理器產(chǎn)生的噪聲(其發(fā)出的噪聲,噪聲的強(qiáng)度和性質(zhì)因其消耗量而異),要么直接研究其功耗,以給出關(guān)于代碼的細(xì)節(jié)。
6、事實(shí)上,微處理器執(zhí)行的每條指令都使用一定數(shù)量的晶體管。在任何時(shí)候,對(duì)消耗電流的測(cè)量都可以反映微處理器的活動(dòng)。因此,某些更昂貴的操作增加了功耗,從而使得尤其有可能區(qū)分有效和無(wú)效代碼之間的差異。
7、側(cè)信道攻擊多種多樣,難以預(yù)測(cè),并且因此希望使其成為不可能。
8、本發(fā)明旨在改善這種情況。
技術(shù)實(shí)現(xiàn)思路
1、因此,根據(jù)第一方面,本發(fā)明涉及一種用于保護(hù)終端的方法,該終端包括數(shù)據(jù)處理裝置、電池和向數(shù)據(jù)處理裝置提供描述電池狀態(tài)的數(shù)據(jù)的電池電量計(jì),所述方法防止使用所述描述電池狀態(tài)的數(shù)據(jù)進(jìn)行的側(cè)信道攻擊,其特征在于,該方法包括由數(shù)據(jù)處理裝置實(shí)施的以下步驟:
2、(b)當(dāng)所述終端可能受到所述攻擊時(shí),控制終端的至少一個(gè)能耗組件,以修改由電池電量計(jì)所提供的描述電池狀態(tài)的數(shù)據(jù)。
3、根據(jù)有利的且非限制性特征:
4、所述能耗組件是振動(dòng)器。
5、該方法包括請(qǐng)求在終端的界面上輸入代碼的步驟(a),在用戶在所述界面上輸入所述代碼期間實(shí)施的步驟(b)。
6、數(shù)據(jù)處理裝置被配置為每次在界面上輸入所述代碼的字符時(shí)激活所述振動(dòng)器。
7、在步驟(b)中,終端的所述能耗組件被控制為要么以虛擬方式被激活至少一次,要么被暫時(shí)去激活。
8、在步驟(b)中,要么終端的所述振動(dòng)器或另一個(gè)能耗組件被控制為在界面上輸入所述代碼的字符之外以虛擬方式激活,要么當(dāng)在界面上輸入所述代碼的至少一個(gè)字符時(shí),所述振動(dòng)器被控制為不被激活。
9、所述方法包括步驟(c),在步驟(b)之后,基于描述電池狀態(tài)的經(jīng)修改的數(shù)據(jù),來(lái)檢測(cè)是否嘗試進(jìn)行所述攻擊。
10、步驟(b)通過(guò)控制能耗組件,來(lái)模擬終端上目標(biāo)進(jìn)程的實(shí)施,以獲得與針對(duì)所述目標(biāo)進(jìn)程將獲得的那些描述電池狀態(tài)的數(shù)據(jù)相同的數(shù)據(jù)。
11、目標(biāo)進(jìn)程正在終端的界面上輸入代碼。
12、該方法包括基于步驟(c)的結(jié)果實(shí)施響應(yīng)措施的步驟(d)。
13、所述響應(yīng)措施包括對(duì)由電池電量計(jì)所提供的描述電池狀態(tài)的數(shù)據(jù)進(jìn)行軟件屏蔽。
14、根據(jù)第二方面,本發(fā)明涉及一種終端,所述終端包括數(shù)據(jù)處理裝置、至少一個(gè)能耗組件、電池和向數(shù)據(jù)處理裝置提供描述電池狀態(tài)的數(shù)據(jù)的電池電量計(jì),數(shù)據(jù)處理裝置被配置為:
15、-當(dāng)所述終端可能受到使用描述電池狀態(tài)的所述數(shù)據(jù)的側(cè)信道攻擊時(shí),控制所述能耗組件,以便修改由電池電量計(jì)所提供的描述電池狀態(tài)的數(shù)據(jù)。
16、根據(jù)第三和第四方面,本發(fā)明涉及一種計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品包括用于執(zhí)行根據(jù)第一方面的方法的代碼指令,該方法用于保護(hù)終端,該終端包括數(shù)據(jù)處理裝置、電池和向數(shù)據(jù)處理裝置提供描述電池狀態(tài)的數(shù)據(jù)的電池電量計(jì),以防止使用所述描述電池狀態(tài)的數(shù)據(jù)的側(cè)信道攻擊;以及可由計(jì)算機(jī)設(shè)備讀取的存儲(chǔ)裝置,其上記錄有計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品包括用于執(zhí)行根據(jù)第一方面的方法的代碼指令,該方法用于保護(hù)終端,該終端包括數(shù)據(jù)處理裝置、電池和電池電量計(jì),該電池電量計(jì)向數(shù)據(jù)處理裝置提供描述電池狀態(tài)的數(shù)據(jù),以防止使用所述描述電池狀態(tài)的數(shù)據(jù)的側(cè)信道攻擊。
1.一種用于保護(hù)終端(1)的方法,所述終端(1)包括數(shù)據(jù)處理裝置(11)、電池(15)和向所述數(shù)據(jù)處理裝置(11)提供描述電池(15)狀態(tài)的數(shù)據(jù)的電池電量計(jì)(16),所述方法防止使用描述電池(15)狀態(tài)的所述數(shù)據(jù)進(jìn)行的側(cè)信道攻擊,其特征在于,所述方法包括由數(shù)據(jù)處理裝置(11)實(shí)施的以下步驟:
2.根據(jù)權(quán)利要求1所述的方法,其中,所述能耗組件是振動(dòng)器(14)。
3.根據(jù)權(quán)利要求1和2中任一項(xiàng)所述的方法,包括在所述終端(1)的界面(13)上請(qǐng)求輸入代碼的步驟(a),步驟(b)是當(dāng)用戶在所述界面(13)上輸入所述代碼期間實(shí)施的。
4.根據(jù)權(quán)利要求2和3組合所述的方法,其中,所述數(shù)據(jù)處理裝置(11)被配置為每次在所述界面(13)上輸入所述代碼的字符時(shí)激活所述振動(dòng)器(14)。
5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法,其中,在步驟(b)中,所述終端(1)的所述能耗組件(11,12,13,14)被控制為要么以虛擬方式被激活至少一次,要么被暫時(shí)去激活。
6.根據(jù)權(quán)利要求4和5組合所述的方法,其中,在步驟(b)中,要么所述終端(1)的所述振動(dòng)器(14)或另一個(gè)能耗組件(11,12,13)被控制為在所述界面(13)上輸入所述代碼的字符之外以虛擬方式被激活,要么所述振動(dòng)器(14)被控制為當(dāng)在所述界面(13)上輸入所述代碼的至少一個(gè)字符時(shí)不被激活。
7.根據(jù)權(quán)利要求1至6中任一項(xiàng)所述的方法,其中,所述目標(biāo)進(jìn)程是在所述終端(1)的所述界面(13)上輸入代碼。
8.根據(jù)權(quán)利要求1至7中任一項(xiàng)所述的方法,包括基于步驟(c)的結(jié)果實(shí)施響應(yīng)措施的步驟(d)。
9.根據(jù)權(quán)利要求8所述的方法,其中,所述響應(yīng)措施包括對(duì)由所述電池電量計(jì)(16)所提供的描述所述電池(15)狀態(tài)的數(shù)據(jù)的軟件屏蔽。
10.一種終端(1),所述終端(1)包括數(shù)據(jù)處理裝置(11)、至少一個(gè)能耗組件(11,12,13,14)、電池(15)和向所述數(shù)據(jù)處理裝置(11)提供描述所述電池(15)狀態(tài)的數(shù)據(jù)的電池電量計(jì)(16),所述數(shù)據(jù)處理裝置(11)被配置為:
11.一種計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括用于執(zhí)行根據(jù)權(quán)利要求1至9中任一項(xiàng)的方法的代碼指令,所述方法用于當(dāng)在計(jì)算機(jī)上執(zhí)行所述程序時(shí)保護(hù)終端(1),所述終端(1)包括數(shù)據(jù)處理裝置(11)、電池(15)和向所述數(shù)據(jù)處理裝置(11)提供描述所述電池(15)狀態(tài)的數(shù)據(jù)的電池電量計(jì)(16),所述方法防止使用描述所述電池(15)狀態(tài)的所述數(shù)據(jù)進(jìn)行的側(cè)信道攻擊。
12.一種計(jì)算機(jī)設(shè)備可讀取的存儲(chǔ)裝置,上面記錄有計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括用于執(zhí)行根據(jù)權(quán)利要求1至9中任一項(xiàng)的方法的代碼指令,所述方法用于保護(hù)終端(1),所述終端(1)包括數(shù)據(jù)處理裝置(11)、電池(15)和向數(shù)據(jù)處理裝置(11)提供描述所述電池(15)狀態(tài)的數(shù)據(jù)的電池電量計(jì)(16),所述方法防止使用描述所述電池(15)狀態(tài)的所述數(shù)據(jù)進(jìn)行的側(cè)信道攻擊。