1.一種解密方法,其特征在于,包括:
讀取密文機(jī)器碼,所述密文機(jī)器碼為對(duì)處理器中定義的機(jī)器碼進(jìn)行加密后得到的機(jī)器碼;
重構(gòu)硬件解密算法,通過重構(gòu)端口向所述處理器的解密算法重構(gòu)平臺(tái)的FPGA下載解密算法重構(gòu)程序或重構(gòu)能夠得到解密算法的硬件實(shí)現(xiàn)電路,也稱為硬件解密器;
獲取解密密碼,從解密密碼存儲(chǔ)單元讀取解密密碼,所述解密密碼用于對(duì)所述密文機(jī)器碼進(jìn)行解密;
解密密文機(jī)器碼,在所述處理器的解密算法重構(gòu)平臺(tái)上,利用所述硬件解密算法和所述解密密碼對(duì)所述密文機(jī)器碼進(jìn)行解密,得到明文機(jī)器碼,所述明文機(jī)器碼為所述處理器中定義的機(jī)器碼;
執(zhí)行所述明文機(jī)器碼,對(duì)所述明文機(jī)器碼進(jìn)行譯碼,得到的指令功能的控制信號(hào),由指令執(zhí)行模塊執(zhí)行指令。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述讀取密文機(jī)器碼獲取帶密機(jī)器碼之前,還包括:
獲取機(jī)器碼,所述獲取機(jī)器碼是指令讀取模塊讀取密文機(jī)器碼或明文機(jī)器碼;
獲取工作模式控制信號(hào),所述工作模式包括執(zhí)行密文機(jī)器碼模式和執(zhí)行明文機(jī)器碼模式,所述執(zhí)行密文機(jī)器碼模式能夠?qū)λ雒芪臋C(jī)器碼進(jìn)行解密,然后對(duì)明文機(jī)器碼進(jìn)行譯碼執(zhí)行,所述執(zhí)行明文機(jī)器碼模式不需要對(duì)機(jī)器碼進(jìn)行解密,直接對(duì)所述機(jī)器碼進(jìn)行譯碼執(zhí)行;
判斷所述工作模式控制信號(hào)是否表示需要對(duì)所述機(jī)器碼進(jìn)行解密;
如果是,則所述機(jī)器碼為密文機(jī)器碼,讀取密文機(jī)器碼,輸入到所述解密算法重構(gòu)平臺(tái)上解密,所述解密算法重構(gòu)平臺(tái)將密文機(jī)器碼解密為明文機(jī)器碼;
如果否,則所述機(jī)器碼為明文機(jī)器碼,對(duì)所述明文機(jī)器碼直接進(jìn)行譯碼,所述譯碼為將所述機(jī)器碼轉(zhuǎn)化為所述處理器能夠直接執(zhí)行的指令功能的控制信號(hào)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述重構(gòu)硬件解密算法,具體包括:
采用算術(shù)運(yùn)算類算法在解密算法重構(gòu)平臺(tái)上重構(gòu)硬件解密算法;
或者,采用邏輯運(yùn)算類算法在解密算法重構(gòu)平臺(tái)上重構(gòu)硬件解密算法;
或者,采用所述算術(shù)運(yùn)算類算符與所述邏輯運(yùn)算類算法相結(jié)合的方式在所述解密算法重構(gòu)平臺(tái)上重構(gòu)硬件解密算法。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述利用所述硬件解密算法和所述解密密碼對(duì)所述密文機(jī)器碼進(jìn)行解密,具體包括:
將所述解密密碼和所述密文機(jī)器碼輸入到所述解密算法重構(gòu)平臺(tái)上使用所述硬件解密算法進(jìn)行解密計(jì)算。
5.一種解密系統(tǒng),其特征在于,所述系統(tǒng)包括:
密文機(jī)器碼讀取單元,用于讀取密文機(jī)器碼,所述密文機(jī)器碼為對(duì)處理器中定義的機(jī)器碼進(jìn)行加密后得到的機(jī)器碼;
解密算法重構(gòu)單元,用于重構(gòu)硬件解密算法,通過重構(gòu)端口向所述處理器的解密算法重構(gòu)平臺(tái)的FPGA下載解密算法重構(gòu)程序或重構(gòu)能夠得到解密算法的硬件實(shí)現(xiàn)電路,也稱為硬件解密器;
解密密碼獲取單元,用于獲取解密密碼,從解密密碼存儲(chǔ)單元讀取解密密碼,所述解密密碼用于對(duì)所述密文機(jī)器碼進(jìn)行解密;
解密單元,用于解密密文機(jī)器碼,在所述處理器的解密算法重構(gòu)平臺(tái)上,利用所述硬件解密算法和所述解密密碼對(duì)所述密文機(jī)器碼進(jìn)行解密,得到明文機(jī)器碼,所述明文機(jī)器碼為所述處理器中定義的機(jī)器碼;
譯碼單元,用于執(zhí)行所述明文機(jī)器碼,對(duì)所述明文機(jī)器碼進(jìn)行譯碼,得到的指令功能的控制信號(hào),由指令執(zhí)行模塊執(zhí)行指令。
6.根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括:
機(jī)器碼獲取單元,用于獲取機(jī)器碼,所述獲取機(jī)器碼是指令讀取模塊讀取密文機(jī)器碼或明文機(jī)器碼;
工作模式獲取單元,用于獲取工作模式控制信號(hào),所述工作模式包括執(zhí)行密文機(jī)器碼模式和執(zhí)行明文機(jī)器碼模式,所述執(zhí)行密文機(jī)器碼模式能夠?qū)λ雒芪臋C(jī)器碼進(jìn)行解密,然后對(duì)明文機(jī)器碼進(jìn)行譯碼執(zhí)行,所述執(zhí)行明文機(jī)器碼模式不需要對(duì)機(jī)器碼進(jìn)行解密,直接對(duì)所述機(jī)器碼進(jìn)行譯碼執(zhí)行;
判斷單元,用于判斷所述工作模式控制信號(hào)是否表示需要對(duì)所述機(jī)器碼進(jìn)行解密。
所述密文讀取單元還用于當(dāng)所述控制信號(hào)表示需要對(duì)所述機(jī)器碼進(jìn)行解密時(shí),在所述機(jī)器碼為密文機(jī)器碼時(shí),讀取密文機(jī)器碼,由解密算法重構(gòu)平臺(tái)將密文機(jī)器碼解密為明文機(jī)器碼;
所述譯碼單元還用于當(dāng)所述控制信號(hào)表示不需要對(duì)所述機(jī)器碼進(jìn)行解密時(shí),對(duì)所述明文機(jī)器碼直接進(jìn)行譯碼,所述譯碼為將所述機(jī)器碼轉(zhuǎn)化為所述處理器能夠直接執(zhí)行的指令功能的控制信號(hào)。
7.根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,所述解密算法重構(gòu)單元,具體包括:
第一構(gòu)建子單元,用于采用算術(shù)運(yùn)算類算法重構(gòu)硬件解密算法;
第二構(gòu)建子單元,用于采用邏輯運(yùn)算類算法重構(gòu)硬件解密算法;
第三構(gòu)建子單元,用于采用所述算術(shù)運(yùn)算類算符與所述邏輯運(yùn)算類算法相結(jié)合的方式重構(gòu)硬件解密算法。
8.根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,所述解密單元具體包括:
解密子單元,用于將所述解密密碼和所述密文機(jī)器碼輸入到所述解密算法重構(gòu)平臺(tái)上使用所述硬件解密算法進(jìn)行解密計(jì)算。