設備。當在處理器上實現(xiàn)軟件時,該組合變?yōu)閱蝹€特定的機器。
[0054]本領域技術人員應該意識到,本文中的任何框圖表示體現(xiàn)本發(fā)明原理的示意性電路的概念性視圖。
[0055]雖然已具體參考各個示例性實施例的某些示例性方面詳細描述了各個示例性實施例,應該理解,本發(fā)明能夠是其他實施例,且可在各個顯而易見的方面修改其細節(jié)。對本領域技術人員顯而易見的是,可在保持在本發(fā)明的精神和范圍內(nèi)的同時實現(xiàn)變型和修改。因此,前述公開、描述和附圖僅用于示意性目的,且不以任何方式限制本發(fā)明,本發(fā)明僅由權利要求限定。
【主權項】
1.一種編碼有指令的非暫時性計算機可讀存儲介質(zhì),所述指令用于具有第一部分和第二部分的帶密鑰密碼操作,所述帶密鑰密碼操作由將輸入消息映射到輸出消息的密碼系統(tǒng)執(zhí)行,所述非暫時性計算機可讀存儲介質(zhì)包括用于執(zhí)行以下操作的指令: 從密碼操作的第一部分向安全硬件設備輸出第一密碼數(shù)據(jù),所述安全硬件設備對所述數(shù)據(jù)實現(xiàn)安全函數(shù); 從所述安全硬件設備接收輸出數(shù)據(jù); 對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn);以及 對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作的第二部分, 其中,用于對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn)的指令與用于對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作的第二部分的指令安全地合并,以使得攻擊者不能訪問反轉(zhuǎn)的輸出。2.根據(jù)權利要求1所述的非暫時性計算機可讀存儲介質(zhì),還包括用于執(zhí)行以下操作的指令:從密碼操作的第一部分向密碼操作的第二部分輸出第二密碼數(shù)據(jù)。3.根據(jù)權利要求1所述的非暫時性計算機可讀存儲介質(zhì),其中,用于對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn)的指令和用于對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作的第二部分的指令包括查找表。4.根據(jù)權利要求1所述的非暫時性計算機可讀存儲介質(zhì),其中,用于對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn)的指令和用于對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作的第二部分的指令包括狀態(tài)機。5.根據(jù)權利要求1所述的非暫時性計算機可讀存儲介質(zhì),其中,輸入?yún)?shù)指定所述安全函數(shù)的反轉(zhuǎn)。6.根據(jù)權利要求1所述的非暫時性計算機可讀存儲介質(zhì),其中,實現(xiàn)安全函數(shù)的硬件設備是處理器,所述安全函數(shù)在所述處理器上的操作系統(tǒng)中實現(xiàn)。7.根據(jù)權利要求1所述的非暫時性計算機可讀存儲介質(zhì),其中,實現(xiàn)安全函數(shù)的硬件設備是實現(xiàn)TrustZone的處理器,所述安全函數(shù)是TrustZone中運行的程序。8.—種編碼有指令的非暫時性計算機可讀存儲介質(zhì),所述指令用于具有第一部分和第二部分的帶密鑰密碼操作,所述帶密鑰密碼操作由將輸入消息映射到輸出消息的密碼系統(tǒng)執(zhí)行,所述非暫時性計算機可讀存儲介質(zhì)包括用于執(zhí)行以下操作的指令: 執(zhí)行密碼操作的第一部分,以產(chǎn)生密碼數(shù)據(jù); 對密碼數(shù)據(jù)的第一部分實現(xiàn)安全函數(shù)的反轉(zhuǎn); 向硬件設備輸出反轉(zhuǎn)的密碼數(shù)據(jù),所述硬件設備對所述數(shù)據(jù)實現(xiàn)安全函數(shù); 從所述硬件設備接收輸出數(shù)據(jù);以及 對硬件設備輸出數(shù)據(jù)執(zhí)行密碼操作的第二部分, 其中,用于對密碼數(shù)據(jù)的一部分實現(xiàn)安全函數(shù)的反轉(zhuǎn)的指令與用于對密碼數(shù)據(jù)實現(xiàn)安全函數(shù)的反轉(zhuǎn)的指令安全地合并,以使得攻擊者不能訪問反轉(zhuǎn)的輸出。9.根據(jù)權利要求8所述的非暫時性計算機可讀存儲介質(zhì),還包括用于執(zhí)行以下操作的指令:從密碼操作的第一部分向密碼操作的第二部分輸出第二密碼數(shù)據(jù)。10.根據(jù)權利要求8所述的非暫時性計算機可讀存儲介質(zhì),其中,用于對密碼數(shù)據(jù)的一部分實現(xiàn)安全函數(shù)的反轉(zhuǎn)的指令和用于對密碼數(shù)據(jù)實現(xiàn)安全函數(shù)的反轉(zhuǎn)的指令包括查找表。11.根據(jù)權利要求8所述的非暫時性計算機可讀存儲介質(zhì),其中,用于對密碼數(shù)據(jù)的一部分實現(xiàn)安全函數(shù)的反轉(zhuǎn)的指令和用于對密碼數(shù)據(jù)實現(xiàn)安全函數(shù)的反轉(zhuǎn)的指令包括狀態(tài)機。12.根據(jù)權利要求8所述的非暫時性計算機可讀存儲介質(zhì),其中,輸入?yún)?shù)指定所述安全函數(shù)的反轉(zhuǎn)。13.根據(jù)權利要求8所述的非暫時性計算機可讀存儲介質(zhì),其中,實現(xiàn)安全函數(shù)的硬件設備是處理器,所述安全函數(shù)在所述處理器上的操作系統(tǒng)中實現(xiàn)。14.根據(jù)權利要求8所述的非暫時性計算機可讀存儲介質(zhì),其中,實現(xiàn)安全函數(shù)的硬件設備是實現(xiàn)Trus tZone的處理器,所述安全函數(shù)是Trus tZone中運行的程序。15.—種編碼有指令的非暫時性計算機可讀存儲介質(zhì),所述指令用于帶密鑰密碼操作,所述帶密鑰密碼操作由將具有第一部分的輸入消息映射到輸出消息的密碼系統(tǒng)執(zhí)行,所述非暫時性計算機可讀存儲介質(zhì)包括用于執(zhí)行以下操作的指令: 從對所述輸入消息的第一部分實現(xiàn)安全函數(shù)的硬件設備接收輸出數(shù)據(jù); 對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn);以及 對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作, 其中,用于對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn)的指令與用于對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作的指令安全地合并,以使得攻擊者不能訪問所述反轉(zhuǎn)的輸出。16.根據(jù)權利要求15所述的非暫時性計算機可讀存儲介質(zhì),還包括用于執(zhí)行以下操作的指令:對所述輸入消息的第二部分執(zhí)行密碼操作。17.根據(jù)權利要求15所述的非暫時性計算機可讀存儲介質(zhì),其中,用于對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn)的指令和用于對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作的指令包括查找表。18.根據(jù)權利要求15所述的非暫時性計算機可讀存儲介質(zhì),其中,用于對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn)的指令和用于對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作的指令包括狀態(tài)機。19.根據(jù)權利要求15所述的非暫時性計算機可讀存儲介質(zhì),其中,輸入?yún)?shù)指定所述安全函數(shù)的反轉(zhuǎn)。20.根據(jù)權利要求15所述的非暫時性計算機可讀存儲介質(zhì),其中,實現(xiàn)安全函數(shù)的硬件設備是處理器,所述安全函數(shù)在所述處理器上的操作系統(tǒng)中實現(xiàn)。21.根據(jù)權利要求15所述的非暫時性計算機可讀存儲介質(zhì),其中,實現(xiàn)安全函數(shù)的硬件設備是實現(xiàn)Trus tZone的處理器,所述安全函數(shù)是Trus tZone中運行的程序。22.—種編碼有指令的非暫時性計算機可讀存儲介質(zhì),所述指令用于帶密鑰密碼操作,所述帶密鑰密碼操作由將輸入消息映射到輸出消息的密碼系統(tǒng)執(zhí)行,所述非暫時性計算機可讀存儲介質(zhì)包括用于執(zhí)行以下操作的指令: 執(zhí)行密碼操作,以產(chǎn)生具有第一部分的密碼數(shù)據(jù); 對所述密碼數(shù)據(jù)的第一部分實現(xiàn)安全函數(shù)的反轉(zhuǎn); 向?qū)崿F(xiàn)所述安全函數(shù)的硬件設備輸出反轉(zhuǎn)的密碼數(shù)據(jù); 其中,用于對所述密碼數(shù)據(jù)的第一部分實現(xiàn)安全函數(shù)的反轉(zhuǎn)的指令與用于向?qū)崿F(xiàn)所述安全函數(shù)的硬件設備輸出反轉(zhuǎn)的密碼數(shù)據(jù)的指令安全地合并,以使得攻擊者不能訪問反轉(zhuǎn)的輸出。23.根據(jù)權利要求22所述的非暫時性計算機可讀存儲介質(zhì),還包括用于從密碼操作輸出第二密碼數(shù)據(jù)的指令。24.根據(jù)權利要求22所述的非暫時性計算機可讀存儲介質(zhì),其中,用于對所述密碼數(shù)據(jù)的第一部分實現(xiàn)安全函數(shù)的反轉(zhuǎn)的指令和用于輸出反轉(zhuǎn)的密碼數(shù)據(jù)的指令包括查找表。25.根據(jù)權利要求22所述的非暫時性計算機可讀存儲介質(zhì),其中,用于對所述密碼數(shù)據(jù)的第一部分實現(xiàn)安全函數(shù)的反轉(zhuǎn)的指令和用于輸出反轉(zhuǎn)的密碼數(shù)據(jù)的指令包括狀態(tài)機。26.根據(jù)權利要求22所述的非暫時性計算機可讀存儲介質(zhì),其中,輸入?yún)?shù)指定所述安全函數(shù)的反轉(zhuǎn)。27.根據(jù)權利要求22所述的非暫時性計算機可讀存儲介質(zhì),其中,實現(xiàn)安全函數(shù)的硬件設備是處理器,所述安全函數(shù)在所述處理器上的操作系統(tǒng)中實現(xiàn)。28.根據(jù)權利要求22所述的非暫時性計算機可讀存儲介質(zhì),其中,實現(xiàn)安全函數(shù)的硬件設備是實現(xiàn)Trus tZone的處理器,所述安全函數(shù)是Trus tZone中運行的程序。
【專利摘要】本發(fā)明提供了一種編碼有指令的非暫時性計算機可讀存儲介質(zhì),所述指令用于具有第一部分和第二部分的帶密鑰密碼操作,所述第一部分和所述第二部分由將輸入消息映射到輸出消息的密碼系統(tǒng)執(zhí)行,所述非暫時性計算機可讀存儲介質(zhì)包括用于執(zhí)行以下操作的指令:從密碼操作的第一部分向?qū)?shù)據(jù)來實現(xiàn)安全函數(shù)的安全硬件設備輸出第一密碼數(shù)據(jù);從所述安全硬件設備接收輸出數(shù)據(jù);對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn);以及對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作的第二部分,其中,用于對所述輸出數(shù)據(jù)實現(xiàn)所述安全函數(shù)的反轉(zhuǎn)的指令與用于對反轉(zhuǎn)的輸出數(shù)據(jù)執(zhí)行密碼操作的第二部分的指令安全地合并,以使得攻擊者不能訪問反轉(zhuǎn)的輸出。
【IPC分類】H04L9/00, G06F21/12, G06F21/14
【公開號】CN105718763
【申請?zhí)枴緾N201510953377
【發(fā)明人】威赫穆斯·P·A·J·米歇爾, 簡·胡格布魯格
【申請人】恩智浦有限公司
【公開日】2016年6月29日
【申請日】2015年12月17日
【公告號】EP3035582A1, US20160182472