亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

機密信息處理用主機及機密信息處理方法

文檔序號:7637178閱讀:394來源:國知局
專利名稱:機密信息處理用主機及機密信息處理方法
技術(shù)領(lǐng)域
本發(fā)明涉及對存儲在目標(biāo)機器的密鑰進行的密碼變換處理方法以 及作為實現(xiàn)該方法的機密信息處理裝置的主機。
背景技術(shù)
近幾年,存儲卡等用于存儲數(shù)據(jù)的機器(以下,稱為"目標(biāo)機器"), 隨著其用途的擴大被廣泛使用。
一般而言,該目標(biāo)機器被具有用于插 入目標(biāo)機器插口的、存儲插入后的目標(biāo)機器的數(shù)據(jù)的機器(以下,稱為 "主機")使用。并衛(wèi),目標(biāo)機器的用途之一有,處理音頻數(shù)據(jù)等需要保護著作權(quán) 的數(shù)據(jù)。在這些用途中,以保護音頻數(shù)據(jù)等的著作權(quán)為目的采用機密 信息處理方法。根據(jù)該機密信息處理方法,對需要保護著作權(quán)的數(shù)據(jù) 進行加密,并將加密后的數(shù)據(jù)存儲到目標(biāo)機器。據(jù)此,可以防止不正 當(dāng)?shù)貜?fù)制作品等的內(nèi)容,或可以防止向外部泄漏內(nèi)容。以下說明用于保護著作權(quán)的機密信息處理方法。用于保護著作權(quán)的機密信息處理方法的結(jié)構(gòu)為首先,在目標(biāo)機器與主機之間進行認(rèn) i正處理。其次,只在認(rèn)證成功的情況下,主機可以從目標(biāo)機器獲得內(nèi) 容密鑰(以下,稱為"Kc"),所述內(nèi)容密鑰用于對加密內(nèi)容進行解密。
通過獲得內(nèi)容密鑰,主機可以使用存儲在目標(biāo)機器的加密內(nèi)容。根據(jù) 這些結(jié)構(gòu),可以防止加密內(nèi)容被不正當(dāng)?shù)闹鳈C解密。與這些用于保護 著作權(quán)的機密信息處理方法有關(guān)的以往的技術(shù)文獻有專利文獻1 。接著,參照


,在認(rèn)證成功的情況下主機使用Kc對內(nèi)容進 行解密的處理。圖1是執(zhí)行這些機密信息處理方法的主機的主要部分 的結(jié)構(gòu)功能方框圖。在此假設(shè),在圖1中認(rèn)證處理已經(jīng)正常地結(jié)束、 并確認(rèn)目標(biāo)機器和主機都是正當(dāng)?shù)臋C器。在圖1中說明如下情況,艮P, 目標(biāo)機器1301被插入到主機1300,在機密信息處理部1302對存儲在 工作區(qū)域1303的加密內(nèi)容1304進行解密,從而使用內(nèi)容1305,所述 機密信息處理部1302用于對主機1300具有的密鑰等機密信息進行加 密或解密,所述工作區(qū)域1303是用于工作的區(qū)域。而且,在此,為了 提高安全性,機密信息處理部作為硬件被安裝在半導(dǎo)體集成電路。在圖1中,為了說明所述對目標(biāo)機器1301的認(rèn)證成功的情況,在 認(rèn)證處理1301生成了密鑰,即,生成了認(rèn)證密鑰Ka0(1307)。在此, 認(rèn)證密鑰是如下密鑰,即,只在認(rèn)證成功的情況下由機密信息處理部 1302生成的、根據(jù)認(rèn)證用主密鑰鄰認(rèn)證用副密鑰在認(rèn)證處理被算出的 密鑰,所述認(rèn)證用主密鑰是主機具有的用于認(rèn)證的密鑰,所述認(rèn)證用 副密鑰是目標(biāo)機器具有的用于認(rèn)證的密鑰。并且,內(nèi)容密鑰被存儲在目標(biāo)機器1301,主機在對內(nèi)容進行解密 時從目標(biāo)機器1301獲得所述內(nèi)容密鑰。而且,為了確保Kc的隱藏性, 用作為認(rèn)證密鑰的KaO對Kc進行加密,并在目標(biāo)機器1301保存加密 后的Kc。據(jù)此可見,只在認(rèn)證處理生成了KaO的主機可以對加密后的Kc進行解密。而且,以下,用KaO對Kc進行加密后的加密密鑰表示 為Enc(Kc, KaO)(其它加密密鑰也同樣表示)。并且,用Kc對加密后的 內(nèi)容進行加密,并將其結(jié)果存儲到目標(biāo)機器1301。因此,若是生成了 Kc的主機,則通過從目標(biāo)機器1301獲得加密內(nèi)容從而可以進行解密。 以下說明如下處理,即,認(rèn)證處理后主機1300獲得存儲在目標(biāo)機 器的Enc(Kc, Ka0)1308,并將該Enc(Kc, Ka0)1308存儲到工作區(qū)域 1303后的處理。并且假設(shè),在認(rèn)證處理后從目標(biāo)機器1301還獲得加密 內(nèi)容1304,并該加密內(nèi)容1304已經(jīng)被存儲到工作區(qū)域1303。而且, 不一定需要將Enc(Kc,KaO)和加密內(nèi)容暫時存儲到工作區(qū)域1303,也可 以將Enc(Kc,KaO)和加密內(nèi)容直接從目標(biāo)機器1301輸入到機密信息處 理部1302。在對內(nèi)容進行解密時,首先主機1300將Enc(Kc,Ka0)1308輸入到 機密信息處理部302,用在認(rèn)證處理1306生成后的KaO(1307)進行解 密處理1309。據(jù)此,生成處于明文狀態(tài)(是指未加密狀態(tài))的內(nèi)容密鑰 即Kcl310。而且,生成后的Kcl310被保存在機密信息處理部1302, 而且主機1300無法得知Kcl310的值。接著,主機1300輸入加密內(nèi)容 1304,在機密信息處理部1302使用Kc進行解密處理1311。據(jù)此,主 機1300可以獲得解密后的內(nèi)容1305,從而內(nèi)容的解密處理結(jié)束。如此, 對內(nèi)容進行解密時,將加密后的Kc作為Enc(Kc,KaO)輸入到機密信息 處理部,并且,在機密信息處理部保存未加密的Kc。因此,在主機可 以在確保Kc的隱藏性的狀態(tài)下對內(nèi)容進行解密。專利文獻1 :(日本)特開2000-357126號公報
近幾年,隨著廣泛使用目標(biāo)機器,增加了在目標(biāo)機器中存在多個 機密信息處理方法的情況。在這些狀況下,優(yōu)選的是,在不同的機密信息處理方法之間可以相互使用用于加密內(nèi)容的內(nèi)容密鑰Kc。然而, 在相互使用內(nèi)容密鑰Kc時,需要確保該Kc的隱藏性。即,需要防止 未加密的內(nèi)容密鑰Kc被用戶等第三者得知。并且,需要防止第三者對 內(nèi)容密鑰Kc進行不正當(dāng)?shù)南嗷ナ褂谩T诖?,作為不正?dāng)?shù)南嗷ナ褂玫?例子有如下例子等,即,只在同一目標(biāo)機器內(nèi)允許相互使用某內(nèi)容密 鑰Kc的情況下,使該內(nèi)容密鑰Kc可以在不同目標(biāo)機器之間相互使用。 并且,在圖1所示的機密信息處理方法中將使用認(rèn)證密鑰Ka0來 加密后的Enc(Kc,KaO)存儲到目標(biāo)機器。在該機密信息處理方法中,到將加密內(nèi)容解密成明文的內(nèi)容為止,需要兩個階段的解密。即,兩個 階段是 旨使用認(rèn)證密鑰KaO將加密內(nèi)容密鑰Enc(Kc,KaO)解密成內(nèi)容 密鑰Kc;以及使用內(nèi)容密鑰Kc對加密內(nèi)容進行解密。對此,可以考慮多于兩個階段的機密信息處理方法。例如,在三 個階段的機密信息處理方法中,將使用認(rèn)證密鑰Ka0對密鑰Kal進行 加密后的Enc(Kal,KaO)存儲到目標(biāo)機器,并且,將使用該Kal對Kc 進行加密后的Enc(Kc,Kal)存儲到目標(biāo)機器。據(jù)此,也可以保護內(nèi)容。 在此情況下,若通過與目標(biāo)機器之間進行認(rèn)證處理來在機密信息處理 部生成認(rèn)證密鑰Ka0,則可以對Enc(Kal,KaO)進行解密,并且可以使 用加密后的Kal來對Enc(Kc,Kal)進行解密。與此相同,若將多個階段的機密信息處理方法普遍化,則可以認(rèn) 為將m個加密密鑰(Enc(Kal,Ka2),…,Enc(Ka(m-l),Kam))存儲到目標(biāo)機
器,并將Kam作為內(nèi)容密鑰的加密密鑰使用。優(yōu)選的是,在不同的機 密信息處理方法之間可以相互使用兩個階段的機密信息處理方法中的 內(nèi)容密鑰Kc,與此相同,優(yōu)選的也是,在不同的機密信息處理方、法之 間可以相互使用多個階段的全部或一部分的密鑰Kai(i是滿足1《i《m 的自然數(shù))。發(fā)明內(nèi)容因此,本發(fā)明的目的在于,提供如下處理方法,即,在將m個加 密密鑰(Enc(Kal,Ka2),,Enc(Ka(m-l),Kam))存儲到目標(biāo)機器的情況 下,在不同的機密信息處理方法之間可以相互使用密鑰Kai。而且,其目的在于,在確保Kai的隱藏性的狀態(tài)下、并且在防止 第三者對Kai進行不正當(dāng)?shù)南嗷ナ褂玫臓顟B(tài)下,可以執(zhí)行該處理方法。為了解決上述課題,本發(fā)明的機密處理用主機,從存儲包含加密 內(nèi)容的、處于加密狀態(tài)的機密信息的目標(biāo)機器讀出所述加密內(nèi)容,解 密并使用所述加密內(nèi)容,包括機密信息處理部,只根據(jù)預(yù)定的多個 序列進行工作;CPU,向所述機密信息處理部指示起動所述多個序歹lJ; 第一接口部,在所述機密信息處理部與目標(biāo)機器之間輸入并輸出包含 所述機密信息的數(shù)據(jù);以及第二接口部,在所述機密信息處理部與所 述CPU之間輸入并輸出包含所述機密信息的數(shù)據(jù),并且,所述目標(biāo)機 器或主機,存儲作為所述機密信息的、處于加密狀態(tài)的m個密鑰 {K1,......,Km},所述密鑰Km是對內(nèi)容進行加密的內(nèi)容密鑰,用密鑰K(i-l)來加密密鑰Ki(i是滿足l《i《m的自然數(shù)),所述多個序列,包
含密鑰變換序列,在該密鑰變換序列中,對于將所述m個密鑰中任意 的、對密鑰Ki進行加密的密鑰,將K(i-l)變換為其它密鑰,所述第一 接口部和所述第二接口部,在所述密鑰變換序列被起動的情況下,向 所述機密信息處理部外部只輸出處于加密狀態(tài)的機密信息。根據(jù)所述結(jié)構(gòu),由于不是由CPU使用機密信息處理部自由地進行 密鑰變換,而是由CPU向機密信息處理部指示起動根據(jù)預(yù)定的密鑰變 換序列,并且在密鑰變換序列過程中生成的機密信息不被輸出到處理 部外部,因此可以在保持安全性的情況下在不同機密信息處理方法之 間相互使用內(nèi)容。并且,也可以是,所述主機與所述目標(biāo)機器之間進行第一認(rèn)證處 理,對所述密鑰Kl進行加密的所述密鑰K0是通過第一認(rèn)證處理生成 的認(rèn)證密鑰Ka0,與所述目標(biāo)機器同一的目標(biāo)機器、或不同的目標(biāo)機 器存儲n個(n是自然數(shù))密鑰(Kbl,......,Kbn),用密鑰Kb(j-l)來加密密鑰Kbj(j是滿足1《j《n的自然數(shù)),所述主機進一步與所述目標(biāo)機器同 一的目標(biāo)機器、或不同的目標(biāo)機器之間進行第二認(rèn)證處理,所述密鑰 Kb0是通過所述第二認(rèn)證處理生成的認(rèn)證密鑰,所述其它密鑰是所述 密鑰{KbO,...,Kb(n-l》中的任意的密鑰。并且,也可以是,所述其它密鑰是Kb(n-m+i)。根據(jù)該結(jié)構(gòu),貝卿 使用認(rèn)證密鑰Kb0來解密的次數(shù)不變也可以對內(nèi)容密鑰進行解密,因 此為好。并且,也可以是,所述主機與所述目標(biāo)機器之間進行第一認(rèn)證處 理,對所述密鑰Kl進行加密的所述密鑰K0是通過所述第一認(rèn)證處理 生成的認(rèn)證密鑰Ka0,所述其它密鑰是存儲在所述機密信息處理部的 主密鑰Kh。所述結(jié)構(gòu)有用于對存儲在目標(biāo)標(biāo)記的密鑰信息的備份。對于備份 后的密鑰信息,由于在用主密鑰Kh來加密后的狀態(tài)下被保存,因此只 具有Kh的主機可以解密,即,只進行了備份的主機可以解密。并且,也可以是,所述密鑰KO是存儲在所述機密信息處理部的主 密鑰Kh,所述主機進一步與所述目標(biāo)機器同一的目標(biāo)機器、或不同的 目標(biāo)機器之間進行第二認(rèn)證處理,該目標(biāo)機器存儲n個(n是自然數(shù))密 鑰(Kbl,......,Kbn},用密鑰Kb(j-l)來加密密鑰Kbj(j是滿足Kj《n的自然數(shù)),所述密鑰KbO是通過所述第二認(rèn)證處理生成的認(rèn)證密鑰,在 所述密鑰變換序列中,對于對密鑰K1進行加密的密鑰,將所述主密鑰 Kh變換為《KbO,…,Kb(n-l))中的任意的密鑰。所述結(jié)構(gòu)是在將備份在主機的密鑰信息重新存儲到目標(biāo)機器的情 況下有用的。對于備份后的密鑰信息,由于在用主密鑰Kh來加密后的 狀態(tài)下被保存,因此只具有Kh的主機可以解密,艮P,只進行了備份的 主機可以解密。并且,也可以是,所述主機與所述目標(biāo)機器之間進行第一認(rèn)證處 理,對所述密鑰Kl進行加密的所述密鑰KO是通過所述第一認(rèn)證處理 生成的認(rèn)證密鑰KaO ,所述目標(biāo)機器存儲(m-s)個密鑰 {Kel,......Ke(m-s)},用密鑰Ke(j-l)來加密密鑰Kej(j是滿足l《j《m-s的自然數(shù)),密鑰KeO是所述m個密鑰(K1,......,Km)中的任意的密鑰Ks(s是滿足l《s<m的自然數(shù)),所述其它密鑰是(Kel,......,Ke(m-s-1)}
中的任意的密鑰。
根據(jù)所述結(jié)構(gòu),可以減少應(yīng)該存儲到目標(biāo)機器的、加密后的密鑰 信息的數(shù)量。
并且,也可以是,所述機密信息處理部,還包括標(biāo)記保存部, 保存認(rèn)證標(biāo)記,該認(rèn)證標(biāo)記表示所述第一認(rèn)證處理是否正常地結(jié)束, 所述機密信息處理部,在所述認(rèn)i!E標(biāo)記不表示所述第一認(rèn)證處理正常 地結(jié)束的情況下,禁止所述主CPU使密鑰變換序列起動。
根據(jù)所述結(jié)構(gòu),由于只在正常地結(jié)束第一認(rèn)證處理的情況下起動 密鑰變換序列,因此可以防止通過不正當(dāng)?shù)恼J(rèn)證處理起動密鑰變換序 列。
并且,也可以是,所述機密信息處理部,還包括標(biāo)記保存部, 保存認(rèn)證標(biāo)記,該認(rèn)證標(biāo)記表示所述第二認(rèn)證處理是否正常地結(jié)束, 所述機密信息處理部,在所述認(rèn)證標(biāo)記不表示所述第二認(rèn)證處理正常 地結(jié)束的情況下,禁止所述主CPU使密鑰變換序列起動。
根據(jù)所述結(jié)構(gòu),由于只在常地結(jié)束第二認(rèn)證處理的情況下起動密 鑰變換序列,因此可以防止通過不正當(dāng)?shù)恼J(rèn)證處理起動密鑰變換序列。
并且,也可以是,所述機密信息處理部,還包括標(biāo)記保存部, 保存密鑰生成標(biāo)記,該密鑰生成標(biāo)記表示在內(nèi)部是否生成了所述密鑰 K(i-l),所述機密信息處理部,在所述密鑰生成標(biāo)記不表示在內(nèi)部生成 了所述密鑰K(i-l)的情況下,禁止所述主CPU使密鑰變換序列起動。
根據(jù)所述結(jié)構(gòu),由于只在生成了密鑰K(i-l)的情況下起動密鑰變換 序列,因此可以防止通過不正當(dāng)?shù)恼J(rèn)證處理起動密鑰變換序列,該密
鑰K(i-l)用于對密鑰Ki進行加密。
并且,也可以是,所述機密信息處理部,還包括標(biāo)記保存部, 保存密鑰生成標(biāo)記,該密鑰生成標(biāo)記表示在內(nèi)部是否生成了所述其它 密鑰,所述機密信息處理部,在所述密鑰生成標(biāo)記不表示在內(nèi)部生成
了所述其它密鑰的情況下,禁止所述主CPU使密鑰變換序列起動。
根據(jù)所述結(jié)構(gòu),由于只在生成了用于變換的密鑰的情況下起動密 鑰變換序列,因此可以防止用不正當(dāng)?shù)拿荑€來起動密鑰變換序列。
并且,也可以是,所述機密信息處理部,還包括標(biāo)記保存部, 保存目標(biāo)標(biāo)記,該目標(biāo)標(biāo)記表示是否對同一目標(biāo)機器進行了所述第一 認(rèn)證處理和所述第二認(rèn)證處理,所述機密信息處理部,在所述目標(biāo)標(biāo) 記不表示對同一目標(biāo)機器進行了所述第一認(rèn)證處理和所述第二認(rèn)證處
理的'凊況下,禁止所述主CPU使密鑰變換序列起動。
根據(jù)所述結(jié)構(gòu),在存在像只允許對同一 目標(biāo)機器的密鑰變換那樣 的限制的情況下,可以準(zhǔn)確地遵守該限制。并且,在存在連接目標(biāo)標(biāo) 記的兩個插口的情況下,可以防止通過向各個插口連接不同目標(biāo)機器 從而不正當(dāng)?shù)仄饎用荑€變換序列。
在使用本發(fā)明的處理方法的情況下,可以在具有不同認(rèn)證密鑰的 機密信息處理方法之間執(zhí)行密鑰變換處理。據(jù)此,可以在不同機密信
息處理之間相互使用Kc。并且,由于在機密信息處理部,在執(zhí)行密鑰
變換處理時確認(rèn)不進行用戶的不正當(dāng)?shù)奶幚?,因此可以防止用戶?zhí)行 不正當(dāng)?shù)拿荑€變換處理。而且,通過在機密信息處理部內(nèi)保存未加密 的密^§,從而可以確保密鑰信息的隱藏性。
并且,在防止用戶的不正當(dāng)?shù)奶幚?、且密鑰信息被隱藏化的情況 下,實現(xiàn)在目標(biāo)機器以外的機器之間相互使用密鑰或?qū)γ荑€進行備份。
而且,防止用戶的不正當(dāng)?shù)奶幚?、且密鑰信息被隱藏化的情況下, 可以通過消除不需要的密鑰來整理密鑰。

圖1是示出在以往的技術(shù)中的內(nèi)容的解密方法的圖。
圖2是示出本發(fā)明的機密信息處理系統(tǒng)整體的圖。
圖3是本發(fā)明的用于進行從輸入Enc(Kc,Ka2)獲得輸出Enc(Kc,Kbl)
的密鑰變換處理的結(jié)構(gòu)圖。
圖4是本發(fā)明的密鑰變換控制部以及密鑰變換控制標(biāo)記的結(jié)構(gòu)圖。 圖5是本發(fā)明的用于進行從輸入Enc(Kc,Ka2)獲得輸出Enc(Kc,Kbl)
的密鑰變換處理的流程圖。
圖6是本發(fā)明的認(rèn)證的消除時更換目標(biāo)機器之前的結(jié)構(gòu)圖。 圖7是本發(fā)明的認(rèn)證的消除時更換目標(biāo)機器之后的結(jié)構(gòu)圖。 圖8是本發(fā)明的用于進行從輸入Enc(Kc,Ka2)獲得輸出Enc(Kc,Kh)
的密鑰變換處理的結(jié)構(gòu)圖。
圖9是本發(fā)明的用于進行從輸入Enc(Kc,Ka2)獲得輸出Enc(Kc,Kh) 的密鑰變換處理的流程圖。
圖10是本發(fā)明的用于進行從輸入Enc(Kc,Kh)獲得輸出 Enc(Kc,Kbl)的密鑰變換處理的結(jié)構(gòu)圖。
圖11是本發(fā)明的用于進行從輸入Enc(Kc,Kh)獲得輸出Enc(Kc,Kbl)
的密鑰變換處理的流程圖。
圖12是本發(fā)明的用于進行從輸入Enc(Kc,Ka2)獲得輸出 Enc(Kc,Kd2)的密鑰變換處理的結(jié)構(gòu)圖。
圖13是本發(fā)明的用于進行從輸入Enc(Kc,Kd2)獲得輸出 Enc(Kc,Ke2)的密鑰變換處理的流程圖。
符號說明100主機
101目標(biāo)機器
102機密信息處理部
103主CPU
104主接口
105目標(biāo)接口
106工件區(qū)域
107內(nèi)部總線
108半導(dǎo)體集成電路
216密鑰變換控制部
217密鑰變換控制標(biāo)記
300密鑰變換處理設(shè)定解密電路
301選擇器
302與門
303認(rèn)證標(biāo)記(KaO)
304認(rèn)證標(biāo)記(KbO) 305同一目標(biāo)標(biāo)記 306密鑰生成標(biāo)記(Ka2) 307密鑰生成標(biāo)記(Kbl) 500目標(biāo)機器l 600目標(biāo)機器2 1300主機 1301目標(biāo)機器 1302機密信息處理部 1303工件區(qū)域
具體實施例
以下,參照

本發(fā)明的實施例。 (實施例1)
在實施例1說明本發(fā)明的密鑰變換方法。圖2示出由主機100和 目標(biāo)機器101構(gòu)成的機密信息處理系統(tǒng)整體的結(jié)構(gòu)。
主機ioo包括機密信息處理部102,根據(jù)規(guī)定的控制序列對機密
信息(以下表示密鑰等在明文狀態(tài)下不允許不正當(dāng)使用的信息)進行加
密或解密;主CPU103,對機密信息處理部102起動規(guī)定的控制序列; 主接口部104,在與主CPU103、目標(biāo)機器101以及機密信息處理部102 之間輸入并輸出數(shù)據(jù);目標(biāo)接口部105,與目標(biāo)機器101之間輸入并輸 出數(shù)據(jù);工作區(qū)域106,是工作用區(qū)域,用于暫時存儲數(shù)據(jù),該數(shù)據(jù)用
于主CPU103或機密信息處理部102的工作;以及內(nèi)部總線107。并且, 機密信息處理部102與主接口部104以及目標(biāo)接口部105 —起被構(gòu)成 為半導(dǎo)體集成電路108,該半導(dǎo)體集成電路108是被隱藏化的硬件。而 且,也可以是,通過向所述構(gòu)成要素追加主CPU103來構(gòu)成被隱藏化 的半導(dǎo)體集成電路。
并且,在主機100與目標(biāo)機器101之間讀出并寫出密鑰等機密信 息的情況下,需要在主機]00與目標(biāo)機器101之間進行認(rèn)證處理。而 且,在此,進行認(rèn)證處理時可以采用私密鑰加密方式及公密鑰加密方 式中的任一種加密方式。若認(rèn)證成功,則主機IOO通過目標(biāo)接口部105 從目標(biāo)機器101讀出機密信息,并用機密信息處理部102對機密信息 進行解密,從而使用此結(jié)果。并且,由主CPU103起動機密信息處理 部102的工作,起動后,只進行可確保安全性的、或安全必要性較低 的規(guī)定序列。
在此,主機接口部104和目標(biāo)接口部105的結(jié)構(gòu)為對于在由機 密信息處理部102進行的序列的中途生成的中間信息中機密性較高的 信息(明文狀態(tài)的機密信息等),不將其輸出到被隱藏化的半導(dǎo)體集成電 路108外部。
并且,可以在同一半導(dǎo)體片上構(gòu)成機密信息處理部102和主 CPU103,也可以在不同的半導(dǎo)體片上構(gòu)成機密信息處理部102和主 CPU103。
圖3示出本發(fā)明的密鑰變換處理的實施例之一。對于與圖2相同 的要素使用相同符號。在圖3中作為本發(fā)明的實施例之一說明以下情
況在目標(biāo)機器101存儲三個加密密鑰(Enc(Kal,KaO), Enc(Ka2,Kal), Enc(Kc,Ka2)),并且,在同一目標(biāo)機器101存儲二個加密密鑰 (Enc(Kbl,KbO), Enc(Kb2,Kbl))的狀態(tài)下,對Enc(Kc,Ka2)進行密鑰變 換處理,從而獲得Enc(Kc,Kbl)。而且,在該圖中為了簡化說明省略了 在圖2中的主接口部104、目標(biāo)接口部105以及內(nèi)部總線107。而且, 在圖3的說明中看起來解密202、 205、 209以及213的解密電路相互 不同,不過,這是因為為了沿著序列簡化而說明的,實際上在很多情 況下沿著序列多次使用同一解密電路。在此情況下需要,將用于解密 的、或解密后所生成的各個密鑰存儲在從外部不能訪問的區(qū)域。并且, 在加密和解密的方式之間存在相關(guān)性的情況下,可以共享加密和解密 的電路的一部分或全部。并且,在此假設(shè),在進行密鑰變換處理之前,對目標(biāo)機器的認(rèn)證 處理己經(jīng)結(jié)束,并在機密信息處理部102生成了認(rèn)證密鑰Ka0(200)。 并且假設(shè),存儲在目標(biāo)機器101的Enc(Kal,Ka0)201暫時被存儲到工作 區(qū)域06后,作為IN1被輸入到的機密信息處理部102,并用認(rèn)證密鑰 Ka0(200)來解密202,從而生成Kal(203),而且,存儲在目標(biāo)機器101 的Enc(Ka2,Ka1)204暫時被存儲到工作區(qū)域106后,作為IN2被輸入到 的機密信息處理部102,并用Kal(203)來解密205,從而生成Ka2(206)。 并且假設(shè),與上述相同,對目標(biāo)機器進行其它認(rèn)證處理后,在機密信 息處理部102生成了認(rèn)證密鑰Kb0(207)。假設(shè),存儲在目標(biāo)機器101 的Enc(KM,Kb0)208暫時被存儲到工作區(qū)域106后,作為IN3被輸入 到的纟幾密信息處理部.102,并用認(rèn)證密鑰KbO(207)來解密209,從而
成Kbl(210)。而且,不一定需要將這些Enc(Kal,Ka0)201 , Enc(Ka2,Ka1)204以及Enc(Kb 1 ,Kb0)208暫時存儲到工作區(qū)域106,也 可以將這些Enc(Kal,Ka0)201 , Enc(Ka2,Ka1)204以及Enc(Kbl,Kb0)208 直接從目標(biāo)機器101輸入到機密信息處理部102。并且假設(shè),在認(rèn)證處理后,已經(jīng)將Enc(Kc,Ka2)211從目標(biāo)機器101 存儲到主機100的工作區(qū)域106,將Enc(Kc,Kb1)212存儲到工作區(qū)域 106,該Enc(Kc,Ka2)211在密鑰變換處理時被輸入,該Enc(Kc,Kb1)212 在密鑰變換處理時被輸出。而且假設(shè),被存儲到工作區(qū)域后,重新被 存儲到目標(biāo)機器。而且,不一定需要將這些Enc(Kc,Ka2)211或 Enc(Kc,Kb1)212暫時存儲到工作區(qū)域106,也可以將這些 Enc(Kc,Ka2)211或Enc(Kc,Kb1)212直接從目標(biāo)機器101輸入到機密信 息處理部102,或者直接從機密信息處理部102輸入到目標(biāo)機器101 。以下,說明進行密鑰變換處理時的機密信息處理部02的工作。 在圖3中假設(shè),在機密信息處理部102設(shè)定用于進行密鑰變換處理的 控制序列,并且,主CPU103使該控制序列起動,通過該密鑰變換處 理將Enc(Kc,Ka2)變換為Enc(Kc,Kbl)。據(jù)此,開始密鑰變換處理。在密鑰變換處理中,首先用于對Kc進行加密以及解密的密鑰(生 成在機密信息處理部102的Ka2(206)以及Kbl(210))被設(shè)定在用于進行 解密的電路以及用于進行加密的電路。而且,其次將Enc(Kc,Ka2)211 輸入到機密信息處理部102,用Ka2(206)對輸入后的該密鑰進行解密處 理213。如此通過用Ka2(206)進行解密,從而在機密信息處理部102 生成未加密的Kc214。此時,主CPU103無^i訪問保存在機密信息處理部102的該密鑰。該實際安裝的例子有如下方法,即,將Kc214存儲 到主CPU103無法訪問的寄存器。而且,也可以是,密鑰變換處理后 在機密信息處理部102消除Kc214。而且,用Kbl(210)對Kc214進行 加密處理2]5。通過該加密處理215從機密信息處理部102輸出 Enc(Kc,Kb1)212。通過以上處理結(jié)束密鑰變換處理。并且,圖3所示的密鑰變換控制程序216或密鑰變換控制標(biāo)記217 控制,在密鑰變換處理中的加密處理2]5或解密處理213。在此,密鑰 變換控制部216是一種電路,用于向進行加密處理215或解密處理213 的電路生成如下信號,即,用于設(shè)定在各個電路所使用的密鑰的信號、 以及對各個電路的有效信號。而且假設(shè),在此,有效信號是一種信號, 用于使各個電路在輸入該信號的期間可以執(zhí)行加密和解密。并且,密 鑰變換控制標(biāo)記217,在主CPU103使密鑰變換處理的控制序列起動時, 被密鑰變換控制部216讀出,并且,作為生成有效信號的條件被使用。在此,本發(fā)明的密鑰變換控制標(biāo)記217包括三種標(biāo)記,第一個標(biāo) 記是用于表示對每個目標(biāo)機器是否進行了認(rèn)證處理的標(biāo)記(以下,稱為 "認(rèn)證標(biāo)記"),并且用于確認(rèn)每個目標(biāo)機器不是不正當(dāng)?shù)臋C器,所述 每個目標(biāo)機器是將在密鑰變換處理時被輸入的加密密鑰存儲的目標(biāo)機 器,以及將在密鑰變換處理時被輸出的加密密鑰存儲的目標(biāo)機器。在 圖3的例子中假設(shè),在進行了每個認(rèn)證的情況下該標(biāo)記成為1。第二個標(biāo)記是用于表示對同一目標(biāo)機器是否進行了兩個認(rèn)證處理 的標(biāo)記(以下,稱為"同一目標(biāo)標(biāo)記"),在需要將密鑰變換處理時被輸 入的加密密鑰或被輸出的加密密鑰存儲到同一目標(biāo)機器的情況下,用 于確認(rèn)是否對同一目標(biāo)機器進行了認(rèn)證處理。在圖3的例子中假設(shè), 在對同一目標(biāo)機器進行了認(rèn)證的情況下該標(biāo)記成為1。而且,作為用于 確認(rèn)是同一目標(biāo)機器的方法的一個例子有如下方法,即,在進行每個 認(rèn)證處理時,將目標(biāo)機器特有的識別號碼保存到機密信息處理部102, 通過確認(rèn)所保存的這些識別號碼是否相同,從而判斷是否同一目標(biāo)機 器。第三個標(biāo)記是用于表示在密鑰變換處理時在每個機密信息處理部 是否生成了用于進行解密以及加密的密鑰(在圖3中為Ka2(206)以及 Kbl(210))的標(biāo)記(以下,稱為"密鑰生成標(biāo)記"),在圖3的例子中, 用于確認(rèn)在未生成Ka2(206)或Kbl(210)的狀態(tài)下,即在Ka2-0或Kbl-0 等的狀態(tài)下不進行解密或加密。在圖3的例子中假設(shè),在生成了密鑰 的情況下該標(biāo)記成為1。而且,作為用于確認(rèn)生成了密鑰的方法有如下 方法,S卩,在圖3的Ka2(206)為例子時,在機密信息處理部102保存 對生成Ka2所需要的解密處理(在圖3中為解密處理202以及解密處理 205)都進行了的事宜,根據(jù)這些結(jié)果確認(rèn)是否進行了需要的所有的解密 處理。圖4示出在圖3中用于密鑰變換處理的密鑰變換控制部216和密 鑰變換控制標(biāo)記217的結(jié)構(gòu)的例子。密鑰變換控制部216,從主CPU03 輸入密鑰變換處理設(shè)定,并且向密鑰電路輸出密鑰選擇信號以及有效 信號,該密鑰變換處理設(shè)定用于設(shè)定使機密信息處理部102起動哪些 密鑰變換處理。并且,密鑰變換控制部216包括密鑰變換設(shè)定解密 電路300,用于對密鑰變換處理設(shè)定進行解密;選擇器301,將從解密 電路輸出的信號作為選擇信號;以及與門302用于向選擇器301的輸 入。在此,例如,密鑰變換設(shè)定解密電路300包括寄存器,用于保 存來自主CPU103的密鑰變換處理設(shè)定;以及電路,用于將這些寄存 器的值變換為由機密信息處理部102使用的內(nèi)部控制信號。并且,由 與門302輸入標(biāo)記,該標(biāo)記是為了不使由主CPU103起動的密鑰變換 處理不正當(dāng)?shù)剡M行所需要的。在此,說明在圖3的情況下所需要的標(biāo)記。圖3的處理中使用由 認(rèn)證密鑰Ka0(200)生成的Ka2(206)以及由認(rèn)證密鑰Kb0(207)生成的 Kbl(210)。為此,需要生成認(rèn)證密鑰Ka0(200)的認(rèn)證處理以及生成成 認(rèn)證密鑰Kb0(207)的認(rèn)證處理都結(jié)束。為此,需要認(rèn)證標(biāo)記(Ka0)303 以及認(rèn)證標(biāo)記(KbO)304被使用,并且這些都成為l。并且假設(shè),在圖3 的情況下,在同一目標(biāo)機器存儲密鑰變換處理時被輸入的 Enc(Kc,Ka2)211和被輸出的Enc(Kc,Kb1)212。為此,需要同一目標(biāo)標(biāo) 記305被使用,并且該值都成為1。而且,在不是同一目標(biāo)機器內(nèi)的密 鑰變換處理的情況下,作為為了生成有效信號的條件不使用同一目標(biāo) 標(biāo)記305。并且,在密鑰變換處理中,由于需要在機密信息處理部102 生成了 Ka2(206)以及Kb1(210),因此需要密鑰生成標(biāo)記(Ka2)306以及 密鑰生成標(biāo)記(Kb1)307被使用,并且這些都成為1。因此,在圖3中 所示,在主CPU103進行了用于進行密鑰變換處理的密鑰變換處理設(shè) 定的情況下,與門302的輸出被選擇為選擇器301的輸出,該與門302 輸入所述五個標(biāo)記。為此,只在這些五個標(biāo)記都成為1的情況下可以 使用加密電路。而且,不一定需要包括所有的所述五個標(biāo)記。例如,
在某系統(tǒng)中,即使只存在認(rèn)證標(biāo)記以及密鑰生成標(biāo)記中的任一個,也 可以使安全性達到一定的水平。并且,在存在只允許在同一目標(biāo)機器的密鑰變換的模式的情況下需要同一目標(biāo)標(biāo)記305,不過,在不存在該 模式的情況下不一定需要同一目標(biāo)標(biāo)記305。然而,在此,在存在兩個 插口的情況下,最好是包括同一目標(biāo)標(biāo)記305,對于該理由以后在實施 例2中說明。而且,CPU不能直接重寫這些標(biāo)記,而是接受各個處理結(jié)果后通 過硬件在機密信息處理部內(nèi)重寫的。其次,參照圖5的流程圖說明圖3所示的密鑰變換處理的順序。 如對圖3的說明中所示,在本發(fā)明的密鑰變換處理中,首先由主CPU103 進行密鑰變換處理設(shè)定400。據(jù)此,起動在機密信息處理部102執(zhí)行的 密鑰變換處理。其次,對密鑰變換控制部216進行密鑰變換控制標(biāo)記 讀出401。讀出后,對機密信息處理部102進行Enc(Kc,Ka2)輸入402。 然后,根據(jù)讀出后的標(biāo)記,確認(rèn)是否滿足為了在機密信息處理部102 不進fi^不正當(dāng)?shù)奶幚淼臈l件。在圖5中,這些確認(rèn)處理相當(dāng)于條件轉(zhuǎn) #403至條件轉(zhuǎn)移407。而且,若可以確認(rèn)不進行不正當(dāng)?shù)奶幚?,則進 行確認(rèn)的順序不僅限于圖5所示的順序。如對圖3的密鑰變換控制標(biāo)記的說明中所示,在圖5中進行五個 確認(rèn)。首先,作為對目標(biāo)機器的認(rèn)證的條件,在條件轉(zhuǎn)移403確認(rèn), 是否對存儲Enc(Kc,Ka2)211的目標(biāo)機器進行了生成認(rèn)證密鑰Ka0(200) 的認(rèn)證處理,該Enc(Kc,Ka2)211在密鑰變換處理時被輸入。據(jù)此,確 認(rèn)進行了生成認(rèn)證密鑰Ka0(200)的認(rèn)證處理,并且,確認(rèn)存儲Enc(Kc,Ka2)211的目標(biāo)機器不是不正當(dāng)?shù)臋C器。其次,在條件轉(zhuǎn)移404 確認(rèn),是否對存儲Enc(Kc,Kb1)212的目標(biāo)機器進行了生成認(rèn)證密鑰 Kb0(207)的認(rèn)證處理,該Enc(Kc,Kb1)212在密鑰變換處理時被輸出。 據(jù)此,確認(rèn)進行了生成認(rèn)證密鑰Kb0(207)的認(rèn)證處理,并且,確認(rèn)存 儲Enc(Kc,Kb1)212的目標(biāo)機器不是不正當(dāng)?shù)臋C器。其次,如對同一目標(biāo)機器的說明中所示,由于在圖3的例子中以 在同一目標(biāo)機器內(nèi)進行密鑰變換處理的情況為前提,因此在條件轉(zhuǎn)移 405確認(rèn)是否對同一目標(biāo)機器進行了執(zhí)行后的兩個認(rèn)證處理。據(jù)此,確 認(rèn)是否在同一 目標(biāo)機器內(nèi)進行密鑰變換處理。并且,如在密鑰生成標(biāo)記的說明中所示,在條件轉(zhuǎn)移406以及條 件轉(zhuǎn)移407確認(rèn)在機密信息處理部102生成了 Ka2(206)以及Kb1(210)。 據(jù)此,確認(rèn)在未生成Ka2(206)以及Kbl(210)的狀態(tài)下,即在Ka2-0以 及KbbO等的狀態(tài)下,不進行解密以及加密。在進行了以上確認(rèn)的情況下,確認(rèn)沒有不正當(dāng)?shù)貓?zhí)行由主CPU103 設(shè)定的密鑰變換處理。為此,確認(rèn)后對被輸入的Enc(Kc,Ka2)進行變換 處理408(在圖3中用Ka2(206)進行解密、用Kbl(210)進行加密的處理)。 在該期間內(nèi),從密鑰變換控制部216向進行加密處理215和解密處理 213的電路輸出有效信號。而且,變換處理后,進行Enc(Kc,Kbl)輸出 409。輸出后,密鑰變換處理結(jié)束。如上所述,通過采用圖3以及圖5的處理來執(zhí)行密鑰變換處理。 而且,在圖3的例子中說明了如下情況,SP,在目標(biāo)機器存儲 {Enc(Kal,KaO),Enc(Ka2,Kal),Enc(Kc,Ka2)}、且在同一 目標(biāo)機器存儲 《Enc(Kbl,KbO),Enc(Kb2,Kbl))的狀態(tài)下,對Enc(Kc,Ka2)211進行密鑰 變換處理,從而獲得Enc(Kc,Kb1)212。然而,本發(fā)明不僅限于此情況。 例如,也可以是如下情況,即,存在用Ka2來加密后的多個內(nèi)容密鑰, 并且希望在將通過其它認(rèn)證處理獲得的KbO作為認(rèn)證密鑰的機密信息 處理方法上使用這些所有的內(nèi)容密鑰。在該情況下,若將對各個內(nèi)容 密鑰進行加密的密鑰變換為Kbl,則需要進行與內(nèi)容密鑰的數(shù)量相同 次數(shù)的密鑰變換處理。據(jù)此,進行密鑰變換處理,以使將Enc(Ka2,Kal) 變換為Enc(Ka2,KbO)。于是,只進行一次密鑰變換處理,在將KbO作 為認(rèn)證密鑰的機密信息處理方法上使用所有的內(nèi)容密鑰,針對該內(nèi)容 密鑰將Ka2作為用于進行加密的密鑰。而且,也可以是將Enc(Ka,KbO) 變換為Enc(Kal,KaO)。然而,在此情況下,用認(rèn)證密鑰KbO來解密為 Kc的次數(shù)與用Kbl來解密時的次數(shù)相比變多。因此,優(yōu)選的是,在如 下情況下將Enc(Ka2,KbO)變換為Enc(Ka2,Kal),艮卩,由機密信息處理 部按照認(rèn)證密鑰管理該解密次數(shù),并且,不輸出進行所管理的次數(shù)以 外的解密后獲得的結(jié)果。于是,也可以是如下結(jié)構(gòu),即,將上述處理普遍化,在目標(biāo)機器 存儲m個(m是自然數(shù))的密鑰(Enc(Kal,KaO),…,Enc(Kam,Ka(m-l)》、還 存儲n個(n是自然數(shù))的密鑰(Enc(Kbl,KbO),...,Enc(Kbn,Kb(n-l)))的狀 態(tài)下,對內(nèi)容進行加密以及解密時使用Kam以及Kbn,將i以及j分 別作為滿足l《i《m, 1《j《n的自然數(shù),通過對Enc(Kai,Ka(i-I))進行 密鑰變換處理從而獲得Enc(Kai,Kb(j-l))。在此情況下,為了進行密鑰 變換處理,若在進行機密信息處理部的解密的電路使用Ka(i-l)、在進 行加密的電路使用Kb(j-l),并且作為密鑰變換標(biāo)記使用表示生成了 Ka(i-l)的事宜的標(biāo)記、以及表示生成了 Kb(j-l)的事宜的標(biāo)記,來代替 圖3中的密鑰以及標(biāo)記,則可以實施與圖3相同的密鑰變換處理。于 是,也可以是,向機密信息處理部追加對應(yīng)于Ka(i-l)以及Kb(j-I)的密 鑰生成標(biāo)記,向密鑰變換控制部追加用于選擇該標(biāo)記的電路。并且, 若滿足m-i=n-j,則即使用認(rèn)證密鑰Kb0來解密的次數(shù)不變也可以對內(nèi) 容密鑰進行解密,因此滿足m-i-n-j為好。 (實施例2)其次說明實施例2。對于基本整體結(jié)構(gòu),與圖2相同,因此省略說明。在實施例2中說明,本發(fā)明涉及的認(rèn)證用標(biāo)記的消除、以及認(rèn)證 密鑰的消除。圖6及圖7示出,通過進行生成認(rèn)證密鑰Ka0的認(rèn)證用 標(biāo)記的消除、以及認(rèn)證密鑰的消除,從而可以防止因插拔不正當(dāng)?shù)哪?標(biāo)機器而產(chǎn)生的不正當(dāng)處理。對于與圖2相同的要素使用相同符號。 而且,在圖6、圖7的說明中看起來解密503、 506、 604以及606的解 密電路相互不同,不過,這是因為為了沿著序列簡化而說明的,實際 上在很多情況下沿著序列多次使用同一解密電路。在此情況下需要, 將用于解密的、或解密后所生成的各個密鑰存儲在從外部不能訪問的 區(qū)域。并且,在加密和解密的方式之間存在相關(guān)性的情況下,可以共 享加密和解密的電路的一部分或全部。假設(shè),在圖6中表示如下狀態(tài),g卩,目標(biāo)機器1(500)被插入到主 機100 ,在目標(biāo)機器存儲三個加密密鑰{Enc(Kal,KaO),Enc(Ka2,Kal),Enc(Kc,Ka2)}。并且假設(shè),在圖7中表示 如下狀態(tài),即,目標(biāo)機器1(500)從主機100被拔掉,目標(biāo)機器2(600) 取代目標(biāo)機器(500)被插入到主機100,在目標(biāo)機器存儲一個加密密鑰 Enc(Kbl,KbO)。在此,本實施例的目的在于提供一種結(jié)構(gòu),艮卩,即使 主CPU103要進行不正當(dāng)?shù)奶幚頃r也可以確保安全性。因此,如下假 設(shè),在主CPUI03的工件區(qū)域106存儲的三個加密密鑰 (Enc(Kal,KaO),Enc(Ka2,Kal),Enc(Kc,Ka2))從工件區(qū)域06不被消除。 而且假設(shè),參照圖6及圖7,用由KaO生成的Ka2和由認(rèn)證KbO生成 的Kbl對Kc進行密鑰變換處理。如此,在圖6及圖7中說明,在進 行密鑰變換處理吋更換目標(biāo)機器的情況下^a密信息處理部102進行的 工作。而且假設(shè),在此需要對同一目標(biāo)機器進行密鑰變換處理。因此, 若進行了目標(biāo)機器的插拔,則該插拔成為不正當(dāng)?shù)奶幚?。首先,如圖6,在目標(biāo)機器1(500)被插入的狀態(tài)下進行認(rèn)證,若目 標(biāo)機器1(500)是正當(dāng)?shù)臋C器,則在機密信息處理部生成認(rèn)證密鑰 KaO(501),并且由認(rèn)證標(biāo)記(KaO)508保存進行了生成認(rèn)證密鑰Ka0(501) 的事宜。其次,假設(shè),存儲在目標(biāo)機器l的Enc(Kal,KaO)502暫時被存 儲到工作區(qū)域106后,作為IN1被輸入到的機密信息處理部102,并用 認(rèn)證密鑰Ka0(501)來解密503,從而生成Kal(504),而且,存儲在目 標(biāo)機器1的Enc(Ka2,Ka1)505暫時被存儲到工作區(qū)域106后,作為IN2 被輸入到的機密信息處理部102,并用認(rèn)i正密鑰Kal(504)來解密506, 從而生成Ka2(507)。而且,不一定需要將這些Enc(Kal,Ka0)502以及 Enc(Ka2,Ka1)505暫時存儲到工作區(qū)域106,也可以將這些 Enc(Kal,Ka0)502以及Enc(Ka2,Ka1)505直接從目標(biāo)機器500輸入到機 密信息處理部102。再者假設(shè),將存儲在目標(biāo)機器1(500)的Enc(Kc,Ka2)509已經(jīng)存儲 在主機100的工作區(qū)域106。而且,不一定需要將Enc(Kc,Ka2)暫時存 儲到工作區(qū)域106,也可以將Enc(Kc,Ka2)直接從目標(biāo)機器500輸入到 機密信息處理部02。在此假設(shè),如圖7所示,從主機100拔掉目標(biāo)機器1(500),并目 標(biāo)機器2(600)取代目標(biāo)機器1(500)被插入。而且,在此,以對同一目標(biāo) 機器進行密鑰變換處理為前提。因此,該插拔成為不正當(dāng)?shù)牟灏?。?如此情況下,在本發(fā)明的密鑰變換處理中,通過目標(biāo)機器被拔掉,將 對該目標(biāo)機器的認(rèn)證消除,以及將在進行認(rèn)證處理時由機密信息處理 部102生成的認(rèn)證密鑰消除。并且,在機密信息處理部102生成了用 認(rèn)證密鑰生成的密鑰(Kal(504)和Ka2(507》的情況下,可以消除這些密 鑰。在此,認(rèn)證的消除是指認(rèn)證標(biāo)記的消除,在圖7的例子中認(rèn)證的 消除是指將認(rèn)證標(biāo)記(Ka0)508作為0的處理。并且認(rèn)證密鑰的消除是 指,在圖7的例子中,針對目標(biāo)機器1(500)的認(rèn)證密鑰KaO(501)設(shè)定 KaO=0的處理等。而且,這些信息的消除方法有由機密信息處理部 102檢測目標(biāo)機器被拔掉,并在機密信息處理部102進行消除的方法; 以及由主CPU103檢測目標(biāo)機器被拔掉,并由主CPU103起動控制序 列,以使機密信息處理部102進行消除的方法。其次,在圖7的例子中假設(shè),對目標(biāo)機器2(600)進行了生成認(rèn)證
密鑰Kb0(601)的認(rèn)證處理。若目標(biāo)機器2(600)是正當(dāng)?shù)臋C器,貝性成 認(rèn)證密鑰Ka0(601),并且由認(rèn)證標(biāo)記(Ka0)602保存成功了生成認(rèn)證密 鑰Ka0(602)的信息。而且假設(shè),存儲在目標(biāo)機器2(600)的 Enc(Kbl,Kb0)603暫時被存儲到工作區(qū)域106后,作為IN3被輸入到的 機密信息處理部102,并用認(rèn)證密鑰KbO(601)來解密604,從而生成 Kbl(605)。而且,不一定需要將該Enc(Kbl,Ka0)603暫時存儲到工作區(qū) 域106,也可以將該Enc(Kbl,Ka0)603直接從目標(biāo)機器600輸入到機密 信息處理部102。假設(shè),在此狀態(tài)下,由主CPU103起動將Enc(Kc,Ka2)變換為 Enc(Kc,Kbl)的密鑰變換處理,存儲在工件區(qū)域106的Enc(Kc,Ka2)509 被輸入。在進行了這些處理的情況下,機密信息處理部保存認(rèn)證標(biāo)記 (Ka0)508是0的信息,即保存未進行生成認(rèn)證密鑰KaO的認(rèn)證處理的 事宜。據(jù)此,由于向使用Ka2(507)迸行解密的加密電路未生成有效信 號,因此不進行加密處理606,從而不能獲得Kc。并且,向?qū)c進行 加密處理607的加密電路也未生成有效信號。然而,在此,若未消除對目標(biāo)機器1(500)進行了認(rèn)證的事宜,則 目標(biāo)機器1(500)被拔掉后也機密信息處理部102的認(rèn)證標(biāo)記(KaO)508 仍然是l。于是,通過對其次被插入的目標(biāo)機器2(600)進行認(rèn)證,從而 認(rèn)證標(biāo)記(Kb0)602成為1 。在此,參照圖4,由于密鑰本身是通過認(rèn)證 可以正當(dāng)存在的,因此密鑰生成標(biāo)記(Ka2)306和密鑰生成標(biāo)記(Kb1)307 也會成為l。據(jù)此,存在起動不正當(dāng)?shù)拿荑€變換處理的可能性。并且,在此,以存在兩個插口的情況為例子,對同一目標(biāo)標(biāo)記305 的可用性進行說明。在該情況下,若在第一插口成功目標(biāo)機器1的認(rèn)證、在第二插口成功目標(biāo)機器2的認(rèn)證,則認(rèn)證標(biāo)記(Ka0)508和認(rèn)證 標(biāo)記(Kb0)602成為1,從而可以正當(dāng)?shù)厣擅荑€本身。因此,存在如 下可能性,即,通過由CPU使不正當(dāng)?shù)奶幚砥饎?,從而進行不正當(dāng)?shù)?密鑰變換。然而,通過設(shè)置同一目標(biāo)標(biāo)記,并只對同一目標(biāo)機器允許 密鑰變換,從而不能進行這些不正當(dāng)?shù)奶幚?。而且,對于同一目?biāo)標(biāo) 記的更新方法,可以是在實施例1中說明的使用特有的識別號碼的安 裝方法,也可以是保存對哪個插口進行了每個認(rèn)證處理的信息的安裝 方法。根據(jù)這些安裝方法,在主機存在兩個插口、并且不同目標(biāo)機器 被插入到每個插口的情況下,由于插口不同因此可以判斷為各個目標(biāo) 機器是不同目標(biāo)機器,從而在如上所述的情況下也可以防止使不正當(dāng) 的處理起動。當(dāng)然,在將目標(biāo)機器拔掉后再插入了的情況下,由于認(rèn) 證標(biāo)記被消除因此不能進行不正當(dāng)?shù)奶幚?。因此,如圖6及圖7所示,在將目標(biāo)機器從主機IOO拔掉的情況 下,通過將成功對該目標(biāo)機器的認(rèn)證的信息消除、或?qū)⒄J(rèn)證密鑰消除, 從而可以防止不正當(dāng)?shù)拿荑€變換處理。 (實施例3)其次說明實施例3。對于基本整體結(jié)構(gòu),與圖2相同,因此省略說明。在實施例3中說明,本發(fā)明涉及的密鑰變換處理方法。圖8是示 出本發(fā)明涉及的密鑰變換處理的實施例之一的圖。對于與圖2以及圖3 相同的要素使用相同符號。在圖8中作為本發(fā)明的實施例之一說明下
列情況在目標(biāo)機器 ioi 存儲三個力b密齊鑰{Enc(Kal,KaO),Enc(Ka2,Kal),Enc(Kc,Ka2)}的狀態(tài)下,通過使用存儲在 機密信息處理部的主密鑰Kh對Enc(Kc,Ka2)進行密鑰變換處理,從而 獲得Enc(Kc,Kh),該主密鑰Kh不會被外部讀出。在此,作為將主密鑰 Kh存儲到機密信息處理部的方法有如下方法,bp,在制造半導(dǎo)體集成 電路時安裝到機密信息處理部內(nèi)部的方法;或者,在被加密的狀態(tài)下 通過電子分發(fā)等從半導(dǎo)體集成電路外部輸入到半導(dǎo)體集成電路內(nèi)部, 并在半導(dǎo)體集成電路內(nèi)部進行解密從而存儲到機密信息處理部內(nèi)部的 方法。在后述的實施例4中也與此相同。而且,在圖8的說明中看起 來解密702、 705、 710的解密電路不同,不過,這是因為為了沿著序 列簡化而說明的,實際上在很多情況下沿著序列多次使用同一解密電 路。在此情況下需要,將用于解密的、或解密后所生成的各個密鑰存 儲在從外部不能訪問的區(qū)域。并且,在加密和解密的方式之間存在相 關(guān)性的情況下,可以共享加密和解密的電路的一部分或全部。在此,Enc(Kc,Kh)不是存儲在目標(biāo)機器,而是存儲在例如硬盤等存 儲裝置。作為該密鑰變換處理的使用例子,可以對存儲在目標(biāo)機器的 Kc進行備份。通過這些處理,由于備份后的Kc作為Enc(Kc,KJi)被保 存,因此只具有Kh的主機可以對Enc(Kc,Kh)進行解密,即,只進行了 備份的主機可以對Enc(Kc,Kh)進行解密。并且,在圖8中假設(shè),對目標(biāo)機器101的認(rèn)證處理已經(jīng)結(jié)束,并 在機密信息處理部102生成了認(rèn)證密鑰Ka0(700)。并且假設(shè),存儲在 目標(biāo)機器101的Enc(Kal,Ka0)701暫時被存儲到工作區(qū)域106后,作為 IN1被輸入到的機密信息處理部02,并用認(rèn)證密鑰Ka0(700)來解密 702,從而生成Kal(703),而且,存儲在目標(biāo)機器101的Enc(Ka2,Ka1)704 暫時被存儲到工作區(qū)域106后,作為IN2被輸入到的機密信息處理部 102,并用Kal(703)來解密705,從而生成Ka2(706)。而且,不一定需 要將這些Enc(Kal,Ka0)701以及Enc(Ka2,Ka1)704暫時存儲到工作區(qū)域 106,也可以將這些Enc(Kal,Ka0)701以及Enc(Ka2,Ka1)704直接從目 標(biāo)機器101輸入到機密信息處理部102。并且假設(shè),在認(rèn)證處理后,已經(jīng)將Enc(Kc,Ka2)707從目標(biāo)機器101 存儲到主機100的工作區(qū)域106,將Enc(Kc,Kh)708存儲到工作區(qū)域 106,該Enc(Kc,Ka2)707在密鑰變換處理時被輸入,該Enc(Kc,Kh)708 在密鑰變換處理時被輸出。而且假設(shè),被存儲到工作區(qū)域后,重新被 存儲到主機100的存儲裝置等。而且,不一定需要將被輸入的 Enc(Kc,Ka2)暫時存儲到工作區(qū)域106,也可以將Enc(Kc,Ka2)直接從目 標(biāo)機器101輸入到機密信息處理部102。以下,說明用Ka2(706)及Kh709進行密鑰變換處理時的機密信息 處理部102的工作。在圖8中假設(shè),在機密信息處理部102設(shè)定用于 進行密鑰變換處理的控制序列,并且,主CPU103使該控制序列起動, 通過該密鑰變換處理將Enc(Kc,Ka2)變換為Enc(Kc,Kh)。據(jù)此,開始密 鑰變換處理。在密鑰變換處理中,首先用于對Kc進行加密以及解密的密鑰(生 成在機密信息處理部102的Ka2(706)以及存儲在機密信息處理部102 的Kh709)被設(shè)定在用于進行解密的電路以及用于進行加密的電路。而 且,其次將Enc(Kc,Ka2)707輸入到機密信息處理部102,用Ka2(706) 對輸入后的該密鑰進行解密處理710。如此通過用Ka2(706)進行解密, 從而在機密信息處理部102生成未加密的Kc7U。此時,主CPU103 無法訪問保存在機密信息處理部102的該密鑰。該實際安裝的例子有 如下方法,艮卩,將Kc711存儲到主CPU103無法訪問的寄存器。而且, 也可以是,密鑰變換處理后在機密信息處理部102消除Kc711。而且, 用Kh709對Kc711進行加密處理712。通過該加密處理712從機密信 息處理部102輸出Enc(Kc,Kh)708。通過以上處理結(jié)束密鑰變換處理。 并且,與實施例1的情況相同,在密鑰變換處理中的加密處理712 或解密處理710,被圖8所示的密鑰變換控制部216或密鑰變換控制標(biāo) 記217控制。在此,說明在圖8的情況下需要的標(biāo)記。在圖8的處理 中使用由認(rèn)證密鑰KaO(700)生成的Ka2(706)。為此,需要己經(jīng)結(jié)束用 于生成認(rèn)證密鑰KaO(700)的認(rèn)證處理。為此,作為密鑰變換控制標(biāo)記 217之一需要認(rèn)證標(biāo)記(KaO)。而且,在圖8的情況下,由于不需要將 Enc(Kc,Ka2)707和Enc(Kc,Kh)708存儲到同一目標(biāo)機器,因此不需要 同一 目標(biāo)標(biāo)記,該Enc(Kc,Ka2)707是在密鑰變換處理時被輸入的,該 Enc(Kc,Kh)708是在密鑰變換處理時被輸出的。并且,在該密鑰換處理 中,需要在機密信息處理部102通過解密處理生成Ka2(706)。為此, 作為密鑰變換標(biāo)記217之一需要密鑰生成標(biāo)記(Ka2)。而且,由于Kh709 是預(yù)先存儲在主機100的密鑰,因此不需要對Kh709的生成標(biāo)記。因 此,在圖8中所示,在主CPU103進行了用于進行密鑰變換處理的密 鑰變換處理設(shè)定的情況下,與門的輸出被選擇為圖4所示的選擇器301
的輸出,該與門輸入認(rèn)證標(biāo)記(KaO)以及密鑰生成標(biāo)記(Ka2)的兩個標(biāo) 記。為此,只在這些兩個標(biāo)記都成為1的情況下可以使用加密電路。其次,參照圖9的流程圖說明圖8所示的密鑰變換處理的順序。 如實施例1中所示,在本發(fā)明的密鑰變換處理中,首先由主CPU103 進行密鑰變換處理設(shè)定800。據(jù)此,起動在機密信息處理部02執(zhí)行的 密鑰變換處理。其次,對密鑰變換控制部216進行密鑰變換控制標(biāo)記 讀出801。讀出后,對機密信息處理部102進行Enc(Kc,Ka2)輸入802。 然后,根據(jù)讀出后的標(biāo)記,確認(rèn)是否滿足為了在機密信息處理部102 不進行不正當(dāng)?shù)奶幚淼臈l件。在圖9中,這些確認(rèn)處理相當(dāng)于條件轉(zhuǎn) 移803至條件轉(zhuǎn)移804。而且,若可以確認(rèn)不進行不正當(dāng)?shù)奶幚恚瑒t進 行確認(rèn)的順序不僅限于圖9所示的順序。如對圖8的密鑰變換控制標(biāo)記的說明中所示,在圖9中進行兩個 確認(rèn)。首先,作為對目標(biāo)機器的認(rèn)證的條件,在條件轉(zhuǎn)移803確認(rèn), 是否對存儲Enc(Kc,Ka2)707的目標(biāo)機器進行了生成認(rèn)證密鑰Ka0(700) 的認(rèn)證處理,該Enc(Kc,Ka2)707在密鑰變換處理時被輸入。據(jù)此,確 認(rèn)進行了生成認(rèn)證密鑰KaO(700)的認(rèn)證處理,并且,確認(rèn)存儲 Enc(Kc,Ka2)707的目標(biāo)機器不是不正當(dāng)?shù)臋C器。并且,如在密鑰生成 標(biāo)記的說明中所示,在條件轉(zhuǎn)移804確認(rèn)在機密信息處理部102生成 了Ka2(706)。據(jù)此,確認(rèn)在未生成Ka2(706)的狀態(tài)下,即在Ka2i等 的狀態(tài)下,不進行解密。在進行了以上確認(rèn)的情況下,確認(rèn)沒有不正當(dāng)?shù)貓?zhí)行由主CPU03 設(shè)定的密鑰變換處理。為此,確認(rèn)后對被輸入的Enc(Kc,Ka2)進行變換
處理805(在圖8中用Ka2(706)進行解密、用Kh(709)進行加密的處理)。 在該期間內(nèi),從密鑰變換控制部216向進行加密處理712和解密處理 710的電路輸出有效信號。而且,變換處理后,進行Enc(Kc,Kh)輸出 806。輸出后,密鑰變換處理結(jié)束。如上所述,通過采用圖8以及圖9的處理來執(zhí)行密鑰變換處理。 而且,在圖8的例子中說明了如下情況,即,在目標(biāo)機器存儲 {Enc(Kal,KaO),Enc(Ka2,Kal),Enc(Kc,Ka2)} 的狀態(tài)下,對 Enc(Kc,Ka2)707進行密鑰變換處理,從而獲得Enc(Kc,Kh)708。于是, 也可以是如下結(jié)構(gòu),即,將上述處理普遍化,在目標(biāo)機器存儲m個(m 是自然數(shù))的密鑰(Enc(Kal,KaO),...,Enc(Kam,Ka(m-l)))的狀態(tài)下,對內(nèi) 容進行加密以及解密時使用Kam,將i作為滿足Ki《m的自然數(shù), 通過對Enc(Kai,Ka(i-l))進行密鑰變換處理從而獲得Enc(Kai,Kh)。在此 情況下,為了進行密鑰變換處理,若在進行機密信息處理部的解密的 電路使用Ka(i-l),在進行加密的電路使用Kh,并且作為密鑰變換標(biāo)記 使用表示生成了 Ka(i-l)的事宜的標(biāo)記,來代替圖8中的密鑰以及標(biāo)記, 則可以實施與圖8同一密鑰變換處理。于是,也可以是,向機密信息 處理部追加對應(yīng)于Ka(i-l)的密鑰生成標(biāo)記,向密鑰變換控制部追加用 于選擇該標(biāo)記的電路。 (實施例4)其次說明實施例4。對于基本整體結(jié)構(gòu),與圖2相同,因此省略說明。在實施例4中說明本發(fā)明的密鑰變換處理方法。圖IO示出本發(fā)明
的密鑰變換處理的實施例之一。對于與圖2及圖3相同的要素使用相同符號。在圖io中作為本發(fā)明的實施例之一說明以下情況在目標(biāo)機器101存儲兩個加密密鑰(Enc(Kbl,KbO), Enc(Kb2,Kbl))的狀態(tài)下,用 Kbl對Enc(Kc,Kh)進行密鑰變換處理,從而獲得Enc(Kc,Kbl)。而且, 在圖10的說明中看起來解密902、卯7的解密電路不同,不過,這是 因為為了沿著序列簡化而說明的,實際上在很多情況下沿著序列多次 使用同一解密電路。在此情況下需要,將用于解密的、或解密后所生 成的各個密鑰存儲在從外部不能訪問的區(qū)域。并且,在加密和解密的 方式之間存在相關(guān)性的情況下,可以共享加密和解密的電路的一部分 或全部。在此,與實施例3相同,Enc(Kc,Kh)不是存儲在目標(biāo)機器,而是存 儲在例如主機內(nèi)的硬盤等存儲裝置。作為該密鑰變換處理的使用例子 有,將備份在主機的Kc重新存儲到目標(biāo)機器的處理等。通過這些處理, 由于備份后的Kc作為Enc(Kc,Kli)被保存,因此只具有Kh的主機可以 對Enc(Kc,Kh)進行解密,即,只進行了備份的主機可以對Enc(Kc,Kh) 進行解密。并且,在圖10中假設(shè),對目標(biāo)機器101的認(rèn)證處理已經(jīng)結(jié)束,并 在機密信息處理部102生成了認(rèn)證密鑰Kb0(900)。并且假設(shè),存儲在 目標(biāo)機器101的Enc(Kbl,Kb0)901暫時被存儲到工作區(qū)域106后,作 為IN1被輸入到的機密信息處理部102,并用Kb0(900)來解密902,從 而生成Kbl(903)。而且,不一定需要將該Enc(KM,Kb0)901暫時存儲 到工作區(qū)域106,也可以將該Enc(Kbl,Kb0)901直接從目標(biāo)機器101輸102。并且假設(shè),己經(jīng)將Enc(Kc,Kh)904從主機100的存儲裝置存儲到工 作區(qū)域106,將Enc(Kc,Kb 1)905存儲到工作區(qū)域106,該Ennc(Kc,Kh)904 在密鑰變換處理時被輸入,該Enc(Kc,Kb 1)905在密鑰變換處理時被輸 出。而且假設(shè),被存儲到工作區(qū)域后,重新被存儲到目標(biāo)機器IOI。而 且,不一定需要將被輸出的Enc(Kc,Kb)暫時存儲到工作區(qū)域106,也 可以將Enc(Kc,Kbl)直接從機密信息處理部102輸出到目標(biāo)機器101。以下,說明用Kh卯6及Kbl(903)進行密鑰變換處理時的機密信息 處理部102的工作。在圖10中假設(shè),在機密信息處理部102設(shè)定用于 進行密鑰變換處理的控制序列,并且,主CPU103使該控制序列起動, 通過該密鑰變換處理將Enc(Kc,O)變換為Enc(Kc,Kbl)。在密鑰變換處理中,首先用于對Kc進行加密以及解密的密鑰(存 儲在機密信息處理部102的Kh906以及生成在機密信息處理部102的 Kbl(903》被設(shè)定在用于進行解密的電路以及用于進行加密的電路。而 且,其次將Enc(Kc,Kh)904輸入到機密信息處理部102,用Kh906對輸 入后的密鑰進行解密處理907。如此通過用Kah906進行解密,從而在 機密信息處理部102生成未加密的Kc908。此時,主CPU103無法訪問 保存在機密信息處理部102的該密鑰。該實際安裝的例子有如下方法, 即,將Kc908存儲到主CPU103無法訪問的寄存器。而且,也可以是, 密鑰變換處理后在機密信息處理部102消除Kc908。而且,用Kbl(903) 對Kc908進行加密處理909。通過該加密處理909從機密信息處理部 102輸出Enc(Kc,Kb1)905。通過以上處理結(jié)束密鑰變換處理。 并且,與實施例1的情況相同,在密鑰變換處理中的加密處理909 或解密處理907,被圖10所示的密鑰變換控制部216或密鑰變換控制 標(biāo)記217控制。在此,說明在圖10的情況下需要的標(biāo)記。在圖10的 處理中使用由認(rèn)證密鑰KaO(900)生成的Kb1(903)。為此,需要己經(jīng)結(jié) 束用于生成認(rèn)證密鑰Kb0(900)的認(rèn)證處理。為此,作為密鑰變換控制 標(biāo)記217之一需要認(rèn)證標(biāo)記(KbO)。而且,在圖10的情況下,由于不 需要將Enc(Kc,Kh)904和Enc(Kc,Kb 1)905存儲到同一目標(biāo)機器,因此 不需要同一目標(biāo)標(biāo)記,該Enc(Kc,Kh)904是在密鑰變換處理時被輸入 的,該Enc(Kc,Kbl)卯5是在密鑰變換處理時被輸出的。并且,在該密 鑰換處理中,需要在機密信息處理部102通過解密處理生成Kb1(903)。 為此,作為密鑰變換標(biāo)記217之一需要密鑰生成標(biāo)記(Kbl)。而且,由 于Kh906是預(yù)先存儲在主機100的密鑰,因此不需要對Kh906的生成 標(biāo)記。因此,在圖10中所示,在主CPU103進行了用于進行密鑰變換 處理的密鑰變換處理設(shè)定的情況下,與門的輸出被選擇為圖4所示的 選擇器301的輸出,該與門輸入認(rèn)證標(biāo)記(KbO)以及密鑰生成標(biāo)記(Kbl) 的兩個標(biāo)記。為此,只在這些兩個標(biāo)記都成為1的情況下可以使用加 密電路。其次,參照圖11的流程圖說明圖IO所示的密鑰變換處理的順序。 如在實施例l中說明,在本發(fā)明的密鑰變換處理中,首先由主CPU103 進行密鑰變換處理設(shè)定1000。據(jù)此,起動在機密信息處理部!02執(zhí)行 的密鑰變換處理。其次,對密鑰變換控制部217進行密鑰變換控制標(biāo) 記讀出1001。讀出后,對機密信息處理部102進行Enc(Kc,Kh)輸入1002。然后,根據(jù)讀出后的標(biāo)記,確認(rèn)是否滿足為了在機密信息處理 部102不進行不正當(dāng)?shù)奶幚淼臈l件。在圖11中,這些確認(rèn)處理相當(dāng)于 條件轉(zhuǎn)移1003以及條件轉(zhuǎn)移1004。而且,若可以確認(rèn)不進行不正當(dāng)?shù)?處理,則進行確認(rèn)的順序不僅限于圖1所示的順序。如對圖10的密鑰變換控制標(biāo)記的說明中所示,在圖11中進行兩 個確認(rèn)。首先,作為對目標(biāo)機器的認(rèn)證的條件,在條件轉(zhuǎn)移1003確認(rèn), 是否對存儲Enc(Kc,Kb 1)905的目標(biāo)機器進行了生成認(rèn)證密鑰Kb0(900) 的認(rèn)證處理,該Enc(Kc,Kbl)905在密鑰變換處理時被輸出。據(jù)此,確 認(rèn)進行了生成認(rèn)證密鑰KbO(900)的認(rèn)證處理,并且,確認(rèn)存儲 Enc(Kc,Kb1)905的目標(biāo)機器不是不正當(dāng)?shù)臋C器。并且,如在密鑰生成 標(biāo)記的說明中所示,在條件轉(zhuǎn)移1004確認(rèn)在機密信息處理部102生成 了Kbl(903)。據(jù)此,確認(rèn)在未生成Kbl(903)的狀態(tài)下,即在Kb^0等 的狀態(tài)下,不進行加密。在進行了以上確認(rèn)的情況下,確認(rèn)沒有不正當(dāng)?shù)貓?zhí)行由主CPU103 設(shè)定的密鑰變換處理。為此,確認(rèn)后對被輸入的Enc(Kc,Kh)進行變換 處理1005(在圖10中用Kh906進行解密、用Kbl(903)進行加密的處理)。 在該期間內(nèi),從密鑰變換控制部216向進行加密處理909和解密處理 907的電路輸出有效信號。而且,變換處理后,進行Enc(Kc,Kbl)輸出 1006。輸出后,密鑰變換處理結(jié)束。如上所述,通過采用圖10以及圖11的處理來執(zhí)行密鑰變換處理。 而且,在圖10的例子中說明了如下情況,gp,在目標(biāo)機器存儲 (Enc(Kbl,KbO),Enc(Kb2,Kbl))的狀態(tài)下,對Enc(Kc,Kh)904進行密鑰 變換處理,從而獲得Enc(Kc,Kb1)905。于是,也可以是如下結(jié)構(gòu),艮P, 將上述處理普遍化,在目標(biāo)機器存儲n個(n是自然數(shù))的密鑰 《Enc(Kbl,KbO),…,Enc(Kbn,Kb(n-l)))的狀態(tài)下,對內(nèi)容進行加密以及解 密時使用Kbn,將j作為滿足1《j《n的自然數(shù),通過對Enc(Kai,Kh) 進行密鑰變換處理從而獲得Enc(Kai,Kb(j-l))。在此情況下,為了進行 密鑰變換處理,若在進行機密信息處理部的加密的電路使用Kh,在進 行解密的電路使用Kb(j-l),并且作為密鑰變換標(biāo)記使用表示生成了 KbG-l)的事宜的標(biāo)記,來代替圖IO中的密鑰以及標(biāo)記,則可以實施與 圖10同一密鑰變換處理。于是,也可以是,向機密信息處理部追加對 應(yīng)于Kb(j-l)的密鑰生成標(biāo)記,向密鑰變換控制部追加用于選擇該標(biāo)記 的電路。(實施例5)其次說明實施例5。對于基本整體結(jié)構(gòu),與圖2相同,因此省略說明。在實施例5中說明,本發(fā)明的密鑰變換處理方法。圖12示出本發(fā) 明的密鑰變換處理的實施例之一。對于與圖2及圖3相同的要素使用 相同符號。在圖12中作為本發(fā)明的實施例之一說明以下狀態(tài)在目標(biāo) 機器101存儲加密密鑰Enc(Kal,KaO),而且,在同一目標(biāo)機器存儲兩 個加密密鑰(Enc(Kd2,Kal), Enc(Ke2,Ka1)),并且,存儲用Kd2以及 Ke2來加密后的密鑰Enc(Kc,Kd2)以及Enc(Ke3,Ke2)。而且,用Keb對 Enc(Kc,Kd2)進行密鑰變換處理,從而獲得Enc(Kc,Ke2)。如此,在實 施例5中說明,由同一認(rèn)證密鑰KaO生成的密鑰間的密鑰變換處理。
而且,在圖12的說明中看起來解密1102、 1105、 1108以及1II2的解 密電路不同,不過,這是因為為了沿著序列簡化而說明的,實際上在 很多情況下沿著序列多次使用同一解密電路。在此情況下需要,將用 于解密的、或解密后所生成的各個密鑰存儲在從外部不能訪問的區(qū)域。 并且,在加密和解密的方式之間存在相關(guān)性的情況下,可以共享加密 和解密的電路的一部分或全部。作為該密鑰變換處理的使用例子有如下用途,即,由于通過進行 該處理用于對Kc進行加密的密鑰Kd2變更為Ke2,因此不需要Kd2, 而且,通過從目標(biāo)機器消除不需要的Kd2,從而減少用于對Kc進行加 密的密鑰的數(shù)量等。并且,在圖12中假設(shè),對目標(biāo)機器101的認(rèn)證處理已經(jīng)結(jié)束,并 在機密信息處理部102生成了認(rèn)證密鑰Ka0(1100)。并且假設(shè),存儲在 目標(biāo)機器101的Enc(Kal,KaO)llOl暫時被存儲到工作區(qū)域106后,作 為IN1被輸入到的機密信息處理部IO厶并用認(rèn)證密鑰KaO(1100沐解 密1102,從而生成Kal(1103),而且,存儲在目標(biāo)機器101的 Enc(Kd2,Ka1)1104暫時被存儲到工作區(qū)域106后,作為IN2被輸入到 的機密信息處理部102,并用Kal(1103)來解密1105,從而生成 Kd2(1106)。并且假設(shè),存儲在目標(biāo)機器101的Enc(Ke2,Kal)1107暫時 被存儲到工作區(qū)域106后,作為IN3被輸入到的機密信息處理部102, 并用認(rèn)證密鑰Kal(1103)來解密1108,從而生成Ke2(1109)。而且,不 一定需要將這些Enc(Kal,KaO)llOl , Enc(Kd2,Ka1)1104以及 Enc(Ke2,Ka1)1107暫時存儲到工作區(qū)域106,也可以將這些Enc(Kal,Ka0)1101, Enc(Kd2,Ka1)1104以及Enc(Ke2,Ka1)1107直接從 目標(biāo)機器101輸入到機密信息處理部102。并且假設(shè),在認(rèn)證處理后,已經(jīng)將Enc(Kc,Kd2)1110從目標(biāo)機器 101被存儲到主機100的工作區(qū)域106,將Enc(Kc,Ke2)1111存儲到工 作區(qū)域106,該Enc(Kc,Kd2)1110在密鑰變換處理時被輸入,該 Enc(Kc,Ke2)l川在密鑰變換處理時被輸出。而且假設(shè),被存儲到工作 區(qū)域后,重新被存儲到目標(biāo)機器101。而且,不一定需要將這些 Enc(Kc,Kd2)和Enc(Kc,Ke2)暫時存儲到工作區(qū)域106,也可以將這些 Enc(Kc,Kd2)和Enc(Kc,Ke2)直接從目標(biāo)機器101輸入到機密信息處理 部102,或者直接從機密信息處理部102輸出到目標(biāo)機器101。以下,說明用Kd2(1106)及Ke2(1109)進行密鑰變換處理時的機密 信息處理部102的工作。在圖12中假設(shè),機密信息處理部102設(shè)定有 用于進行密鑰變換處理的控制序列,并且,主CPU103使該控制序列 起動,通過該密鑰變換處理將Enc(Kc,Kd2)變換為Enc(Kc,Ke2)。在密鑰變換處理中,首先用于對Kc進行加密以及解密的密鑰(生 成在機密信息處理部的Kd2(1106)以及Ke2(1109))被設(shè)定在用于進行解 密的電路以及用于進行加密的電路。而且,其次將Enc(Kc,Kd2)1110 輸入到機密信息處理部102,用Kd2(1106)對輸入后的密鑰進行解密處 理1112。如此通過用Kd2(1106)進行解密,從而在機密信息處理部102 生成未加密的Kc1113。此時,主CPU103無法訪問保存在機密信息處 理部102的該密鑰。該實際安裝的例子有如下方法,即,將Kclll3存 儲到主CPU103無法訪問的寄存器。.而且,也可以是,密鑰變換處理
后在機密信息處理部102消除Kcl113。而且,用Ke2(1109)對Kc1113 進行加密處理1114。通過該加密處理1114從機密信息處理部102輸出 Enc(Kc,Ke2)1111 。通過以上處理結(jié)束密鑰變換處理。并且,與實施例1的情況相同,在密鑰變換處理中的加密處理1114 或解密處理1112,被圖12所示的密鑰變換控制部216或密鑰變換控制 標(biāo)記217控制。在此,說明在圖12的情況下需要的標(biāo)記。在圖12的 處理中使用由認(rèn)證密鑰Ka0(1100)生成的Kd2(1106)以及Ke2(1109)。為 此,需要已經(jīng)結(jié)束用于生成認(rèn)證密鑰KaO(lIOO)的認(rèn)證處理。為此,作 為密鑰變換控制標(biāo)記217之一需要認(rèn)證標(biāo)記(KaO)。而且,在圖12的情 況下,由于只進行生成認(rèn)證密鑰KaO(1100)的認(rèn)證處理,因此不需要同一目標(biāo)標(biāo)記。并且,在該密鑰換處理中,需要在機密信息處理部102 通過解密處理生成Kd2(1106)以及Ke2(1109)。為此,作為密鑰變換標(biāo) 記217需要密鑰生成標(biāo)記(Kd2)以及密鑰生成標(biāo)記(Ke2)。因此,在圖 12中所示,在主CPU103進行了用于進行密鑰變換處理的密鑰變換處 理設(shè)定的情況下,與門的輸出被選擇為圖4所示的選擇器301的輸出, 該與門輸入認(rèn)證標(biāo)記(KaO)、密鑰生成標(biāo)記(Kd2)以及密鑰生成標(biāo)記(Ke2) 的三個標(biāo)記。為此,只在這些三個標(biāo)記都成為1的情況下可以使用加 密電路。其次,參照圖13的流程圖說明圖12所示的密鑰變換處理的順序。 如在實施例1中說明,在本發(fā)明的密鑰變換處理中,首先由主CPU103 進行密鑰變換處理設(shè)定1200。據(jù)此,起動在機密信息處理部102執(zhí)行 的密鑰變換處理。其次,對密鑰變換控制部217進行密鑰變換控制標(biāo) 記讀出1201。讀出后,對機密信息處理部102進行Enc(Kc,Kd2)輸入 1202。然后,根據(jù)讀出后的標(biāo)記,確認(rèn)是否滿足為了在機密信息處理 部102不進行不正當(dāng)?shù)奶幚淼臈l件。在圖13中,這些確認(rèn)處理相當(dāng)于 條件轉(zhuǎn)移1203至條件轉(zhuǎn)移1205。而且,若可以確認(rèn)不進行不正當(dāng)?shù)奶?理,則進行確認(rèn)的順序不僅限于圖13所示的順序。如對圖12的密鑰變換控制標(biāo)記的說明中所示,在圖13中進行三 個確認(rèn)。首先,作為對目標(biāo)機器的認(rèn)證的條件,在條件轉(zhuǎn)移1203確認(rèn), 是否對存儲Enc(Kc,Kd2)1110、 Enc(Kc,Ke2)1111的目標(biāo)機器進行了生 成認(rèn)證密鑰KbO(1100)的認(rèn)證處理,該Enc(Kc,Kd2)1110在密鑰變換處 理時被輸入。該Enc(Kc,Ke2)1111在密鑰變換處理時被輸出。據(jù)此,確 認(rèn)進行了生成認(rèn)證密鑰Kb0(1100)的認(rèn)證處理,并且,確認(rèn)存儲 Enc(Kc,Kd2)1110以及Enc(Kc,Ke2)1111的目標(biāo)機器不是不正當(dāng)?shù)臋C器。 并且,如在密鑰生成標(biāo)記的說明中所示,在條件轉(zhuǎn)移1204以及條件轉(zhuǎn) 移1205確認(rèn)在機密信息處理部102生成了 Kd2(1106)以及Ke2(1109)。 據(jù)此,確認(rèn)在未生成Kd2(1106)以及Ke2(1109)的狀態(tài)下,即在Kd2=0 以及Ke2i等的狀態(tài)下,不進行解密以及加密。在進行了以上確認(rèn)的情況下,確認(rèn)沒有不正當(dāng)?shù)貓?zhí)行由主CPU103 設(shè)定的密鑰變換處理。為此,確認(rèn)后對被輸入的Enc(Kc,Kd2)進行變換 處理1206(在圖12中用Kd2(1106)進行解密、用Ke2(1109)進行加密的 處理)。在該期間內(nèi),從密鑰變換控制部216向進行加密處理1114和解 密處理1112的電路輸出有效信號。而且,變換處理后,進行Enc(Kc,Ke2) 輸出1207。輸出后,密鑰變換處理結(jié)束。 如上所述,通過采用圖12以及圖3的處理來執(zhí)行密鑰變換處理。 而且,也可以是如下結(jié)構(gòu),即,在圖12的例子中,在目標(biāo)機器存儲 Enc(Kal,KaO) 、 (Enc(Kd2,Kal),Enc(Kc,Kd2))以 及(Enc(Ke2,Kal),Enc(Ke3,Ke2))的狀態(tài)下,對Enc(Kc,Kd2)1110進行密鑰 變換處理,從而獲得Enc(Kc,Ke2)1111。于是,也可以是如下結(jié)構(gòu),即, 將上述處理普遍化,在目標(biāo)機器存儲s個(s是自然數(shù))的密鑰 {Enc(Kal,KaO),...,Enc(Kas,Ka(s-l))}、還存儲t個(t是自然數(shù))的密鑰 (Enc(Kdl,Kas), Enc(Kd2,Kdl),…,Enc(Kdt,Kd(t-l)))以及(Enc(Kel,Kas), Enc(Ke2,Kel),…,Enc(Ket,Ke(t-l)"的狀態(tài)下,對內(nèi)容進行加密以及解密 時使用Kdt以及Ket,將i作為滿足1《i《m的自然數(shù),通過對 Enc(Kdi,Kd(i-l))進行密鑰變換處理從而獲得Enc(Kdi,Ke(j-l))。在此情 況下,為了進行密鑰變換處理,若在進行機密信息處理部的解密的電 路使用Kd(i-l),在進行加密的電路使用Ke(i-l),并且作為密鑰變換標(biāo) 記使用表示生成了 Kd(j-l)的事宜的標(biāo)記以及表示生成了 Ke(i-l)的事宜 的標(biāo)記,來代替圖12中的密鑰以及標(biāo)記,則可以實施與圖12同一密 鑰變換處理。于是,也可以是,向機密信息處理部追加對應(yīng)于Kd(i-l) 以及Ke(i-l)的密鑰生成標(biāo)記,向密鑰變換控制部追加用于選擇該標(biāo)記 的電路。根據(jù)本發(fā)明,在不同機密信息處理方法之間可以執(zhí)行密鑰變換處 理,并且,此時,在不泄漏密鑰信息、且不進行不正當(dāng)?shù)奶幚淼那闆r 下可以執(zhí)行處理。因此,可以在一種機密信息系統(tǒng)上使用本發(fā)明,該 機密信息系統(tǒng)中使用具有多個機密信息處理方法的目標(biāo)機器。
權(quán)利要求
1、一種機密信息處理用主機,從存儲包含加密內(nèi)容的、處于加密狀態(tài)的機密信息的目標(biāo)機器讀出所述加密內(nèi)容,解密并使用所述加密內(nèi)容,其特征在于,包括機密信息處理部,只根據(jù)預(yù)定的多個序列進行工作;CPU,向所述機密信息處理部指示起動所述多個序列;第一接口部,在所述機密信息處理部與目標(biāo)機器之間輸入并輸出包含所述機密信息的數(shù)據(jù);以及第二接口部,在所述機密信息處理部與所述CPU之間輸入并輸出包含所述機密信息的數(shù)據(jù),所述目標(biāo)機器或主機,存儲作為所述機密信息的、處于加密狀態(tài)的m個密鑰{K1,......,Km},所述密鑰Km是對內(nèi)容進行加密的內(nèi)容密鑰,用密鑰K(i-1)來加密密鑰Ki(i是滿足1≤i≤m的自然數(shù)),所述多個序列,包含密鑰變換序列,在該密鑰變換序列中,對于將所述m個密鑰中任意的、對密鑰Ki進行加密的密鑰,將K(i-1)變換為其它密鑰,所述第一接口部和所述第二接口部,在所述密鑰變換序列被起動的情況下,向所述機密信息處理部外部只輸出處于加密狀態(tài)的機密信息。
2、如權(quán)利要求1所述的機密信息處理用主機,其特征在于, 所述主機與所述目標(biāo)機器之間進行第一認(rèn)證處理,對所述密鑰Kl進行加密的所述密鑰K0是通過第一認(rèn)證處理生成的認(rèn)證密鑰KaO,與所述目標(biāo)機器同一的目標(biāo)機器、或不同的目標(biāo)機器存儲n個(n是自然數(shù))密鑰(KM,......,Kbn),用密鑰Kb(j-l)來加密密鑰Kbj(j是滿足1《j《n的自然數(shù)), 所述主機進一步與所述目標(biāo)機器同一的目標(biāo)機器、或不同的目標(biāo)機器之間進行第二認(rèn)證處理,所述密鑰KbO是通過所述第二認(rèn)證處理生成的認(rèn)證密鑰, 所述其它密鑰是所述密鑰(KbO,...,Kb(n-l))中的任意的密鑰。
3、 如權(quán)利要求2所述的機密信息處理用主機,其特征在于, 所述其它密鑰是Kb(n-m+i)。
4、 如權(quán)利要求1所述的機密信息處理用主機,其特征在于, 戶力述主機與所述目標(biāo)機器之間進行第一認(rèn)證處理, 對所述密鑰Kl進行加密的所述密鑰KO是通過所述第一認(rèn)證處理生成的認(rèn)證密鑰KaO,戶萬述其它密鑰是存儲在所述機密信息處理部的主密鑰Kh。
5、 如權(quán)利要求所述的機密信息處理用主機,其特征在于, 所述密鑰KO是存儲在所述機密信息處理部的主密鑰Kh,.所述主機進一步與所述目標(biāo)機器同一的目標(biāo)機器、或不同的目標(biāo) 機器之間進行第二認(rèn)證處理,該目標(biāo)機器存儲n個(n是自然數(shù))密鑰{Kbl,……,Kbn), 用密鑰Kb(j-l)來加密密鑰Kbj(j是滿足]《j《n的自然數(shù)), 所述密鑰Kb0是通過所述第二認(rèn)證處理生成的認(rèn)證密鑰, 在所述密鑰變換序列中,對于對密鑰K1進行加密的密鑰,將所述 主密鑰Kh變換為{KbO,...,Kb(n-l)}中的任意的密鑰。
6、 如權(quán)利要求1所述的機密信息處理用主機,其特征在于, 所述主機與所述目標(biāo)機器之間進行第一認(rèn)證處理, 對所述密鑰K進行加密的所述密鑰K0是通過所述第一認(rèn)證處理生成的認(rèn)證密鑰KaO,所述目標(biāo)機器存儲(m-s)個密鑰《Kel,……Ke(m-s)),用密鑰Ke(j-l) 來加密密鑰Kej(j是滿足1《j《m-s的自然數(shù)),密鑰Ke0是所述m個密鑰(K1,......,Km)中的任意的密鑰Ks(s是滿足l《s〈m的自然數(shù)),所述其它密鑰是(Kel,……,Ke(m-s-l"中的任意的密鑰。
7、 如權(quán)利要求2、 4以及6中的任意一項所述的機密信息處理用 主機,其特征在于,所述機密信息處理部,還包括標(biāo)記保存部,保存認(rèn)i正標(biāo)記,該認(rèn)證標(biāo)記表示所述第一 i人證處理是否正常地結(jié)束,所述機密信息處理部,在所述認(rèn)證標(biāo)記不表示所述第一認(rèn)證處理正常地結(jié)束的情況下,禁止所述主CPU使密鑰變換序列起動。
8、 如權(quán)利要求2或5所述的機密信息處理用主機,其特征在于, 所述機密信息處理部,還包括標(biāo)記保存部,保存認(rèn)證標(biāo)記,該認(rèn)證標(biāo)記表示所述第二i/a正處理是否正常地結(jié)束,所述機密信息處理部,在所述認(rèn)證標(biāo)記不表示所述第二認(rèn)證處理正常地結(jié)束的情況下,禁止所述主CPU使密鑰變換序列起動。
9、 如權(quán)利要求7所述的機密信息處理用主機,其特征在于, 所述機密信息處理部,還包括標(biāo)記保存部,保存密鑰生成標(biāo)記,該密鑰生成標(biāo)記表示在內(nèi)部是否生成了所述密鑰K(i-l),所述機密信息處理部,在所述密鑰生成標(biāo)記不表示在內(nèi)部生成了所述密鑰K(i-)的情況下,禁止所述主CPU使密鑰變換序列起動。
10、 如權(quán)利要求8所述的機密信息處理用主機,其特征在于, 所述機密信息處理部,還包括標(biāo)記保存部,保存密鑰生成標(biāo)記,該密鑰生成標(biāo)記表示在內(nèi)部是否生成了所述其它密鑰,所述機密信息處理部,在所述密鑰生成標(biāo)記不表示在內(nèi)部生成了所述其它密鑰的情況下,禁止所述主CPU使密鑰變換序列起動。
11、 如權(quán)利要求2所述的機密信息處理用主機,其特征在于, 所述機密信息處理部,還包括標(biāo)記保存部,保存目標(biāo)標(biāo)記,該目標(biāo)標(biāo)記表示是否對同 一目標(biāo)機器進行了所述第一認(rèn)證處理和所述第二認(rèn)證處理,所述機密信息處理部,在所述目標(biāo)標(biāo)記不表示對同一 目標(biāo)機器進 行了所述第一認(rèn)證處理和所述第二認(rèn)證處理的情況下,禁止所述主CPU使密鑰變換序列起動。
12、 如權(quán)利要求7或8所述的機密信息處理用主機,其^寺征在于, 所述機密信息處理部,進一步,在與所述目標(biāo)機器之間的連接被斷開的情況下,使保存在所述標(biāo) 記保存單元的所述標(biāo)記初始化。
13、 如權(quán)利要求1至13中的任意一項所述的機密信息處理用主機, 其特征在于,所述主機,在與所述目標(biāo)機器之間的連接被斷開的情況下,消除 保存在所述機密信息處理部內(nèi)部的密鑰,該密鑰是由所述機密信息處 理部解密的密鑰。
14、 如權(quán)利要求1至4中的任意一項所述的機密信息處理用主機,其特征在于,作為單一半導(dǎo)體裝置被安裝。
15、 一種機密信息處理用主機的機密信息處理方法, 所述機密信息處理用主機從存儲包含加密內(nèi)容的、處于加密狀態(tài)的機密信息的目標(biāo)機器讀出所述加密內(nèi)容,解密并使用所述加密內(nèi)容, 其特征在于,所述主機,包括機密信息處理部,只根據(jù)預(yù)定的多個序列進行工作; CPU,向所述機密信息處理部指示起動所述多個序列; 第一接口部,在所述機密信息處理部與目標(biāo)機器之間輸入并輸出包含^f述機密信息的數(shù)據(jù);以及第二接口部,在所述機密信息處理部與所述CPU之間輸入并輸出包含所述機密信息的數(shù)據(jù),所述目標(biāo)機器或主機,存儲作為所述機密信息的、處于加密狀態(tài)的m個密鑰(Kl,......,Km),所述密鑰Km是對內(nèi)容進行加密的內(nèi)容密鑰,用密鑰K(i-l)來加密密鑰Ki(i是滿足1《i《m的自然數(shù)),所述機密信息處理方法在所述多個序列執(zhí)行密鑰變換序列,在該密鑰變換序列中,對于 將所述m個密鑰中任意的、對密鑰Ki進行加密的密鑰,將K(i-l)變換 為其它密鑰,所述第一接口部和所述第二接口部,在所述密鑰變換序列被起動 的情況下,向所述機密信息處理部外部只輸出處于加密狀態(tài)的機密信 息。
全文摘要
在目標(biāo)機器,用Ka(i-1)加密Kai(i是滿足1≤i≤m的自然數(shù))的狀態(tài)下存儲m個(m是自然數(shù))密鑰{Ka1,……,Kam}、并且用Kb(j-1)加密Kbj(j是滿足1≤j≤n的自然數(shù))的狀態(tài)下存儲n個(n是自然數(shù))密鑰{Kb1,……,Kbn},在這些情況下,在機密信息處理部,用Kb(j-1)對用Ka(i-1)加密后Kai后的加密密鑰Enc(Kai,Ka(i-1))進行加密,從而輸出加密密鑰Enc(Kai,Kb(j-1))。
文檔編號H04L9/16GK101167301SQ200680014360
公開日2008年4月23日 申請日期2006年4月25日 優(yōu)先權(quán)日2005年4月27日
發(fā)明者佐藤友哉, 清水和也, 鹽見謙太郎, 藤原睦 申請人:松下電器產(chǎn)業(yè)株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1