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

偽公鑰加密方法和系統(tǒng)的制作方法

文檔序號:7627874閱讀:147來源:國知局
專利名稱:偽公鑰加密方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及用于公鑰加密的方法和系統(tǒng),具體地說,涉及用于以低成本實現(xiàn)偽公鑰加密系統(tǒng)的方法和系統(tǒng)。
背景技術(shù)
在當前的加密技術(shù)中尤為重要的公鑰加密方法被廣泛地用于加密、簽名和認證。用于實現(xiàn)公鑰加密系統(tǒng)的算法通常需要非常高的計算成本。實現(xiàn)公鑰加密系統(tǒng)的實用方法之一是RSA加密法。RSA加密法需要將明文或密文提升到從n的歐拉函數(shù)值獲得的數(shù)(加密指數(shù)或解密指數(shù))的冪(其是兩個大的質(zhì)數(shù)的乘積)并且然后確定n的殘數(shù)的運算,此運算的成本非常高。為了提高密鑰的安全性,n的位數(shù)需要很大。但是,具有很大位數(shù)的RSA加密法所需的計算成本非常高。盡管可以采用諸如使用專用硬件執(zhí)行此類運算之類的措施來追求高速度,但是這將為開發(fā)和制造成本增加負擔或影響產(chǎn)品的靈活性。由于這種情況,使用公鑰的加密系統(tǒng)的成本很高,并且很難將其結(jié)合到可以被廉價地大量生產(chǎn)的裝置中。
還存在一種公知的橢圓曲線加密法,與RSA加密法相比,其具有較少的位數(shù)和同等的強度。但是,盡管與模數(shù)取冪的運算成本相比,加密(對有限體上定義的橢圓曲線上的一點進行標量乘法,等等)所需的運算成本較低,但是類似地所述加密法需要昂貴的運算,并且因此仍然很難將其結(jié)合到可以被廉價地大量生產(chǎn)的裝置中。此外,還提議了一種使用密鑰加密系統(tǒng)和防篡改硬件來實現(xiàn)公鑰加密系統(tǒng)的方法。在此方法中,接收者使用第三方機關(guān)的密鑰來加密其自己的密鑰并將其公布。發(fā)送者使用所述第三方機關(guān)的密鑰將其解密,使用獲得的接收者的密鑰加密消息并發(fā)送該消息。接收者使用其自己的密鑰將其解密。由于使用第三方機關(guān)的密鑰的加密、使用第三方機關(guān)的密鑰的解密以及使用接收者的密鑰的加密都在防篡改硬件中執(zhí)行,所以可以確保安全性。但是,在此方法中,發(fā)送者和接收者必須使用不同的硬件,并且他們的密鑰都需要使用同一硬件。此方法類似于例如基于ID的加密系統(tǒng)的方法,其中公鑰不是通過認證機關(guān)來分發(fā),因為ID被公開。在此方法中,密鑰生成機關(guān)從用戶的唯一ID來生成用戶的私鑰,并且任何人都可以從用戶ID來生成用戶的公鑰。此方法就公鑰的分發(fā)而言很方便。但是,RSA加密法中的陷門單向函數(shù)的性質(zhì)等被用于消息的加密/解密,并且處理所需的成本與普通公鑰加密系統(tǒng)的成本一樣高。
已公布未審查的專利申請No.2004-70712發(fā)明公開本發(fā)明將解決的問題本發(fā)明將要解決的問題是提供一種用于以低成本實現(xiàn)偽公鑰加密系統(tǒng)的方法和系統(tǒng)。
另一個問題是提供一種能夠通過使用公鑰來更廉價地實現(xiàn)加密信息通信和代碼簽名通信的方法和系統(tǒng)。
再一個問題是提供一種允許在諸如移動終端(其上頻繁地執(zhí)行簽名并且其需要即時處理)之類的終端上執(zhí)行信息處理和通信且保持高安全性的方法和系統(tǒng)。
再一個問題是提供一種用于虛假地實現(xiàn)需要昂貴運算的函數(shù)的方法和系統(tǒng)。

發(fā)明內(nèi)容
根據(jù)本發(fā)明,密鑰加密系統(tǒng)和防篡改硬件被用于以低成本來實現(xiàn)偽公鑰加密系統(tǒng)。陷門單向函數(shù)(其被認為是構(gòu)建公鑰加密系統(tǒng)所必不可少的)通常要求“昂貴的”運算。使用防篡改硬件可以實際地實現(xiàn)此類函數(shù)。每個用戶使用配備有硬件(其具有以下所述的相同功能)的設(shè)備來執(zhí)行通信。此類硬件保持ID與密鑰之間的關(guān)聯(lián)。響應(yīng)于來自用戶的請求,所述硬件發(fā)行并存儲ID,并且其可以使用與所述ID關(guān)聯(lián)的密鑰來執(zhí)行消息認證代碼(此后稱為MAC)的解密和生成。盡管此硬件可以使用任何給定的ID來執(zhí)行MAC的加密和驗證,但是其不能執(zhí)行MAC的解密和生成。用戶公開其ID。當執(zhí)行加密時,消息發(fā)送者使用消息接收者的公開的ID并使用與接收者的硬件具有相同功能的硬件來加密消息。第三者只能通過分析所述硬件中的機制來使用所述ID執(zhí)行解密。但是,當嘗試此類操作時,所述硬件具有自破壞的能力。
當使用對稱函數(shù),并且用P表示明文、C表示暗文、K1表示公鑰、K2表示私鑰時,基本上很難從K1導出K2。
C=F(P)=H(P,K1)P=F-1(C)=H(C,K2)對于滿足上述條件的函數(shù)F,如果對于不知道K2的人實際上不可能計算出F-1,則可以構(gòu)建公鑰加密系統(tǒng)。在本發(fā)明中,給出了借助廉價計算的密鑰K的函數(shù)F,并且F的功能被隱藏在防篡改硬件中。同時,給出了隱藏在硬件中的一對一函數(shù)K=G(ID)以便滿足下列條件,其中ID是所述密鑰的標識符。
C=F(P)=H(P,G(ID))P=F-1(C)=H(C,G(ID))在此情況下,所述ID被公開為偽公鑰以便在執(zhí)行MAC的加密或驗證時,任何人都可以計算G(ID)。另一方面,當執(zhí)行MAC的解密或生成時,只有ID的有效所有者才能計算出G(ID)。由此構(gòu)建了由硬件實現(xiàn)的陷門單向函數(shù)F,并且實現(xiàn)了偽公鑰加密系統(tǒng)。
作為本發(fā)明的優(yōu)選裝置,使用了包括防篡改硬件的裝置,所述防篡改硬件包括加密/認證部分,用于響應(yīng)于用戶的請求執(zhí)行ID的發(fā)行、加密和認證;以及篡改檢測部分,用于檢測電壓變化或壓力變化以便電氣地破壞所述加密/認證部分。借助此裝置來執(zhí)行偽公鑰加密。所述裝置的所述加密/認證部分包括ID發(fā)行/登記部分,用于發(fā)行ID以響應(yīng)用戶請求以及將所述ID存儲在存儲部分中;密鑰生成部分,用于使用一對一函數(shù)來生成與所述ID對應(yīng)的密鑰并輸出所述ID;第一密鑰獲取部分,用于響應(yīng)于用戶解密或生成消息認證代碼的請求,將輸入的ID與存儲在所述ID存儲部分中的所述ID進行比較并且,如果所述ID彼此一致,將所述ID移交給所述密鑰生成部分以便輸出由所述密鑰生成部分生成的密鑰;第二密鑰獲取部分,用于響應(yīng)于用戶加密或驗證帶有附加到其的消息認證代碼的消息的請求,將輸入的ID移交給所述密鑰生成部分以便輸出由所述密鑰生成部分生成的密鑰;消息認證代碼生成部分,用于將輸入的ID移交給所述第一密鑰獲取部分并且,使用從所述第一密鑰獲取部分輸出的密鑰,計算和輸出輸入消息的消息認證代碼;消息認證代碼驗證部分,用于將輸入的ID移交給所述第二密鑰獲取部分,使用從所述第二密鑰獲取部分輸出的密鑰來計算輸入消息的消息認證代碼,將所獲得的消息認證代碼與輸入的消息認證代碼進行比較,并且如果所述消息認證代碼彼此一致,將指示所述驗證已成功的信息返回給所述用戶;加密部分,用于將輸入的ID移交給所述第二密鑰獲取部分,使用從所述第二密鑰獲取部分輸出的密鑰來加密輸入的明文并將結(jié)果返回用戶;以及解密部分,用于將輸入的ID移交給所述第一密鑰獲取部分并且,使用從所述第一密鑰獲取部分輸出的密鑰,解密和輸出輸入的加密文本。
使用此裝置執(zhí)行偽公鑰加密的方法包括以下描述的諸步驟。在分別具有所述裝置A和所述裝置B的發(fā)送用戶和接收用戶之間發(fā)送消息中,所述方法包括以下步驟所述裝置A選擇并存儲發(fā)送用戶ID,然后將所述發(fā)送用戶ID返回給所述發(fā)送用戶,以便公開所述發(fā)送用戶ID;所述裝置B選擇并存儲接收用戶ID,然后將所述接收用戶ID返回給所述接收用戶,以便公開所述接收用戶ID;所述裝置A獲取與所述發(fā)送用戶ID對應(yīng)的密鑰,生成消息認證代碼并將所述消息認證代碼返回給所述發(fā)送用戶;響應(yīng)于所述發(fā)送用戶的加密請求,所述裝置A獲取與所述接收用戶ID對應(yīng)的密鑰,加密所述消息和所述消息認證代碼并將所述加密的消息和消息認證代碼返回給所述發(fā)送用戶;響應(yīng)于所述接收用戶對所述加密進行解密的請求,所述裝置B獲取與所述接收用戶ID對應(yīng)的密鑰,解密所述接收的消息并將所述解密的消息返回給所述接收用戶;以及響應(yīng)于所述接收用戶驗證所述消息認證代碼的請求,所述裝置B獲取與所述發(fā)送ID對應(yīng)的密鑰,驗證所述消息認證代碼并將結(jié)果返回給所述接收用戶。本發(fā)明的以上概要并未列舉出本發(fā)明的所有必要特征,并且這些特征的子組合可以是本發(fā)明。
本發(fā)明的優(yōu)點根據(jù)本發(fā)明,可以借助公鑰以低成本來實現(xiàn)加密信息通信和代碼簽名通信。通過在移動終端(其目前越來越多地被用于各種目的),尤其是在廉價和大量生產(chǎn)的終端(其上頻繁地執(zhí)行簽名并要求即時處理)上實現(xiàn)本發(fā)明,即使在此類終端上,也可以實現(xiàn)要求高級別安全性管理的信息處理和通信。


圖1是本發(fā)明的硬件的方塊圖;圖2是示出了加密/認證部分的細節(jié)的示意圖;圖3是示出了本發(fā)明的發(fā)送/接收協(xié)議的示意圖;圖4是示出了本發(fā)明的其他發(fā)送/接收協(xié)議的示意圖;圖5示出了將本發(fā)明應(yīng)用到基于ID的加密系統(tǒng)的實例;以及圖6示出了將本發(fā)明應(yīng)用到移動電話的實例。
符號說明100系統(tǒng)101加密/認證部分102篡改檢測部分201ID發(fā)行/登記部分206ID存儲部分210密鑰生成部分209種子存儲部分
207第一密鑰獲取部分208第二密鑰獲取部分202生成部分204驗證部分205加密部分203解密部分520ID存儲機關(guān)具體實施方式
優(yōu)選實施例圖1示出了本發(fā)明的硬件的方塊圖。系統(tǒng)100是完整的系統(tǒng),其中包括加密/認證部分101和篡改檢測部分102。加密/認證部分101執(zhí)行諸如發(fā)行ID、響應(yīng)于來自用戶的請求進行加密和驗證之類的服務(wù)。篡改檢測部分102檢測在用戶嘗試分析系統(tǒng)100的內(nèi)部電路時引起的電壓變化或壓力變化并電氣地破壞加密/認證部分101。
圖2是示出了圖1中的加密/認證部分101的細節(jié)的示意圖。ID發(fā)行/登記部分201發(fā)行唯一的ID以響應(yīng)來自用戶的請求并將其存儲在ID存儲部分206中。密鑰生成部分210根據(jù)輸入的ID和存儲在種子存儲部分209中的種子來生成并輸出密鑰。當用戶嘗試解密或生成MAC時,第一密鑰獲取部分207將輸入的ID與存儲在ID存儲部分206中的ID進行比較。如果所述ID相同,則第一密鑰獲取部分207將ID移交給密鑰生成部分210并輸出從密鑰生成部分210返回的密鑰。如果所述ID不同,則返回錯誤。當用戶嘗試加密或驗證附加有MAC的消息時,第二密鑰獲取部分208將輸入的ID移交給密鑰生成部分210并輸出從密鑰生成部分210返回的密鑰。使用消息和ID作為輸入,MAC生成部分202將所述ID移交給第一密鑰獲取部分207并獲得密鑰。如果沒有從所述密鑰獲取部分返回錯誤,則MAC生成部分202計算并輸出所述消息的MAC。如果從所述密鑰獲取部分返回了錯誤,則MAC生成部分202將錯誤返回給所述用戶。使用所述消息、MAC和ID作為輸入,MAC驗證部分204將所述ID移交給第二密鑰獲取部分208并獲得密鑰。MAC生成部分202根據(jù)所述密鑰計算并輸出所述消息的MAC,并將獲得的MAC與輸入的MAC進行比較。如果所述MAC相同,則指示驗證成功的信息被返回給所述用戶。否則,指示驗證失敗的信息被返回給所述用戶。使用明文和ID作為輸入,加密部分205將所述ID移交給第二密鑰獲取部分208并獲得密鑰。加密部分205根據(jù)所述密鑰加密所述明文并將結(jié)果返回給用戶。使用暗文和所述ID作為輸入,解密部分203將所述ID移交給第一密鑰獲取部分207并獲得密鑰。如果沒有從所述密鑰獲取部分返回錯誤,則解密部分203根據(jù)所述密鑰解密并輸出暗文。如果從所述密鑰獲取部分返回了錯誤,則解密部分203將錯誤返回給所述用戶。
如從以上描述中理解的,本發(fā)明的硬件具有這樣的能力使用特定的密鑰來執(zhí)行MAC的加密/解密和生成/驗證,并且防止入侵操作進行篡改。所述硬件配備有以下接口·用于發(fā)行和登記與密鑰關(guān)聯(lián)的ID以響應(yīng)來自用戶的請求的接口;·用于只有當ID已登記時才使用給定的所述ID來解密消息的接口;·用于從解密的消息來生成MAC的接口;·用于使用給定的ID來加密消息的接口;以及·用于驗證消息的MAC的接口。
接著,將描述本發(fā)明中用于交換信息的方法。如以下描述的那樣交換加密的信息。首先,消息接收者請求其中結(jié)合有圖1的系統(tǒng)100的裝置發(fā)行ID。系統(tǒng)100將與特定密鑰關(guān)聯(lián)的ID移交給所述用戶并登記所述ID。接收者公開接收到的ID。消息發(fā)送者通過其中結(jié)合了具有相同功能的系統(tǒng)100的裝置,使用公開的ID來加密將被發(fā)送的消息。實際上,只有接收者才能解密所述消息。
如以下描述的那樣交換具有附加到其的MAC的消息。首先,消息發(fā)送者請求其中結(jié)合了系統(tǒng)100的裝置發(fā)行ID。系統(tǒng)100將與特定密鑰關(guān)聯(lián)的ID移交給所述用戶并登記所述ID。所述發(fā)送者通過同一系統(tǒng)100利用接收到的ID來生成將被發(fā)送的消息的MAC。實際上,只有所述發(fā)送者才能生成所述MAC。所述發(fā)送者發(fā)送所述消息、MAC和ID。所述消息的接收者通過其中結(jié)合了具有相同功能的系統(tǒng)100的裝置,利用所述ID為所述接收的消息驗證所述接收的MAC。
用于進一步增強本發(fā)明的安全性的方法。為了只有接收者才能解密消息并且只有發(fā)送者才能生成MAC,希望同一ID不應(yīng)被惡意地使用,這是公鑰加密系統(tǒng)中的一個常見問題。為了實現(xiàn)此目的,將采用以下方法。
·通過二次編碼進行密碼稀釋當ID被發(fā)行時,其被編碼有較高的平均信息量(通過在其中包括冗余信息)。由此,可以顯著地減小同一ID被移交給用戶的可能性。此外,編碼算法隨裝置而不同以使得逆編碼變得困難。這使得惡意的個人將公開的ID和用其自己的系統(tǒng)100登記的ID標識為相同非常困難。此外,通過將解密的故意失敗看作惡意操作并且然后在檢測到此類操作時停止功能,可以實際上阻止惡意的個人執(zhí)行解密以檢驗ID的同一性。例如,此機制可以通過填充隨機值的方法來實現(xiàn)。原始ID的空間被定義為X位,并且進一步添加Y位空間以便稀釋密鑰。當原始ID被發(fā)行時,隨機的Y位數(shù)字被放入此附加的空間中。通過這種方式獲得的(X+Y)位信息被混合以獲得將被公開的ID。盡管此混合可以是簡單的混合(如移位和交換的組合),但是算法被隱藏在防篡改系統(tǒng)100中。由此,同一密鑰被發(fā)行的概率可以被減小到在直接使用X位密鑰的情況下的概率的2^Y分之一。通過在防篡改硬件中實現(xiàn)逆運算算法并移除冗余添加的空間,也可以簡單地實現(xiàn)公開的(X+Y)位原始密鑰。
·ID的登記發(fā)行的ID由認證機關(guān)來驗證。通過認證機關(guān)保證ID的唯一性,可以防止ID的非法使用。
·ID發(fā)行的限制作為防止發(fā)行同一ID的手段,發(fā)行的數(shù)量收到限制,或?qū)Πl(fā)行收費。
·為了防止已為其發(fā)行了一次ID的設(shè)備被其他用戶使用,需要用戶認證以使用所述設(shè)備。
將說明一種用于結(jié)合基于ID的加密系統(tǒng)來實現(xiàn)本發(fā)明的方法。本發(fā)明的ID并非用作“個人的ID”,而是用作“密鑰的ID”。因此,一般地說,類似于其他(并非基于ID的)公鑰加密系統(tǒng),本發(fā)明需要認證機關(guān)來公開ID。同時,由于基于ID的加密系統(tǒng)的目標與本發(fā)明的目標相對應(yīng),所以也可以相互結(jié)合地使用兩個系統(tǒng)。在此情況下,密鑰生成機關(guān)生成用戶的私鑰以便“個人的ID”適合于成為“密鑰的ID”。這可以例如通過只允許密鑰生成機關(guān)發(fā)行和登記任意給定的ID來實現(xiàn)。在此情況下,可以不通過認證機關(guān)來得知公鑰,并且因此可以構(gòu)建一種允許更廉價地加密的系統(tǒng)。
實施例1在足夠數(shù)量的密鑰可以被存儲在系統(tǒng)100(包括每個接口和發(fā)送/接收協(xié)議)中的情況下,將使用圖3對實施例進行描述。假定用戶A和用戶B使用圖1中的系統(tǒng)100(硬件A和硬件B)彼此通信。還假定足夠數(shù)量的密鑰被存儲在系統(tǒng)100中,其中每個密鑰都被賦予一個特定于其的ID。如果硬件的各部分相同,則所述ID和所述密鑰的映射也是相同的。
用戶A從硬件A請求ID(310)。硬件A從ID空間隨機地選擇ID(此后稱為ID-A)(320),并將所述ID返回給用戶A。所述ID還被存儲在ID存儲部分中。用戶A公開ID-A。同時,用戶B也已執(zhí)行了與用戶A相同的過程。即,用戶B從硬件B請求ID(310)。硬件B從ID空間隨機地選擇ID(此后稱為ID-B),并將所述ID返回給用戶B。所述ID也被存儲在ID存儲部分中(330)。用戶B公開ID-B。假定用戶A將消息發(fā)送給用戶B。首先,所述消息被賦予具有用戶A的密鑰的MAC,然后其被使用用戶B的密鑰加密。在不對本說明書的配置做出任何更改的情況下,可以選擇任何MAC和任何加密算法。例如,可以使用HMAC-SHA1或AES。
用戶A按以下程序創(chuàng)建將被發(fā)送的消息。用戶A將所述消息和ID-A移交給硬件A并請求生成MAC。硬件A檢查ID-A是否被存儲在ID存儲部分中(340)。如果存儲了ID-A,則硬件A從密鑰存儲部分獲得與ID-A對應(yīng)的密鑰(350),生成MAC(360)并將其返回給用戶A。如果沒有存儲ID-A,則硬件A將錯誤返回給用戶A。用戶A將(消息/MAC)和ID-B移交給硬件A并請求加密。硬件A從密鑰存儲部分獲得與ID-B對應(yīng)的密鑰,解密所述(消息/MAC)(370),并將其返回給用戶A。
同時,用戶B按以下程序處理接收到的消息。用戶B將所述接收到的消息和ID-B移交給硬件B并請求解密。硬件B檢查ID-B是否被存儲在ID存儲部分中(340)。如果存儲了ID-B,則硬件B從密鑰存儲部分獲得與ID-B對應(yīng)的密鑰(350),解密接收到的消息(380)并將其返回給用戶B。如果沒有存儲ID-B,則硬件B將錯誤返回給用戶B。用戶B將所述消息、MAC和ID-A移交給硬件B并請求驗證MAC。硬件B從密鑰存儲部分獲得與ID-A對應(yīng)的密鑰,驗證所述MAC(390),并將結(jié)果返回給用戶B。
實施例2實際上,通常不可能具有足夠的存儲容量來存儲足夠數(shù)量的密鑰。在足夠數(shù)量的密鑰不能被存儲在系統(tǒng)100中的情況下,將使用圖4對實施例進行描述。只有一個值(此后稱為種子)被存儲在系統(tǒng)100中以便從所述種子和適當?shù)腎D來生成密鑰。使用任何散列算法(例如,SHA-1)以便將(ID/種子)的散列值用作密鑰。在此情況下,用戶A創(chuàng)建將被發(fā)送的消息的過程如下。
所述過程從用戶A和B請求ID并且所述硬件選擇并存儲ID的步驟到每個用戶公開其自己的ID的步驟與上述實施例的這些步驟相同。假定用戶A將消息發(fā)送給用戶B。當創(chuàng)建將被發(fā)送的消息時,用戶A將所述消息和ID-A移交給硬件A并請求生成MAC。硬件A檢查ID-A是否被存儲在ID存儲部分中(440)。如果存儲了ID-A,則硬件A根據(jù)所述種子和ID-A生成密鑰(450),生成MAC(460)并將其返回給用戶A。如果沒有存儲ID-A,則硬件A將錯誤返回給用戶A。用戶A將(消息/MAC)和ID-B移交給硬件A并請求加密。硬件A根據(jù)所述種子和ID-B生成密鑰,加密所述(消息/MAC)(470)并將其返回給用戶A。
另一方面,用戶B處理接收到的消息的過程如下。用戶B將所述接收到的消息和ID-B移交給硬件B并請求解密。硬件B檢查ID-B是否被存儲在ID存儲部分中(440)。如果存儲了ID-B,則硬件B根據(jù)所述種子和ID-B生成密鑰(450),解密所述接收到的消息(480)并將其返回給用戶B。如果沒有存儲ID-B,則硬件B將錯誤返回給用戶B。用戶B將所述消息、MAC和ID-A移交給硬件B并請求驗證MAC。硬件B根據(jù)所述種子和ID-A生成密鑰,驗證所述MAC(490),并將結(jié)果返回給用戶B。
實施例3在上述兩個實施例中,示出了隨機選擇ID的情況。接著,使用圖5來描述將本發(fā)明應(yīng)用到基于ID的加密系統(tǒng)的實例。在此情況下,將由用戶A預先執(zhí)行的處理如下。用戶A將硬件A和ID-A移交給ID存儲機關(guān)520并請求將所述ID存儲在硬件中(510)。所述ID存儲機關(guān)將ID-A移交給硬件A并請求存儲所述ID。硬件A將ID-A存儲在ID存儲部分中。將由用戶B預先執(zhí)行的處理是相同的。即,用戶B將硬件B和ID-B移交給ID存儲機關(guān)520,并請求將所述ID存儲在硬件中(510)。所述ID存儲機關(guān)將ID-B移交給硬件B并請求存儲所述ID。硬件B將ID-B存儲在ID存儲部分中。用戶A創(chuàng)建將被發(fā)送的消息的過程和用戶B處理接收到的消息的過程與實施例1或?qū)嵤├?中描述的過程相同。
實施例4
在實施例3中,示出了基于ID的加密系統(tǒng)中的一般過程。以將此應(yīng)用于移動電話為例,圖6示出了使得ID的獲取和設(shè)備的移交能夠被更高效地執(zhí)行的過程。此處,所述ID存儲機制被這樣實現(xiàn)設(shè)備制造商將設(shè)備的銷售委托給零售商同時確保ID僅被存儲在所述設(shè)備中一次,并且零售商通過基礎(chǔ)結(jié)構(gòu)的協(xié)作獲得適當和唯一的ID,將其存儲在所述設(shè)備中并將所述設(shè)備移交給用戶。具體地說,將電話號碼設(shè)置為ID。在步驟610,設(shè)備制造商確定一個一對一函數(shù)f以便從所述ID(電話號碼)獲得密鑰。接著,在步驟620,f(ID)被包括在防篡改裝置中。設(shè)備制造商在所述裝置中預先布置了一次寫入存儲器。最后,在步驟630,零售商將所述ID寫入該處以使用設(shè)備登記所述ID,以便所述ID成為f(ID)的輸入。此處,與實施例1或?qū)嵤├?中示出的相同,只有在向其登記了所述ID的設(shè)備上才能使用f(ID)解密消息和生成MAC。另一方面,在沒有向其登記所述ID的設(shè)備上,使用f(ID)進行消息的解密是可能的。MAC的驗證也是可能的。
消息被按以下方式交換。用戶A和B分別購買移動電話并獲得唯一的電話號碼NA和NB。在加密的情況下,用戶A使用f(NB)作為密鑰來加密消息M。用戶A將加密的消息E(M)發(fā)送給用戶B。用戶B使用f(NB)解密E(M)。只有用戶B才能夠使用f(NB)執(zhí)行解密。在簽名的情況下,用戶A使用f(NA)作為密鑰來生成消息M的MAC,并將所述M和所述MAC發(fā)送給用戶B。在此情況下,只有用戶A才能夠使用f(NA)生成M的MAC。用戶B可以驗證發(fā)送的消息M和MAC并檢查用戶A的簽名。類似的機制可以被應(yīng)用于除移動電話以外的裝置。例如,當信息家電被連接到互聯(lián)網(wǎng)時,IP地址或主機名可以被用作ID。
權(quán)利要求
1.一種包括防篡改硬件的裝置,所述防篡改硬件包括加密/認證部分,用于響應(yīng)于用戶的請求執(zhí)行標識符的發(fā)行、加密和認證;以及篡改檢測部分,用于檢測電壓變化或壓力變化以便電氣地破壞所述加密/認證部分,所述加密/認證部分包括標識符發(fā)行/登記部分,用于發(fā)行標識符以響應(yīng)用戶請求以及將所述標識符存儲在存儲部分中;密鑰生成部分,用于使用一對一函數(shù)來生成與所述標識符對應(yīng)的密鑰并輸出所述密鑰;第一密鑰獲取部分,用于響應(yīng)于用戶解密或生成消息認證代碼的請求,將輸入的標識符與存儲在所述標識符存儲部分中的所述標識符進行比較并且,如果所述標識符彼此一致,將所述標識符移交給所述密鑰生成部分以便輸出由所述密鑰生成部分生成的密鑰;第二密鑰獲取部分,用于響應(yīng)于用戶加密或驗證帶有附加到其的消息認證代碼的消息的請求,將輸入的標識符移交給所述密鑰生成部分以便輸出由所述密鑰生成部分生成的密鑰;消息認證代碼生成部分,用于將輸入的標識符移交給所述第一密鑰獲取部分并且,使用從所述第一密鑰獲取部分輸出的密鑰,計算和輸出輸入消息的消息認證代碼;消息認證代碼驗證部分,用于將輸入的標識符移交給所述第二密鑰獲取部分,使用從所述第二密鑰獲取部分輸出的密鑰來計算輸入消息的消息認證代碼,將所獲得的消息認證代碼與輸入的消息認證代碼進行比較,并且如果所述消息認證代碼彼此一致,將指示所述驗證已成功的信息返回給所述用戶;加密部分,用于將輸入的標識符移交給所述第二密鑰獲取部分,使用從所述第二密鑰獲取部分輸出的密鑰來加密輸入的明文并將結(jié)果返回給用戶;以及解密部分,用于將輸入的標識符移交給所述第一密鑰獲取部分并且,使用從所述第一密鑰獲取部分輸出的密鑰,解密和輸出輸入的加密文本。
2根據(jù)權(quán)利要求1的裝置,其中所述加密/認證部分具有種子存儲部分,并且所述密鑰生成部分根據(jù)存儲在所述種子存儲部分中的種子和存儲在所述標識符存儲部分中的標識符來生成密鑰并輸出所述密鑰。
3.根據(jù)權(quán)利要求1的裝置,其中所述標識符發(fā)行/登記部分在發(fā)行標識符時將冗余信息包括在所述標識符中。
4.根據(jù)權(quán)利要求1的裝置,其中所述加密/認證部分還具有一次寫入存儲區(qū)域以便通過將標識符寫入所述一次寫入存儲區(qū)域來實現(xiàn)所述標識符的登記。
5.根據(jù)權(quán)利要求1的裝置,其中僅由密鑰生成機關(guān)來執(zhí)行所述標識符的發(fā)行/登記。
6.一種用于使用包括防篡改硬件的裝置來執(zhí)行偽公鑰加密和數(shù)字簽名的方法,所述防篡改硬件包括加密/認證部分,用于響應(yīng)于用戶的請求執(zhí)行標識符的發(fā)行、加密和認證;以及篡改檢測部分,用于檢測電壓變化或壓力變化以便電氣地破壞所述加密/認證部分,所述裝置的所述加密/認證部分包括標識符發(fā)行/登記部分,用于發(fā)行標識符以響應(yīng)用戶請求以及將所述標識符存儲在存儲部分中;密鑰生成部分,用于使用一對一函數(shù)來生成與所述標識符對應(yīng)的密鑰并輸出所述密鑰;第一密鑰獲取部分,用于響應(yīng)于用戶解密或生成消息認證代碼的請求,將輸入的標識符與存儲在所述標識符存儲部分中的所述標識符進行比較并且,如果所述標識符彼此一致,將所述標識符移交給所述密鑰生成部分以便輸出由所述密鑰生成部分生成的密鑰;第二密鑰獲取部分,用于響應(yīng)于用戶加密或驗證帶有附加到其的消息認證代碼的消息的請求,將輸入的標識符移交給所述密鑰生成部分以便輸出由所述密鑰生成部分生成的密鑰;消息認證代碼生成部分,用于將輸入的標識符移交給所述第一密鑰獲取部分并且,使用從所述第一密鑰獲取部分輸出的密鑰,計算和輸出輸入消息的消息認證代碼;消息認證代碼驗證部分,用于將輸入的標識符移交給所述第二密鑰獲取部分,使用從所述第二密鑰獲取部分輸出的密鑰來計算輸入消息的消息認證代碼,將所獲得的消息認證代碼與輸入的消息認證代碼進行比較,并且如果所述消息認證代碼彼此一致,將指示所述驗證已成功的信息返回給所述用戶;加密部分,用于將輸入的標識符移交給所述第二密鑰獲取部分,使用從所述第二密鑰獲取部分輸出的密鑰來加密輸入的明文并將結(jié)果返回給用戶;以及解密部分,用于將輸入的標識符移交給所述第一密鑰獲取部分并且,使用從所述第一密鑰獲取部分輸出的密鑰,解密和輸出輸入的加密文本;以及在分別具有所述裝置A和所述裝置B的發(fā)送用戶與接收用戶之間發(fā)送消息中,所述方法包括以下步驟所述裝置A選擇并存儲發(fā)送用戶標識符,然后將所述發(fā)送用戶標識符返回給所述發(fā)送用戶,以便公開所述發(fā)送用戶標識符;所述裝置B選擇并存儲接收用戶標識符,然后將所述接收用戶標識符返回給所述接收用戶,以便公開所述接收用戶標識符;所述裝置A獲取與所述發(fā)送用戶標識符對應(yīng)的密鑰,生成消息認證代碼并將所述消息認證代碼返回給所述發(fā)送用戶;響應(yīng)于所述發(fā)送用戶的加密請求,所述裝置A獲取與所述接收用戶標識符對應(yīng)的密鑰,加密所述消息和所述消息認證代碼并將所述加密的消息和消息認證代碼返回給所述發(fā)送用戶;響應(yīng)于所述接收用戶對所述加密進行解密的請求,所述裝置B獲取與所述接收用戶標識符對應(yīng)的密鑰,解密所述接收的消息并將所述解密的消息返回給所述接收用戶;以及響應(yīng)于所述接收用戶驗證所述消息認證代碼的請求,所述裝置B獲取與所述發(fā)送標識符對應(yīng)的密鑰,驗證所述消息認證代碼并將結(jié)果返回給所述接收用戶。
7.根據(jù)權(quán)利要求6的方法,其中所述加密/認證部分具有種子存儲部分,并且所述密鑰生成部分根據(jù)存儲在所述種子存儲部分中的種子和存儲在所述標識符存儲部分中的標識符來生成密鑰并輸出所述密鑰。
8.根據(jù)權(quán)利要求6的方法,其中所述標識符發(fā)行/登記部分在發(fā)行標識符時將冗余信息包括在所述標識符中。
9.根據(jù)權(quán)利要求6的方法,其中所述加密/認證部分還具有一次寫入存儲區(qū)域以便通過將標識符寫入所述一次寫入存儲區(qū)域來實現(xiàn)所述標識符的登記。
10.根據(jù)權(quán)利要求6的方法,其中僅由密鑰生成機關(guān)來執(zhí)行所述標識符的發(fā)行/登記。
全文摘要
根據(jù)本發(fā)明,密鑰加密系統(tǒng)和防篡改硬件被用于以低成本來實現(xiàn)偽公鑰加密系統(tǒng)。每個用戶使用配備有硬件的設(shè)備來執(zhí)行通信。此類硬件保持標識符與密鑰之間的關(guān)聯(lián)。響應(yīng)于來自用戶的請求,所述硬件發(fā)行并存儲標識符,并且其可以使用與所述標識符關(guān)聯(lián)的密鑰來執(zhí)行消息認證代碼的解密和生成。盡管此硬件可以使用任何給定的標識符來執(zhí)行消息認證代碼的加密和驗證,但是其不能執(zhí)行消息認證代碼的解密和生成。用戶公開其標識符。當執(zhí)行加密時,消息發(fā)送者使用消息接收者的公開的標識符并使用與接收者的硬件具有相同功能的硬件來加密消息。第三者只能通過分析所述硬件中的機制來使用所述標識符執(zhí)行解密。但是,當嘗試此類操作時,所述硬件具有自破壞的能力。
文檔編號H04L9/08GK1794630SQ20051012431
公開日2006年6月28日 申請日期2005年11月28日 優(yōu)先權(quán)日2004年12月20日
發(fā)明者古關(guān)聰, 今村剛 申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1