欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

更新加密算法的代碼的方法和模塊,生成種子的方法和模塊,及用于這些方法的加密處理...的制作方法

文檔序號(hào):7738415閱讀:729來(lái)源:國(guó)知局
專利名稱:更新加密算法的代碼的方法和模塊,生成種子的方法和模塊,及用于這些方法的加密處理 ...的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種可通過(guò)電子計(jì)算機(jī)執(zhí)行的密碼的更新模組與更新方法,本發(fā)明還涉及一種用于執(zhí)行上述方法的安全處理器與信息記錄媒體。
背景技術(shù)
通常,密碼算法用于通過(guò)密鑰K對(duì)數(shù)據(jù)D的片段進(jìn)行加密,藉以獲得密碼擴(kuò),或通過(guò)密鑰K對(duì)密碼D*進(jìn)行解密藉以獲得數(shù)據(jù)D的片段。當(dāng)在電子計(jì)算器上執(zhí)行密碼算法時(shí), 這種密碼算法要與可執(zhí)行或可翻譯的代碼相應(yīng)。此處,已預(yù)先對(duì)將要執(zhí)行的代碼進(jìn)行編譯, 藉以使計(jì)算機(jī)可直接執(zhí)行這些代碼。而當(dāng)代碼被翻譯為指令并執(zhí)行時(shí),可對(duì)此代碼進(jìn)行翻譯。其中,可通過(guò)如"虛擬機(jī)",例如通過(guò)太陽(yáng)微系統(tǒng)公司所生產(chǎn)的JAVA語(yǔ)言將代碼翻譯為可執(zhí)行的指令。當(dāng)代碼可執(zhí)行或可翻譯時(shí),在最低層面代碼由連續(xù)的位構(gòu)成。而在這種連續(xù)的位中,可識(shí)別出至少N個(gè)獨(dú)立于數(shù)據(jù)D的片段的數(shù)字常量、密鑰K及密碼D*。而每一數(shù)字常量都對(duì)應(yīng)于可執(zhí)行或可翻譯代碼的指令的操作數(shù)或助記符。此處,操作數(shù)時(shí)一種典型的數(shù)值恒定的指令參數(shù)。而在最低層面,指令是通過(guò)二進(jìn)制寫成的并在可執(zhí)行或可翻譯代碼中采用數(shù)字常量的形式。因此,指令系對(duì)應(yīng)于底層助記符。例如,當(dāng)需要通過(guò)加密算法提升系統(tǒng)的安全水平時(shí),要用到對(duì)加密算法的代碼進(jìn)行更新的方法。而這種算法既可以是一種特有的算法,也可以源于公知算法,如數(shù)據(jù)加密標(biāo)準(zhǔn)(Data Encryption Standard, DES)或增強(qiáng)型加密標(biāo)準(zhǔn)(Advanced Encryption Standard, AES)。在這種實(shí)例中,系統(tǒng)的安全性取決于密鑰的機(jī)密性、算法及執(zhí)行參數(shù)。為了更加清楚地理解密碼算法及相關(guān)計(jì)數(shù)的應(yīng)用,可參考John Wiley and Sons 公司的Bruce Shneier于I"6年出版的《Applied Cryptography》(《應(yīng)用密碼學(xué)》)(第二版)ο同時(shí)在保守密碼算法的秘訣上需要多加防范。例如,密碼算法可被記錄并單獨(dú)執(zhí)行于密碼破譯法難以破解的安全處理器上。這種安全處理器可對(duì)其它不太安全的設(shè)備執(zhí)行加密作業(yè)。盡管加強(qiáng)了防范,但有時(shí)這種密碼算法也會(huì)被人發(fā)現(xiàn)并為公眾所知曉。由于加密數(shù)據(jù)的秘密僅依靠于密鑰所供給的加密防護(hù),所以上述情況會(huì)對(duì)應(yīng)用密碼算法的安全系統(tǒng)構(gòu)成嚴(yán)重的威脅。在這種狀況中,需要通過(guò)用新的密碼算法進(jìn)行更換,進(jìn)而對(duì)密碼算法進(jìn)行更新。而這種被稱為"更新算法",同時(shí),被更換的前一種算法為稱為"先前算法"。同時(shí),分別通過(guò)這種更新算法與先前算法所進(jìn)行的加密及解密作業(yè)是不兼容的。因此,先前算法不能用于對(duì)通過(guò)更新算法進(jìn)行解密的密碼加以解密。同時(shí),當(dāng)兩種算法應(yīng)用于相同的未加密片段時(shí),先前算法與更新算法無(wú)法獲得相同的密碼。用于更新密碼算法的代碼的方法常被用于獲取更新的加密算法代碼。
公知的有幾種更新方法。例如在第一種方法中,更新密碼算法的代碼可通過(guò)信息傳輸網(wǎng)絡(luò)被傳送至安全處理器。而這一過(guò)程可應(yīng)用網(wǎng)絡(luò)的大量帶寬。此外,對(duì)網(wǎng)絡(luò)上所傳輸?shù)拇a進(jìn)行監(jiān)視與密碼分析還可發(fā)現(xiàn)更新密碼算法及其所包含的系統(tǒng)安全性。而第二種方法系包含有在相同的安全處理器中記錄更新密碼算法的若干代碼,藉以作為"變量"。而后,在必要時(shí)使所用的密碼算法的代碼在原處失效,并執(zhí)行預(yù)先記錄的一種變量中的代碼。其中,密碼算法的變量的啟動(dòng)對(duì)應(yīng)于接收到啟動(dòng)消息。因此,由于啟動(dòng)消息中未包含有更新加密算法代碼,所以第二種方法不需要使用大量帶寬來(lái)觸發(fā)啟動(dòng)消息。進(jìn)而,通過(guò)安全處理器對(duì)所接收的啟動(dòng)消息進(jìn)行監(jiān)視與密碼分析使得安全處理器自身也無(wú)法發(fā)現(xiàn)更新加密算法。但是,由于需要對(duì)安全處理器中的密碼算法的不同變量進(jìn)行初始化記錄,因此第二種方法卻需要更多的內(nèi)存資源。同時(shí),若在此安全處理器中所執(zhí)行的全部代碼為人所知, 則也可以獲知密碼算法的每一變量。

發(fā)明內(nèi)容
本發(fā)明提供了一種密碼算法的代碼的更新方法,藉以克服公知技術(shù)中的缺陷。本發(fā)明的一方面提供了一種密碼算法的代碼的更新方法,接收隨機(jī)抽取的種子, 種子的字節(jié)數(shù)量至少小于對(duì)密碼算法的N個(gè)數(shù)字進(jìn)行編碼所需的字節(jié)數(shù)量的四倍;對(duì)種子進(jìn)行確定性擴(kuò)展,藉以獲取數(shù)字序列,數(shù)字序列的位于數(shù)量至少等于對(duì)該密碼算法的N個(gè)數(shù)字進(jìn)行編碼所需的字節(jié)數(shù)量;由所獲得的數(shù)字序列產(chǎn)生N個(gè)新數(shù)字內(nèi)容;以及通過(guò)N個(gè)新數(shù)字內(nèi)容替換密碼算法的代碼的N個(gè)數(shù)字內(nèi)容,藉以獲得更新密碼算法的代碼。在這種確定性擴(kuò)展步驟中,可從種子產(chǎn)生數(shù)字序列,其中,當(dāng)用相同的種子對(duì)擴(kuò)展進(jìn)行初始化時(shí),所獲取的數(shù)字序列也是相同的。在上述方法中,種子的代碼大小遠(yuǎn)小于更新密碼算法的代碼的大小。實(shí)際上,更新算法的大小至少大于N個(gè)內(nèi)容的大小。因此,這種方法對(duì)于帶寬的需求小于通過(guò)信息傳送網(wǎng)絡(luò)對(duì)算法的所有代碼進(jìn)行傳送的方法所需要的帶寬。此外,由于種子是隨機(jī)抽取的,所以對(duì)所接收種子本身進(jìn)行分析來(lái)檢索更新密碼算法是不夠的。為此,需要知道種子的擴(kuò)展過(guò)程中所應(yīng)用的算法。進(jìn)而,可不必通過(guò)信息傳輸網(wǎng)絡(luò)對(duì)算法進(jìn)行傳送。同時(shí),也不必使用調(diào)用密碼算法的變化幅度的初始儲(chǔ)存。因此本發(fā)明所揭露的方法在執(zhí)行此密碼算法的處理器上占用較少的內(nèi)存資源。不同于啟動(dòng)密碼算法的預(yù)先記錄變化的方法,在本發(fā)明實(shí)施例中,通過(guò)安全處理器所執(zhí)行的代碼不足以在其自身上確定更新后的密碼算法代碼。為此,也不必知曉已接收到的種子。最終,N個(gè)內(nèi)容的產(chǎn)生與替換的頻率遠(yuǎn)遠(yuǎn)小于執(zhí)行密碼算法的頻率。因此,難以發(fā)現(xiàn)用于對(duì)種子進(jìn)行擴(kuò)展并產(chǎn)生N個(gè)新數(shù)字內(nèi)容的算法。例如,難以根據(jù)在進(jìn)行作業(yè)時(shí)通過(guò)安全處理器所產(chǎn)生的訊號(hào)所進(jìn)行的能耗曲線分析、電磁輻射曲線或其它技術(shù)試圖進(jìn)行密碼分析。本發(fā)明實(shí)施例的更新方法可包含有下列一種或多種特性當(dāng)通過(guò)新的數(shù)學(xué)運(yùn)算符提供與作業(yè)數(shù)或數(shù)學(xué)運(yùn)算符相對(duì)應(yīng)的每一數(shù)字內(nèi)容時(shí),無(wú)須對(duì)密碼運(yùn)算符的代碼指令的執(zhí)行順序進(jìn)行調(diào)整;若檢測(cè)到所接收信息的第一部分中存在密碼代碼,則可通過(guò)此信息中的第二預(yù)定部分或連續(xù)接收到的信息建立種子;如果沒(méi)發(fā)現(xiàn)此信息的第一部分中存在密碼代碼,則可用第一與第二部分中所包含的數(shù)據(jù)片段終止密碼算法的更新作業(yè);如果未發(fā)現(xiàn)此信息的第一部分中存在密碼代碼,則可用第一與第二部分中所包含的數(shù)據(jù)片段改變信息中所包含的數(shù)據(jù)的整體性;其中該信息為授權(quán)控制信息(Entitlement Control Messages, ECM)或授權(quán)管理信息(Entitlement Management Messages, EMM);其中響應(yīng)獨(dú)立于該種子的接收的觸發(fā)事件,開(kāi)始通過(guò)N個(gè)新數(shù)字內(nèi)容更換密碼算法的N個(gè)數(shù)字內(nèi)容;其中種子的位于數(shù)量至少小于用于對(duì)N個(gè)數(shù)字內(nèi)容進(jìn)行編碼所需的字節(jié)數(shù)量的十倍;其中通過(guò)用種子進(jìn)行初始化的假隨機(jī)產(chǎn)生器執(zhí)行確定性擴(kuò)展;其中N必須大于2并小于10。因此本發(fā)明實(shí)施例的更新方法還具有下列優(yōu)點(diǎn)可對(duì)作業(yè)數(shù)和/或數(shù)學(xué)運(yùn)算符進(jìn)行替換,而無(wú)須對(duì)密碼算法代碼的指令的執(zhí)行順序進(jìn)行調(diào)整,因此簡(jiǎn)化了更新方法;用密碼代碼表示出信息第二部分,藉以使種子的傳送更加隱匿;在信息的密碼算法中隱藏秘密代碼與種子,藉以在信息的其它字段中傳送數(shù)據(jù),因此即使在種子或密碼包含有密碼冗余時(shí), 也無(wú)須對(duì)接收器的作業(yè)進(jìn)行調(diào)節(jié);響應(yīng)于與種子的接收過(guò)程相獨(dú)立的觸發(fā)事件啟動(dòng)對(duì)N個(gè)內(nèi)容的替換,進(jìn)而無(wú)須對(duì)所接收的包含有種子的信息進(jìn)行識(shí)別;所使用的種子的字節(jié)數(shù)量小于對(duì)N個(gè)數(shù)字內(nèi)容進(jìn)行編碼的字節(jié)數(shù)量,藉以接收網(wǎng)絡(luò)的帶寬。本發(fā)明的一方面提供了一種用于更新密碼算法的代碼的模塊,包含子模塊,用于接收隨機(jī)抽取的種子,種子的字節(jié)數(shù)量至少小于對(duì)密碼算法的N個(gè)數(shù)字內(nèi)容進(jìn)行編碼所需的字節(jié)數(shù)量;決定產(chǎn)生器,通過(guò)種子進(jìn)行初始化,藉以獲取數(shù)字序列,數(shù)字序列的字節(jié)數(shù)量至少等于對(duì)密碼算法的N個(gè)數(shù)字進(jìn)行編碼所需的字節(jié)數(shù)量;以及密碼算法代碼生成器,用于由所獲取的數(shù)字序列產(chǎn)生N個(gè)新數(shù)字序列;并通過(guò)N個(gè)新數(shù)字序列代替密碼算法的N個(gè)數(shù)字序列,藉以獲得更新密碼算法。本發(fā)明的另一方面在于提供一種安全處理器,藉以執(zhí)行或解釋密碼算法的代碼。 而這種安全處理器包含上述更新模塊。本發(fā)明的又一方面在于提供一種通過(guò)上述更新方法產(chǎn)生所使用的種子的方法,包含有下列步驟a)隨機(jī)抽取種子,該種子的字節(jié)數(shù)量至少小于需要進(jìn)行更新的該碼算法內(nèi) N個(gè)數(shù)字內(nèi)容編碼所需的字節(jié)數(shù)量的四倍;b)當(dāng)所接收的種子為步驟a)中隨機(jī)抽取的一個(gè)種子時(shí),通過(guò)上述密碼算法的代碼更新方法產(chǎn)生更新加密算法代碼或更新解密算法代碼; c)對(duì)與至少一個(gè)密碼學(xué)方法相關(guān)的更新算法的代碼的穩(wěn)定性進(jìn)行檢查;d)若加密算法的代碼不具備與密碼學(xué)方法相關(guān)的穩(wěn)定性,則返回步驟a);以及e)否則,將隨機(jī)抽取的種子傳送的接收器,藉以執(zhí)行密碼算法的代碼的更新方法。其中,可對(duì)與更新密碼算法相對(duì)應(yīng)的加密算法的穩(wěn)定性進(jìn)行檢查,藉以通過(guò)方法僅使用種子,藉以獲得穩(wěn)定的密碼算法。本發(fā)明的又一目的在于提供一種種子產(chǎn)生模塊,這種種子產(chǎn)生模塊,包含產(chǎn)生器,用于機(jī)抽取種子,種子的字節(jié)數(shù)量至少小于需要進(jìn)行更新的密碼算法內(nèi)N個(gè)數(shù)字內(nèi)容編碼所需的字節(jié)數(shù)量的四倍;子模塊,用于在接收到由產(chǎn)生器所抽取的種子時(shí),上述密碼算法的代碼更新方法產(chǎn)生更新加密算法代碼或更新解密算法代碼;檢測(cè)器,用于檢測(cè)與至少一個(gè)密碼學(xué)方法相關(guān)的更新算法的代碼的穩(wěn)定性,檢測(cè)器用于若加密算法的代碼不具備與密碼學(xué)方法相關(guān)的穩(wěn)定性,則阻止對(duì)隨機(jī)產(chǎn)生的該種子進(jìn)行傳輸;否則將隨機(jī)抽取的該種子傳送的接收器,藉以執(zhí)行密碼算法的代碼的更新方法。
最后,本發(fā)明的又一目的在于提供一種信息記錄媒體,用于在通過(guò)一電子計(jì)算器執(zhí)行該信息時(shí),執(zhí)行上述方法。


圖1為用于在傳送器與接收器之間傳送加擾多媒體內(nèi)容的系統(tǒng)的示意圖;圖2為圖1所示系統(tǒng)的傳送器與接收器中所用轉(zhuǎn)換表的示意圖;圖3為圖1所示系統(tǒng)的傳送器內(nèi)存的內(nèi)容;圖4與圖5分別為圖1所示系統(tǒng)內(nèi)傳送器與接收器所使用表格的示意圖;圖6為圖1所示系統(tǒng)內(nèi)接收器的內(nèi)存的內(nèi)容;圖7為用于對(duì)加擾多媒體內(nèi)容進(jìn)行傳送之方法的流程圖,此流程圖示出了用于更新密碼算法階段以及用于產(chǎn)生更新代碼種子的階段;圖8為從決定產(chǎn)生器獲得數(shù)字序列的示意圖;圖9為與授權(quán)控制信息(Entitlement Control Message, ECM)相對(duì)應(yīng)之信息框的示意圖;以及圖10為圖1所示系統(tǒng)內(nèi)傳送器與接收器之間透過(guò)隱匿訊道傳送數(shù)據(jù)方法的流程圖。
具體實(shí)施例方式在下面的說(shuō)明中,不再對(duì)本技術(shù)領(lǐng)域中具有通常知識(shí)者所共知的特性及功能進(jìn)行詳述。此外,所應(yīng)用知技術(shù)為適于加擾多媒體內(nèi)容的訪問(wèn)系統(tǒng)的技術(shù),對(duì)于這項(xiàng)技術(shù)可更多信息,可參考1995年12月21日在比利時(shí)布魯賽爾出版的歐洲廣播聯(lián)評(píng)論第266號(hào)《條件式接收系統(tǒng)的功能模塊》。圖1示出了用于在傳輸器4與大量接收器的間傳輸多媒體內(nèi)容中系統(tǒng)2。其中,這些接收器可通過(guò)網(wǎng)絡(luò)6與傳輸器4相連。例如,網(wǎng)絡(luò)6可以式通過(guò)無(wú)線連接設(shè)備與接收器相連的衛(wèi)星網(wǎng)絡(luò)。為了簡(jiǎn)化圖式,圖1中僅示出了接收器8??梢约僭O(shè),其它接收器與此接收器8是相同的。同時(shí),傳輸器4,包含密碼模塊10,用于執(zhí)行密碼算法,如加密算法F,藉以對(duì)控制字符CW進(jìn)行加密;信息產(chǎn)生器12,用于產(chǎn)生授權(quán)控制信息(Entitlement Control Message, ECM)/授權(quán)管理信息(Entitlement Management Message, EMM);模塊 14,產(chǎn)生用于更新算法F—1的種子,藉以對(duì)控制字符CW的密碼CW*進(jìn)行解密。其中,密碼模塊10還可執(zhí)行算法,藉以通過(guò)控制字符對(duì)多媒體內(nèi)容進(jìn)行加密,進(jìn)而獲取加擾多媒體內(nèi)容。同時(shí),密碼模塊10與信息產(chǎn)生器12連接于多工器15。而此多工器15用于對(duì)通過(guò)密碼模塊10所產(chǎn)生的加擾多媒體內(nèi)容與通過(guò)信息產(chǎn)生器12所產(chǎn)生的授權(quán)控制信息與授權(quán)管理信息進(jìn)行多任務(wù)處理,藉以獲取多任務(wù)多媒體內(nèi)容。進(jìn)而,可對(duì)通過(guò)網(wǎng)絡(luò)6向接收器廣播多任務(wù)多媒體內(nèi)容。此處,密碼模塊10、模塊14與信息產(chǎn)生器12可通過(guò)信息傳輸總線與內(nèi)存16相連。其中,此模塊14包含產(chǎn)生器20,用于隨機(jī)地獲得種子;子模塊22,用于創(chuàng)建與更新算法F—1相對(duì)應(yīng)的加密算法F’的執(zhí)行代碼;以及檢驗(yàn)器M,用于增強(qiáng)通過(guò)子模塊22所創(chuàng)建的加密算法F’。此處,若所創(chuàng)建的密碼D*可通過(guò)解密算法進(jìn)行解密,則加密算法與解密算法相對(duì)應(yīng)。在使用同步密碼法的狀況中,加密算法系為解密算法的反運(yùn)算。其中,子模塊22包含決定產(chǎn)生器沈,用于產(chǎn)生一系列數(shù)字,這些數(shù)字可通過(guò)由產(chǎn)生器20所產(chǎn)生的種子進(jìn)行初始化;以及生成器觀,用于生成與更新算法Γ1相對(duì)應(yīng)的加密算法F,。例如,此決定產(chǎn)生器沈可為虛擬隨機(jī)產(chǎn)生器,即公知的虛擬隨機(jī)數(shù)字產(chǎn)生器 (Pseudo-Random Number Generator,PRNG)。因此,在這種狀況中,“隨機(jī)〃產(chǎn)生數(shù)字也被稱為虛擬隨機(jī)生產(chǎn)數(shù)字。其中,模塊14由可執(zhí)行記錄于信息記錄媒體上的指令的電子計(jì)算器構(gòu)成。為此, 內(nèi)存16包含有上述指令以及用于執(zhí)行圖7所示方法的數(shù)據(jù)。接收器8包含有多任務(wù)多媒體內(nèi)容的譯碼器34,同時(shí),此譯碼器34連接于安全處理器36。其中,此譯碼器34系包含解多工器38,用于多多任務(wù)多媒體內(nèi)容進(jìn)行解多任務(wù)處理;以及加擾器40,用于通過(guò)安全處理器36自身給定的控制字符CW對(duì)多媒體內(nèi)容進(jìn)行解擾處理。其中,譯碼器34連接于顯示器42,如電視屏幕,藉以顯示未加密的多媒體內(nèi)容。此處,“未加密"系指顯示于顯示器42上可直接被人理解的多媒體內(nèi)容。在具體狀況中,安全處理器36是可拆卸的。因此,此安全處理器36可與譯碼器34 進(jìn)行連接或斷開(kāi)連接。例如,此安全處理器36可以是一塊芯片卡。其中,此安全處理器36可包含密碼模塊50,藉以執(zhí)行用于對(duì)密碼CW*進(jìn)行解密的更新算法Γ1 ;以及更新模塊52,藉以對(duì)通過(guò)密碼模塊50執(zhí)行指解密算法進(jìn)行更新。此更新模塊52具有與決定產(chǎn)生器沈相同的產(chǎn)生器M ;生成器56,用于創(chuàng)建更新后的算法;以及接收模塊57,用于接收種子。同時(shí),此密碼模塊50、產(chǎn)生器M及生成器56連接于內(nèi)存58。其中,安全處理器36由可執(zhí)行記錄于信息記錄媒體上的指令的電子計(jì)算器構(gòu)成。 為此,內(nèi)存58包含有上述指令以及用于執(zhí)行圖7所示方法的數(shù)據(jù)。同時(shí),傳輸器4可通過(guò)加密算法F在授權(quán)控制信息中獲取傳輸至接收器8的控制字符的密碼CW*。并且,安全處理器36可通過(guò)更新算法Γ1對(duì)密碼CW*進(jìn)行解密,藉以獲取而后通過(guò)加擾器40所應(yīng)用的解密后的控制字符CW。此處,加密算法與解密算法系為秘密的算法。此處,在對(duì)系統(tǒng)2進(jìn)行詳述的前,提供了秘密的加密算法與解密算法的實(shí)例。此處,同步密碼法系用于執(zhí)行加密算法F與更新算法F—1。例如,可通過(guò)高級(jí)加密標(biāo)準(zhǔn)-1 (Advanced Encryption Standard-128, AES-128)建立這些算法。在高級(jí)加密標(biāo)準(zhǔn)-1 中,所輸入的數(shù)據(jù)D的片段按1 位進(jìn)行編碼,同時(shí)密鑰也按1 位進(jìn)行編碼。由于這種高級(jí)加密標(biāo)準(zhǔn)為人所共知,所以本文不再對(duì)這種密碼法進(jìn)行詳述。此處,僅簡(jiǎn)單地進(jìn)行回憶,高級(jí)加密標(biāo)準(zhǔn)-1 密碼法包含有十個(gè)回合Ti,而索引可對(duì)回的數(shù)量進(jìn)行指示。同時(shí),回合Ti具體包含有下列步驟替換作業(yè),其中通過(guò)從預(yù)記錄替換表中的另一位,替換每一位;向右轉(zhuǎn)動(dòng)若干個(gè)步長(zhǎng);通過(guò)異或運(yùn)算使位的線性變化與預(yù)定的多項(xiàng)式相結(jié)合;以及結(jié)合將要進(jìn)行加密的數(shù)據(jù)片段的位與通過(guò)異或運(yùn)算所獲得的密鑰。其中,第一回合與第二回合的作業(yè)可稍微不同于上述過(guò)程。同時(shí),在回合Ti結(jié)束后所獲得的中間密碼被稱為D^而在整個(gè)加密算法的全部過(guò)程結(jié)束后所獲得的最終密碼被稱為D*。此處,通過(guò)在回合Ti結(jié)束后將函數(shù)Fi應(yīng)用于為中間密碼D^可對(duì)高級(jí)加密標(biāo)準(zhǔn)-1 密碼算法進(jìn)行調(diào)節(jié)。而后,下一個(gè)回合Tw以為代替的中間密碼A的輸入,進(jìn)而 D^l =Tw OFi(Ki)。換言的,在進(jìn)行調(diào)節(jié)的后,加密算法F如下D* = F (D) = F10 ο T10 ο ... ο F2 ο T2 ο F1 ο T1 (D)其中,D表示采用未加密形式的數(shù)據(jù)片段,Ti對(duì)應(yīng)于在高級(jí)加密標(biāo)準(zhǔn)-1 密碼算法第i回合中所執(zhí)行的運(yùn)算組合,F(xiàn)i為施加于在回合Ti中所獲得的中間密碼的秘密函數(shù),而符號(hào)ο表示"函數(shù)合成"運(yùn)算。同時(shí),上述關(guān)系中所表示的點(diǎn)與破折號(hào)表示未表現(xiàn)出全部公式,藉以簡(jiǎn)化其寫法。同樣,更新算法F—1可表示為D = Γ1 (D*) = Τ;1 ο Fr1 ο T2"1 ο... ο T1;1 ο F1;1 (D*)其中,“-1"系表示相應(yīng)函數(shù)的逆運(yùn)算。其中,每一函數(shù)Fi通過(guò)組合八個(gè)可逆初等函數(shù)fn至fi8而形成。因此,函數(shù)可寫成Fi (D*i) = fi8 ο fi7 ο fi6 ο fi5 ο fi4 ο fi3 ο fi2 ο fn (D*i)其中,每一函數(shù)fij系由下列八個(gè)函數(shù)Vk所組成的組群中選取,即VO (χ, ρ) = χ XOR ρVl (X,ρ) = x+pV2 (χ, ρ) = χ-ρV3(x, ρ) = χΧ (2Χρ+1)V4 (χ, ρ) = rot_left (χ, ρ mod 8)V5 (χ, ρ) = rot_right(x, ρ mod 8)V6 (χ, ρ) = NOT (χ XOR ρ)V7 (χ, ρ) = χ其中,χ與ρ系為每一函數(shù)Vk的可變參數(shù),同時(shí)χ與ρ也都是函數(shù)Vk的操作數(shù)。同時(shí),函數(shù)mod 8表示模為8的同余函數(shù)。函數(shù)rot_left表示通過(guò)模為8的運(yùn)算 P的結(jié)果作為步長(zhǎng)使數(shù)據(jù)χ的片段的位傳輸移動(dòng)。而函數(shù)rot_right除了用于向右移動(dòng)的外與函數(shù)rot_left —樣。而函數(shù)M)R與NOT為公知的布爾函數(shù)。同時(shí),在函數(shù)Fi的定義中,幾個(gè)函數(shù)fij可以使相等的。此處,可通過(guò)執(zhí)行內(nèi)存16的地址Adk中所記錄的指令,來(lái)記錄并執(zhí)行函數(shù)Vk中的可執(zhí)行代碼。其中,這些函數(shù)Vk (X,ρ)的可執(zhí)行代碼在傳送器4的任何使用的前被預(yù)先記錄。下面,參數(shù)表示函數(shù)&參數(shù)ρ的值。注意,此函數(shù)fij如下^j(X) = Vk (x, PiJ)
其中,指數(shù)k與j包含于1和8的間。也就是說(shuō),一旦得知用于定位函數(shù)Vk與參數(shù)Pij的數(shù)值的地址Adk,便可全部定義出函數(shù)fu。同時(shí),用于每一函數(shù)的參數(shù)的數(shù)值及地址Adk在加密算法F的代碼中為數(shù)字常量。而這些數(shù)字常量獨(dú)立于將要進(jìn)行加密的數(shù)據(jù)D的片段以及密鑰K。因此,加密算法 F的代碼包含有用于全部的函數(shù)以及每一回合Ti進(jìn)行定義的十八個(gè)數(shù)字常量。此處,可在若干個(gè)字節(jié),如兩個(gè)字節(jié)上對(duì)地址Adk進(jìn)行編碼。在這一部分中,每一參數(shù)Pij的數(shù)值可編碼于一個(gè)字節(jié)上。這意味著可在三個(gè)字節(jié)上對(duì)函數(shù)fij進(jìn)行定義。但是,為了限制定義此函數(shù)fij所需要位的數(shù)量,可使用表格60(如圖2所示)。此表系包含有第一列,此第一列中包含了函數(shù)Vk的地址Adk的識(shí)別符。例如,在圖2中,可調(diào)用識(shí)別符的0、1、2、3、4,其中,根據(jù)可執(zhí)行代碼,可對(duì)應(yīng)于地址Ad1、Ad2、Ad3、Ad4、按二進(jìn)制模式寫入這些數(shù)值。同時(shí),可在內(nèi)存16中預(yù)先記錄表格60。此處,雖然應(yīng)用了表格60,但是僅可在11可位上記錄函數(shù)的定義,用三個(gè)位記錄識(shí)別符Idv的數(shù)值,并用八個(gè)位記錄參數(shù)Pu的數(shù)值。因此,為了對(duì)函數(shù)Fi進(jìn)行定義,最少需要88個(gè)位,這是因?yàn)槊恳?Fi為八個(gè)函數(shù)的合成結(jié)果。最后,為了對(duì)加密算法F中所用的一組函數(shù)Fi進(jìn)行定義,最少需要880個(gè)位。因此,加密算法F中所用的每一的函數(shù)的定義被記錄于間接表62中。圖4示出了間接表62的一個(gè)實(shí)例。此間接表62為每一個(gè)函數(shù)包含了 識(shí)別符,系用于記錄函數(shù)fij的標(biāo)記;片段的地址Adk,其中定位了函數(shù)、的定義中所用的函數(shù)Vk的可執(zhí)行代碼; 以及參數(shù)Pij的數(shù)值。例如,在圖4中,可通過(guò)地址Ad3及參數(shù)P11定義函數(shù)fn。其中,函數(shù)fn如下fn(x) = V3 (x, P11)為了簡(jiǎn)化圖4,已通過(guò)點(diǎn)與破折號(hào)替代了被省略的函數(shù)的定義。其中,函數(shù)都是可逆的。因此,更新算法Γ1中所用的函數(shù)Ff1 (Dl)可表示為Fi"1 (D' *i) = ^r1 ο f: ο... ο V1O與對(duì)加密算法所進(jìn)行的描述相似,可在安全處理器36的內(nèi)存58中所記錄的間接表64內(nèi)定義每一函數(shù)fj1。圖5所示了間接表64的一個(gè)實(shí)例。在應(yīng)用間接表62的狀況中,此表格系關(guān)于每一個(gè)函數(shù)fj1 ;函數(shù)fj1的識(shí)別符;以及定位函數(shù)Vk與參數(shù)的數(shù)值的可執(zhí)行代碼的地址Adk。圖6為其中記錄了函數(shù)Vk-I (X,Pij)的內(nèi)存58的一部分的放大圖。為了簡(jiǎn)化描述,可假設(shè)此函數(shù)Vk-I (x, Pij)的可執(zhí)行代碼在內(nèi)存58中所記錄的地址Adk與內(nèi)存16中所記錄的Vk(x,Pij)的可執(zhí)行代碼的地址相同?;谶@一假設(shè),內(nèi)存58可包含有與表格60相同的轉(zhuǎn)化表。下面,將結(jié)合圖7中所示的方法對(duì)系統(tǒng)2的作業(yè)進(jìn)行描述。起初,階段70系用于廣播多媒體內(nèi)容。開(kāi)始,在步驟72中,傳輸器4可產(chǎn)生控制字符CW。而后,在步驟74中,此控制字符CW可用于對(duì)多媒體內(nèi)容進(jìn)行加擾或加密。同時(shí), 在步驟76中,可通過(guò)密碼模塊10對(duì)控制字符CW進(jìn)行加密處理,藉以獲取密碼Cf。一旦獲得此密碼CW*,則在于步驟76中,通過(guò)信息產(chǎn)生器12產(chǎn)生包含有密碼的授權(quán)控制信息。
而后,在步驟78中,可通過(guò)多工器15對(duì)加擾媒體內(nèi)容及授權(quán)控制信息,可能還有授權(quán)管理信息進(jìn)行多任務(wù)處理。在步驟80中,可通過(guò)網(wǎng)絡(luò)6向所有接收器廣播所獲得的多任務(wù)多媒體內(nèi)容。在步驟82中,接收器8可對(duì)此多任務(wù)多媒體內(nèi)容進(jìn)行接收。而后,在步驟84中,可通過(guò)解多工器38對(duì)此多任務(wù)多媒體內(nèi)容進(jìn)行解多任務(wù)處理,向加擾器40傳輸此加擾多媒體內(nèi)容,并向安全處理器36傳輸授權(quán)控制信息。在步驟86中,安全處理器36可通過(guò)執(zhí)行更新算法F—1對(duì)密碼CW*進(jìn)行解密,并向加擾器40傳輸按解密形式獲取的控制字符CW。在步驟88中,加擾器40可對(duì)通過(guò)網(wǎng)絡(luò)6進(jìn)行傳送至顯示器42的控制字符CW對(duì)加擾多媒體內(nèi)容進(jìn)行解擾處理。在步驟90中,可于顯示器42上以為加密形式顯示解擾多媒體內(nèi)容。此處,可在規(guī)則的間隔中對(duì)此控制字符CW進(jìn)行調(diào)整。而未對(duì)控制字符CW進(jìn)行調(diào)整的間隔被稱為"加密周期"。因此,可在每一加密周期中重復(fù)執(zhí)行步驟72至步驟90。例如,此加密周期所維持的時(shí)間可小于20秒,而最好使其小于11秒。在有必要時(shí),可執(zhí)行步驟100,藉以產(chǎn)生用于更新加密算法F以及更新算法Γ1。在可使執(zhí)行階段100中,于步驟102的過(guò)程中,產(chǎn)生器20可產(chǎn)生新的種子。而此種子的位大小小于用于對(duì)定義函數(shù)的數(shù)字內(nèi)容進(jìn)行編碼所需的880個(gè)位的4倍而最好小于這一數(shù)據(jù)的10倍或20倍。此處,種子的大小為16位。同時(shí),可隨機(jī)抽取這16個(gè)位。例如,可從發(fā)生于傳輸器4的一個(gè)使用者界面上的物理現(xiàn)象對(duì)這種隨機(jī)抽取進(jìn)行初始化。例如,可通過(guò)鼠標(biāo)的移動(dòng)對(duì)這種隨機(jī)抽取進(jìn)行初始化。而后,在步驟104中,可對(duì)這種種子進(jìn)行確定性擴(kuò)展(deterministic expansion),藉以獲得一系列數(shù)字。中這個(gè)數(shù)字列中字節(jié)數(shù)量至少等于于用于對(duì)定義函數(shù) fij的數(shù)字內(nèi)容進(jìn)行編碼所需的位的數(shù)量。此處,這種確定性擴(kuò)展包含有從編碼于16位上的種子產(chǎn)生一個(gè)880位的序列。為了執(zhí)行這種擴(kuò)展,可用在步驟102中所獲得的種子對(duì)決定產(chǎn)生器沈進(jìn)行初始化。而后,在步驟106中,可創(chuàng)建與密碼CW*的更新算法F—1相對(duì)應(yīng)的加密算法F’的代碼。為此,可創(chuàng)建新的間接表Tab’,而此間接表Tab’中的數(shù)字內(nèi)容不同于間接表62中的內(nèi)容。具體而言,在步驟108中,可產(chǎn)生將要記錄于此間接表Tab’中的新的數(shù)字內(nèi)容。為了對(duì)產(chǎn)生這些數(shù)字內(nèi)容的過(guò)程進(jìn)行描述,圖8示出了在步驟104后所獲得的數(shù)字序列的啟始部分。此處,可按二進(jìn)制模式寫入此數(shù)字序列。因此,這一序列系為連續(xù)的0 與1。而后,這一序列被劃分為十個(gè)分別與函數(shù)F1、函數(shù)F^··、函數(shù)Fltl相對(duì)應(yīng)的連續(xù)的88位字段。其中,可按相同的方法構(gòu)建這些字段。此處,可結(jié)合第一字段對(duì)這種結(jié)構(gòu)進(jìn)行描述。 其中,可將此第一字段前方的M個(gè)位劃分為8個(gè)子字段,并分別將這些子字段標(biāo)注為fn、 f12、…、f18。而此第一字段余下的部分被劃分為八個(gè)連續(xù)的識(shí)別符,并分別將這些識(shí)別符標(biāo)注為P11至P18O其中,每一子字段,函數(shù)f^包含有函數(shù)Vk的識(shí)別符編碼于三個(gè)位上的數(shù)值。同時(shí), 每一子字段,識(shí)別符Pu包含有識(shí)別符Pu的數(shù)值。
進(jìn)而,生成器觀可根據(jù)函數(shù)&中所包含的數(shù)值并應(yīng)用表格60,使生成器觀依據(jù)此函數(shù)fij的數(shù)值及識(shí)別符Plj對(duì)記錄于兩個(gè)字節(jié)上的地址進(jìn)行檢索。進(jìn)而,此生成器觀可通過(guò)識(shí)別符的數(shù)值及,產(chǎn)生兩個(gè)新的數(shù)字內(nèi)容,藉以對(duì)新的函數(shù)&。其中,函數(shù)F1的具體狀況中所描述的內(nèi)容也可被記錄于另一函數(shù)Fi中。而后,在步驟110中,在步驟108中所產(chǎn)生的新的數(shù)字內(nèi)容被記錄于獨(dú)立于間接表 62卻具有相同結(jié)構(gòu)的間接表Tab’中。在步驟106之後的與步驟112的過(guò)程中,檢驗(yàn)器M可改變所獲得的加密算法F’的穩(wěn)定性。例如,可以確定加密算法F’的穩(wěn)定性系關(guān)于應(yīng)用密碼中某種形式的位的出現(xiàn)頻率的密碼學(xué)方法。為此,檢驗(yàn)器M可應(yīng)用加密算法F’,藉以通過(guò)預(yù)定的密鑰K對(duì)數(shù)據(jù)的預(yù)定片段進(jìn)行加密,藉以獲得密碼礦。而后,此檢驗(yàn)器M可改變密碼D*中0位與1位的隨機(jī)分布。為此,可采用以下文獻(xiàn)中所述的不同改變方法,美國(guó)商務(wù)部所屬國(guó)家標(biāo)準(zhǔn)暨科技研究所于1994年1月11日所頒布的聯(lián)邦信息處理標(biāo)準(zhǔn)(FIPS, Federal Information Processing Standard Publication)140—1。具體而言,此處所用的測(cè)試或檢查方法與上述文獻(xiàn)的第4. 11. 1段所記載的方法相同,藉以對(duì)通過(guò)假隨機(jī)數(shù)產(chǎn)生器所產(chǎn)生的位序列中的位的隨機(jī)分布進(jìn)行測(cè)試(請(qǐng)參見(jiàn)上述文獻(xiàn)第43頁(yè)所記載的標(biāo)題為《統(tǒng)計(jì)隨機(jī)數(shù)產(chǎn)生器測(cè)試》的一節(jié))。在步驟112中,可對(duì)此識(shí)別符進(jìn)行測(cè)試,即確定此密碼D*不同于數(shù)據(jù)D的片段。為了執(zhí)行這些測(cè)試,當(dāng)前使用的所選擇的密鑰K可用于執(zhí)行控制字段CW的加密。若在步驟112中所使用的測(cè)試中的一個(gè)測(cè)試不是另人滿意的,則可返回步驟102。 否則,所使用的種子可建立穩(wěn)定的加密算法。在這種狀況中,可在步驟114內(nèi)將間接表Tab’ 與種子記錄于傳送器中。在步驟114中,還可通過(guò)隱匿訊道上的網(wǎng)絡(luò)6將所產(chǎn)生的種子傳送至安全處理器36。但是,只要顯示過(guò)程中不使用觸發(fā)元素,則不使用此間接表Tab’。而后,當(dāng)顯示過(guò)程中不使用觸發(fā)元素時(shí),可執(zhí)行步驟116,其中可通過(guò)間接表Tab’ 替代間接表62。在步驟116中,此方法可返回階段70。因此,在重新執(zhí)行步驟70的過(guò)程中, 可用重新分配的加密算法F’替代先前使用的加密算法F。此處,可通過(guò)包含有特定代碼的授權(quán)控制信息對(duì)觸發(fā)元素進(jìn)行傳送,其中這些特定代碼可觸發(fā)安全處理器36中加密算法的更新過(guò)程。同時(shí),在階段100的步驟120中,安全處理器36可執(zhí)行更新算法Γ1的更新。在步驟122開(kāi)始時(shí),安全處理器36可接受通過(guò)傳輸器4在步驟114中所傳送來(lái)的種子。而后, 在步驟124中,可對(duì)種子進(jìn)行記錄。但是,只要顯示過(guò)程中不使用觸發(fā)元素,則不使用此種子。在步驟1 中,安全處理器36可獲取此觸發(fā)元素。例如,此安全處理器36可接受包含有某種指令的授權(quán)控制信息,而這種指令系用于更新解密算法。進(jìn)而,在步驟1 中,影響觸發(fā)元素的請(qǐng)求,產(chǎn)生器M可對(duì)所接受到的種子執(zhí)行確定性擴(kuò)展。而此步驟128與步驟140相同,藉以按同樣的方式獲取數(shù)字序列。而后,在步驟130中,對(duì)應(yīng)于加密算法F’的更新算法F—1的代碼可形成一個(gè)數(shù)字序列。而在步驟132中,可產(chǎn)生記錄于間接表64中的新的數(shù)字內(nèi)容。此處,步驟132系等同于步驟108。在步驟134中,間接表64內(nèi)所包含的每一數(shù)字內(nèi)容可通過(guò)對(duì)應(yīng)于步驟132中所產(chǎn)生的新的相應(yīng)數(shù)字內(nèi)容進(jìn)行替換。因此,在步驟130結(jié)束后,已通過(guò)更新解密算法F’ 1的代碼替代了更新算法F—1的代碼。而后,這一作業(yè)可返回階段70。因此,在重新執(zhí)行階段70時(shí),可通過(guò)替代更新算法 F—1的更新解密算法F’ 1對(duì)密碼CW*進(jìn)行解密。下面,對(duì)從傳輸器4傳送到接收器8的種子的傳送過(guò)程進(jìn)行描述。為此,通過(guò)圖9 簡(jiǎn)單地對(duì)授權(quán)控制信息的結(jié)構(gòu)進(jìn)行回憶。其中,此授權(quán)控制信息包含有字段140,系包含密碼CW*,以及字段142,系包含有訊符或被稱為訊符MAC的加密冗余。例如,此訊符可被記錄于1 個(gè)位上。同時(shí),此訊符可改變信息的整體性。其中,可通過(guò)在信息的數(shù)據(jù)的其它片段上加擾預(yù)定的訊符功能而形成此訊符。例如,可通過(guò)向包含于相同授權(quán)控制信息的數(shù)據(jù)中其它片段的位于應(yīng)用散列函數(shù)并對(duì)此密碼CW*的位進(jìn)行計(jì)數(shù)而形成此訊符MAC。在本文中,可參照對(duì)通過(guò)安全處理器36于隱匿訊道上接收種子及觸發(fā)元素的過(guò)程進(jìn)行描述,其中可在1 個(gè)位上對(duì)種子進(jìn)行編碼。起初,在步驟150中,安全處理器36可計(jì)算出所接收的授權(quán)控制信息的訊符MAC。 為此,可將傳輸器4所使用的相同的訊符功能施加于授權(quán)控制信息的數(shù)據(jù)。進(jìn)而,在步驟152中,可對(duì)所形成的訊符MAC與授權(quán)控制信息的字段142中所包含的訊符進(jìn)行比較。若這些訊符相同,則本發(fā)明實(shí)施例可執(zhí)行步驟152,藉以通過(guò)安全處理器36對(duì)此授權(quán)控制信息進(jìn)行處理。而這種處理過(guò)程還包含若內(nèi)存58中所包含的訪問(wèn)標(biāo)題與所接收到的授權(quán)控制信息的條件相對(duì)應(yīng),則對(duì)密碼CW*進(jìn)行解密處理。否則,在步驟156中,可通過(guò)異或運(yùn)算對(duì)訊符與訊符進(jìn)行逐字節(jié)地合并。進(jìn)而,將合并結(jié)果所對(duì)應(yīng)的16個(gè)字節(jié)分別記錄于剩下的寄存器RES
至RES[15]中。在步驟158中,可對(duì)記錄于剩下的但是寄存器中的字節(jié)是否等于第一預(yù)定值進(jìn)行檢查。例如,可使i為從0至7的數(shù)值,而進(jìn)行下列比較RES [2 Xi] = 0xA5,其中0xA5為按十六位進(jìn)制表示的預(yù)定值。其中,當(dāng)所有比較值相等時(shí),可執(zhí)行步驟160,其中包含于具有奇數(shù)組索引值的寄存器RES[2Xi+l]中所包含的數(shù)值被分別記錄于寄存器SEED[i],其中i的范圍是0至7。 而后,在步驟160中,在安全處理器36中對(duì)所接收到的授權(quán)控制信息進(jìn)行正常處理。而當(dāng)步驟158中進(jìn)行比較的寄存器不與第一預(yù)定值相對(duì)應(yīng)時(shí),可進(jìn)行步驟162,藉以對(duì)寄存器RES[2Xi]與預(yù)定值,如0x5A進(jìn)行比較,其中i的范圍是0至7。若所有比較寄存器都等于0x5A,則可執(zhí)行步驟164,在步驟164中,寄存器RES [2 X i+Ι]中所包含的數(shù)值被分別記錄于寄存器SEED[8+i],其中i的范圍是0至7。同時(shí),在步驟164中,可通過(guò)安全處理器36對(duì)所接收到的授權(quán)控制信息進(jìn)行正常處理。當(dāng)在步驟162中進(jìn)行比較的寄存器不等于第二預(yù)定值時(shí),可執(zhí)行步驟166,藉以對(duì)寄存器與第三比預(yù)定值,如00x00進(jìn)行比較,其中i的范圍是0至7。若所有比較寄存器都等于此第三預(yù)定值,則可執(zhí)行步驟168,藉以對(duì)授權(quán)控制信息進(jìn)行處理。此外,進(jìn)行步驟168 的過(guò)程對(duì)應(yīng)于獲取觸發(fā)元素。換言的,在本發(fā)明實(shí)施例中,步驟168與步驟162相對(duì)應(yīng)。因此,步驟168可對(duì)圖7中階段120所描述的安全處理器36中的解密算法的繼續(xù)更新進(jìn)行授權(quán)。否則,便意味著所接收到的授權(quán)控制信息出現(xiàn)錯(cuò)誤,進(jìn)而,在步驟170中,安全處理器36可對(duì)錯(cuò)誤進(jìn)行報(bào)告并且不對(duì)授權(quán)控制信息進(jìn)行處理。同時(shí),可將用于在隱匿訊道上傳送種子或觸發(fā)元素的方法引入圖10中所描述的接收方法。下面,將對(duì)這種方法進(jìn)行更為詳盡地描述。此處,還可使用多種其它的實(shí)施例。例如,此安全處理器36可以不可拆卸地集成于加擾器40或譯碼器34上。同時(shí),安全處理器36還可以使可調(diào)節(jié)的軟件模塊,藉以對(duì)密碼翻譯法形成比譯碼器34的軟件的其它部分更大的阻抗。同時(shí),網(wǎng)絡(luò)6既可以是有線網(wǎng)絡(luò),也可以是分封交換網(wǎng)絡(luò),如互聯(lián)網(wǎng)絡(luò)。在本文所描述的狀況中,內(nèi)存16與58可獲取函數(shù)Vk的可執(zhí)行代碼。這種代碼可通過(guò)密碼模塊10與密碼模塊50直接執(zhí)行。當(dāng)發(fā)生變化時(shí),可通過(guò)函數(shù)Vk的解釋碼替換這些可執(zhí)行代碼。在這種狀況中,密碼模塊10與密碼模塊50分別具有解釋器180與解釋器 182(如圖1所示),藉以對(duì)代碼進(jìn)行解釋。因此,在這種變化中,密碼模塊系包含解釋器, 藉以對(duì)通過(guò)控制器所建立的更新算法的代碼進(jìn)行解釋。在本發(fā)明另一實(shí)施例中,可通過(guò)相同函數(shù)的源代碼替代函數(shù)Vk的可執(zhí)行代碼。在這種狀況中,生成器觀與內(nèi)存16可分別包含有編譯器184與編譯器186(如圖1所示)。 此外,在進(jìn)行由于建立更新算法的步驟中,這些編譯器184與186可對(duì)用于定義函數(shù)的函數(shù)Vk所對(duì)應(yīng)的源代碼進(jìn)行編譯。因此,生成器觀與決定產(chǎn)生器沈分別產(chǎn)生可通過(guò)與更新算法相對(duì)應(yīng)的密碼模塊10和密碼模塊50執(zhí)行的更新代碼。同時(shí),多數(shù)密碼算法都包含有數(shù)字操作數(shù),這些數(shù)字操作數(shù)獨(dú)立于將要進(jìn)行加密或解密處理的數(shù)據(jù)D的片段以及為此所使用的密鑰。例如操作數(shù)AES及DES可包含有置換表與替換表或者S寄存器。而其它密碼操作數(shù)可使用索引表或轉(zhuǎn)換表。其中,上述表都采用包含有預(yù)定數(shù)值的矩陣形式。而這些數(shù)值可以是切換作業(yè)、交換作業(yè)、替換作業(yè)、索引作業(yè)或轉(zhuǎn)換作業(yè)的操作數(shù)。同時(shí),可于這些密碼運(yùn)算符中建立作為消隱掩碼或者作為系數(shù)或數(shù)學(xué)計(jì)算中的常數(shù)的其它操作數(shù)。為了對(duì)這種帶有作業(yè)數(shù)的算法進(jìn)行更新,還可通過(guò)新的作業(yè)數(shù)部分或整體地替換這些作業(yè)數(shù)。為此,可進(jìn)行上述運(yùn)算,藉以更換圖7所示的參數(shù) Pij °為了對(duì)密碼算法進(jìn)行更新。可替換獨(dú)立于將要進(jìn)行加密或解密處理的數(shù)據(jù)片段以及所用的密鑰的算法的數(shù)學(xué)操作數(shù)。在低等級(jí)語(yǔ)言中,這些數(shù)學(xué)操作數(shù)可分別對(duì)應(yīng)于與通過(guò)電子計(jì)算器直接執(zhí)行或進(jìn)行解釋的指令相對(duì)應(yīng)的助記符。同時(shí),函數(shù)Vk的運(yùn)算符〃 X0R"、“ NOT"、“ +"、“ -"、“ χ"、“ r。t_left〃 及〃 rot_right"、“ mod" 系位通過(guò)傳送器或計(jì)數(shù)器的計(jì)算機(jī)所執(zhí)行的指令集中指令的助記符相對(duì)應(yīng)的運(yùn)算符的實(shí)例。同時(shí),還具有其它數(shù)學(xué)運(yùn)算符,例如“AND"運(yùn)算符與"OR"運(yùn)算符?!笀D1」所示的系統(tǒng)中用到的加密運(yùn)算符的具體狀況中已對(duì)此方法進(jìn)行了描述。實(shí)際上,當(dāng)對(duì)每一加密算法進(jìn)行更新時(shí),可通過(guò)其它運(yùn)算符替換函數(shù)中的運(yùn)算符。為了對(duì)密碼算法的代碼進(jìn)行更新,可再對(duì)代碼的指令進(jìn)行更換,而不是數(shù)學(xué)運(yùn)算符進(jìn)行更換。例如,可對(duì)〃 JUMP"、“ CALL"或〃 NOP"指令進(jìn)行更換。為了對(duì)此進(jìn)行明示,下面示出了按匯編語(yǔ)言寫成的代碼的實(shí)例0x00 JUMP 0x10[Code of the function V0]0x10 JUMP 0x20
[Code of the function VI]0x20 JUMP 0x30[Code of the function V2]0x30 JUMP 0x40…依據(jù)所接收到的種子的數(shù)值,可通過(guò)NOP指令替代JUMP指令。例如,若通過(guò)NOP指令替代位于線0x10上的JUMP指令,則計(jì)算機(jī)可強(qiáng)行執(zhí)行與函數(shù)Vl相對(duì)應(yīng)的代碼。進(jìn)而, 可對(duì)密碼算法的代碼進(jìn)行更新,而無(wú)須對(duì)數(shù)字運(yùn)算符及作業(yè)數(shù)進(jìn)行調(diào)整。當(dāng)通過(guò)其它指令替代這些指令時(shí),只要當(dāng)僅替換了數(shù)字運(yùn)算符及作業(yè)數(shù)時(shí),便可對(duì)代碼執(zhí)行流程進(jìn)行常規(guī)調(diào)整,而這并不屬于常規(guī)狀況。為了建立更新后的密碼算法,可對(duì)運(yùn)算符進(jìn)行替換,可對(duì)數(shù)字作業(yè)數(shù)進(jìn)行替換,也可不對(duì)運(yùn)算符或作業(yè)數(shù)進(jìn)行替換而是替換指令,也可以對(duì)上述幾種替換進(jìn)行任意組合。其中,最好僅對(duì)構(gòu)成密碼算法的代碼的一部分?jǐn)?shù)字內(nèi)容進(jìn)行替換。但是為獲得更新密碼算法所更換的內(nèi)容數(shù)量必須很大,既最好大于2、10或50。其中,所更換的數(shù)字內(nèi)容越多,越難以根據(jù)先前的密碼算法上的信息發(fā)現(xiàn)更新后的密碼算法。當(dāng)發(fā)生變化時(shí),可將秘密代碼送入一筆信息中,藉以在如〃隱匿訊道上傳送至處理器。而此隱匿代碼可通知處理器種子上的數(shù)據(jù)已包含于預(yù)定的連續(xù)信息中。因此,無(wú)須使此秘密代碼與種子上的數(shù)據(jù)位于相同的信息中。在對(duì)安全處理器36所使用至解密算法代碼進(jìn)行更新的狀況中,上述方法也可用于更新安全處理器36所使用的解密算法G。在這種狀況中,在執(zhí)行階段100時(shí),通過(guò)生成器 28所建立的與解密算法G所對(duì)應(yīng)的算法即是解密算法G本身。同時(shí),在更新用于加密并解密控制字符的算法的特定狀況中所描述的方法也可應(yīng)用于對(duì)授權(quán)控制信息與授權(quán)管理信息等信息的訊符進(jìn)行標(biāo)記與改變的密碼算法中。而且,在應(yīng)用同步密碼算法的狀況中所描述的方法也可應(yīng)用于異步加密算法。
權(quán)利要求
1.一種加密算法或解密的算法的代碼更新方法,其中所述代碼可通過(guò)電子計(jì)算器執(zhí)行或解釋,所述加密算法可通過(guò)密鑰對(duì)數(shù)據(jù)的片段進(jìn)行解密,藉以獲得密碼,而所述解密算法可通過(guò)密鑰對(duì)密碼進(jìn)行解密,藉以獲得解密資料的片段,其中,所述代碼至少包含有N個(gè)數(shù)字內(nèi)容,每一數(shù)字內(nèi)容對(duì)應(yīng)于所述代碼的指令的助記符或操作數(shù),同時(shí),所述數(shù)字內(nèi)容的數(shù)值獨(dú)立于所述數(shù)據(jù)的片段、所述密鑰以及所述密碼,所述代碼更新方法包含接收隨機(jī)抽取的種子,所述種子的字節(jié)數(shù)量至少小于對(duì)所述密碼算法的N個(gè)數(shù)字進(jìn)行編碼所需的字節(jié)數(shù)量的四倍;對(duì)所述種子進(jìn)行確定性擴(kuò)展,藉以獲取數(shù)字序列,所述數(shù)字序列的位于數(shù)量至少等于對(duì)所述密碼算法的N個(gè)數(shù)字進(jìn)行編碼所需的字節(jié)數(shù)量;由所獲得的所述數(shù)字序列產(chǎn)生N個(gè)新數(shù)字內(nèi)容;以及通過(guò)所述N個(gè)新數(shù)字內(nèi)容替換所述密碼算法的代碼的所述N個(gè)數(shù)字內(nèi)容,藉以獲得更新密碼算法的代碼。
2.如權(quán)利要求1所述的加密算法或解密的算法的代碼更新方法,其中所述各數(shù)字內(nèi)容對(duì)應(yīng)于操作數(shù)或?qū)?yīng)于數(shù)學(xué)運(yùn)算符,當(dāng)通過(guò)新數(shù)學(xué)運(yùn)算符代替所述數(shù)學(xué)運(yùn)算符時(shí),不改變所述密碼算法的打磨指令的執(zhí)行順序。
3.如權(quán)利要求1或2所述的加密算法或解密的算法的代碼更新方法,其中若檢測(cè)到所接收的信息中的第一部分中帶有秘密代碼,則用所述信息的第二部分中所包含的數(shù)據(jù)片段或連續(xù)接收到的信息建立所述種子;以及若為檢測(cè)到所接收的所述信息中的第一部分中帶有所述秘密代碼,則使用所述信息的第一部分及第二部分中所包含的所述數(shù)據(jù)的片段終止作業(yè),而不對(duì)所述密碼算法進(jìn)行更新。
4.如權(quán)利要求3所述的加密算法或解密的算法的代碼更新方法,其中若未檢測(cè)到所述秘密代碼,則用所述第一部分及第二部分中所包含的所述數(shù)據(jù)的片段改變所述信息中所包含的所述數(shù)據(jù)的整體性。
5.如權(quán)利要求3或4所述的加密算法或解密的算法的代碼更新方法,其中所述信息為授權(quán)控制信息(Entitlement Control Messages, ECM)或授權(quán)管理信息(Entitlement Management Messages, EMM)。
6.如上述權(quán)利要求中任意一項(xiàng)所述的加密算法或解密的算法的代碼更新方法,其中響應(yīng)獨(dú)立于所述種子的接收的觸發(fā)事件,開(kāi)始通過(guò)所述N個(gè)新數(shù)字內(nèi)容更換所述密碼算法的所述N個(gè)數(shù)字內(nèi)容。
7.如上述權(quán)利要求中任意一項(xiàng)所述的加密算法或解密的算法的代碼更新方法,其中所述種子的位于數(shù)量至少小于用于對(duì)所述N個(gè)數(shù)字內(nèi)容進(jìn)行編碼所需的字節(jié)數(shù)量的十倍。
8.如上述權(quán)利要求中任意一項(xiàng)所述的加密算法或解密的算法的代碼更新方法,其中通過(guò)用所述種子進(jìn)行初始化的假隨機(jī)產(chǎn)生器執(zhí)行所述確定性擴(kuò)展。
9.如上述權(quán)利要求中任意一項(xiàng)所述的加密算法或解密的算法的代碼更新方法,其中N 必須大于2并小于10。
10.一種加密算法或解密的算法的代碼更新模塊,其中所述代碼可通過(guò)電子計(jì)算器執(zhí)行或解釋,所述加密算法可通過(guò)一密鑰對(duì)一數(shù)據(jù)的片段進(jìn)行解密,藉以獲得一密碼,而所述解密算法可通過(guò)密鑰對(duì)密碼進(jìn)行解密,藉以獲得解密資料的片段,其中,所述代碼至少包含有N個(gè)數(shù)字內(nèi)容,每一數(shù)字內(nèi)容對(duì)應(yīng)于所述代碼的指令的助記符或操作數(shù),同時(shí),所述數(shù)字內(nèi)容的數(shù)值獨(dú)立于所述數(shù)據(jù)的片段、所述密鑰以及所述密碼, 所述代碼更新模塊,包含子模塊,用于接收隨機(jī)抽取的種子,所述種子的位大小至少小于對(duì)所述密碼算法的N 個(gè)數(shù)字內(nèi)容進(jìn)行編碼所需的字節(jié)數(shù)量;所述決定產(chǎn)生器,通過(guò)所述種子進(jìn)行初始化,藉以獲取數(shù)字序列,所述數(shù)字序列的字節(jié)數(shù)量至少等于對(duì)所述密碼算法的N個(gè)數(shù)字進(jìn)行編碼所需的字節(jié)數(shù)量;以及密碼算法代碼生成器,用于由所獲取的數(shù)字序列產(chǎn)生N個(gè)新數(shù)字序列;并通過(guò)所述N個(gè)新數(shù)字序列代替所述密碼算法的N個(gè)數(shù)字序列,藉以獲得更新密碼算法。
11.一種加密算法或解密的算法的安全處理器,其中所述代碼可通過(guò)電子計(jì)算器執(zhí)行或解釋,所述加密算法可通過(guò)密鑰對(duì)數(shù)據(jù)的片段進(jìn)行解密,藉以獲得密碼,而所述解密算法可通過(guò)密鑰對(duì)密碼進(jìn)行解密,藉以獲得解密資料的片段,其中,所述代碼至少包含有N個(gè)數(shù)字內(nèi)容,每一數(shù)字內(nèi)容對(duì)應(yīng)于所述代碼的指令的助記符或操作數(shù),同時(shí),所述數(shù)字內(nèi)容的數(shù)值獨(dú)立于所述數(shù)據(jù)的片段、所述密鑰以及所述密碼,所述安全處理器,用于更換如權(quán)利要求10所述的密碼算法的代碼。
12.—種產(chǎn)生種子的方法,用于對(duì)如權(quán)利要求1至9中任意一項(xiàng)所述的密碼算法的代碼更新方法進(jìn)行更新,所述產(chǎn)生種子的方法,包含a)隨機(jī)抽取種子,所述種子的字節(jié)數(shù)量至少小于需要進(jìn)行更新的所述密碼算法內(nèi)N個(gè)數(shù)字內(nèi)容編碼所需的字節(jié)數(shù)量的四倍;b)當(dāng)所接收的種子為步驟a)中隨機(jī)抽取的一個(gè)種子時(shí),通過(guò)如權(quán)利要求1至9中任意一項(xiàng)所述的密碼算法的代碼更新方法產(chǎn)生更新加密算法代碼或更新解密算法代碼;c)對(duì)與至少一個(gè)密碼學(xué)方法相關(guān)的所述更新算法的代碼的穩(wěn)定性進(jìn)行檢查;d)若所述加密算法的代碼不具備與所述密碼學(xué)方法相關(guān)的穩(wěn)定性,則返回步驟a);以及e)否則,將隨機(jī)抽取的所述種子傳送的接收器,藉以執(zhí)行所述密碼算法的代碼的更新方法。
13.—種產(chǎn)生種子的模塊,用于對(duì)如權(quán)利要求1至9中任意一項(xiàng)所述的密碼算法的代碼更新方法進(jìn)行更新,所述模塊,包含產(chǎn)生器,用于機(jī)抽取一種子,所述種子的字節(jié)數(shù)量至少小于需要進(jìn)行更新的所述密碼算法內(nèi)N個(gè)數(shù)字內(nèi)容編碼所需的字節(jié)數(shù)量的四倍;子模塊,用于在接收到由所述產(chǎn)生器所抽取的所述種子時(shí),通過(guò)如權(quán)利要求1至9中任意一項(xiàng)所述的密碼算法的代碼更新方法產(chǎn)生更新加密算法代碼或更新解密算法代碼;檢測(cè)器,用于檢測(cè)與至少一個(gè)密碼學(xué)方法相關(guān)的更新算法的代碼的穩(wěn)定性,所述檢測(cè)器用于若所述加密算法的代碼不具備與所述密碼學(xué)方法相關(guān)的穩(wěn)定性,則阻止對(duì)隨機(jī)產(chǎn)生的所述種子進(jìn)行傳輸;否則將隨機(jī)抽取的所述種子傳送的接收器,藉以執(zhí)行所述密碼算法的代碼的更新方法。
14. 一種信息記錄媒體,用于在通過(guò)電子計(jì)算器執(zhí)行所述信息時(shí),執(zhí)行如權(quán)利要求1至 9中任意一項(xiàng)所述的密碼算法的代碼更新方法或如權(quán)利要求12所述的產(chǎn)生種子的方法。
全文摘要
本發(fā)明公開(kāi)了一種密碼算法的代碼的更新方法,接收隨機(jī)抽取的種子,種子的字節(jié)數(shù)量至少小于對(duì)密碼算法的N個(gè)數(shù)字進(jìn)行編碼所需的字節(jié)數(shù)量的四倍;對(duì)種子進(jìn)行確定性擴(kuò)展,藉以獲取數(shù)字序列,數(shù)字序列的字節(jié)數(shù)量至少等于對(duì)該密碼算法的N個(gè)數(shù)字進(jìn)行編碼所需的字節(jié)數(shù)量;由所獲得的數(shù)字序列產(chǎn)生N個(gè)新數(shù)字內(nèi)容;以及通過(guò)N個(gè)新數(shù)字內(nèi)容替換密碼算法代碼的N個(gè)數(shù)字內(nèi)容,藉以獲得更新密碼算法的代碼。
文檔編號(hào)H04N21/2347GK102282797SQ200980154770
公開(kāi)日2011年12月14日 申請(qǐng)日期2009年12月29日 優(yōu)先權(quán)日2009年1月13日
發(fā)明者派崔克·史奈特 申請(qǐng)人:維亞塞斯公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
怀安县| 瑞丽市| 永州市| 双鸭山市| 安阳县| 老河口市| 涟水县| 南丹县| 永丰县| 九龙坡区| 浮梁县| 安顺市| 和林格尔县| 永昌县| 张家口市| 康乐县| 汨罗市| 启东市| 吉林市| 丰原市| 剑阁县| 崇阳县| 武义县| 中宁县| 哈尔滨市| 炎陵县| 于都县| 奎屯市| 固镇县| 内乡县| 沐川县| 大邑县| 临猗县| 四子王旗| 忻城县| 石城县| 卓尼县| 平原县| 海安县| 星子县| 玉山县|