專(zhuān)利名稱(chēng):加密裝置和加密方法及解密裝置和解密方法以及用于記錄程序的計(jì)算機(jī)可讀取記錄媒體的制作方法
技術(shù)領(lǐng)域:
本發(fā)明所涉及的是一種加密解密裝置以及加密解密方法,特別是在數(shù)據(jù)的加密、解密過(guò)程中,能夠進(jìn)行其他數(shù)據(jù)的加密、解密處理。
現(xiàn)有技術(shù)圖43是基于加密塊連鎖模式(cipher block chaining mode,以下稱(chēng)CBC模式)的加密裝置的示意圖。
在圖43所示的CBC模式加密方法中,是以塊為單位輸入64位明文塊數(shù)據(jù)Mi,并通過(guò)使用加密鍵K的加密模塊51進(jìn)行加密,然后再將此加密后的密文塊數(shù)據(jù)Ci與下一個(gè)明文塊數(shù)據(jù)Mi+1進(jìn)行“異”邏輯演算,并將“異”邏輯演算的結(jié)果作為下次加密處理的輸入,提供至使用加密鍵K的加密模塊51。于是,通過(guò)反復(fù)此處理使彼此鏈接,就能將整個(gè)明文M加密成密文C。
圖44是采用CBC模式的解密裝置的示意圖。
圖44所示的解密裝置,是用來(lái)對(duì)由圖43所示的加密裝置所加密的密文進(jìn)行解密的裝置。密文塊數(shù)據(jù)C1輸入到使用加密鍵K的解密模塊71,并與初始值IV進(jìn)行“異”邏輯演算,解密成明文塊數(shù)據(jù)M1。當(dāng)輸入密文塊數(shù)據(jù)C2時(shí),則在使用加密鍵K的解密模塊71解密,然后與先前輸入并儲(chǔ)存在暫存器111的密文塊數(shù)據(jù)C1進(jìn)行“異”邏輯演算,進(jìn)而解密成明文塊數(shù)據(jù)M2。
在這里,暫存器111亦可設(shè)置于選擇器73的內(nèi)部。
如果明文塊數(shù)據(jù)以Mi(i=1,2,……,n)表示,密文塊數(shù)據(jù)以Ci(i=1,2,……,n)表示,使用加密鍵K的加密處理以EK表示,使用加密鍵K的解密處理以DK表示的話(huà),則CBC模式可以用以下公式表示C1=EK(M1EXR IV)Ci=EK(MiEXR Ci-1) (i=2,3, ……,n)M1=DK(C1) EXR IV
Mi=DK(Ci) EXR Ci-1(i=2,3, ……,n)這里,EXR表示“異”邏輯演算。IV(Initial Value)為初始值,在最初的加密和解密處理時(shí)被使用。初始值IV在加密端和解密端采用相同的值。
圖45是輸出反饋模式(Output Feedback Mode,以下稱(chēng)OFB模式)的加密裝置示意圖。
圖46是OFB模式的解密裝置的示意圖。
圖47是加密反饋模式(Cipher Feedback Mode,以下稱(chēng)CFB模式)的加密裝置示意圖。
圖46是CFB模式的解密裝置的示意圖。
在這里,暫存器111亦可設(shè)置于選擇器73的內(nèi)部。
圖49是用CBC模式的加密裝置對(duì)明文M和明文N進(jìn)行加密處理步驟的示意圖。
在這里,對(duì)明文M由明文塊數(shù)據(jù)M1、明文塊數(shù)據(jù)M2、和明文塊數(shù)據(jù)M3所構(gòu)成,而明文N只由明文塊數(shù)據(jù)N1所構(gòu)成的情況進(jìn)行說(shuō)明。
當(dāng)開(kāi)始明文塊數(shù)據(jù)M1的加密處理后,則密文塊數(shù)據(jù)C1在被輸出的同時(shí),密文塊數(shù)據(jù)C1還被用于明文塊數(shù)據(jù)M2的加密處理。如此,密文塊數(shù)據(jù)Ci被反饋到明文塊數(shù)據(jù)Mi+1的加密處理中進(jìn)行連鎖處理。因此,明文塊數(shù)據(jù)M1到明文塊數(shù)據(jù)M3的加密處理未結(jié)束,就不能進(jìn)行明文塊數(shù)據(jù)N1的加密處理。
圖50與圖49同樣,表示以CBC模式進(jìn)行加密處理的情況。
在圖50中,表示了為準(zhǔn)備明文塊數(shù)據(jù)M1、明文塊數(shù)據(jù)M2、和明文塊數(shù)據(jù)M3所花費(fèi)時(shí)間的情況。另一方面,加密處理在下一個(gè)明文塊數(shù)據(jù)Mi+1準(zhǔn)備完成前結(jié)束,會(huì)出現(xiàn)空閑的時(shí)間(例如T1~T2、T3~T4的時(shí)間)。如此,即使是出現(xiàn)空閑時(shí)間,由于密文塊數(shù)據(jù)Ci必須反饋到下一個(gè)明文塊數(shù)據(jù)Mi+1進(jìn)行鏈鎖處理,所以明文塊數(shù)據(jù)N1的加密不得不等到明文塊數(shù)據(jù)M3的處理結(jié)束后再進(jìn)行。
圖51是數(shù)據(jù)保密處理和保證數(shù)據(jù)完整性處理的示意圖。例如,明文M是利用OFB模式的加密裝置被加密成密文C。利用CBC模式的加密裝置演算出認(rèn)證碼P,并將認(rèn)證碼P附加在密文C的最后。當(dāng)接收到被加密、且附加了認(rèn)證碼P的數(shù)據(jù)時(shí),利用OFB模式的解密裝置從密文C解密成明文M,同時(shí)利用CBC模式的解密裝置從密文C演算出認(rèn)證碼P,并與傳送來(lái)的認(rèn)證碼P比較是否相同,由此可以確認(rèn)傳送來(lái)的C是否被篡改。
圖52是圖51所示的保密處理和認(rèn)證碼演算處理步驟的示意圖。
明文塊數(shù)據(jù)M1~明文塊數(shù)據(jù)M3依序加密成密文塊數(shù)據(jù)C1~密文塊數(shù)據(jù)C3。然后,依序輸入密文塊數(shù)據(jù)C1~密文塊數(shù)據(jù)C3從而演算出認(rèn)證碼P。
在圖42~圖48所示的各模式的加密裝置和解密裝置中,由于必須將前一塊數(shù)據(jù)的加密、解密數(shù)據(jù)反饋到下一個(gè)塊數(shù)據(jù)的加密、解密處理上,所以一旦加密處理或解密處理開(kāi)始后,只要整個(gè)處理不結(jié)束,就不能開(kāi)始其他的加密處理或解密處理。這樣一來(lái),如果先前開(kāi)始了的加密、解密處理需要很長(zhǎng)時(shí)間的話(huà),則以后開(kāi)始的加密、解密處理就要等很長(zhǎng)的時(shí)間。
另外,當(dāng)加密、解密處理所需要的時(shí)間比準(zhǔn)備加密、解密數(shù)據(jù)所需要的時(shí)間短時(shí),則加密、解密裝置會(huì)出現(xiàn)空閑時(shí)間。
而且,當(dāng)進(jìn)行保密處理和保證完整性處理時(shí),必須在進(jìn)行保密處理之后再進(jìn)行保證完整性處理,因而處理很花費(fèi)時(shí)間。
本發(fā)明理想的實(shí)施方式的目的,是提供一種在進(jìn)行某數(shù)據(jù)的加密、解密處理過(guò)程中,能對(duì)其他數(shù)據(jù)進(jìn)行加密、解密處理的加密裝置、解密裝置、加密方法和解密方法。
另外,在本發(fā)明理想的實(shí)施方式中,可以對(duì)優(yōu)先權(quán)較高的數(shù)據(jù)優(yōu)先進(jìn)行加密、解密處理。
另外,在本發(fā)明理想的實(shí)施方式中,可以高速并行地進(jìn)行保密處理和保證保證完整性處理。
發(fā)明內(nèi)容
本發(fā)明的加密裝置,用于進(jìn)行第1處理數(shù)據(jù)和第2處理數(shù)據(jù)的加密處理,其特征在于包括存儲(chǔ)加密處理狀態(tài)的存儲(chǔ)器,用于在第1處理數(shù)據(jù)的加密處理結(jié)束之前開(kāi)始第2處理數(shù)據(jù)的加密處理,在開(kāi)始第2處理數(shù)據(jù)的加密處理時(shí)將第1處理數(shù)據(jù)的加密處理狀態(tài)存儲(chǔ)于所述存儲(chǔ)器中,當(dāng)再開(kāi)始第1處理數(shù)據(jù)的加密處理時(shí),首先將加密裝置的加密處理狀態(tài)恢復(fù)到存儲(chǔ)器所存儲(chǔ)的第1處理數(shù)據(jù)的加密處理狀態(tài)后再開(kāi)始第1處理數(shù)據(jù)的加密處理。
所述加密裝置,其特征還在于在第2處理數(shù)據(jù)的加密處理結(jié)束之前再開(kāi)始第1處理數(shù)據(jù)的加密處理,當(dāng)再開(kāi)始第1處理數(shù)據(jù)的加密處理時(shí)所述存儲(chǔ)器存儲(chǔ)第2處理數(shù)據(jù)的加密處理狀態(tài),當(dāng)再開(kāi)始第2處理數(shù)據(jù)的加密處理時(shí),首先將加密裝置的加密處理狀態(tài)恢復(fù)到存儲(chǔ)器所存儲(chǔ)的第2處理數(shù)據(jù)的加密處理狀態(tài)后再開(kāi)始第2處理數(shù)據(jù)的加密處理。
以所述第1處理數(shù)據(jù)是第1明文,所述第2處理數(shù)據(jù)是第2明文為特征。
以所述加密裝置通過(guò)中斷開(kāi)始第2處理數(shù)據(jù)的加密處理為特征。
本發(fā)明的加密裝置,用于對(duì)構(gòu)成明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)和構(gòu)成明文N的明文塊數(shù)據(jù)Nj(j=1,2,3,……)進(jìn)行加密,其特征在于包括機(jī)構(gòu),用于在明文M的加密處理過(guò)程中接收在明文M的加密處理結(jié)束之前的明文N的加密要求;加密單元,用于對(duì)明文塊數(shù)據(jù)Mi進(jìn)行加密處理并輸出密文塊數(shù)據(jù)Ci;反饋回路,用于將加密單元所輸出的密文塊數(shù)據(jù)Ci通過(guò)反饋線(xiàn)反饋到加密單元;存儲(chǔ)器,與反饋回路的反饋線(xiàn)并行設(shè)置,當(dāng)由于接收所述明文N的加密要求,開(kāi)始明文N的某一明文塊數(shù)據(jù)的加密處理,而緊接在明文塊數(shù)據(jù)Mi之后,不繼續(xù)接著進(jìn)行所述明文塊數(shù)據(jù)Mi+1的加密處理時(shí),用于存儲(chǔ)被反饋的密文塊數(shù)據(jù)Ci;選擇器,當(dāng)明文塊數(shù)據(jù)Mi+1繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)所反饋的密文塊數(shù)據(jù)Ci并提供至反饋回路,當(dāng)所述明文塊數(shù)據(jù)Mi+1不是繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密,而是接著明文N的某一明文塊數(shù)據(jù)進(jìn)行加密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)的密文塊數(shù)據(jù)Ci并提供至反饋回路。
所述存儲(chǔ)器,其特征在于包括對(duì)應(yīng)多件明文的多個(gè)暫存器;根據(jù)加密處理的明文而對(duì)暫存器進(jìn)行轉(zhuǎn)換的轉(zhuǎn)換器。
本發(fā)明的加密方法,其特征是包括以下步驟利用加密模塊所輸出的密文塊數(shù)據(jù)Ci(i=1,2,3,……)對(duì)第1明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)進(jìn)行加密;在所述明文塊數(shù)據(jù)Mi的加密過(guò)程中或是明文塊數(shù)據(jù)Mi的加密之后,將用于第1明文M的明文塊數(shù)據(jù)Mi+1加密的密文塊數(shù)據(jù)Ci存儲(chǔ)于存儲(chǔ)器;在將用于所述明文塊數(shù)據(jù)Mi+1加密的密文塊數(shù)據(jù)Ci存儲(chǔ)于存儲(chǔ)器之后,對(duì)第2明文N的至少1個(gè)明文塊數(shù)據(jù)進(jìn)行加密;在對(duì)所述第2明文N的至少1個(gè)明文塊數(shù)據(jù)進(jìn)行加密之后,輸入存儲(chǔ)器所存儲(chǔ)的用于明文塊數(shù)據(jù)Mi+1加密的密文塊數(shù)據(jù)Ci,并利用加密模塊對(duì)第1明文M的明文塊數(shù)據(jù)Mi+1進(jìn)行加密。
本發(fā)明的加密裝置,用于通過(guò)加密單元將由1個(gè)以上明文塊數(shù)據(jù)所組成的明文加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征在于包括加密部,具有在通過(guò)加密單元對(duì)明文塊數(shù)據(jù)進(jìn)行加密后,將加密單元輸出的密文塊數(shù)據(jù)Ci反饋至加密單元的第1反饋回路,并用于輸入明文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋密文塊數(shù)據(jù)Ci進(jìn)行加密處理,輸出密文塊數(shù)據(jù);認(rèn)證碼生成部,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋回路,每當(dāng)從加密部輸出密文塊數(shù)據(jù)時(shí),用于輸入密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,并通過(guò)第2反饋回路反饋認(rèn)證碼演算中間結(jié)果,從而生成為保證密文完整性的認(rèn)證碼。
所述加密部和認(rèn)證碼生成部,兼用單一加密模塊和單一反饋回路并交互進(jìn)行加密處理和認(rèn)證碼生成處理,同時(shí)所述單一反饋回路,其特征在于包括用于分別記錄并輸出加密處理和認(rèn)證碼生成處理結(jié)果的存儲(chǔ)器;用于為交互進(jìn)行加密處理和認(rèn)證碼生成處理,而從存儲(chǔ)器交互選擇加密處理和認(rèn)證碼生成處理的結(jié)果,并輸出至加密模塊的選擇器。
本發(fā)明的加密方法,用于通過(guò)加密單元將由1個(gè)以上明文塊數(shù)據(jù)所組成的明文加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征在于包括加密步驟,具有在通過(guò)加密單元對(duì)明文塊數(shù)據(jù)進(jìn)行加密后,將加密單元輸出的密文塊數(shù)據(jù)Ci反饋至加密單元的第1反饋步驟,并輸入明文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋密文塊數(shù)據(jù)Ci進(jìn)行加密處理,輸出密文塊數(shù)據(jù);認(rèn)證碼生成步驟,具有反饋認(rèn)證碼演算中間結(jié)果的第2反饋步驟,每當(dāng)從加密步驟輸出密文塊數(shù)據(jù)時(shí),輸入密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,并通過(guò)第2反饋步驟反饋認(rèn)證碼演算中間結(jié)果,從而生成為保證密文完整性的認(rèn)證碼。
本發(fā)明的解密裝置,用于進(jìn)行第1處理數(shù)據(jù)和第2處理數(shù)據(jù)的解密處理,其特征在于包括存儲(chǔ)解密處理狀態(tài)的存儲(chǔ)器,用于在第1處理數(shù)據(jù)的解密處理結(jié)束之前開(kāi)始第2處理數(shù)據(jù)的解密處理,在開(kāi)始第2處理數(shù)據(jù)的解密處理時(shí)將第1處理數(shù)據(jù)的解密處理狀態(tài)存儲(chǔ)于所述存儲(chǔ)器中,當(dāng)再開(kāi)始第1處理數(shù)據(jù)的解密處理時(shí),首先將解密裝置的解密處理狀態(tài)恢復(fù)到存儲(chǔ)器所存儲(chǔ)的第1處理數(shù)據(jù)的解密處理狀態(tài)后再開(kāi)始第1處理數(shù)據(jù)的解密處理。
所述解密裝置,其特征還在于在第2處理數(shù)據(jù)的解密處理結(jié)束之前再開(kāi)始第1處理數(shù)據(jù)的解密處理,當(dāng)再開(kāi)始第1處理數(shù)據(jù)的解密處理時(shí)所述存儲(chǔ)器存儲(chǔ)第2處理數(shù)據(jù)的解密處理狀態(tài),當(dāng)再開(kāi)始第2處理數(shù)據(jù)的解密處理時(shí),首先將解密裝置的解密處理狀態(tài)恢復(fù)到存儲(chǔ)器所存儲(chǔ)的第2處理數(shù)據(jù)的解密處理狀態(tài)后再開(kāi)始第2處理數(shù)據(jù)的解密處理。
以所述第1處理數(shù)據(jù)是第1密文,所述第2處理數(shù)據(jù)是第2密文為特征。
以所述解密裝置通過(guò)中斷開(kāi)始第2處理數(shù)據(jù)的最初塊數(shù)據(jù)的解密處理為特征。
本發(fā)明的解密裝置,用于對(duì)構(gòu)成密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)和構(gòu)成密文D的密文塊數(shù)據(jù)Dj(j=1,2,3,……)進(jìn)行解密,其特征在于包括機(jī)構(gòu),用于在密文C的解密處理過(guò)程中的任一時(shí)間接收密文D的解密要求;解密單元,用于對(duì)密文塊數(shù)據(jù)Ci進(jìn)行解密處理并輸出明文塊數(shù)據(jù)Mi;反饋回路,用于將為解密密文塊數(shù)據(jù)Ci+1的密文塊數(shù)據(jù)Ci通過(guò)反饋線(xiàn)反饋到解密單元;存儲(chǔ)器,與反饋回路的反饋線(xiàn)并行設(shè)置,當(dāng)由于接收所述密文D的解密要求,開(kāi)始密文D的某一密文塊數(shù)據(jù)的解密處理,而緊接在密文塊數(shù)據(jù)Ci之后,不繼續(xù)接著進(jìn)行所述密文塊數(shù)據(jù)Ci+1的解密處理時(shí),用于存儲(chǔ)被反饋的密文塊數(shù)據(jù)Ci;選擇器,當(dāng)密文塊數(shù)據(jù)Ci+1接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)所反饋的密文塊數(shù)據(jù)Ci并提供至反饋回路,當(dāng)所述密文塊數(shù)據(jù)Ci+1不是接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密,而是接著密文D的某一密文塊數(shù)據(jù)進(jìn)行解密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)的密文塊數(shù)據(jù)Ci并提供至反饋回路。
所述存儲(chǔ)器,其特征在于包括對(duì)應(yīng)多件密文的多個(gè)暫存器;根據(jù)解密處理的密文而對(duì)暫存器進(jìn)行轉(zhuǎn)換的轉(zhuǎn)換器。
本發(fā)明的解密方法,其特征是包括以下步驟利用解密模塊對(duì)第1密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)進(jìn)行解密;在所述密文塊數(shù)據(jù)Ci的解密過(guò)程中或是密文塊數(shù)據(jù)Ci的解密之后,將第1密文C的密文塊數(shù)據(jù)Ci+1解密用的密文塊數(shù)據(jù)Ci存儲(chǔ)于存儲(chǔ)器;在將所述密文塊數(shù)據(jù)Ci+1解密用的密文塊數(shù)據(jù)Ci存儲(chǔ)于存儲(chǔ)器之后,對(duì)第2密文D的至少1個(gè)密文塊數(shù)據(jù)進(jìn)行解密;在對(duì)所述第2密文D的至少1個(gè)密文塊數(shù)據(jù)進(jìn)行解密之后,輸入存儲(chǔ)器所存儲(chǔ)的用于密文塊數(shù)據(jù)Ci+1解密的密文塊數(shù)據(jù)Ci,并利用解密模塊對(duì)第1密文C的密文塊數(shù)據(jù)Ci+1進(jìn)行解密。
本發(fā)明的解密裝置,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征在于包括解密部,具有在通過(guò)解密模塊對(duì)數(shù)據(jù)進(jìn)行解密后,將所生成的模塊輸出塊數(shù)據(jù)Ti反饋至解密模塊的第1反饋回路,并用于輸入密文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行解密處理,輸出明文塊數(shù)據(jù);認(rèn)證碼生成部,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋回路,并用于輸入與輸入到解密部的密文塊數(shù)據(jù)相同的密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理輸出認(rèn)證碼演算中間結(jié)果,并通過(guò)第2反饋回路反饋認(rèn)證碼演算中間結(jié)果,從而生成為確認(rèn)密文完整性的認(rèn)證碼。
所述解密部和認(rèn)證碼生成部,兼用單一解密模塊和單一反饋回路并交互進(jìn)行解密處理和認(rèn)證碼生成處理,同時(shí)所述單一反饋回路,其特征在于包括用于分別記錄并輸出解密處理和認(rèn)證碼生成處理結(jié)果的存儲(chǔ)器;用于為交互進(jìn)行解密處理和認(rèn)證碼生成處理,而從存儲(chǔ)器交互選擇解密處理和認(rèn)證碼生成處理的結(jié)果,并輸出至解密模塊的選擇器。
本發(fā)明的解密方法,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征在于包括解密步驟,具有在通過(guò)解密模塊對(duì)數(shù)據(jù)進(jìn)行解密后,將所生成的模塊輸出塊數(shù)據(jù)Ti反饋至解密模塊的第1反饋步驟,并輸入密文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行解密處理,輸出明文塊數(shù)據(jù);認(rèn)證碼生成步驟,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋步驟,并輸入與輸入到解密步驟的密文塊數(shù)據(jù)相同的密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理輸出認(rèn)證碼演算中間結(jié)果,并通過(guò)第2反饋步驟反饋認(rèn)證碼演算中間結(jié)果,從而生成為確認(rèn)密文完整性的認(rèn)證碼。
本發(fā)明的加密裝置,用于對(duì)構(gòu)成明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)和構(gòu)成明文N的明文塊數(shù)據(jù)Nj(j=1,2,3,……)進(jìn)行加密,其特征在于包括機(jī)構(gòu),用于在明文M的加密處理過(guò)程中接收在明文M的加密處理結(jié)束之前的明文N的加密要求;加密模塊,用于將加密處理了的數(shù)據(jù)作為模塊輸出塊數(shù)據(jù)Ti進(jìn)行輸出;反饋回路,用于將加密模塊所輸出的模塊輸出塊數(shù)據(jù)Ti通過(guò)反饋線(xiàn)反饋到加密模塊;存儲(chǔ)器,與反饋回路的反饋線(xiàn)并行設(shè)置,當(dāng)由于接收所述明文N的加密要求,開(kāi)始明文N的某一明文塊數(shù)據(jù)的加密處理,而緊接在明文塊數(shù)據(jù)Mi之后,不繼續(xù)接著進(jìn)行所述明文塊數(shù)據(jù)Mi+1的加密處理時(shí),用于存儲(chǔ)被反饋的模塊輸出塊數(shù)據(jù)Ti;選擇器,當(dāng)明文塊數(shù)據(jù)Mi+1繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)所反饋的模塊輸出塊數(shù)據(jù)Ti并提供至反饋回路,當(dāng)所述明文塊數(shù)據(jù)Mi+1不是繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密,而是接著明文N的某一明文塊數(shù)據(jù)進(jìn)行加密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)的模塊輸出決數(shù)據(jù)Ti并提供至反饋回路。
所述存儲(chǔ)器,其特征在于包括對(duì)應(yīng)多件明文的多個(gè)暫存器;根據(jù)加密處理的明文而對(duì)暫存器進(jìn)行轉(zhuǎn)換的轉(zhuǎn)換器。
本發(fā)明的加密方法,其特征是包括以下步驟利用加密模塊所輸出的模塊輸出塊數(shù)據(jù)Ti(i=1,2,3,……)對(duì)第1明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)進(jìn)行加密;在所述明文塊數(shù)據(jù)Mi的加密過(guò)程中或是明文塊數(shù)據(jù)Mi的加密之后,將用于第1明文M的明文塊數(shù)據(jù)Mi+1加密的模塊輸出塊數(shù)據(jù)Ti存儲(chǔ)于存儲(chǔ)器;在將用于所述明文塊數(shù)據(jù)Mi+1加密的模塊輸出塊數(shù)據(jù)Ti存儲(chǔ)于存儲(chǔ)器之后,對(duì)第2明文N的至少1個(gè)明文塊數(shù)據(jù)進(jìn)行加密;在對(duì)所述第2明文N的至少1個(gè)明文塊數(shù)據(jù)進(jìn)行加密之后,輸入存儲(chǔ)器所存儲(chǔ)的用于明文塊數(shù)據(jù)Mi+1加密的模塊輸出塊數(shù)據(jù)Ti,并利用加密模塊對(duì)第1明文M的明文塊數(shù)據(jù)Mi+1進(jìn)行加密。
本發(fā)明的加密裝置,用于將由1個(gè)以上明文塊數(shù)據(jù)所組成的明文通過(guò)加密模塊加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征在于包括加密部,具有在通過(guò)加密模塊對(duì)明文塊數(shù)據(jù)進(jìn)行加密后,將加密模塊輸出的模塊輸出塊數(shù)據(jù)Ti反饋至加密模塊的第1反饋回路,并用于輸入明文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行加密處理,輸出密文塊數(shù)據(jù);認(rèn)證碼生成部,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋回路,每當(dāng)從加密部輸出密文塊數(shù)據(jù)時(shí),用于輸入密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,并通過(guò)第2反饋回路反饋認(rèn)證碼演算中間結(jié)果,從而生成為保證密文完整性的認(rèn)證碼。
所述加密部和認(rèn)證碼生成部,兼用單一加密模塊和單一反饋回路并交互進(jìn)行加密處理和認(rèn)證碼生成處理,同時(shí)所述單一反饋回路,其特征在于包括用于分別記錄并輸出加密處理和認(rèn)證碼生成處理結(jié)果的存儲(chǔ)器;用于為交互進(jìn)行加密處理和認(rèn)證碼生成處理,而從存儲(chǔ)器交互選擇加密處理和認(rèn)證碼生成處理的結(jié)果,并輸出至加密模塊的選擇器。
本發(fā)明的加密方法,用于將由1個(gè)以上明文塊數(shù)據(jù)所組成的明文通過(guò)加密模塊加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征是包括以下步驟加密步驟,具有在通過(guò)加密模塊對(duì)明文塊數(shù)據(jù)進(jìn)行加密后,將加密模塊所輸出的模塊輸出塊數(shù)據(jù)Ti反饋至加密模塊的第1反饋步驟,并輸入明文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行加密處理,輸出密文塊數(shù)據(jù);認(rèn)證碼生成步驟,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋步驟,每當(dāng)從加密步驟輸出密文塊數(shù)據(jù)時(shí),用于輸入密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,并通過(guò)第2反饋步驟反饋認(rèn)證碼演算中間結(jié)果,從而生成為保證密文完整性的認(rèn)證碼。
本發(fā)明的解密裝置,用于對(duì)構(gòu)成密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)和構(gòu)成密文D的密文塊數(shù)據(jù)Dj(j=1,2,3,……)進(jìn)行解密,其特征在于包括機(jī)構(gòu),用于在密文C的解密處理過(guò)程中的任一時(shí)間接收密文D的解密要求;解密模塊,用于將經(jīng)過(guò)解密處理的數(shù)據(jù)作為模塊輸出塊數(shù)據(jù)Ti進(jìn)行輸出;反饋回路,用于將從解密模塊輸出的模塊輸出塊數(shù)據(jù)Ti通過(guò)反饋線(xiàn)反饋到解密模塊;存儲(chǔ)器,與反饋回路的反饋線(xiàn)并行設(shè)置,當(dāng)由于接收所述密文D的解密要求,開(kāi)始密文D的某一密文塊數(shù)據(jù)的解密處理,而緊接在密文塊數(shù)據(jù)Ci之后,不繼續(xù)接著進(jìn)行所述密文塊數(shù)據(jù)Ci+1的解密處理時(shí),用于存儲(chǔ)被反饋的模塊輸出塊數(shù)據(jù)Ti;選擇器,當(dāng)密文塊數(shù)據(jù)Ci+1接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)所反饋的模塊輸出塊數(shù)據(jù)Ti并提供至反饋回路,當(dāng)所述密文塊數(shù)據(jù)Ci+1不是接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密,而是接著密文D的某一密文塊數(shù)據(jù)進(jìn)行解密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)的模塊輸出塊數(shù)據(jù)Ti并提供至反饋回路。
所述存儲(chǔ)器,其特征在于包括對(duì)應(yīng)多件密文的多個(gè)暫存器;根據(jù)解密處理的密文而對(duì)暫存器進(jìn)行轉(zhuǎn)換的轉(zhuǎn)換器。
本發(fā)明的解密方法,其特征是包括以下步驟利用從解密模塊輸出的模塊輸出塊數(shù)據(jù)Ti(i=1,2,3,……)對(duì)第1密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)進(jìn)行解密;在所述密文塊數(shù)據(jù)Ci的解密過(guò)程中或是密文塊數(shù)據(jù)Ci的解密之后,將第1密文C的密文塊數(shù)據(jù)Ci+1解密用的模塊輸出塊數(shù)據(jù)Ti存儲(chǔ)于存儲(chǔ)器;在將所述密文塊數(shù)據(jù)Ci+1解密用的模塊輸出塊數(shù)據(jù)Ti存儲(chǔ)于存儲(chǔ)器之后,對(duì)第2密文D的至少1個(gè)密文塊數(shù)據(jù)進(jìn)行解密;在對(duì)所述第2密文D的至少1個(gè)密文塊數(shù)據(jù)進(jìn)行解密之后,輸入存儲(chǔ)器所存儲(chǔ)的用于密文塊數(shù)據(jù)Ci+1解密的模塊輸出塊數(shù)據(jù)Ti,并利用解密模塊對(duì)第1密文C的密文塊數(shù)據(jù)Ci+1進(jìn)行解密。
本發(fā)明的解密裝置,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文通過(guò)解密單元解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征在于包括解密部,具有將密文塊數(shù)據(jù)Ci反饋至解密單元的第1反饋回路,并用于輸入密文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋密文塊數(shù)據(jù)Ci進(jìn)行解密處理,輸出明文塊數(shù)據(jù);認(rèn)證碼生成部,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋回路,并用于輸入與輸入到解密部的密文塊數(shù)據(jù)相同的密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理輸出認(rèn)證碼演算中間結(jié)果,并通過(guò)第2反饋回路反饋認(rèn)證碼演算中間結(jié)果,從而生成為確認(rèn)密文完整性的認(rèn)證碼。
所述解密部和認(rèn)證碼生成部,兼用單一解密模塊和單一反饋回路并交互進(jìn)行解密處理和認(rèn)證碼生成處理,同時(shí)所述單一反饋回路,其特征在于包括用于分別記錄并輸出解密處理和認(rèn)證碼生成處理結(jié)果的存儲(chǔ)器;用于為交互進(jìn)行解密處理和認(rèn)證碼生成處理,而從存儲(chǔ)器交互選擇解密處理和認(rèn)證碼生成處理的結(jié)果,并輸出至解密模塊的選擇器。
本發(fā)明的解密方法,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文通過(guò)解密單元解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征是包括以下步驟解密步驟,具有將密文塊數(shù)據(jù)Ci反饋至解密單元的第1反饋步驟,并輸入密文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋密文塊數(shù)據(jù)Ci進(jìn)行解密處理,輸出明文塊數(shù)據(jù);認(rèn)證碼生成步驟,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋步驟,并輸入與輸入到解密步驟的密文塊數(shù)據(jù)相同的密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理輸出認(rèn)證碼演算中間結(jié)果,并通過(guò)第2反饋步驟反饋認(rèn)證碼演算中間結(jié)果,從而生成為確認(rèn)密文完整性的認(rèn)證碼。
所述加密處理,以采用塊密碼算法為特征。
所述解密處理,以采用塊密碼算法為特征。
所述存儲(chǔ)器,以下述內(nèi)容為特征將第1處理數(shù)據(jù)的加密中間結(jié)果,和為加密第1處理數(shù)據(jù)所使用的加密鍵,作為加密處理的狀態(tài)而進(jìn)行存儲(chǔ)。
所述存儲(chǔ)器,以下述內(nèi)容為特征將第2處理數(shù)據(jù)的解密中間結(jié)果,和為解密第2處理數(shù)據(jù)所使用的解密鍵,作為解密處理的狀態(tài)而進(jìn)行存儲(chǔ)。
本發(fā)明的加密裝置,其特征在于包括輸入數(shù)據(jù)進(jìn)行加密,并輸出密碼數(shù)據(jù)的加密部;輸入加密部所輸出的密碼數(shù)據(jù),并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成部,認(rèn)證碼生成部,在加密部完成數(shù)據(jù)加密之前,既開(kāi)始認(rèn)證碼的生成。
本發(fā)明的解密裝置,其特征在于包括輸入數(shù)據(jù)進(jìn)行解密,并輸出解密數(shù)據(jù)的解密部;輸入解密部所輸入的數(shù)據(jù),并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成部,認(rèn)證碼生成部,在解密部完成數(shù)據(jù)解密之前,既開(kāi)始認(rèn)證碼的生成。
本發(fā)明的加密方法,其特征在于包括輸入數(shù)據(jù)進(jìn)行加密,并輸出密碼數(shù)據(jù)的加密步驟;輸入加密步驟所輸出的密碼數(shù)據(jù),并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成步驟,認(rèn)證碼生成步驟,在加密步驟完成數(shù)據(jù)加密之前,既開(kāi)始認(rèn)證碼的生成。
本發(fā)明的解密方法,其特征在于包括輸入數(shù)據(jù)進(jìn)行解密,并輸出解密數(shù)據(jù)的解密步驟;輸入解密步驟所輸入的數(shù)據(jù),并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成步驟,認(rèn)證碼生成步驟,在解密步驟完成數(shù)據(jù)解密之前,既開(kāi)始認(rèn)證碼的生成。
另外,本發(fā)明是以用于在計(jì)算機(jī)上實(shí)現(xiàn)所述加密裝置的各部處理以及所述加密方法的各步驟處理的程序?yàn)樘卣?。而且,以記錄其程序的?jì)算機(jī)可讀取的記錄媒體為特征。
另外,本發(fā)明是以用于在計(jì)算機(jī)上實(shí)現(xiàn)所述解密裝置的各部處理以及所述解密方法的各步驟的程序?yàn)樘卣鳌6?,以記錄其程序的?jì)算機(jī)可讀取的記錄媒體為特征。
圖1是實(shí)施方式1中CBC模式的加密裝置示意圖。
圖2是CBC模式的加密裝置的操作順序示意圖。
圖3是CBC模式的加密裝置的操作流程圖。
圖4是選擇器54的操作流程圖。
圖5是轉(zhuǎn)換器57的中斷處理流程圖。
圖6是存儲(chǔ)器55的另一例的示意圖。
圖7是存儲(chǔ)器55的中斷處理流程圖。
圖8是存儲(chǔ)器55的另一例的示意圖。
圖9是優(yōu)先權(quán)處理示意圖。
圖10是優(yōu)先權(quán)處理示意圖。
圖11是優(yōu)先權(quán)處理示意圖。
圖12是存儲(chǔ)器55與反饋線(xiàn)66的并行設(shè)置圖。
圖13是圖12的加密裝置的操作順序示意圖。
圖14是存儲(chǔ)器55與反饋線(xiàn)67的并行設(shè)置圖。
圖15是圖14的加密裝置的操作順序示意圖。
圖16是OFB模式的加密裝置示意圖。
圖17是圖16的加密裝置的操作順序示意圖。
圖18是CFB模式的加密裝置示意圖。
圖19是圖18的加密裝置的操作順序示意圖。
圖20是CBC模式的解密裝置示意圖。
圖21是圖20的解密裝置的操作順序示意圖。
圖22是OFB模式的解密裝置示意圖。
圖23是圖22的解密裝置的操作順序示意圖。
圖24是CFB模式的解密裝置示意圖。
圖25是圖24的解密裝置的操作順序示意圖。
圖26是保存鍵的CBC模式的加密裝置示意圖。
圖27是CBC模式的加密裝置的操作順序示意圖。
圖28是保存鍵的CBC模式的解密裝置示意圖。
圖29是實(shí)施方式2中具有加密部100和認(rèn)證碼生成部200的加密裝置示意圖。
圖30是具有加密部100和認(rèn)證碼生成部200的加密裝置的操作順序示意圖。
圖31是具有加密部100和認(rèn)證碼生成部200的加密裝置的流程圖。
圖32是將加密部100和認(rèn)證碼生成部200合二為一的加密裝置示意圖。
圖33是將加密部100和認(rèn)證碼生成部200合二為一的加密裝置的操作順序示意圖。
圖34是具有解密部300和認(rèn)證碼生成部400的解密裝置示意圖。
圖35是將解密部300和認(rèn)證碼生成部400合二為一的解密裝置示意圖。
圖36是將解密部300和認(rèn)證碼生成部400合二為一的解密裝置的操作順序示意圖。
圖37是實(shí)施方式2中具有加密部100和認(rèn)證碼生成部200的加密裝置示意圖。
圖38是具有解密部300和認(rèn)證碼生成部400的解密裝置示意圖。
圖39是使用加密鍵K的加密模塊51的代表性結(jié)構(gòu)圖。
圖40是加密裝置及解密裝置的硬件實(shí)現(xiàn)示意圖。
圖41是加密裝置及解密裝置的硬件實(shí)現(xiàn)示意圖。
圖42是由應(yīng)用程序46調(diào)用加密程序47的示意圖。
圖43是傳統(tǒng)的CBC模式的加密裝置示意圖。
圖44是傳統(tǒng)的CBC模式的解密裝置示意圖。
圖45是傳統(tǒng)的OFB模式的加密裝置示意圖。
圖46是傳統(tǒng)的OFB模式的解密裝置示意圖。
圖47是傳統(tǒng)的CFB模式的加密裝置示意圖。
圖48是傳統(tǒng)的CFB模式的解密裝置示意圖。
圖49是傳統(tǒng)的加密順序示意圖。
圖50是傳統(tǒng)的加密順序示意圖。
圖51是保密處理和完整性保證處理的說(shuō)明圖。
圖52是傳統(tǒng)的保密處理和完整性保證處理的操作順序示意圖。
實(shí)施方式實(shí)施方式1圖1是本實(shí)施方式中CBC模式的加密裝置示意圖。
本實(shí)施方式的加密裝置,是由選擇器54、“異”邏輯電路58、使用加密鍵K的加密模塊51、和存儲(chǔ)器55所構(gòu)成?!爱悺边壿嬰娐?8和使用加密鍵K的加密模塊51構(gòu)成加密單元52。選擇器54、“異”邏輯電路58、和使用加密鍵K的加密模塊51,通過(guò)反饋線(xiàn)65、反饋線(xiàn)66、和反饋線(xiàn)67構(gòu)成反饋回路。由使用加密鍵K的加密模塊51加密的密文塊數(shù)據(jù)Ci,通過(guò)反饋回路被再輸入“異”邏輯電路58,并在“異”邏輯電路58生成模塊輸入數(shù)據(jù)Si。然后,所生成的模塊輸入數(shù)據(jù)Si被提供至使用加密鍵K的加密模塊51。
存儲(chǔ)器55,與反饋線(xiàn)65并行設(shè)置。存儲(chǔ)器55由暫存器56和轉(zhuǎn)換器57構(gòu)成。轉(zhuǎn)換器57用于轉(zhuǎn)換使用加密鍵K的加密模塊51的輸出是輸入至?xí)捍嫫?6或是忽略。此轉(zhuǎn)換,例如是通過(guò)中斷IT來(lái)進(jìn)行。當(dāng)發(fā)生中斷IT時(shí),轉(zhuǎn)換器57連接E,當(dāng)中斷IT解除時(shí),轉(zhuǎn)換器57連接F。暫存器56輸入并存儲(chǔ)經(jīng)由E傳來(lái)的密文塊數(shù)據(jù)Ci。存儲(chǔ)在暫存器56的密文塊數(shù)據(jù)Ci輸出至選擇器54。選擇器54有A、B、C3個(gè)輸入,并從其中選擇某1個(gè)輸入。這些選擇是依據(jù)后述的中斷IT。
圖2是圖1所示的加密裝置的操作順序示意圖。
圖3是圖1所示的加密裝置的操作流程圖。
當(dāng)該加密裝置接通電源時(shí),選擇器54的輸入設(shè)定為A,轉(zhuǎn)換器57連接E。接著,如果有明文N的加密要求時(shí),則發(fā)生中斷IT,并且到明文N的加密要求解除為止,中斷IT一直維持在發(fā)生(ON)狀態(tài)。另外,明文M使用鍵K1加密,明文N使用鍵K2加密。而且,在中斷IT發(fā)生或中斷IT解除時(shí),鍵K2或鍵K1被提供給加密模塊51進(jìn)行更改。
在時(shí)刻T0,提供鍵K1,開(kāi)始明文塊數(shù)據(jù)M1的加密處理。在時(shí)刻T0,當(dāng)明文塊數(shù)據(jù)M1的加密開(kāi)始后,一旦從選擇器54的輸入A輸入初始值IV,則選擇器54轉(zhuǎn)換到B。接著,在明文塊數(shù)據(jù)M1使用鍵K1進(jìn)行加密過(guò)程中的時(shí)刻X,發(fā)生了明文塊數(shù)據(jù)N1要求加密的中斷IT。到時(shí)刻T1為止,密文塊數(shù)據(jù)C1被存儲(chǔ)在存儲(chǔ)器55。接著,由于中斷IT的發(fā)生,在時(shí)刻T1,鍵K2被提供給加密模塊51。同時(shí),在時(shí)刻T1,選擇器54設(shè)定輸入為A。同時(shí),在時(shí)刻T1,轉(zhuǎn)換器57連接到F。在時(shí)刻T1之后,使用鍵K2對(duì)明文塊數(shù)據(jù)N1進(jìn)行加密,并輸出密文塊數(shù)據(jù)D1。在時(shí)刻Y,明文塊數(shù)據(jù)N1的加密處理結(jié)束,中斷IT被解除。由于該中斷IT的解除,在時(shí)刻T2,鍵K1被提供給加密模塊51,選擇器54的輸入轉(zhuǎn)換到C,轉(zhuǎn)換器57連接到E。由于選擇器54轉(zhuǎn)換到C,存儲(chǔ)在存儲(chǔ)器55的密文塊數(shù)據(jù)C1為了明文塊數(shù)據(jù)M2的加密而被輸入,通過(guò)使用鍵K1的加密模塊51對(duì)明文塊數(shù)據(jù)M2進(jìn)行加密,并輸出密文塊數(shù)據(jù)C2。在時(shí)刻T3之前,當(dāng)選擇器54的輸入轉(zhuǎn)換到B,并對(duì)明文塊數(shù)據(jù)M3進(jìn)行加密時(shí),從反饋回路的反饋線(xiàn)65所反饋的密文塊數(shù)據(jù)C2被輸入,通過(guò)使用鍵K1的加密模塊51明文塊數(shù)據(jù)M3被加密,并輸出密文塊數(shù)據(jù)C3。
另外,如果明文M和明文N的鍵相同(K1=K2),則在加密處理開(kāi)始時(shí)只一次提供鍵即可。
使用圖3的流程圖對(duì)全體的操作進(jìn)行說(shuō)明。
在S1,開(kāi)始或繼續(xù)明文M的加密處理。到最后的塊數(shù)據(jù)處理結(jié)束時(shí),結(jié)束處理。在S2,監(jiān)視在任意時(shí)刻的中斷IT的發(fā)生。如果沒(méi)有中斷IT的發(fā)生,則繼續(xù)S1的處理。當(dāng)在明文塊數(shù)據(jù)Mi的處理過(guò)程中發(fā)生了中斷IT時(shí),則在S3,將目前處理中的明文塊數(shù)據(jù)Mi的密文塊數(shù)據(jù)Ci存儲(chǔ)于存儲(chǔ)器55的暫存器56。在S4,由于中斷IT,對(duì)有加密處理要求的明文N進(jìn)行加密處理。該S4的加密處理,如S5所示,到中斷IT的解除為止連續(xù)進(jìn)行。當(dāng)中斷IT解除時(shí),在S6,使用存儲(chǔ)在存儲(chǔ)器55的暫存器56中的密文塊數(shù)據(jù)Ci對(duì)明文塊數(shù)據(jù)Mi+1進(jìn)行加密處理。其后的處理為返回S1,并繼續(xù)加密處理。
圖4是選擇器54的操作處理示意圖。
當(dāng)接通電源時(shí),如S11所示,將輸入設(shè)定為A。在S12,當(dāng)加密開(kāi)始時(shí),則在S13,將輸入設(shè)定為B。即由反饋回路的反饋線(xiàn)65所反饋的密文塊數(shù)據(jù)Ci被使用。在S14,當(dāng)判定目前正處理的是最后的塊數(shù)據(jù)時(shí),則返回S11返回與接通電源時(shí)相同的狀態(tài)。在S15,當(dāng)確認(rèn)了中斷IT的發(fā)生時(shí),則在S16,設(shè)定輸入為A,當(dāng)加密開(kāi)始時(shí),則在S18,設(shè)定輸入為B。到中斷IT解除為止,維持輸入為B的狀態(tài)進(jìn)行操作。即由反饋回路的反饋線(xiàn)65所反饋的密文塊數(shù)據(jù)Ci被使用。在S19,當(dāng)探測(cè)到中斷IT的解除時(shí),則在S20,設(shè)定輸入為C。通過(guò)將該輸入設(shè)定為C,則存儲(chǔ)在存儲(chǔ)器55中的密文塊數(shù)據(jù)Ci被輸入。當(dāng)基于該C輸入的加密開(kāi)始后,則返回S13設(shè)定輸入為B。
由此,根據(jù)中斷IT的發(fā)生,可以轉(zhuǎn)換選擇器54。
另外,明文M的加密處理,也可根據(jù)中斷IT在任意時(shí)刻開(kāi)始。
圖5是轉(zhuǎn)換器57的中斷處理流程圖。
當(dāng)接通電源,而且,在其后最初的明文加密處理時(shí),轉(zhuǎn)換器57連接E。接著,在S31,當(dāng)中斷IT發(fā)生時(shí),轉(zhuǎn)換器57離開(kāi)E連接F。接著,在S33,當(dāng)探測(cè)到中斷IT的解除時(shí),轉(zhuǎn)換器57離開(kāi)F連接E。由此,從中斷IT的發(fā)生到解除,轉(zhuǎn)換器57將一直忽略密文塊數(shù)據(jù)Ci。所以,在存儲(chǔ)器55的暫存器56中,中斷IT發(fā)生時(shí)所生成的密文塊數(shù)據(jù)Ci將一直被儲(chǔ)存。
如以上所述,圖1~圖5所示的加密裝置,用于對(duì)構(gòu)成明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)和構(gòu)成明文N的明文塊數(shù)據(jù)Nj(j=1,2,3,……)進(jìn)行加密,表示在明文M的加密處理過(guò)程中接收在明文M的加密處理結(jié)束之前的明文N的加密要求的中斷處理機(jī)構(gòu)。
另外,圖1~圖5所示的加密裝置,具有加密模塊51,用于進(jìn)行明文塊數(shù)據(jù)Mi的加密處理,并輸出密文塊數(shù)據(jù)Ci;反饋回路65、66,用于將從加密模塊51輸出的密文塊數(shù)據(jù)Ci通過(guò)反饋線(xiàn)65反饋至加密單元52;存儲(chǔ)器55,與反饋回路的反饋線(xiàn)65并行設(shè)置,當(dāng)由于根據(jù)所述中斷處理接收所述明文N的加密要求,開(kāi)始明文N的某一明文塊數(shù)據(jù)的加密處理,而緊接在明文塊數(shù)據(jù)Mi之后,不繼續(xù)接著進(jìn)行所述明文塊數(shù)據(jù)Mi+1的加密處理時(shí),用于存儲(chǔ)被反饋的密文塊數(shù)據(jù)Ci。
另外,圖1~圖5所示的加密裝置,具有選擇器54,當(dāng)明文塊數(shù)據(jù)Mi+1繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)65所反饋的密文塊數(shù)據(jù)Ci并通過(guò)反饋回路提供至加密單元52,當(dāng)所述明文塊數(shù)據(jù)Mi+1不是繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密,而是接著明文N的某一明文塊數(shù)據(jù)進(jìn)行加密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)55的密文塊數(shù)據(jù)Ci并通過(guò)反饋回路提供至加密單元52。
存儲(chǔ)器55是當(dāng)中斷IT發(fā)生時(shí)存儲(chǔ)加密裝置狀態(tài)的存儲(chǔ)器。通過(guò)存儲(chǔ)器55存儲(chǔ)加密處理的狀態(tài),即使在某數(shù)據(jù)的加密進(jìn)行中進(jìn)行了其他數(shù)據(jù)的加密,也可以再恢復(fù)某數(shù)據(jù)的加密處理。即通過(guò)利用存儲(chǔ)在存儲(chǔ)器55中的數(shù)據(jù),可以將加密裝置恢復(fù)到與加密中斷時(shí)完全相同的狀態(tài),并繼續(xù)進(jìn)行中斷了的加密處理。
圖6是存儲(chǔ)器55的另一例的示意圖。
存儲(chǔ)器55具有中斷控制部52、輸入轉(zhuǎn)換器96、輸出轉(zhuǎn)換器97、和多個(gè)暫存器(REG1、2、3)。這樣,通過(guò)多個(gè)暫存器可以接收多個(gè)中斷。
圖7是存儲(chǔ)器55中斷處理的操作示意圖。
如果中斷IT發(fā)生,則在S41,存儲(chǔ)當(dāng)前使用中的暫存器K的號(hào)碼K。在S42,輸入轉(zhuǎn)換器96和輸出轉(zhuǎn)換器97連接暫存器K以外的暫存器1。在此狀態(tài)下,繼續(xù)明文N的加密。而且,監(jiān)視在明文N的加密過(guò)程中是否發(fā)生了其他的中斷。在S43,當(dāng)探測(cè)出發(fā)生了其他的中斷IT時(shí),再調(diào)用自己本身的S40。如此一來(lái),每當(dāng)中斷IT發(fā)生時(shí),可以通過(guò)遞歸調(diào)用自己本身的S40處理,進(jìn)行多層的中斷處理。在S44,探測(cè)中斷是否解除,當(dāng)中斷已解除時(shí),利用所存儲(chǔ)的號(hào)碼K將輸入轉(zhuǎn)換器96和輸出轉(zhuǎn)換器97轉(zhuǎn)換至?xí)捍嫫鱇。在圖6所示的情況下,因?yàn)橛?個(gè)暫存器,所以可以進(jìn)行3層的中斷處理。
圖8是存儲(chǔ)器55的另一例示意圖。
存儲(chǔ)器55,具有存儲(chǔ)棧64。存儲(chǔ)棧64是先到后出(FIFO)型的暫存器。當(dāng)在使用存儲(chǔ)棧1過(guò)程中發(fā)生了中斷IT時(shí),存儲(chǔ)棧1的數(shù)據(jù)移到存儲(chǔ)棧2,其后的數(shù)據(jù)堆入存儲(chǔ)棧1,當(dāng)中斷IT解除時(shí),輸出堆積在存儲(chǔ)棧1的數(shù)據(jù),存儲(chǔ)棧2的數(shù)據(jù)返回存儲(chǔ)棧1。圖8所示的情況,表示了可以進(jìn)行4層中斷處理的情況。
如圖6所示,在進(jìn)行多層中斷處理的情況下,可以對(duì)各中斷賦予優(yōu)先權(quán)。例如,中斷IT1為優(yōu)先權(quán)1,中斷IT2為比優(yōu)先權(quán)1低的優(yōu)先權(quán)2,這樣,當(dāng)優(yōu)先權(quán)1的中斷IT1發(fā)生時(shí),可以遲緩優(yōu)先權(quán)2的處理。
圖9表示優(yōu)先權(quán)1的加密處理優(yōu)先于優(yōu)先權(quán)2的加密處理的情況。優(yōu)先權(quán)1的加密處理首先結(jié)束。
圖10表示優(yōu)先權(quán)都相等時(shí)的加密處理情況。
當(dāng)優(yōu)先權(quán)都相等時(shí),2個(gè)明文的各塊數(shù)據(jù)交互進(jìn)行加密。
圖11表示優(yōu)先權(quán)1的數(shù)據(jù)和2個(gè)優(yōu)先權(quán)2的數(shù)據(jù)的加密情況。
如圖9~圖11所示,通過(guò)對(duì)中斷賦予優(yōu)先權(quán),可以實(shí)現(xiàn)用戶(hù)所希望的加密處理順序。對(duì)急用數(shù)據(jù)和短數(shù)據(jù),可以通過(guò)提高優(yōu)先權(quán)而進(jìn)行高效率的處理。
圖12表示存儲(chǔ)器55與反饋線(xiàn)66并行的情況。
“異”邏輯電路58和使用加密鍵的加密模塊51構(gòu)成了加密單元52。
圖13是圖12加密裝置的操作順序示意圖。
第1選擇器61和第2選擇器62,通過(guò)以下的選擇連接實(shí)現(xiàn)與圖1的選擇器54相同的選擇動(dòng)作。
第1選擇器61+第2選擇器62=選擇器54A+ D=AB+ D=BA+ C=CB+ C=C在圖13,當(dāng)?shù)?選擇器62選擇D時(shí),第1選擇器61的選擇(A或B)有效,當(dāng)?shù)?選擇器62選擇C時(shí),輸出存儲(chǔ)器55的內(nèi)容。
即第2選擇器62,在希望使用存儲(chǔ)器55的內(nèi)容時(shí)(在中斷IT解除并從明文N返回原明文M的加密時(shí)),選擇C即可。
圖14表示存儲(chǔ)器55與反饋線(xiàn)67并行的情況。
圖15是圖14加密裝置的操作順序示意圖。
當(dāng)中斷IT的發(fā)生時(shí)刻X是在“異”邏輯電路58進(jìn)行“異”邏輯演算之前時(shí),存儲(chǔ)器55,存儲(chǔ)通過(guò)“異”邏輯電路58進(jìn)行“異”邏輯演算的模塊輸入數(shù)據(jù)Si。然后,加密明文塊數(shù)據(jù)N1。接著,通過(guò)第2選擇器62選擇存儲(chǔ)在存儲(chǔ)器55中的模塊輸入數(shù)據(jù)Si,輸入使用加密鍵K的加密模塊51進(jìn)行加密,并輸出密文塊數(shù)據(jù)C1。
如圖1、圖12及圖14所示,存儲(chǔ)器55,可與反饋線(xiàn)65、反饋線(xiàn)66和反饋線(xiàn)67中的任意一條線(xiàn)并行設(shè)置。存儲(chǔ)器55,當(dāng)加密裝置在某數(shù)據(jù)的加密處理過(guò)程中開(kāi)始其他數(shù)據(jù)的加密時(shí),存儲(chǔ)其他數(shù)據(jù)開(kāi)始加密之前的狀態(tài),在其他數(shù)據(jù)的加密處理結(jié)束時(shí),只要加密裝置能利用存儲(chǔ)在存儲(chǔ)器55中的數(shù)據(jù)恢復(fù)到原狀態(tài),存儲(chǔ)器55設(shè)置在什么位置都可以。而且,存儲(chǔ)器55設(shè)置在多個(gè)位置也可以。
如以上所述,本實(shí)施方式的加密裝置,用于對(duì)由1個(gè)以上明文塊數(shù)據(jù)Mi(i=1,2,3,……,m)所構(gòu)成的第1處理數(shù)據(jù)(明文M)和由1個(gè)以上明文塊數(shù)據(jù)Nj(j=1,2,3,……,n)所構(gòu)成的第2處理數(shù)據(jù)(明文N)進(jìn)行加密,其特征為具有存儲(chǔ)加密處理狀態(tài)的存儲(chǔ)器55,在第1處理數(shù)據(jù)的所有塊數(shù)據(jù)(M1~Mm)加密處理結(jié)束之前開(kāi)始第2處理數(shù)據(jù)的最初塊數(shù)據(jù)N1加密處理的同時(shí),當(dāng)?shù)?處理數(shù)據(jù)的最初塊數(shù)據(jù)N1的加密處理開(kāi)始時(shí),將第1處理數(shù)據(jù)的加密處理狀態(tài)(例如,密文塊數(shù)據(jù)Ci)存儲(chǔ)于所述存儲(chǔ)器55,當(dāng)重新開(kāi)始第1處理數(shù)據(jù)的加密處理時(shí),將加密裝置的加密處理狀態(tài)恢復(fù)至存儲(chǔ)器所存儲(chǔ)的第1處理數(shù)據(jù)的加密處理狀態(tài)之后,再開(kāi)始第1處理數(shù)據(jù)的加密處理。
所述加密裝置,其特征還在于在第2處理數(shù)據(jù)的所有塊數(shù)據(jù)(N1~Nn)加密處理結(jié)束之前再開(kāi)始第1處理數(shù)據(jù)的加密處理的同時(shí),所述存儲(chǔ)器55,在重新開(kāi)始第1處理數(shù)據(jù)的加密處理時(shí),存儲(chǔ)第2處理數(shù)據(jù)的加密處理狀態(tài)(例如,密文塊數(shù)據(jù)Dj),當(dāng)重新開(kāi)始第2處理數(shù)據(jù)的加密處理時(shí),將加密裝置的加密處理狀態(tài)恢復(fù)至存儲(chǔ)器所存儲(chǔ)的第2處理數(shù)據(jù)的加密處理狀態(tài)之后,再開(kāi)始第2處理數(shù)據(jù)的加密處理。
圖16是OFB模式加密裝置的結(jié)構(gòu)圖。
與圖45相比,其特征是增加了存儲(chǔ)器55。存儲(chǔ)器55,存儲(chǔ)從加密模塊51輸出的模塊輸出塊數(shù)據(jù)T1。
圖16,是對(duì)構(gòu)成明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)和構(gòu)成明文N的明文塊數(shù)據(jù)Nj(j=1,2,3,……)進(jìn)行加密的加密裝置,其特征是包括中斷處理機(jī)構(gòu),用于在明文M的加密處理過(guò)程中接收在明文M的加密處理結(jié)束之前的明文N的加密要求;加密模塊51,用于將加密處理了的數(shù)據(jù)作為模塊輸出塊數(shù)據(jù)Ti進(jìn)行輸出;反饋回路65、66,用于將加密模塊51所輸出的模塊輸出塊數(shù)據(jù)Ti通過(guò)反饋線(xiàn)65反饋到加密模塊;存儲(chǔ)器55,與反饋回路的反饋線(xiàn)65并行設(shè)置,當(dāng)由于接收所述明文N的加密要求,開(kāi)始明文N的某一明文塊數(shù)據(jù)的加密處理,而緊接在明文塊數(shù)據(jù)Mi之后,不繼續(xù)接著進(jìn)行所述明文塊數(shù)據(jù)Mi+1的加密處理時(shí),用于存儲(chǔ)被反饋的模塊輸出塊數(shù)據(jù)Ti;選擇器54,當(dāng)明文塊數(shù)據(jù)Mi+1繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)65所反饋的模塊輸出塊數(shù)據(jù)Ti并通過(guò)反饋回路提供至加密模塊51,當(dāng)所述明文塊數(shù)據(jù)Mi+1不是繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密,而是接著明文N的某一明文塊數(shù)據(jù)進(jìn)行加密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)55的模塊輸出塊數(shù)據(jù)Ti并通過(guò)反饋回路提供至加密模塊51。
圖17是圖16的OFB模式加密裝置的操作說(shuō)明圖。
在圖17,圖2CBC模式的操作變?yōu)镺FB模式的操作,其他的操作與圖2的操作相同。
圖18是CFB模式的加密裝置示意圖。
與圖47相比,其特征是設(shè)置了存儲(chǔ)器55。存儲(chǔ)器55,存儲(chǔ)從“異”邏輯電路58輸出的密文塊數(shù)據(jù)Ci。
而且,“異”邏輯電路58和使用加密鍵K的加密模塊51構(gòu)成了加密單元52。
圖18,是對(duì)構(gòu)成明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)和構(gòu)成明文N的明文塊數(shù)據(jù)Nj(j=1,2,3,……)進(jìn)行加密的加密裝置,其特征是包括中斷處理機(jī)構(gòu),用于在明文M的加密處理過(guò)程中接收在明文M的加密處理結(jié)束之前的明文N的加密要求;加密單元52,用于對(duì)明文塊數(shù)據(jù)Mi進(jìn)行加密處理并輸出密文塊數(shù)據(jù)Ci;反饋回路65、66,用于將加密模塊所輸出的密文塊數(shù)據(jù)Ci通過(guò)反饋線(xiàn)65反饋給加密處理;存儲(chǔ)器55,與反饋回路的反饋線(xiàn)65并行設(shè)置,當(dāng)由于接收所述明文N的加密要求,開(kāi)始明文N的某一明文塊數(shù)據(jù)的加密處理,而緊接在明文塊數(shù)據(jù)Mi之后,不繼續(xù)接著進(jìn)行所述明文塊數(shù)據(jù)Mi+1的加密處理時(shí),用于存儲(chǔ)被反饋的密文塊數(shù)據(jù)Ci;選擇器54,當(dāng)明文塊數(shù)據(jù)Mi+1繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)65所反饋的密文塊數(shù)據(jù)Ci并通過(guò)反饋回路提供至加密單元52,當(dāng)所述明文塊數(shù)據(jù)Mi+1不是繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密,而是接著明文N的某一明文塊數(shù)據(jù)進(jìn)行加密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)55的密文塊數(shù)據(jù)Ci并通過(guò)反饋回路提供至加密單元52。
圖19是圖18的CFB模式加密裝置的操作說(shuō)明圖。
在圖19,圖2CBC模式的操作變?yōu)镃FB模式的操作,其他的操作與圖2的操作相同。
圖20是CBC模式的解密裝置示意圖。
與圖44相比,其特征是設(shè)置了存儲(chǔ)器75。
存儲(chǔ)器75,由暫存器76和轉(zhuǎn)換器77構(gòu)成。
而且,“異”邏輯電路78和使用鍵K的解密模塊71構(gòu)成了解密單元72。
另外,暫存器111可以設(shè)置在選擇器74的內(nèi)部。
圖20所示的解密裝置,用于對(duì)構(gòu)成密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)和構(gòu)成密文D的密文塊數(shù)據(jù)Nj(j=1,2,3,……)進(jìn)行解密,具有在密文C的解密處理過(guò)程中的任一時(shí)間接收密文D的解密要求的中斷處理機(jī)構(gòu)。
而且,圖20所示的解密裝置,還具有解密模塊71,用于將密文塊數(shù)據(jù)Ci的經(jīng)過(guò)解密處理的數(shù)據(jù)作為模塊輸出塊數(shù)據(jù)Ti進(jìn)行輸出;反饋回路85、111、82、86,用于將為解密密文塊數(shù)據(jù)Ci+1的密文塊數(shù)據(jù)Ci通過(guò)反饋線(xiàn)85、111、82反饋到解密單元72;存儲(chǔ)器71,與反饋回路的反饋線(xiàn)85、111、82并行設(shè)置,當(dāng)由于接收所述密文D的解密要求,開(kāi)始密文D的某一密文塊數(shù)據(jù)的解密處理,而緊接在密文塊數(shù)據(jù)Ci之后,不繼續(xù)接著進(jìn)行所述密文塊數(shù)據(jù)Ci+1的解密處理時(shí),用于存儲(chǔ)被反饋的塊數(shù)據(jù)。
而且,圖20所示的解密裝置,還具有選擇器74,當(dāng)密文塊數(shù)據(jù)Ci+1接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)85、111、82所反饋的密文塊數(shù)據(jù)Ci并通過(guò)反饋回路提供至加密單元72,當(dāng)所述密文塊數(shù)據(jù)Ci+1不是接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密,而是接著密文D的某一密文塊數(shù)據(jù)進(jìn)行解密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)的密文塊數(shù)據(jù)Ci并通過(guò)反饋回路提供至加密單元72。
另外,在所述圖20的說(shuō)明中,雖然使用了[反饋線(xiàn)]、[反饋回路]的用詞,但不是[將本身的輸出變?yōu)楸旧淼妮斎隴的[反饋]的意思。在這里,[反饋]的意思,是當(dāng)對(duì)密文塊數(shù)據(jù)Ci進(jìn)行解密之后,為對(duì)密文塊數(shù)據(jù)Ci+1進(jìn)行解密,而再提供密文塊數(shù)據(jù)Ci的意思。
圖21是圖20解密裝置的操作順序示意圖。
當(dāng)使用加密鍵(也稱(chēng)為解密鍵)K1,對(duì)密文塊數(shù)據(jù)C1進(jìn)行解密的過(guò)程中發(fā)生中斷IT時(shí),密文塊數(shù)據(jù)C1存儲(chǔ)在存儲(chǔ)器75的暫存器76中。其后,使用加密鍵(也稱(chēng)為解密鍵)K2,對(duì)密文塊數(shù)據(jù)D1進(jìn)行解密,得到明文塊數(shù)據(jù)N1。然后,讀出存儲(chǔ)在存儲(chǔ)器75的暫存器76中的密文塊數(shù)據(jù)C1,進(jìn)行密文塊數(shù)據(jù)C2的解密,從而得到明文塊數(shù)據(jù)M2。選擇器74的操作,與圖4所述內(nèi)容相同。同時(shí),轉(zhuǎn)換器77的操作,與圖5所示內(nèi)容相同。
圖22是OFB模式的解密裝置示意圖。
圖22,是對(duì)構(gòu)成密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)和構(gòu)成密文D的密文塊數(shù)據(jù)Dj(j=1,2,3,……)進(jìn)行解密的解密裝置,其特征在于包括中斷處理機(jī)構(gòu),用于在密文C的解密處理過(guò)程中的任一時(shí)間接收密文D的解密要求;解密模塊71,用于將經(jīng)過(guò)解密處理的數(shù)據(jù)作為模塊輸出塊數(shù)據(jù)Ti進(jìn)行輸出;反饋回路85、86,用于將從解密模塊71輸出的模塊輸出塊數(shù)據(jù)Ti通過(guò)反饋線(xiàn)85反饋到解密模塊71;存儲(chǔ)器75,與反饋回路的反饋線(xiàn)85并行設(shè)置,當(dāng)由于接收所述密文D的解密要求,開(kāi)始密文D的某一密文塊數(shù)據(jù)的解密處理,而緊接在密文塊數(shù)據(jù)Ci之后,不繼續(xù)接著進(jìn)行所述密文塊數(shù)據(jù)Ci+1的解密處理時(shí),用于存儲(chǔ)被反饋的模塊輸出塊數(shù)據(jù)Ti;選擇器74,當(dāng)密文塊數(shù)據(jù)Ci+1接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)85所反饋的模塊輸出塊數(shù)據(jù)Ti并通過(guò)反饋回路提供至解密模塊71,當(dāng)所述密文塊數(shù)據(jù)Ci+1不是接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密,而是接著密文D的某一密文塊數(shù)據(jù)進(jìn)行解密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)75的模塊輸出塊數(shù)據(jù)Ti并通過(guò)反饋回路提供至解密模塊71。
圖23是圖22OFB模式加密裝置的操作說(shuō)明圖。
在圖23,圖21CBC模式的操作變?yōu)镺FB模式的操作,其他的操作與圖21的操作相同。
圖24是CFB模式的解密裝置示意圖。
而且,“異”邏輯電路78和使用鍵K的解密模塊71構(gòu)成了解密單元72。
另外,暫存器111可以設(shè)置在選擇器74的內(nèi)部。
圖24,是對(duì)構(gòu)成密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)和構(gòu)成密文D的密文塊數(shù)據(jù)Dj(j=1,2,3,……)進(jìn)行解密的解密裝置,其特征在于包括中斷處理機(jī)構(gòu),用于在密文C的解密處理過(guò)程中的任一時(shí)間接收密文D的解密要求;解密模塊71,用于將密文塊數(shù)據(jù)Ci的經(jīng)過(guò)解密處理的數(shù)據(jù)作為模塊輸出塊數(shù)據(jù)Ti進(jìn)行輸出;反饋回路85、111、82、86,用于將為解密密文塊數(shù)據(jù)Ci+1的密文塊數(shù)據(jù)Ci通過(guò)反饋線(xiàn)85、111、82反饋到解密單元72;存儲(chǔ)器75,與反饋回路的反饋線(xiàn)85、111、82并行設(shè)置,當(dāng)由于接收所述密文D的解密要求,開(kāi)始密文D的某一密文塊數(shù)據(jù)的解密處理,而緊接在密文塊數(shù)據(jù)Ci之后,不繼續(xù)接著進(jìn)行所述密文塊數(shù)據(jù)Ci+1的解密處理時(shí),用于存儲(chǔ)被反饋的密文塊數(shù)據(jù)Ci;選擇器74,當(dāng)密文塊數(shù)據(jù)Ci+1接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)85、111、82所反饋的密文塊數(shù)據(jù)Ci并通過(guò)反饋回路提供至解密模塊71,當(dāng)所述密文塊數(shù)據(jù)Ci+1不是接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密,而是接著密文D的某一密文塊數(shù)據(jù)進(jìn)行解密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)75的密文塊數(shù)據(jù)Ci并通過(guò)反饋回路提供至解密模塊71。
另外,在所述圖24的說(shuō)明中,[反饋線(xiàn)]、[反饋回路]的用詞雖然被使用,但不是[將本身的輸出變?yōu)楸旧淼妮斎隴的[反饋]的意思。在這里,[反饋]的意思,是當(dāng)對(duì)密文塊數(shù)據(jù)Ci進(jìn)行解密之后,為對(duì)密文塊數(shù)據(jù)Ci+1進(jìn)行解密,而再提供密文塊數(shù)據(jù)Ci的意思。
圖25是圖24的CFB模式加密裝置的操作說(shuō)明圖。
在圖25,圖21CBC模式的操作變?yōu)镃FB模式的操作,其他的操作與圖21的操作相同。
圖26是圖1所示的CFB模式加密裝置的改進(jìn)例示意圖。
圖26的加密裝置,增加了選擇器154和存儲(chǔ)器155。圖1的情況,表示了鍵K1在中斷IT解除時(shí)由外部提供的情況,在這里,對(duì)保存并再利用從外部一次提供的鍵K1的情況進(jìn)行說(shuō)明。
存儲(chǔ)器155,由暫存器156和轉(zhuǎn)換器157構(gòu)成。轉(zhuǎn)換器157,對(duì)是將加密鍵K輸入至?xí)捍嫫?56還是忽略進(jìn)行轉(zhuǎn)換。此轉(zhuǎn)換,例如,通過(guò)中斷IT來(lái)進(jìn)行。當(dāng)中斷IT發(fā)生時(shí),則轉(zhuǎn)換器157連接E,而當(dāng)中斷IT解除時(shí),則轉(zhuǎn)換器157連接F。暫存器156,對(duì)經(jīng)過(guò)E而來(lái)的鍵K進(jìn)行輸入并存儲(chǔ)。存儲(chǔ)在暫存器156中的鍵K輸出至選擇器154。選擇器154,選擇A、C2個(gè)輸入中的1個(gè)輸入。這些選擇,如后述那樣依據(jù)中斷IT。
圖27是圖26所示加密裝置的操作順序示意圖。
當(dāng)該加密裝置接通電源時(shí),選擇器54和選擇器154的輸入設(shè)定為A,轉(zhuǎn)換器57和轉(zhuǎn)換器157連接E。接著,如果有明文N的加密要求時(shí),則發(fā)生中斷IT,并且到明文N的加密要求解除為止,中斷IT一直維持在發(fā)生(ON)狀態(tài)。另外,明文M使用鍵K1加密,明文N使用鍵K2加密。鍵K1或鍵K2被提供給加密模塊51。
在時(shí)刻T0,鍵K1作為鍵KI被從外部提供。選擇器154,由于連接A,所以將鍵KI作為鍵K輸出給加密模塊51。而且,由于轉(zhuǎn)換器157連接E,鍵K1被存儲(chǔ)于暫存器156。于是,開(kāi)始明文塊數(shù)據(jù)M1的加密處理。在時(shí)刻T0,當(dāng)明文塊數(shù)據(jù)M1的加密開(kāi)始后,一旦從選擇器54的輸入A輸入初始值IV,則選擇器54轉(zhuǎn)換到B。接著,在明文塊數(shù)據(jù)M1使用鍵K1進(jìn)行加密過(guò)程中的時(shí)刻X,發(fā)生了明文塊數(shù)據(jù)N1要求加密的中斷IT。到時(shí)刻T1為止,密文塊數(shù)據(jù)C1被一直存儲(chǔ)在存儲(chǔ)器55。接著,由于中斷IT的發(fā)生,在時(shí)刻T1,鍵K2作為鍵KI被從外部提供給加密模塊51。選擇器154,由于連接A,所以將鍵KI作為鍵K輸出給加密模塊51。同時(shí),在時(shí)刻T1,選擇器54設(shè)定輸入為A。同時(shí),在時(shí)刻T1,轉(zhuǎn)換器57和轉(zhuǎn)換器157連接到F。所以,鍵K2不在暫存器156存儲(chǔ)。在時(shí)刻T1之后,使用鍵K2對(duì)明文塊數(shù)據(jù)N1進(jìn)行加密,并輸出密文塊數(shù)據(jù)D1。在時(shí)刻Y,明文塊數(shù)據(jù)N1的加密處理結(jié)束,中斷IT被解除。由于該中斷IT的解除,在時(shí)刻T2,選擇器54的輸入轉(zhuǎn)換到C,轉(zhuǎn)換器57連接到E。所以,鍵K1作為鍵KI從暫存器156輸出至選擇器154,從選擇器154鍵K1作為鍵K提供給加密模塊51。另外,由于選擇器54轉(zhuǎn)換到C,存儲(chǔ)在存儲(chǔ)器55的密文塊數(shù)據(jù)C1為了明文塊數(shù)據(jù)M2的加密而被輸入,通過(guò)使用鍵K1的加密模塊51對(duì)明文塊數(shù)據(jù)M2進(jìn)行加密,并輸出密文塊數(shù)據(jù)C2。在時(shí)刻T3之前,當(dāng)選擇器54的輸入轉(zhuǎn)換到B,并對(duì)明文塊數(shù)據(jù)M3進(jìn)行加密時(shí),從反饋回路的反饋線(xiàn)65所反饋的密文塊數(shù)據(jù)C2被輸入,通過(guò)使用鍵K1的加密模塊51明文塊數(shù)據(jù)M3被加密,并輸出密文塊數(shù)據(jù)C3。
另外,在時(shí)刻T3之前,選擇器154的輸入轉(zhuǎn)換到A。
對(duì)選擇器154的操作處理進(jìn)行說(shuō)明。
當(dāng)接通電源時(shí),輸入設(shè)定為A。而且,即使中斷IT的發(fā)生被確認(rèn),輸入也一直設(shè)定為A。到中斷IT解除為止,選擇器154,一直以輸入為A的狀態(tài)操作。選擇器154,當(dāng)探測(cè)到中斷IT的解除時(shí),輸入設(shè)定為C。通過(guò)將該輸入設(shè)定為C,存儲(chǔ)在存儲(chǔ)器55中的鍵K1作為鍵K被輸入給加密模塊51。當(dāng)根據(jù)該C的鍵輸入開(kāi)始加密時(shí),則選擇器154設(shè)定輸入為A。
這樣,基于中斷IT的發(fā)生,可轉(zhuǎn)換選擇器154。
接著,對(duì)轉(zhuǎn)換器157的中斷處理操作進(jìn)行說(shuō)明。
當(dāng)接通電源,而且,其后最初的明文M加密處理時(shí),轉(zhuǎn)換器157連接E。明文M的鍵K1被存儲(chǔ)于暫存器156。接著,在時(shí)刻X,中斷IT發(fā)生時(shí),在時(shí)刻T1轉(zhuǎn)換器157離開(kāi)E連接F,忽略明文N的鍵K2。接著,在時(shí)刻Y,探測(cè)到中斷IT的解除時(shí),在時(shí)刻T2,轉(zhuǎn)換器157離開(kāi)F連接E。由此,從中斷IT的發(fā)生到解除,轉(zhuǎn)換器157將一直忽略明文N的鍵K2。所以,在存儲(chǔ)器155的暫存器156中,明文M的鍵K1將一直被儲(chǔ)存。
圖28,表示針對(duì)圖20所示的解密裝置,存儲(chǔ)并再利用鍵K1情況的結(jié)構(gòu)。
圖28,針對(duì)圖20增加了選擇器174和存儲(chǔ)器175。選擇器174和存儲(chǔ)器175的操作,與圖26所示的選擇器154和存儲(chǔ)器155相同。
存儲(chǔ)器55和存儲(chǔ)器155,是在中斷IT發(fā)生時(shí)存儲(chǔ)加密裝置狀態(tài)的存儲(chǔ)器的實(shí)例。如此,通過(guò)存儲(chǔ)器55和存儲(chǔ)器155存儲(chǔ)加密處理的狀態(tài),即使在某數(shù)據(jù)的加密處理過(guò)程當(dāng)中進(jìn)行了其他數(shù)據(jù)的加密,也還可以再恢復(fù)到某數(shù)據(jù)的加密處理。即通過(guò)使用存儲(chǔ)器55所存儲(chǔ)的數(shù)據(jù)和存儲(chǔ)器155所存儲(chǔ)鍵K,可以使加密裝置恢復(fù)到與加密中斷時(shí)完全相同的狀態(tài),從而能繼續(xù)中斷了的加密處理。
這里,存儲(chǔ)器155和存儲(chǔ)器175,可以是與圖6、圖8所示的存儲(chǔ)器55相同的結(jié)構(gòu)。而且,雖未圖示,但針對(duì)圖16、圖18、圖22、圖24,可以增加如圖26、圖28所示的結(jié)構(gòu)存儲(chǔ)鍵K1。
另外,圖26的存儲(chǔ)器55和存儲(chǔ)器155,由于進(jìn)行同一操作,所以可以統(tǒng)一成1個(gè)存儲(chǔ)器。而且,圖28的存儲(chǔ)器75和存儲(chǔ)器175,也由于進(jìn)行同一操作,所以可以統(tǒng)一成1個(gè)存儲(chǔ)器。
如以上所述,本實(shí)施方式的解密裝置,用于對(duì)由1個(gè)以上塊數(shù)據(jù)Ci(i=1,2,3,……,m)所構(gòu)成的第1處理數(shù)據(jù)(密文C)和由1個(gè)以上塊數(shù)據(jù)Dj(j=1,2,3,……,n)所構(gòu)成的第2處理數(shù)據(jù)(密文D)進(jìn)行解密,其特征為具有存儲(chǔ)解密處理狀態(tài)的存儲(chǔ)器75,在第1處理數(shù)據(jù)的所有塊數(shù)據(jù)(C1~Cm)解密處理結(jié)束之前開(kāi)始第2處理數(shù)據(jù)的最初塊數(shù)據(jù)D1解密處理的同時(shí),當(dāng)?shù)?處理數(shù)據(jù)的最初塊數(shù)據(jù)D1的解密處理開(kāi)始時(shí),將第1處理數(shù)據(jù)的解密處理狀態(tài)存儲(chǔ)于所述存儲(chǔ)器,當(dāng)重新開(kāi)始第1處理數(shù)據(jù)的解密處理時(shí),將解密裝置的解密處理狀態(tài)恢復(fù)至存儲(chǔ)器75所存儲(chǔ)的第1處理數(shù)據(jù)的解密處理狀態(tài)之后,再開(kāi)始第1處理數(shù)據(jù)的解密處理。
并且,所述加密裝置,其特征還在于在第2處理數(shù)據(jù)的所有塊數(shù)據(jù)(D1~Dn)解密處理結(jié)束之前再開(kāi)始第1處理數(shù)據(jù)的解密處理的同時(shí),所述存儲(chǔ)器74,在重新開(kāi)始第1處理數(shù)據(jù)的解密處理時(shí),存儲(chǔ)第2處理數(shù)據(jù)的解密處理狀態(tài),當(dāng)重新開(kāi)始第2處理數(shù)據(jù)的解密處理時(shí),將解密裝置的解密處理狀態(tài)恢復(fù)至存儲(chǔ)器所存儲(chǔ)的第2處理數(shù)據(jù)的解密處理狀態(tài)之后,再開(kāi)始第2處理數(shù)據(jù)的解密處理。
在這里,加密處理的狀態(tài),例如,在圖1的CBC模式中,是密文塊數(shù)據(jù)Ci(以及鍵K1);在圖16的OFB模式中,是模塊輸出數(shù)據(jù)Ti(以及鍵K1);在圖18的CFB模式中,是密文塊數(shù)據(jù)Ci(以及鍵K1),同時(shí),解密處理的狀態(tài),例如,在圖20的CBC模式中,是密文塊數(shù)據(jù)Ci(以及鍵K1);在圖22的OFB模式中,是模塊輸出數(shù)據(jù)Ti(以及鍵K1);在圖24的CFB模式中,是密文塊數(shù)據(jù)Ci(以及鍵K1)。
在所述的說(shuō)明中,雖然對(duì)3個(gè)模式情況的加密裝置和解密裝置進(jìn)行了說(shuō)明,但所述的3個(gè)模式只是一例,也可以是這些模式的改進(jìn),或是,這些模式的變形。特別是,成為特征之處,是在加密、解密前面的塊數(shù)據(jù)而生成的塊數(shù)據(jù)Ci或Mi或Ti作為反饋數(shù)據(jù)被用于接著的塊數(shù)據(jù)Mi+1或Ci+1的加密、解密處理的加密、解密方法中,設(shè)置存儲(chǔ)加密、解密狀態(tài)的存儲(chǔ)器55,在其他數(shù)據(jù)的加密、解密處理之后利用塊數(shù)據(jù)Ci或Mi或Ti可以重新恢復(fù)原狀態(tài)。由此,不用特別顧及加密模式、解密模式。
另外,也可以不用中斷IT,而用定時(shí)詢(xún)問(wèn)方式或取得令牌方式等的其他機(jī)構(gòu)接收加密要求,進(jìn)行2個(gè)以上加密、解密處理的交互并行處理。
而且,雖然表示了使用加密鍵K的加密、解密處理的情況,但不使用加密鍵K的加密、解密處理也可以。
實(shí)施方式2在本實(shí)施方式中,對(duì)加密裝置進(jìn)行保密處理和數(shù)據(jù)完整性保證處理的情況進(jìn)行說(shuō)明。
所謂數(shù)據(jù)的保密處理,是指對(duì)數(shù)據(jù)進(jìn)行加密,而即使數(shù)據(jù)被偷聽(tīng)或被盜也不使意思內(nèi)容泄露。并且,所謂數(shù)據(jù)完整性保證,是指保證數(shù)據(jù)沒(méi)有被他人置換。當(dāng)傳送數(shù)據(jù)時(shí),希望在數(shù)據(jù)保密處理基礎(chǔ)上保證數(shù)據(jù)的完整性進(jìn)行傳送。數(shù)據(jù)的保密處理,通過(guò)對(duì)數(shù)據(jù)加密來(lái)進(jìn)行。數(shù)據(jù)完整性的保證處理,通過(guò)在數(shù)據(jù)最后附加認(rèn)證碼(MACMessage Authentication Code),由驗(yàn)證其認(rèn)證碼而發(fā)現(xiàn)篡改來(lái)進(jìn)行。
圖29,表示通過(guò)OFB模式的加密部100進(jìn)行保密處理,通過(guò)CBC模式的認(rèn)證碼生成部200生成認(rèn)證碼(MAC)的情況。
圖29的加密裝置,其通過(guò)加密模塊51把由1個(gè)以上的明文塊數(shù)據(jù)組成的明文加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征在于包括加密部100,具有通過(guò)加密模塊51在對(duì)明文塊數(shù)據(jù)進(jìn)行加密后,將加密模塊51輸出的模塊輸出塊數(shù)據(jù)Ti反饋至加密模塊51的第1反饋回路65,并用于輸入明文塊數(shù)據(jù),而且通過(guò)第1反饋回路65反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行加密處理,輸出密文塊數(shù)據(jù)Ci;認(rèn)證碼生成部200,具有用于反饋認(rèn)證碼演算中間結(jié)果Ti的第2反饋回路66,每當(dāng)從加密部100輸出密文塊數(shù)據(jù)Ci時(shí),用于輸入密文塊數(shù)據(jù)Ci,進(jìn)行認(rèn)證碼演算處理,并通過(guò)第2反饋回路66反饋認(rèn)證碼演算中間結(jié)果Ti,從而生成為保證密文完整性的認(rèn)證碼P。
圖30是圖29所示加密裝置的操作順序示意圖。
明文塊數(shù)據(jù)M1,首先被加密成密文塊數(shù)據(jù)C1。接著,明文塊數(shù)據(jù)M2被輸入,并加密成密文塊數(shù)據(jù)C2。在加密該明文塊數(shù)據(jù)M2的同時(shí),輸入密文塊數(shù)據(jù)C1,開(kāi)始認(rèn)證碼的演算。在時(shí)刻T1與T2之間進(jìn)行明文塊數(shù)據(jù)M2的加密和基于密文塊數(shù)據(jù)C1的認(rèn)證碼演算。并且,在時(shí)刻T2與T3之間進(jìn)行明文塊數(shù)據(jù)M3的加密和基于密文塊數(shù)據(jù)C2的認(rèn)證碼演算。在時(shí)刻T3,進(jìn)行基于密文塊數(shù)據(jù)C3的認(rèn)證碼演算,并輸出認(rèn)證碼P。
圖29的特征,是從“異”邏輯電路58輸出的密文塊數(shù)據(jù)Ci通過(guò)反饋線(xiàn)69輸入“異”邏輯電路59。基于反饋線(xiàn)69通過(guò)結(jié)合OFB模式和CBC模式,如圖30所示,由流水處理來(lái)進(jìn)行保密處理和完整性認(rèn)證處理。圖52所示的情況,是到時(shí)刻T6花費(fèi)了處理時(shí)間,而圖30所示的情況,是到時(shí)刻T4就結(jié)束處理從而實(shí)現(xiàn)了高速處理。
圖31是圖29所示加密裝置的操作流程圖。
在S51,設(shè)塊數(shù)據(jù)計(jì)數(shù)i為1。S52是加密部100的操作,加密部100,輸入明文塊數(shù)據(jù)Mi并加密明文塊數(shù)據(jù)Mi,生成密文塊數(shù)據(jù)Ci并輸出密文塊數(shù)據(jù)Ci。S53是認(rèn)證碼生成部200的操作,輸入密文塊數(shù)據(jù)Ci加密密文塊數(shù)據(jù)Ci,演算認(rèn)證碼。S54,判斷塊數(shù)據(jù)計(jì)數(shù)i是否是表示最后的塊數(shù)據(jù)n,如果不是最后的塊數(shù)據(jù),則在S55,增加塊數(shù)據(jù)計(jì)數(shù)i,再返回S52的處理。即重復(fù)加密部100和認(rèn)證碼生成部200的處理。在S54,如果是最后塊數(shù)據(jù)的處理結(jié)束了的情況,則之前在S53剛被演算的認(rèn)證碼為最終認(rèn)證碼,所以在S56,將該認(rèn)證碼附加到密文塊數(shù)據(jù)Ci的最后。如圖31所示,由于加密部100每生成密文塊數(shù)據(jù)Ci時(shí),認(rèn)證碼生成部200都輸入密文塊數(shù)據(jù)Ci并演算認(rèn)證碼,所以流水處理變?yōu)榭赡埽瑥亩鴮?shí)現(xiàn)高速處理。
圖32,合并了圖29所示的加密部100和認(rèn)證碼生成部200。即兼用加密部100和認(rèn)證碼生成部200的加密模塊51,同時(shí),兼用加密部100和認(rèn)證碼生成部200的“異”邏輯電路58和59。還兼用加密部100的反饋線(xiàn)65和認(rèn)證碼生成部200的反饋線(xiàn)66。
第1選擇器61,在保密處理開(kāi)始時(shí)選擇初始值IV。第2選擇器62,在完整性保證處理開(kāi)始時(shí)選擇初始值IV。第3選擇器63,交互選擇保密處理和完整性保證處理。第3選擇器63通過(guò)設(shè)輸入為E,可進(jìn)行保密處理。而且,第3選擇器63通過(guò)設(shè)輸入為F,可進(jìn)行完整性保證處理。
存儲(chǔ)器93,存儲(chǔ)從使用加密鍵K的加密模塊51輸出的模塊輸出數(shù)據(jù)Ti。存儲(chǔ)器93,由輸入轉(zhuǎn)換器96、輸出轉(zhuǎn)換器97、第1暫存器98和第2暫存器99構(gòu)成。輸入轉(zhuǎn)換器96和輸出轉(zhuǎn)換器97,同步于第3選擇器63的轉(zhuǎn)換,每當(dāng)?shù)?選擇器63轉(zhuǎn)換時(shí)輸入轉(zhuǎn)換器96及輸出轉(zhuǎn)換器97也轉(zhuǎn)換。
圖33是圖32所示加密裝置的操作順序示意圖。
在時(shí)刻T0和T1之間進(jìn)行明文塊數(shù)據(jù)M1的保密處理。在保密處理過(guò)程中所生成的模塊輸出數(shù)據(jù)存儲(chǔ)于第1暫存器98。在時(shí)刻T1和T2之間進(jìn)行基于密文塊數(shù)據(jù)C1的認(rèn)證碼演算。由完整性保證處理所生成的認(rèn)證碼演算中間結(jié)果存儲(chǔ)于第2暫存器99。接著,在時(shí)刻T2和T3之間,基于第1暫存器98所存儲(chǔ)的模塊輸出數(shù)據(jù)和明文塊數(shù)據(jù)M2進(jìn)行明文塊數(shù)據(jù)M2的保密處理。接著,在時(shí)刻T3和T4之間,第2暫存器99所存儲(chǔ)的認(rèn)證碼演算中間結(jié)果和密文塊數(shù)據(jù)C2被輸入,進(jìn)行認(rèn)證碼演算。通過(guò)重復(fù)這種處理,完成保密處理和完整性認(rèn)證處理,輸出密文和認(rèn)證碼P。圖33所示的情況,是到時(shí)刻T6結(jié)束處理,雖然沒(méi)有謀求時(shí)間的縮短,但如圖32所示,由于兼用了使用加密鍵K的加密模塊51、“異”邏輯電路58和反饋線(xiàn)67、68(反饋回路),所以可以縮小電路規(guī)模。
圖34是具有OFB模式解密部300和CBC模式認(rèn)證碼生成部400的解密裝置示意圖。
該認(rèn)證碼生成部400與認(rèn)證碼生成部200的結(jié)構(gòu)相同。
圖34的解密裝置,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征在于包括解密部300,具有在通過(guò)解密模塊71對(duì)密文塊數(shù)據(jù)Ci進(jìn)行解密后,反饋所生成的模塊輸出塊數(shù)據(jù)Ti的第1反饋回路65,并用于輸入密文塊數(shù)據(jù)Ci,而且通過(guò)第1反饋回路65反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行解密處理,輸出明文塊數(shù)據(jù)Mi;認(rèn)證碼生成部400,具有反饋認(rèn)證碼演算中間結(jié)果Ti的第2反饋回路66,并用于輸入與輸入到解密部300的密文塊數(shù)據(jù)Ci相同的密文塊數(shù)據(jù),進(jìn)行認(rèn)證碼演算處理輸出認(rèn)證碼演算中間結(jié)果Ti,并通過(guò)第2反饋回路66反饋認(rèn)證碼演算中間結(jié)果Ti,從而生成為確認(rèn)密文完整性的認(rèn)證碼Q。
密文塊數(shù)據(jù)Ci,在輸入至解密部300的“異”邏輯電路78的同時(shí),通過(guò)反饋線(xiàn)69輸入至認(rèn)證碼生成部400?;谶@樣的結(jié)構(gòu),解密部300和認(rèn)證碼生成部400同時(shí)并行地進(jìn)行處理,處理速度得到提高。
圖35,將圖34所示解密裝置的解密部300和認(rèn)證碼生成部400一體化。
圖35表示兼用使用加密鍵K的解密模塊71和反饋線(xiàn)87、88(反饋回路)的情況。
第1選擇器81,在解密處理開(kāi)始時(shí)選擇初始值IV。第2選擇器82,在完整性保證處理開(kāi)始時(shí)選擇初始值IV。第3選擇器83,交互選擇解密處理和完整性保證處理。第3選擇器83通過(guò)設(shè)輸入為E,可進(jìn)行解密處理。而且,第3選擇器83通過(guò)設(shè)輸入為F,可進(jìn)行完整性保證處理。
存儲(chǔ)器93,存儲(chǔ)從使用加密鍵K的加密模塊51輸出的模塊輸出數(shù)據(jù)Ti。存儲(chǔ)器93,由輸入轉(zhuǎn)換器96、輸出轉(zhuǎn)換器97、第1暫存器98和第2暫存器99構(gòu)成。輸入轉(zhuǎn)換器96和輸出轉(zhuǎn)換器97,同步于第3選擇器83的轉(zhuǎn)換,每當(dāng)?shù)?選擇器83轉(zhuǎn)換時(shí)輸入轉(zhuǎn)換器96及輸出轉(zhuǎn)換器97也轉(zhuǎn)換。
圖36是圖35所示解密裝置的操作順序示意圖。
在時(shí)刻T0和T1之間進(jìn)行密文塊數(shù)據(jù)C1的解密處理和將密文塊數(shù)據(jù)C1存儲(chǔ)于暫存器111。在解密處理過(guò)程中所生成的模塊輸出數(shù)據(jù)存儲(chǔ)于第1暫存器98。在時(shí)刻T1和T2之間進(jìn)行基于暫存器111所存儲(chǔ)的密文塊數(shù)據(jù)C1的認(rèn)證碼演算。由完整性保證處理所生成的認(rèn)證碼演算中間結(jié)果存儲(chǔ)于第2暫存器99。接著,在時(shí)刻T2和T3之間,密文塊數(shù)據(jù)C2存儲(chǔ)于暫存器111,基于第1暫存器98所存儲(chǔ)的模塊輸出數(shù)據(jù)和密文塊數(shù)據(jù)C2進(jìn)行密文塊數(shù)據(jù)C2的解密處理。接著,在時(shí)刻T3和T4之間,第2暫存器99所存儲(chǔ)的認(rèn)證碼演算中間結(jié)果和暫存器111所存儲(chǔ)的密文塊數(shù)據(jù)C2被輸入,進(jìn)行認(rèn)證碼演算。通過(guò)重復(fù)這種處理,輸出明文和認(rèn)證碼Q。該認(rèn)證碼Q,與認(rèn)證碼P相比較,如果認(rèn)證碼Q與認(rèn)證碼P一致,則數(shù)據(jù)的完整性被認(rèn)證。至此,解密處理和完整性認(rèn)證處理結(jié)束。
圖37將圖290FB模式的加密部100作為了CBC模式的加密部100。
圖37的加密裝置,將由1個(gè)以上的明文塊數(shù)據(jù)組成的明文加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征在于包括加密部100,具有通過(guò)加密單元52在對(duì)明文塊數(shù)據(jù)進(jìn)行加密后,反饋加密模塊51輸出的密文塊數(shù)據(jù)Ci的第1反饋回路65,并用于輸入明文塊數(shù)據(jù)Mi,而且通過(guò)第1反饋回路65反饋密文塊數(shù)據(jù)Ci進(jìn)行加密處理,輸出密文塊數(shù)據(jù)Ci;認(rèn)證碼生成部400,具有用于反饋認(rèn)證碼演算中間結(jié)果Ti的第2反饋回路66,每當(dāng)從加密部100輸出密文塊數(shù)據(jù)Ci時(shí),用于輸入密文塊數(shù)據(jù)Ci,進(jìn)行認(rèn)證碼演算處理,并通過(guò)第2反饋回路66反饋認(rèn)證碼演算中間結(jié)果Ti,從而生成為保證密文完整性的認(rèn)證碼P。
圖38將圖34OFB模式的解密部300作為了CBC模式的解密部300。
圖38的解密裝置,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征在于包括解密部300,具有反饋密文塊數(shù)據(jù)Ci的第1反饋回路85、82,并用于輸入密文塊數(shù)據(jù)Ci,而且通過(guò)第1反饋回路85、82反饋密文塊數(shù)據(jù)Ci進(jìn)行解密處理,輸出明文塊數(shù)據(jù)Mi;認(rèn)證碼生成部400,具有反饋認(rèn)證碼演算中間結(jié)果Ti的第2反饋回路66,并用于輸入與輸入到解密部300的密文塊數(shù)據(jù)Ci相同的密文塊數(shù)據(jù)Ci,進(jìn)行認(rèn)證碼演算處理輸出認(rèn)證碼演算中間結(jié)果Ti,并通過(guò)第2反饋回路反饋認(rèn)證碼演算中間結(jié)果Ti,從而生成為確認(rèn)密文完整性的認(rèn)證碼Q。
如以上所述,圖29、圖37所表示的加密裝置,其特征在于具有輸入數(shù)據(jù)進(jìn)行加密,并輸出密數(shù)據(jù)的加密部,和輸入加密部所輸出的密數(shù)據(jù)并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成部,認(rèn)證碼生成部在基于加密部的數(shù)據(jù)加密結(jié)束之前開(kāi)始生成認(rèn)證碼。
同時(shí),圖34、圖38所表示的解密裝置,其特征在于具有輸入數(shù)據(jù)進(jìn)行解密,并輸出解密數(shù)據(jù)的解密部,和輸入解密部所輸入的數(shù)據(jù)并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成部,認(rèn)證碼生成部在基于解密部的數(shù)據(jù)解密結(jié)束之前開(kāi)始生成認(rèn)證碼。
另外,雖未圖示,也可以使用OFB模式的加密部100或解密部300。
另外,雖未圖示,也可以使用OFB模式或CFB模式的認(rèn)證碼生成部200。
圖39是加密模塊51或解密模塊71的結(jié)構(gòu)圖。
加密模塊51具有鍵調(diào)度部511和隨機(jī)數(shù)據(jù)發(fā)生部512。鍵調(diào)度部511輸入1個(gè)鍵K進(jìn)而生成n個(gè)擴(kuò)展鍵ExtK1~ExtKn。隨機(jī)數(shù)據(jù)發(fā)生部512通過(guò)函數(shù)F和XOR電路發(fā)生隨機(jī)數(shù)。函數(shù)F,輸入擴(kuò)展鍵并進(jìn)行非線(xiàn)形數(shù)據(jù)變換。
在所述加密裝置的加密模塊51中,可以使用例如
(1)DES(Data Encryption Standard),或(2)MISTY,國(guó)際公開(kāi)號(hào)W097/9705(美國(guó)專(zhuān)利申請(qǐng)?zhí)?8/83640)所公開(kāi)的塊密碼算法,或(3)KASUMI,以所述塊密碼算法MISTY為基礎(chǔ)的64位塊密碼,作為下時(shí)代攜帶電話(huà)用國(guó)際標(biāo)準(zhǔn)密碼(IMT2000)而被決定采用的塊密碼算法(詳細(xì)內(nèi)容參照http//www.3gpp.org/About-3GPP/3gpp.htm),或(4)Camellia,日本專(zhuān)利申請(qǐng)?zhí)?000-64614(申請(qǐng)日2000年3月9日)所記載的塊密碼算法等的塊密碼算法。而且,在所述解密裝置的解密模塊71中,也可以使用DES、MISTY、KASUMI或Camellia等的塊密碼算法。
圖40是所述加密裝置或解密裝置的裝飾形式示意圖。
圖40表示在FPGA或IC或LSI中所實(shí)現(xiàn)的所述加密裝置及解密裝置。即所述加密裝置及解密裝置可以由硬件來(lái)實(shí)現(xiàn)。而且,雖未圖示,也可以通過(guò)印制電路板來(lái)實(shí)現(xiàn)。
圖41表示由軟件實(shí)現(xiàn)所述加密裝置及解密裝置的情況。
所述加密裝置,可由加密程序47來(lái)實(shí)現(xiàn)。加密程序47存儲(chǔ)在ROM(Read Only Memory)42(記錄媒體的一例)。加密程序47也可以記錄在RAM(Random Access Memory)或軟盤(pán)或固定磁盤(pán)等的其他記錄媒體上。而且,加密程序47也可以由計(jì)算機(jī)服務(wù)器上下載。加密程序47作為子程序運(yùn)行。加密程序47,被從RAM45所存儲(chǔ)的應(yīng)用程序46通過(guò)子程序調(diào)用函數(shù)而調(diào)出執(zhí)行?;蚴羌用艹绦?7,也可以通過(guò)中斷控制部43所接收的中斷的發(fā)生來(lái)啟動(dòng)。存儲(chǔ)器55可以是RAM45的一部分。應(yīng)用程序46、加密程序47,都是由CPU41來(lái)執(zhí)行的程序。
圖42表示應(yīng)用程序46調(diào)用加密程序47的機(jī)構(gòu)。
應(yīng)用程序46,以鍵K、初始值IV、明文M和密文C為參數(shù)調(diào)用加密程序47。加密程序47,輸入鍵K、初始值IV和明文M,返回密文C。當(dāng)加密程序47與解密程序合一時(shí),以鍵K、初始值IV、密文C和明文M為參數(shù)調(diào)用加密程序47。
而且,雖未圖示,加密程序47也可以通過(guò)數(shù)字信號(hào)處理器、和由該數(shù)字信號(hào)處理器所讀取并執(zhí)行的程序來(lái)實(shí)現(xiàn)。即可以通過(guò)硬件和軟件的組合來(lái)實(shí)現(xiàn)加密程序47。
圖40、圖41、圖42,雖然主要說(shuō)明了加密裝置的情況,但解密裝置也可以用同樣的方式來(lái)實(shí)現(xiàn)。
圖40及圖41所示的加密裝置及解密裝置可以安裝進(jìn)電子設(shè)備。例如,可以安裝進(jìn)個(gè)人電腦、傳真機(jī)、攜帶電話(huà)、攝象機(jī)、數(shù)字照相機(jī)、電視攝象機(jī)等的所有電子設(shè)備。特別是本實(shí)施方式特征的發(fā)揮在加密、解密多個(gè)信道的數(shù)據(jù)時(shí)很有效?;蚴窃诙鄠€(gè)用戶(hù)的數(shù)據(jù)隨機(jī)到達(dá)并進(jìn)行解密時(shí),或是針對(duì)多個(gè)用戶(hù)的數(shù)據(jù)隨機(jī)發(fā)生,并對(duì)每個(gè)數(shù)據(jù)進(jìn)行實(shí)時(shí)加密時(shí)有效。即與加密、解密數(shù)據(jù)的數(shù)量相比加密、解密裝置的數(shù)量少時(shí),所述實(shí)施方式的加密裝置、解密裝置非常有效。例如,對(duì)于必須支持大量客戶(hù)機(jī)的服務(wù)器、必須配送大量攜帶電話(huà)數(shù)據(jù)的基站或線(xiàn)路控制器等,所述加密裝置和解密裝置都非常有效。
另外,可以不是加密處理彼此之間以及解密處理彼此之間的并行處理,而是加密處理和解密處理的并行處理。
另外,雖然表示了OFB模式的加密部(或解密部)和CBC模式的認(rèn)證碼生成部的組合情況,但OFB模式、CBC模式、CFB模式、這些模式的改進(jìn)模式、以及其他模式的任何模式的組合也都可以。
另外,雖然表示了認(rèn)證碼生成部使用加密鍵K進(jìn)行加密的情況,但認(rèn)證碼生成部也可以進(jìn)行數(shù)據(jù)的攪亂、演算以及其他的數(shù)據(jù)處理。
如以上所述,根據(jù)本發(fā)明理想的實(shí)施方式,在明文M的加密過(guò)程中可以開(kāi)始明文N的加密。并且,在密文C的解密過(guò)程中可以開(kāi)始其他密文D的解密。
而且,根據(jù)本發(fā)明理想的實(shí)施方式,通過(guò)附加優(yōu)先權(quán)可以根據(jù)優(yōu)先權(quán)對(duì)加密、解密的數(shù)據(jù)進(jìn)行高速處理。
而且,根據(jù)本發(fā)明理想的實(shí)施方式,通過(guò)保密處理和完整性保證處理的并行處理可以實(shí)現(xiàn)高速處理。并且,保密處理和完整性保證處理可以組合至1個(gè)硬件來(lái)實(shí)現(xiàn)。
權(quán)利要求
1.一種用于對(duì)第1處理數(shù)據(jù)和第2處理數(shù)據(jù)進(jìn)行加密處理的加密裝置,其特征在于包括存儲(chǔ)加密處理狀態(tài)的存儲(chǔ)器,所述加密裝置在第1處理數(shù)據(jù)的加密處理結(jié)束之前開(kāi)始第2處理數(shù)據(jù)的加密處理,當(dāng)開(kāi)始第2處理數(shù)據(jù)的加密處理時(shí)將第1處理數(shù)據(jù)的加密處理狀態(tài)存儲(chǔ)于所述存儲(chǔ)器中,當(dāng)再開(kāi)始第1處理數(shù)據(jù)的加密處理時(shí),首先將加密裝置的加密處理狀態(tài)恢復(fù)到存儲(chǔ)器所存儲(chǔ)的第1處理數(shù)據(jù)的加密處理狀態(tài),然后再開(kāi)始第1處理數(shù)據(jù)的加密處理。
2.權(quán)利要求1記載的加密裝置,其特征還在于所述加密裝置在第2處理數(shù)據(jù)的加密處理結(jié)束之前再開(kāi)始第1處理數(shù)據(jù)的加密處理,所述存儲(chǔ)器,當(dāng)所述加密裝置再開(kāi)始第1處理數(shù)據(jù)的加密處理時(shí)存儲(chǔ)第2處理數(shù)據(jù)的加密處理狀態(tài),當(dāng)再開(kāi)始第2處理數(shù)據(jù)的加密處理時(shí),首先將加密裝置的加密處理狀態(tài)恢復(fù)到存儲(chǔ)器所存儲(chǔ)的第2處理數(shù)據(jù)的加密處理狀態(tài),然后再開(kāi)始第2處理數(shù)據(jù)的加密處理。
3.權(quán)利要求1記載的加密裝置,其特征還在于所述第1處理數(shù)據(jù)是第1明文,所述第2處理數(shù)據(jù)是第2明文。
4.權(quán)利要求1記載的加密裝置,其特征還在于通過(guò)中斷開(kāi)始第2處理數(shù)據(jù)的加密處理。
5.一種加密裝置,用于對(duì)構(gòu)成明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)和構(gòu)成明文N的明文塊數(shù)據(jù)Nj(j=1,2,3,……)進(jìn)行加密,其特征在于包括機(jī)構(gòu),用于在明文M的加密處理過(guò)程中接收在明文M的加密處理結(jié)束之前的明文N的加密要求;加密單元,用于對(duì)明文塊數(shù)據(jù)Mi進(jìn)行加密處理并輸出密文塊數(shù)據(jù)Ci;反饋回路,用于將加密單元所輸出的密文塊數(shù)據(jù)Ci通過(guò)反饋線(xiàn)反饋至加密單元;存儲(chǔ)器,與反饋回路的反饋線(xiàn)并行設(shè)置,當(dāng)由于接收所述明文N的加密要求,開(kāi)始明文N的某一明文塊數(shù)據(jù)的加密處理,而緊接在明文塊數(shù)據(jù)Mi之后,不繼續(xù)接著進(jìn)行所述明文塊數(shù)據(jù)Mi+1的加密處理時(shí),用于存儲(chǔ)被反饋的密文塊數(shù)據(jù)Ci;選擇器,當(dāng)明文塊數(shù)據(jù)Mi+1繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)所反饋的密文塊數(shù)據(jù)Ci并提供至反饋回路,當(dāng)所述明文塊數(shù)據(jù)Mi+1不是繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密,而是接著明文N的某一明文塊數(shù)據(jù)進(jìn)行加密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)的密文塊數(shù)據(jù)Ci并提供至反饋回路。
6.權(quán)利要求5記載的加密裝置,其特征還在于所述存儲(chǔ)器包括對(duì)應(yīng)多件明文的多個(gè)暫存器;根據(jù)加密處理的明文而對(duì)暫存器進(jìn)行轉(zhuǎn)換的轉(zhuǎn)換器。
7.一種加密方法,其特征是包括以下步驟利用加密模塊所輸出的密文塊數(shù)據(jù)Ci(i=1,2,3,……)對(duì)第1明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)進(jìn)行加密;在所述明文塊數(shù)據(jù)Mi的加密過(guò)程中或是明文塊數(shù)據(jù)Mi的加密之后,將用于第1明文M的明文塊數(shù)據(jù)Mi+1加密的密文塊數(shù)據(jù)Ci存儲(chǔ)于存儲(chǔ)器;在將用于所述明文塊數(shù)據(jù)Mi+1加密的密文塊數(shù)據(jù)Ci存儲(chǔ)于存儲(chǔ)器之后,對(duì)第2明文N的至少1個(gè)明文塊數(shù)據(jù)進(jìn)行加密;在對(duì)所述第2明文N的至少1個(gè)明文塊數(shù)據(jù)進(jìn)行加密之后,輸入存儲(chǔ)器所存儲(chǔ)的用于明文塊數(shù)據(jù)Mi+1加密的密文塊數(shù)據(jù)Ci,并利用加密模塊對(duì)第1明文M的明文塊數(shù)據(jù)Mi+1進(jìn)行加密。
8.一種加密裝置,用于將由1個(gè)以上明文塊數(shù)據(jù)所組成的明文通過(guò)加密單元加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征在于包括加密部,具有在對(duì)明文塊數(shù)據(jù)通過(guò)加密單元加密后,將加密單元輸出的密文塊數(shù)據(jù)Ci反饋至加密單元的第1反饋回路,并用于輸入明文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋密文塊數(shù)據(jù)Ci進(jìn)行加密處理,輸出密文塊數(shù)據(jù);認(rèn)證碼生成部,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋回路,每當(dāng)從加密部輸出密文塊數(shù)據(jù)時(shí),用于輸入密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,并通過(guò)第2反饋回路反饋認(rèn)證碼演算中間結(jié)果,從而生成為保證密文完整性的認(rèn)證碼。
9.權(quán)利要求8記載的加密裝置,其特征還在于所述加密部和認(rèn)證碼生成部,兼用單一加密模塊和單一反饋回路并交互進(jìn)行加密處理和認(rèn)證碼生成處理,同時(shí)所述單一反饋回路,包括用于分別記錄并輸出加密處理和認(rèn)證碼生成處理結(jié)果的存儲(chǔ)器;用于為交互進(jìn)行加密處理和認(rèn)證碼生成處理,而從存儲(chǔ)器交互選擇加密處理和認(rèn)證碼生成處理的結(jié)果,并輸出至加密模塊的選擇器。
10.一種加密方法,用于將由1個(gè)以上明文塊數(shù)據(jù)所組成的明文通過(guò)加密單元加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征在于包括以下步驟加密步驟,具有在對(duì)明文塊數(shù)據(jù)通過(guò)加密單元進(jìn)行加密后,將加密單元輸出的密文塊數(shù)據(jù)Ci反饋至加密單元的第1反饋步驟,并輸入明文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋密文塊數(shù)據(jù)Ci進(jìn)行加密處理,輸出密文塊數(shù)據(jù);認(rèn)證碼生成步驟,具有反饋認(rèn)證碼演算中間結(jié)果的第2反饋步驟,每當(dāng)從加密步驟輸出密文塊數(shù)據(jù)時(shí),輸入密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,并通過(guò)第2反饋步驟反饋認(rèn)證碼演算中間結(jié)果,從而生成為保證密文完整性的認(rèn)證碼。
11.一種對(duì)第1處理數(shù)據(jù)和第2處理數(shù)據(jù)進(jìn)行解密的解密裝置,其特征在于包括存儲(chǔ)解密處理狀態(tài)的存儲(chǔ)器,所述解密裝置在第1處理數(shù)據(jù)的解密處理結(jié)束之前開(kāi)始第2處理數(shù)據(jù)的解密處理,在開(kāi)始第2處理數(shù)據(jù)的解密處理時(shí)將第1處理數(shù)據(jù)的解密處理狀態(tài)存儲(chǔ)于所述存儲(chǔ)器中,當(dāng)再開(kāi)始第1處理數(shù)據(jù)的解密處理時(shí),首先將解密裝置的解密處理狀態(tài)恢復(fù)到存儲(chǔ)器所存儲(chǔ)的第1處理數(shù)據(jù)的解密處理狀態(tài)后再開(kāi)始第1處理數(shù)據(jù)的解密處理。
12.權(quán)利要求11記載的解密裝置,其特征還在于所述解密裝置在第2處理數(shù)據(jù)的解密處理結(jié)束之前再開(kāi)始第1處理數(shù)據(jù)的解密處理,當(dāng)再開(kāi)始第1處理數(shù)據(jù)的解密處理時(shí)所述存儲(chǔ)器存儲(chǔ)第2處理數(shù)據(jù)的解密處理狀態(tài),當(dāng)再開(kāi)始第2處理數(shù)據(jù)的解密處理時(shí),首先將解密裝置的解密處理狀態(tài)恢復(fù)到存儲(chǔ)器所存儲(chǔ)的第2處理數(shù)據(jù)的解密處理狀態(tài)后再開(kāi)始第2處理數(shù)據(jù)的解密處理。
13.權(quán)利要求11記載的解密裝置,其特征還在于所述第1處理數(shù)據(jù)是第1密文,所述第2處理數(shù)據(jù)是第2密文。
14.權(quán)利要求11記載的解密裝置,其特征還在于通過(guò)中斷開(kāi)始第2處理數(shù)據(jù)的最初塊數(shù)據(jù)的解密處理。
15.一種解密裝置,用于對(duì)構(gòu)成密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)和構(gòu)成密文D的密文塊數(shù)據(jù)Dj(j=1,2,3,……)進(jìn)行解密,其特征在于包括機(jī)構(gòu),用于在密文C的解密處理過(guò)程中的任一時(shí)間接收密文D的解密要求;解密單元,用于對(duì)密文塊數(shù)據(jù)Ci進(jìn)行解密處理并輸出明文塊數(shù)據(jù)Mi;反饋回路,用于為解密密文塊數(shù)據(jù)Ci+1而將密文塊數(shù)據(jù)Ci通過(guò)反饋線(xiàn)反饋至解密單元;存儲(chǔ)器,與反饋回路的反饋線(xiàn)并行設(shè)置,當(dāng)由于接收所述密文D的解密要求,開(kāi)始密文D的某一密文塊數(shù)據(jù)的解密處理,而緊接在密文塊數(shù)據(jù)Ci之后,不繼續(xù)接著進(jìn)行所述密文塊數(shù)據(jù)Ci+1的解密處理時(shí),用于存儲(chǔ)被反饋的密文塊數(shù)據(jù)Ci;選擇器,當(dāng)密文塊數(shù)據(jù)Ci+1接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)所反饋的密文塊數(shù)據(jù)Ci并提供至反饋回路,當(dāng)所述密文塊數(shù)據(jù)Ci+1不是接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密,而是接著密文D的某一密文塊數(shù)據(jù)進(jìn)行解密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)的密文塊數(shù)據(jù)Ci并提供至反饋回路。
16.權(quán)利要求15記載的解密裝置,其特征還在于所述存儲(chǔ)器,包括對(duì)應(yīng)多件密文的多個(gè)暫存器;根據(jù)解密處理的密文而對(duì)暫存器進(jìn)行轉(zhuǎn)換的轉(zhuǎn)換器。
17.一種解密方法,其特征是包括以下步驟利用解密模塊對(duì)第1密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)進(jìn)行解密;在所述密文塊數(shù)據(jù)Ci的解密過(guò)程中或是密文塊數(shù)據(jù)Ci的解密之后,將第1密文C的密文塊數(shù)據(jù)Ci+1解密用的密文塊數(shù)據(jù)Ci存儲(chǔ)于存儲(chǔ)器;在將所述密文塊數(shù)據(jù)Ci+1解密用的密文塊數(shù)據(jù)Ci存儲(chǔ)于存儲(chǔ)器之后,對(duì)第2密文D的至少1個(gè)密文塊數(shù)據(jù)進(jìn)行解密;在對(duì)所述第2密文D的至少1個(gè)密文塊數(shù)據(jù)進(jìn)行解密之后,輸入存儲(chǔ)器所存儲(chǔ)的用于密文塊數(shù)據(jù)Ci+1解密的密文塊數(shù)據(jù)Ci,并利用解密模塊對(duì)第1密文C的密文塊數(shù)據(jù)Ci+1進(jìn)行解密。
18.一種解密裝置,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征在于包括解密部,具有通過(guò)解密模塊對(duì)數(shù)據(jù)進(jìn)行解密后,將所生成的模塊輸出塊數(shù)據(jù)Ti反饋至解密模塊的第1反饋回路,并用于輸入密文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行解密處理,輸出明文塊數(shù)據(jù);認(rèn)證碼生成部,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋回路,并用于輸入與輸入到解密部的密文塊數(shù)據(jù)相同的密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理輸出認(rèn)證碼演算中間結(jié)果,并通過(guò)第2反饋回路反饋認(rèn)證碼演算中間結(jié)果,從而生成為確認(rèn)密文完整性的認(rèn)證碼。
19.權(quán)利要求18記載的解密裝置,其特征還在于所述解密部和認(rèn)證碼生成部,兼用單一解密模塊和單一反饋回路并交互進(jìn)行解密處理和認(rèn)證碼生成處理,同時(shí)所述單一反饋回路,包括用于分別記錄并輸出解密處理和認(rèn)證碼生成處理結(jié)果的存儲(chǔ)器;用于為交互進(jìn)行解密處理和認(rèn)證碼生成處理,而從存儲(chǔ)器交互選擇解密處理和認(rèn)證碼生成處理的結(jié)果,并輸出至解密模塊的選擇器。
20.一種解密方法,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征是包括以下步驟解密步驟,具有通過(guò)解密模塊對(duì)數(shù)據(jù)進(jìn)行解密后,將所生成的模塊輸出塊數(shù)據(jù)Ti反饋至解密模塊的第1反饋步驟,并輸入密文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行解密處理,輸出明文塊數(shù)據(jù);認(rèn)證碼生成步驟,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋步驟,并輸入與輸入到解密步驟的密文塊數(shù)據(jù)相同的密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理輸出認(rèn)證碼演算中間結(jié)果,并通過(guò)第2反饋步驟反饋認(rèn)證碼演算中間結(jié)果,從而生成為確認(rèn)密文完整性的認(rèn)證碼。
21.一種加密裝置,用于對(duì)構(gòu)成明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)和構(gòu)成明文N的明文塊數(shù)據(jù)Nj(j=1,2,3,……)進(jìn)行加密,其特征在于包括機(jī)構(gòu),用于在明文M的加密處理過(guò)程中接收在明文M的加密處理結(jié)束之前的明文N的加密要求;加密模塊,用于將加密處理了的數(shù)據(jù)作為模塊輸出塊數(shù)據(jù)Ti進(jìn)行輸出;反饋回路,用于將加密模塊所輸出的模塊輸出塊數(shù)據(jù)Ti通過(guò)反饋線(xiàn)反饋到加密模塊;存儲(chǔ)器,與反饋回路的反饋線(xiàn)并行設(shè)置,當(dāng)由于接收所述明文N的加密要求,開(kāi)始明文N的某一明文塊數(shù)據(jù)的加密處理,而緊接在明文塊數(shù)據(jù)Mi之后,不繼續(xù)接著進(jìn)行所述明文塊數(shù)據(jù)Mi+1的加密處理時(shí),用于存儲(chǔ)被反饋的模塊輸出塊數(shù)據(jù)Ti;選擇器,當(dāng)明文塊數(shù)據(jù)Mi+1繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)所反饋的模塊輸出塊數(shù)據(jù)Ti并提供至反饋回路,當(dāng)所述明文塊數(shù)據(jù)Mi+1不是繼續(xù)接著明文塊數(shù)據(jù)Mi進(jìn)行加密,而是接著明文N的某一明文塊數(shù)據(jù)進(jìn)行加密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)的模塊輸出塊數(shù)據(jù)Ti并提供至反饋回路。
22.權(quán)利要求21記載的加密裝置,其特征還在于所述存儲(chǔ)器,包括對(duì)應(yīng)多件明文的多個(gè)暫存器;根據(jù)加密處理的明文而對(duì)暫存器進(jìn)行轉(zhuǎn)換的轉(zhuǎn)換器。
23.一種加密方法,其特征是包括以下步驟利用加密模塊所輸出的模塊輸出塊數(shù)據(jù)Ti(i=1,2,3,……)對(duì)第1明文M的明文塊數(shù)據(jù)Mi(i=1,2,3,……)進(jìn)行加密;在所述明文塊數(shù)據(jù)Mi的加密過(guò)程中或是明文塊數(shù)據(jù)Mi的加密之后,將用于第1明文M的明文塊數(shù)據(jù)Mi+1加密的模塊輸出塊數(shù)據(jù)Ti存儲(chǔ)于存儲(chǔ)器;在將用于所述明文塊數(shù)據(jù)Mi+1加密的模塊輸出塊數(shù)據(jù)Ti存儲(chǔ)于存儲(chǔ)器之后,對(duì)第2明文N的至少1個(gè)明文塊數(shù)據(jù)進(jìn)行加密;在對(duì)所述第2明文N的至少1個(gè)明文塊數(shù)據(jù)進(jìn)行加密之后,輸入存儲(chǔ)器所存儲(chǔ)的用于明文塊數(shù)據(jù)Mi+1加密的模塊輸出塊數(shù)據(jù)Ti,并利用加密模塊對(duì)第1明文M的明文塊數(shù)據(jù)Mi+1進(jìn)行加密。
24.一種加密裝置,用于將由1個(gè)以上明文塊數(shù)據(jù)所組成的明文通過(guò)加密模塊加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征在于包括加密部,具有在通過(guò)加密模塊對(duì)明文塊數(shù)據(jù)進(jìn)行加密后,將加密模塊輸出的模塊輸出塊數(shù)據(jù)Ti反饋至加密模塊的第1反饋回路,并用于輸入明文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行加密處理,輸出密文塊數(shù)據(jù);認(rèn)證碼生成部,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋回路,每當(dāng)從加密部輸出密文塊數(shù)據(jù)時(shí),用于輸入密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,并通過(guò)第2反饋回路反饋認(rèn)證碼演算中間結(jié)果,從而生成為保證密文完整性的認(rèn)證碼。
25.權(quán)利要求24記載的加密裝置,其特征還在于所述加密部和認(rèn)證碼生成部,兼用單一加密模塊和單一反饋回路并交互進(jìn)行加密處理和認(rèn)證碼生成處理,同時(shí)所述單一反饋回路,包括用于分別記錄并輸出加密處理和認(rèn)證碼生成處理結(jié)果的存儲(chǔ)器;用于為交互進(jìn)行加密處理和認(rèn)證碼生成處理,而從存儲(chǔ)器交互選擇加密處理和認(rèn)證碼生成處理的結(jié)果,并輸出至加密模塊的選擇器。
26.一種加密方法,用于將由1個(gè)以上明文塊數(shù)據(jù)所組成的明文通過(guò)加密模塊加密成密文,并針對(duì)密文生成為保證密文完整性的認(rèn)證碼,其特征是包括以下步驟加密步驟,具有在通過(guò)加密模塊對(duì)明文塊數(shù)據(jù)進(jìn)行加密后,將加密模塊所輸出的模塊輸出塊數(shù)據(jù)Ti反饋至加密模塊的第1反饋步驟,并輸入明文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋模塊輸出塊數(shù)據(jù)Ti進(jìn)行加密處理,輸出密文塊數(shù)據(jù);認(rèn)證碼生成步驟,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋步驟,每當(dāng)從加密步驟輸出密文塊數(shù)據(jù)時(shí),用于輸入密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,并通過(guò)第2反饋步驟反饋認(rèn)證碼演算中間結(jié)果,從而生成為保證密文完整性的認(rèn)證碼。
27.一種解密裝置,用于對(duì)構(gòu)成密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)和構(gòu)成密文D的密文塊數(shù)據(jù)Dj(j=1,2,3,……)進(jìn)行解密,其特征在于包括機(jī)構(gòu),用于在密文C的解密處理過(guò)程中的任一時(shí)間接收密文D的解密要求;解密模塊,用于將經(jīng)過(guò)解密處理的數(shù)據(jù)作為模塊輸出塊數(shù)據(jù)Ti進(jìn)行輸出;反饋回路,用于將從解密模塊輸出的模塊輸出塊數(shù)據(jù)Ti通過(guò)反饋線(xiàn)反饋到解密模塊;存儲(chǔ)器,與反饋回路的反饋線(xiàn)并行設(shè)置,當(dāng)由于接收所述密文D的解密要求,開(kāi)始密文D的某一密文塊數(shù)據(jù)的解密處理,而緊接在密文塊數(shù)據(jù)Ci之后,不繼續(xù)接著進(jìn)行所述密文塊數(shù)據(jù)Ci+1的解密處理時(shí),用于存儲(chǔ)被反饋的模塊輸出塊數(shù)據(jù)Ti;選擇器,當(dāng)密文塊數(shù)據(jù)Ci+1接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密時(shí),用于選擇由所述反饋回路的反饋線(xiàn)所反饋的模塊輸出塊數(shù)據(jù)Ti并提供至反饋回路,當(dāng)所述密文塊數(shù)據(jù)Ci+1不是接著密文塊數(shù)據(jù)Ci繼續(xù)進(jìn)行解密,而是接著密文D的某一密文塊數(shù)據(jù)進(jìn)行解密時(shí),用于選擇所述存儲(chǔ)器所存儲(chǔ)的模塊輸出塊數(shù)據(jù)Ti并提供至反饋回路。
28.權(quán)利要求27記載的解密裝置,其特征還在于所述存儲(chǔ)器,包括對(duì)應(yīng)多件密文的多個(gè)暫存器;根據(jù)解密處理的密文而對(duì)暫存器進(jìn)行轉(zhuǎn)換的轉(zhuǎn)換器。
29.一種解密方法,其特征是包括以下步驟利用從解密模塊輸出的模塊輸出塊數(shù)據(jù)Ti(i=1,2,3,……)對(duì)第1密文C的密文塊數(shù)據(jù)Ci(i=1,2,3,……)進(jìn)行解密;在所述密文塊數(shù)據(jù)Ci的解密過(guò)程中或是密文塊數(shù)據(jù)Ci的解密之后,將第1密文C的密文塊數(shù)據(jù)Ci+1解密用的模塊輸出塊數(shù)據(jù)Ti存儲(chǔ)于存儲(chǔ)器;在將所述密文塊數(shù)據(jù)Ci+1解密用的模塊輸出塊數(shù)據(jù)Ti存儲(chǔ)于存儲(chǔ)器之后,對(duì)第2密文D的至少1個(gè)密文塊數(shù)據(jù)進(jìn)行解密;在對(duì)所述第2密文D的至少1個(gè)密文塊數(shù)據(jù)進(jìn)行解密之后,輸入存儲(chǔ)器所存儲(chǔ)的用于密文塊數(shù)據(jù)Ci+1解密的模塊輸出塊數(shù)據(jù)Ti,并利用解密模塊對(duì)第1密文C的密文塊數(shù)據(jù)Ci+1進(jìn)行解密。
30.一種解密裝置,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文通過(guò)解密單元解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征在于包括解密部,具有將密文塊數(shù)據(jù)Ci反饋至解密單元的第1反饋回路,并用于輸入密文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋密文塊數(shù)據(jù)Ci進(jìn)行解密處理,輸出明文塊數(shù)據(jù);認(rèn)證碼生成部,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋回路,并用于輸入與輸入到解密部的密文塊數(shù)據(jù)相同的密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理輸出認(rèn)證碼演算中間結(jié)果,并通過(guò)第2反饋回路反饋認(rèn)證碼演算中間結(jié)果,從而生成為確認(rèn)密文完整性的認(rèn)證碼。
31.權(quán)利要求30記載的解密裝置,其特征還在于所述解密部和認(rèn)證碼生成部,兼用單一解密模塊和單一反饋回路并交互進(jìn)行解密處理和認(rèn)證碼生成處理,同時(shí)所述單一反饋回路,包括用于分別記錄并輸出解密處理和認(rèn)證碼生成處理結(jié)果的存儲(chǔ)器;用于為交互進(jìn)行解密處理和認(rèn)證碼生成處理,而從存儲(chǔ)器交互選擇解密處理和認(rèn)證碼生成處理的結(jié)果,并輸出至解密模塊的選擇器。
32.一種解密方法,用于將由1個(gè)以上密文塊數(shù)據(jù)所組成的密文通過(guò)解密單元解密成明文,并針對(duì)密文生成為確認(rèn)密文完整性的認(rèn)證碼,其特征是包括以下步驟解密步驟,具有將密文塊數(shù)據(jù)Ci反饋至解密單元的第1反饋步驟,并輸入密文塊數(shù)據(jù),而且通過(guò)第1反饋回路反饋密文塊數(shù)據(jù)Ci進(jìn)行解密處理,輸出明文塊數(shù)據(jù);認(rèn)證碼生成步驟,具有用于反饋認(rèn)證碼演算中間結(jié)果的第2反饋步驟,并輸入與輸入到解密步驟的密文塊數(shù)據(jù)相同的密文塊數(shù)據(jù),進(jìn)行數(shù)據(jù)處理輸出認(rèn)證碼演算中間結(jié)果,并通過(guò)第2反饋步驟反饋認(rèn)證碼演算中間結(jié)果,從而生成為確認(rèn)密文完整性的認(rèn)證碼。
33.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求7記載的加密方法各步驟的程序。
34.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求10記載的加密方法各步驟的程序。
35.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求17記載的解密方法各步驟的程序。
36.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求20記載的解密方法各步驟的程序。
37.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求23記載的加密方法各步驟的程序。
38.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求26記載的加密方法各步驟的程序。
39.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求29記載的解密方法各步驟的程序。
40.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求32記載的解密方法各步驟的程序。
41.權(quán)利要求1記載的加密裝置,其特征還在于所述加密處理,利用塊加密算法。
42.權(quán)利要求11記載的解密裝置,其特征還在于所述解密處理,利用塊加密算法。
43.權(quán)利要求1記載的加密裝置,其特征還在于所述存儲(chǔ)器,作為加密處理的狀態(tài),存儲(chǔ)第1處理數(shù)據(jù)的加密中間結(jié)果,和為加密第1處理數(shù)據(jù)所使用的加密鍵。
44.權(quán)利要求11記載的解密裝置,其特征還在于所述存儲(chǔ)器,作為解密處理的狀態(tài),存儲(chǔ)第2處理數(shù)據(jù)的解密處理中間結(jié)果,和為解密第2處理數(shù)據(jù)所使用的解密鍵。
45.一種加密裝置,其特征在于包括輸入數(shù)據(jù)進(jìn)行加密,并輸出密碼數(shù)據(jù)的加密部;輸入加密部所輸出的密碼數(shù)據(jù),并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成部,認(rèn)證碼生成部,在加密部完成數(shù)據(jù)加密之前,既開(kāi)始認(rèn)證碼的生成。
46.一種解密裝置,其特征在于包括輸入數(shù)據(jù)進(jìn)行解密,并輸出解密數(shù)據(jù)的解密部;輸入解密部所輸入的數(shù)據(jù),并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成部,認(rèn)證碼生成部,在解密部完成數(shù)據(jù)解密之前,既開(kāi)始認(rèn)證碼的生成。
47.一種加密方法,其特征在于包括輸入數(shù)據(jù)進(jìn)行加密,并輸出密碼數(shù)據(jù)的加密步驟;輸入加密步驟所輸出的密碼數(shù)據(jù),并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成步驟,認(rèn)證碼生成步驟,在加密步驟完成數(shù)據(jù)加密之前,既開(kāi)始認(rèn)證碼的生成。
48.一種解密方法,其特征在于包括輸入數(shù)據(jù)進(jìn)行解密,并輸出解密數(shù)據(jù)的解密步驟;輸入解密步驟所輸入的數(shù)據(jù),并生成為保證密文完整性的認(rèn)證碼的認(rèn)證碼生成步驟,認(rèn)證碼生成步驟,在解密步驟完成數(shù)據(jù)解密之前,既開(kāi)始認(rèn)證碼的生成。
49.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求47記載的加密方法各步驟的程序。
50.一種計(jì)算機(jī)可讀取的記錄媒體,其特征在于記錄為在計(jì)算機(jī)上實(shí)現(xiàn)所述權(quán)利要求48記載的解密方法各步驟的程序。
全文摘要
為在加密過(guò)程中進(jìn)行其他數(shù)據(jù)的加密,配置存儲(chǔ)器55,其針對(duì)用于從使用加密鍵K的加密模塊51反饋至選擇器54的反饋線(xiàn)65被并行設(shè)置。當(dāng)在明文塊數(shù)據(jù)M
文檔編號(hào)H04L9/10GK1343411SQ00805031
公開(kāi)日2002年4月3日 申請(qǐng)日期2000年12月22日 優(yōu)先權(quán)日2000年1月14日
發(fā)明者反町亨, 時(shí)田俊雄 申請(qǐng)人:三菱電機(jī)株式會(huì)社