国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于可信計(jì)算平臺(tái)的權(quán)限委托方法

      文檔序號(hào):7629824閱讀:170來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):基于可信計(jì)算平臺(tái)的權(quán)限委托方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及權(quán)限委托,具體涉及一種基于可信計(jì)算平臺(tái)的權(quán)限委托方法,能夠提高委托的安全性和隱私性。
      背景技術(shù)
      當(dāng)前,各種有授權(quán)管理的應(yīng)用中,為了實(shí)現(xiàn)權(quán)限的委托,采用包括用戶(hù)、角色和口令的普通體系,或PMI(Privilege ManagementInfrastructure,權(quán)限管理基礎(chǔ)架構(gòu))。上述的普通體系的缺點(diǎn)是需要針對(duì)每個(gè)應(yīng)用單獨(dú)開(kāi)發(fā)和安全性較弱。也就是,各類(lèi)授權(quán)數(shù)據(jù)采用純軟件的方式進(jìn)行保護(hù)。上述的PMI的缺點(diǎn)是需要搭建完整的PKI(PublicKey Infrastructure,公鑰基礎(chǔ)架構(gòu))和PMI體系架構(gòu),導(dǎo)致部署比較復(fù)雜,投入較大,對(duì)網(wǎng)絡(luò)要求高。因此,PMI對(duì)于中小型應(yīng)用特別是桌面應(yīng)用來(lái)說(shuō),實(shí)現(xiàn)成本太高。

      發(fā)明內(nèi)容
      鑒于上述問(wèn)題,完成了本發(fā)明。本發(fā)明的目的是提供一種基于可信計(jì)算平臺(tái)且與業(yè)務(wù)分離的權(quán)限委托方法,以提高權(quán)限委托的安全性和隱私性。
      在本發(fā)明的一個(gè)方面,提出了一種基于可信計(jì)算平臺(tái)的、委托由密鑰表示的權(quán)限的方法,所述可信計(jì)算平臺(tái)包括可信硬件和處于該可信硬件上的軟件協(xié)議棧,所述可信硬件存儲(chǔ)有憑證數(shù)據(jù)、根密鑰和具有至少一個(gè)計(jì)數(shù)器的計(jì)數(shù)器表,所述軟件協(xié)議棧中存儲(chǔ)有具有至少一個(gè)密鑰的密鑰表和具有至少一項(xiàng)委托的委托表,所述方法包括步驟將至少一項(xiàng)委托和相應(yīng)的密鑰、委托口令以及密鑰的訪(fǎng)問(wèn)口令輸入到可信硬件;可信硬件利用根密鑰解密密鑰,提取密鑰訪(fǎng)問(wèn)口令,以驗(yàn)證輸入的訪(fǎng)問(wèn)口令是否正確;在輸入的訪(fǎng)問(wèn)口令正確的情況下,將委托和密鑰相關(guān)聯(lián);用根密鑰加密委托口令,并填入委托中,利用憑證數(shù)據(jù)計(jì)算完整性值并填入委托中,產(chǎn)生授權(quán)的委托;將授權(quán)的委托返回給軟件協(xié)議棧,以填入委托信息表中。
      根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該方法中,所述將委托和密鑰相關(guān)聯(lián)的步驟包括可信硬件讀取計(jì)數(shù)器表中與該密鑰相對(duì)應(yīng)的計(jì)數(shù)器的校驗(yàn)值,填入委托的對(duì)應(yīng)字段,并計(jì)算當(dāng)前密鑰的雜湊值,填入委托的密鑰摘要字段。
      根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該方法中,所述軟件協(xié)議棧還存儲(chǔ)有具有至少一組策略的策略組表,該方法還包括策略設(shè)定步驟可信硬件所有者為一委托策略創(chuàng)建一個(gè)策略組,包括設(shè)置有效的計(jì)數(shù)器標(biāo)識(shí)符、標(biāo)記以及描述,連同根密鑰的訪(fǎng)問(wèn)口令一起傳送給可信硬件;可信硬件檢查根密鑰的訪(fǎng)問(wèn)口令;在根密鑰的訪(fǎng)問(wèn)口令正確的情況下,在計(jì)數(shù)器表中建立對(duì)應(yīng)的計(jì)數(shù)器,根據(jù)策略設(shè)定計(jì)數(shù)器的狀態(tài);將該計(jì)數(shù)器的信息返回軟件協(xié)議棧,以更新策略組表。
      根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該方法中,還包括步驟被委托方將授權(quán)的委托、密鑰、相應(yīng)的操作和委托口令輸入到可信硬件內(nèi);可信硬件驗(yàn)證委托口令是否正確和相應(yīng)的操作是否在委托范圍之內(nèi);在驗(yàn)證成功的情況下,被委托方執(zhí)行該操作。
      根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該方法中,通過(guò)用根密鑰解密委托來(lái)驗(yàn)證委托口令是否正確。
      根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該方法中,可信硬件校驗(yàn)委托的委托摘要、密鑰摘要。
      根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該方法中,可信硬件檢查與該密鑰相對(duì)應(yīng)的計(jì)數(shù)器的狀態(tài)和校驗(yàn)值。
      根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該方法中,所述完整性值是HMAC值。
      根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該方法中,所述根密鑰是RSA密鑰對(duì)。
      根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該方法中,所述密鑰是RSA密鑰對(duì)。
      在本發(fā)明的另一方面,提出了一種基于可信計(jì)算平臺(tái)的撤銷(xiāo)授權(quán)委托的方法,所述可信計(jì)算平臺(tái)包括可信硬件和處于該可信硬件上的軟件協(xié)議棧,所述可信硬件存儲(chǔ)有根密鑰和具有至少一個(gè)計(jì)數(shù)器的計(jì)數(shù)器表,所述軟件協(xié)議棧中存儲(chǔ)有具有至少一個(gè)密鑰的密鑰表和具有至少一項(xiàng)委托的委托表,所述方法包括步驟從委托表中選擇待撤銷(xiāo)的委托,與相應(yīng)的密鑰和密鑰的所有者口令輸入到可信硬件;在可信硬件內(nèi)通過(guò)用根密鑰解密所述密鑰來(lái)驗(yàn)證所有者口令;在驗(yàn)證成功的情況下,檢查委托信息的完整性以及委托信息與密鑰是否匹配;在檢查結(jié)果是肯定的情況下,可信硬件修改計(jì)數(shù)器值;在軟件協(xié)議棧刪除所述委托表中的該委托。
      在本發(fā)明的又一方面,提出了一種基于可信計(jì)算平臺(tái)的撤銷(xiāo)授權(quán)委托的方法,所述可信計(jì)算平臺(tái)包括可信硬件和處于該可信硬件上的軟件協(xié)議棧,所述可信計(jì)算平臺(tái)包括可信硬件和處于該可信硬件上的軟件協(xié)議棧,所述可信硬件存儲(chǔ)有根密鑰和具有至少一個(gè)計(jì)數(shù)器的計(jì)數(shù)器表,所述軟件協(xié)議棧中存儲(chǔ)有具有至少一個(gè)密鑰的密鑰表、具有至少一項(xiàng)委托的委托表和具有至少一組策略的策略組表,所述方法包括步驟可信硬件所有者從策略組表中選擇要撤回的策略組,連同所有者口令一起傳送給可信硬件;可信硬件驗(yàn)證用戶(hù)輸入的所有者訪(fǎng)問(wèn)口令是否正確;在驗(yàn)證成功的情況下,檢查委托信息的完整性以及委托信息與密鑰是否匹配;在檢查結(jié)果是肯定的情況下,可信硬件修改計(jì)數(shù)器值;在軟件協(xié)議棧刪除所述委托表中的該委托。
      利用本發(fā)明的方法,委托方可以定制對(duì)被委托方開(kāi)放哪些授權(quán)操作;被委托方不會(huì)知道委托方訪(fǎng)問(wèn)該資源的授權(quán)信息;外部在缺少可信硬件或者資源的所有者授權(quán)情況下,不能修改委托信息,更不能執(zhí)行委托的權(quán)限之外的任何操作。此外,本發(fā)明的配置與平臺(tái)緊密集成,而且與具體業(yè)務(wù)剝離。


      圖1示出了根據(jù)本發(fā)明實(shí)施例的可信計(jì)算平臺(tái)的總體結(jié)構(gòu);圖2示出了在圖1所示的可信計(jì)算平臺(tái)中使用的數(shù)據(jù)結(jié)構(gòu)的示意圖;
      圖3示出了根據(jù)本發(fā)明實(shí)施例的權(quán)限委托過(guò)程;圖4示出了根據(jù)本發(fā)明實(shí)施例的使用權(quán)限委托的過(guò)程;圖5示出了根據(jù)本發(fā)明實(shí)施例的由委托方撤回權(quán)限委托的過(guò)程;圖6示出了根據(jù)本發(fā)明實(shí)施例的由可信硬件所有者撤回權(quán)限委托的過(guò)程;圖7示出了根據(jù)本發(fā)明實(shí)施例的設(shè)定委托策略的過(guò)程。
      具體實(shí)施例方式
      下面對(duì)照附圖詳細(xì)說(shuō)明本發(fā)明的具體實(shí)施例。
      可信計(jì)算平臺(tái)的構(gòu)成圖1示出了根據(jù)本發(fā)明實(shí)施例的可信計(jì)算平臺(tái)的總體構(gòu)成。如圖1所示,根據(jù)本發(fā)明實(shí)施例的可信計(jì)算平臺(tái)包括軟件平臺(tái)100和可信硬件200。平臺(tái)用戶(hù)300通過(guò)軟件平臺(tái)100接受可信硬件200提供的服務(wù)。
      在可信硬件200中,輸入輸出模塊210負(fù)責(zé)與上層的軟件平臺(tái)100的數(shù)據(jù)交換和命令的調(diào)度。權(quán)限委托模塊220可以提供“權(quán)限委托”、“委托撤銷(xiāo)”、“委托鑒別”和“委托策略管理”等基本的權(quán)限委托服務(wù)。
      此外,密鑰生成模塊240用于在可信硬件內(nèi)部隨機(jī)地生成根密鑰(RootKey)以及普通的密鑰(Key)。持久存儲(chǔ)模塊230在芯片內(nèi)部持久存儲(chǔ)憑證數(shù)據(jù)(ProofData)231、根密鑰(RootKey)232以及計(jì)數(shù)器表(Counter Table)233。持久存儲(chǔ)模塊230所使用的存儲(chǔ)介質(zhì)比如是閃存。
      可信硬件200中的其它模塊240包括可信硬件需要的其它功能,但與權(quán)限委托關(guān)系不大的模塊,這里不詳細(xì)描述。
      在持久存儲(chǔ)模塊230中存儲(chǔ)有憑證數(shù)據(jù)(ProofData)231,它是在可信硬件200的制造階段固化的隱秘?cái)?shù)據(jù)。可信硬件200的制造方應(yīng)確保該數(shù)據(jù)不被可信硬件以外的任何實(shí)體所知。每一個(gè)可信硬件都有與眾不同的憑證數(shù)據(jù)。可以用該憑證數(shù)據(jù)對(duì)可信硬件200產(chǎn)生的數(shù)據(jù)進(jìn)行HMAC(一種需要密鑰的雜湊函數(shù),支持完整性校驗(yàn)和身份鑒別)運(yùn)算,以確保這些數(shù)據(jù)不被竄改和偽造。
      此外,持久存儲(chǔ)模塊230中還存儲(chǔ)有可信硬件200的根密鑰(RootKey)232,它用來(lái)加密委托信息中的隱秘?cái)?shù)據(jù)。此外,該根密鑰232也用來(lái)加密可信硬件200產(chǎn)生的其它密鑰。根據(jù)本發(fā)明的一個(gè)實(shí)施例,根密鑰和密鑰可能是2048位的RSA密鑰對(duì)。根密鑰只能保存在可信硬件200內(nèi)部并在可信硬件內(nèi)部使用。此外,在可信硬件200創(chuàng)建根密鑰的同時(shí),也生成了訪(fǎng)問(wèn)根密鑰的訪(fǎng)問(wèn)口令,并且它作為根密鑰的一部分保存,并在用戶(hù)使用根密鑰的時(shí)候用于驗(yàn)證用戶(hù)輸入的訪(fǎng)問(wèn)口令。
      此外,持久存儲(chǔ)模塊230中還存儲(chǔ)有計(jì)數(shù)器表(Counter Table)233。該計(jì)數(shù)器表233的大小受可信硬件200的存儲(chǔ)空間限制。如圖2中的(D)所示,每一個(gè)計(jì)數(shù)器除了有用于標(biāo)識(shí)自身的ID(標(biāo)識(shí))字段外,還包括校驗(yàn)值(VerificationNumber,該值只能增加,不能減小)字段、Enabled字段(使能字段,0表示不能使用,則所有與該計(jì)數(shù)器相關(guān)的委托信息都暫時(shí)無(wú)效,并且只能由可信硬件所有者修改)、Locked字段(鎖止字段,1表示鎖止,則任何人不得修改計(jì)數(shù)器值。只有可信硬件所有者可以修改Locked值)。
      在軟件平臺(tái)100中,輸入輸出模塊110負(fù)責(zé)與上層的應(yīng)用軟件以及底層的可信硬件200的數(shù)據(jù)交換和命令的調(diào)度。
      此外,權(quán)限委托模塊120為上層應(yīng)用提供“權(quán)限委托”、“委托撤銷(xiāo)”、“委托鑒別”和“委托策略管理”等基本的權(quán)限委托服務(wù)。當(dāng)然,這些功能最終是通過(guò)調(diào)用可信硬件200的相應(yīng)功能來(lái)實(shí)現(xiàn)的。
      持久存儲(chǔ)模塊130在持久化存儲(chǔ)介質(zhì)上存取密鑰表(Key Table)131、委托表(Delegation Table)132以及組表(Group Table)133。持久存儲(chǔ)模塊130使用的存儲(chǔ)介質(zhì)比如是硬盤(pán)。
      軟件平臺(tái)100中的其它模塊140包括軟件平臺(tái)需要的其它功能,即與權(quán)限委托關(guān)系不大的模塊,比如密鑰的生成、刪除、修改等。因此這里不詳細(xì)描述其它模塊140的功能。
      在持久存儲(chǔ)模塊130中存儲(chǔ)有登記了多個(gè)密鑰的密鑰表131,其中每個(gè)密鑰在可信硬件200內(nèi)部生成,并且由根密鑰加密。如前所述。密鑰可能是2048位的RSA密鑰對(duì)。與根密鑰類(lèi)似,密鑰在創(chuàng)建時(shí)也生成訪(fǎng)問(wèn)該密鑰的訪(fǎng)問(wèn)口令,并作為該密鑰的一部分被根密鑰一并加密保存,如圖2中的(A)所示。
      此外,持久存儲(chǔ)模塊130中存儲(chǔ)有登記了多個(gè)委托的委托表(Delegation Table)132。本發(fā)明中指的委托,都是對(duì)密鑰的委托。即,密鑰的所有者(知道密鑰的訪(fǎng)問(wèn)口令的用戶(hù))把對(duì)密鑰的使用權(quán)限,以委托的形式允許其它用戶(hù)有限地使用密鑰的功能。如圖2中的(B)所示,委托包含了計(jì)數(shù)器標(biāo)識(shí)符(CounterID,即對(duì)應(yīng)的Counter的ID,也就是GroupID,因?yàn)镚roupID總是與CounterID一致)、密鑰標(biāo)識(shí)符(KeyID,即所委托的Key的ID)、委托信息(DelegationInfo,即具體能使用的Key的操作列表)、校驗(yàn)值(VerificationNumber,其與Counter中的VerificationNumber對(duì)應(yīng))、密鑰摘要(KeyDigest,即所對(duì)應(yīng)密鑰的一個(gè)雜湊結(jié)果)、加密的委托口令(Enc(DelSecret))、委托摘要(DelDigest,委托的HMAC結(jié)果)等字段。
      此外,持久存儲(chǔ)模塊130中存儲(chǔ)有組表(Group Table),即策略組信息數(shù)據(jù)表,其允許用戶(hù)建立委托的策略組。如圖2中的(C)所示,每個(gè)組對(duì)應(yīng)可信硬件中的一個(gè)計(jì)數(shù)器,并可與多個(gè)委托相關(guān)聯(lián)。每個(gè)委托必須受所在組策略的約束。標(biāo)記(Label)表示用戶(hù)可讀的簡(jiǎn)短的策略組標(biāo)識(shí),描述(Description)則表明當(dāng)前組策略的詳細(xì)信息,摘要(Digest)是該組的數(shù)據(jù)的一個(gè)HMAC結(jié)果。
      可信計(jì)算平臺(tái)的操作下面分別對(duì)照?qǐng)D3~圖7詳細(xì)描述根據(jù)本發(fā)明實(shí)施例的可信計(jì)算平臺(tái)的操作過(guò)程。圖3示出了根據(jù)本發(fā)明實(shí)施例的權(quán)限委托過(guò)程。圖4示出了根據(jù)本發(fā)明實(shí)施例的使用權(quán)限委托的過(guò)程。圖5示出了根據(jù)本發(fā)明實(shí)施例的由委托方撤回權(quán)限委托的過(guò)程。圖6示出了根據(jù)本發(fā)明實(shí)施例的由可信硬件所有者撤回權(quán)限委托的過(guò)程。圖7示出了根據(jù)本發(fā)明實(shí)施例的設(shè)定委托策略的過(guò)程。
      A)委托方(即某個(gè)密鑰的所有者)進(jìn)行權(quán)限委托的過(guò)程步驟S110,委托方設(shè)定要對(duì)某密鑰進(jìn)行權(quán)限委托,編輯好該委托能使用的密鑰的操作權(quán)限列表以及該委托所屬的策略組(即對(duì)應(yīng)了一個(gè)可信硬件內(nèi)部的計(jì)數(shù)器)。然后,把編輯好的委托連同密鑰、策略信息、委托口令以及密鑰的訪(fǎng)問(wèn)口令一起傳給可信硬件200。
      步驟S120和S130,可信硬件200利用根密鑰解密密鑰的隱秘信息,提取其中的密鑰訪(fǎng)問(wèn)口令,驗(yàn)證用戶(hù)輸入的訪(fǎng)問(wèn)口令是否正確,如果錯(cuò)誤則直接退出。然后,檢查對(duì)應(yīng)的計(jì)數(shù)器的Enabled字段,如果是0,則直接退出。隨后,檢查對(duì)應(yīng)的計(jì)數(shù)器的Locked字段。根據(jù)策略信息決定是否繼續(xù)執(zhí)行以及是否要修改Locked值。這里,策略信息是一個(gè)數(shù)值,0表示locked為1則退出;1表示無(wú)論locked為何值都加入。
      步驟S140,在可信硬件200內(nèi)對(duì)密鑰和委托進(jìn)行關(guān)聯(lián),即讀取對(duì)應(yīng)計(jì)數(shù)器的校驗(yàn)值(VerificationNumber),填入委托的對(duì)應(yīng)字段。然后,計(jì)算當(dāng)前密鑰的雜湊值,填入KeyDigest(密鑰摘要)字段。
      步驟S150,用根密鑰加密委托口令,存入加密的委托口令(Enc(DelSecret))字段。然后,對(duì)委托中的委托摘要(DelDigest)之前的所有數(shù)據(jù)利用憑證數(shù)據(jù)計(jì)算HMAC值,并把結(jié)果填入委托摘要字段。
      步驟S160,將授權(quán)委托返回給上層的軟件平臺(tái)100,然后填入委托表中。
      B)利用委托的權(quán)限訪(fǎng)問(wèn)資源的過(guò)程步驟S210,被委托方輸入委托授權(quán)信息,連同密鑰、希望執(zhí)行的操作、操作參數(shù)以及權(quán)限委托一起傳送給可信硬件200。
      步驟S220和S230,可信硬件利用根密鑰解密委托的加密委托口令,驗(yàn)證用戶(hù)輸入的委托口令是否正確。如果錯(cuò)誤,則直接退出。
      步驟S240,可信硬件200校驗(yàn)委托的委托摘要(DelDigest)值,發(fā)現(xiàn)委托不合法,則直接退出??尚庞布?00校驗(yàn)委托的密鑰摘要(KeyDigest)值,發(fā)現(xiàn)與傳入的密鑰不一致,則直接退出??尚庞布?00檢查對(duì)應(yīng)的計(jì)數(shù)器,如果該計(jì)數(shù)器的Enabled字段的值為0,則直接退出??尚庞布z查對(duì)應(yīng)計(jì)數(shù)器的校驗(yàn)值(VerificationNumber),如果與委托不一致,則直接退出。可信硬件校驗(yàn)希望執(zhí)行的操作是否在委托的委托信息(DelegationInfo)指定的范圍內(nèi)。如果錯(cuò)誤,則直接退出。
      步驟S250,在希望的操作在委托的委托信息指定的范圍內(nèi)時(shí),執(zhí)行該操作。
      C)委托方(即密鑰的所有者)進(jìn)行權(quán)限撤回的過(guò)程步驟S310,委托方從委托表中選擇需要撤銷(xiāo)的權(quán)限委托,連同對(duì)應(yīng)的密鑰以及密鑰的訪(fǎng)問(wèn)口令一起傳送給可信硬件。
      步驟S320和S330,可信硬件利用根密鑰解密密鑰的隱秘信息,提取其中的密鑰訪(fǎng)問(wèn)口令,驗(yàn)證用戶(hù)輸入的訪(fǎng)問(wèn)口令是否正確。錯(cuò)誤則直接退出。
      步驟S340,可信硬件檢查委托摘要(DelDigest),判斷該委托是否被竄改。不一致則退出??尚庞布z查密鑰摘要(KeyDigest),判斷是否與提交的密鑰對(duì)應(yīng)。不一致則退出。然后,檢查對(duì)應(yīng)計(jì)數(shù)器的Enabled和Locked字段。如果Enabled為0(不可用),則直接退出,不然,如果Locked為1,則退出。
      步驟S350,可信硬件修改對(duì)應(yīng)計(jì)數(shù)器的校驗(yàn)值(verificationNumber,該值只能增加,不能減小,以確保不會(huì)出現(xiàn)重復(fù)的值),返回給上層軟件允許刪除該權(quán)限委托的指令。
      步驟S360,上層軟件刪除對(duì)應(yīng)的委托信息。需要注意的是密鑰的所有者不負(fù)責(zé)更新其它密鑰的委托的計(jì)數(shù)器值。對(duì)于一個(gè)計(jì)數(shù)器關(guān)聯(lián)了多個(gè)委托的情形,可信硬件所有者制定策略,鎖止計(jì)數(shù)器,不允許單個(gè)委托的撤回。
      此外,需要指出,可以允許可信硬件所有者執(zhí)行權(quán)限撤回操作,但該操作必須是針對(duì)策略組執(zhí)行。圖5示出了在這種情況下撤回權(quán)限委托的過(guò)程。
      C’)可信硬件所有者進(jìn)行權(quán)限撤回的過(guò)程步驟S410,所有者選擇要執(zhí)行撤回的策略組,連同所有者口令一起傳送給可信硬件。
      步驟S420和S430,可信硬件驗(yàn)證用戶(hù)輸入的所有者訪(fǎng)問(wèn)口令是否正確。錯(cuò)誤則直接退出。
      步驟S440和S450,可信硬件檢查策略組的摘要,判斷該策略組是否被竄改。不一致則退出。
      步驟S460,修改對(duì)應(yīng)計(jì)數(shù)器的Locked字段為0;修改對(duì)應(yīng)計(jì)數(shù)器的校驗(yàn)值(verificationNumber,該值只能增加,不能減小,以確保不會(huì)出現(xiàn)重復(fù)的值),并返回給上層軟件允許刪除該權(quán)限委托的指令。
      步驟S470,上層軟件從委托表中刪除該策略組關(guān)聯(lián)的所有委托。
      D)可信硬件所有者設(shè)定委托策略組的過(guò)程(以新建一個(gè)委托策略組為例)步驟S510,可信硬件所有者設(shè)定一個(gè)委托策略,比如“2006年1月1日收回委托”,為該策略創(chuàng)建一個(gè)關(guān)聯(lián)的策略組,包括設(shè)置有效的計(jì)數(shù)器標(biāo)識(shí)符(CounterID)、標(biāo)記(Label)以及描述(Description)等,連同根密鑰的訪(fǎng)問(wèn)口令一起傳送給可信硬件200。
      步驟S520和S530,可信硬件首先鑒定所有者身份,即檢查根密鑰的訪(fǎng)問(wèn)口令。錯(cuò)誤則直接退出。
      步驟S540建立對(duì)應(yīng)的計(jì)數(shù)器,根據(jù)策略設(shè)定Locked值,然后把數(shù)據(jù)存入計(jì)數(shù)器表中。
      步驟S550,把結(jié)果返回軟件平臺(tái),軟件平臺(tái)更新策略組表。
      此外,修改以及刪除一條策略組信息的過(guò)程與上述的過(guò)程類(lèi)似,因此不再詳細(xì)說(shuō)明。
      需要指出的是,策略可以是由上層應(yīng)用自由指定的。比如,一個(gè)策略組的描述可以是“在周末晚上8點(diǎn)撤回改組所有委托”,而另一個(gè)策略組的描述可以是“該組委托可由委托方在任何時(shí)候撤回”。
      此外,計(jì)數(shù)器表以及策略組表的條目數(shù)量是受可信硬件的存儲(chǔ)空間限制的。
      例子下面給出一個(gè)本發(fā)明的方法的實(shí)例,其中使用了基于可信計(jì)算平臺(tái)的電子簽章系統(tǒng)。
      在該實(shí)例中,可信硬件采用TPM芯片,軟件平臺(tái)采用TSS軟件,而上層應(yīng)用是簽章系統(tǒng)。
      此外,根密鑰是2048位的RSA公鑰,而密鑰是2048位的RSA公鑰,且憑證數(shù)據(jù)是20字節(jié)的隨機(jī)數(shù)。
      一個(gè)電子簽章和一個(gè)TPM芯片產(chǎn)生的密鑰所對(duì)應(yīng)。撇開(kāi)電子簽章的其它部分不談,簽章最后的簽名事實(shí)上就是在TPM芯片內(nèi)部利用密鑰的私鑰對(duì)公文的一個(gè)雜湊值進(jìn)行簽名并返回給用戶(hù)。
      一個(gè)完整的電子簽章系統(tǒng)是一臺(tái)PC,PC中至少包含了TPM芯片、TSS軟件以及簽章系統(tǒng)。只有在該P(yáng)C上,用戶(hù)輸入密鑰的訪(fǎng)問(wèn)口令,才可以使用該密鑰進(jìn)行簽名,即利用電子簽章對(duì)公文蓋章。
      假設(shè)用戶(hù)A是密鑰A的所有者,即簽章A的所有者。當(dāng)用戶(hù)A因?yàn)楸局芤霾疃M延煤炚翧進(jìn)行蓋章的權(quán)限轉(zhuǎn)交給用戶(hù)B的時(shí)候,他需要進(jìn)行如下操作假設(shè)用戶(hù)A就是TPM芯片的所有者,即平臺(tái)的管理員,則他首先要設(shè)定委托策略。不妨為如下兩組策略策略一,委托方隨時(shí)可收回該委托;策略二,周一收回委托。
      隨后,用戶(hù)A設(shè)定委托Da,指定委托口令,并指明僅僅委托密鑰A的簽名功能,然后把Da與策略一關(guān)聯(lián)。
      用戶(hù)A離開(kāi)后,用戶(hù)B可以使用A設(shè)定的委托口令(委托口令可以通過(guò)其它途徑傳遞,比如親口告之)使用簽章A進(jìn)行蓋章。但是用戶(hù)B不能修改委托、不能修改委托口令以及密鑰A的訪(fǎng)問(wèn)口令。
      用戶(hù)A回來(lái)之后,可以執(zhí)行“委托撤回”過(guò)程,收回委托。用戶(hù)B無(wú)法再使用。
      以上所述,僅為本發(fā)明中的具體實(shí)施方式
      ,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉該技術(shù)的人在本發(fā)明所披露的技術(shù)范圍內(nèi),可輕易想到的變換或替換,都應(yīng)涵蓋在本發(fā)明的包含范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求書(shū)的保護(hù)范圍為準(zhǔn)。
      權(quán)利要求
      1.一種基于可信計(jì)算平臺(tái)的、委托由密鑰表示的權(quán)限的方法,所述可信計(jì)算平臺(tái)包括可信硬件和處于該可信硬件上的軟件協(xié)議棧,所述可信硬件存儲(chǔ)有憑證數(shù)據(jù)、根密鑰和具有至少一個(gè)計(jì)數(shù)器的計(jì)數(shù)器表,所述軟件協(xié)議棧中存儲(chǔ)有具有至少一個(gè)密鑰的密鑰表和具有至少一項(xiàng)委托的委托表,所述方法包括步驟將至少一項(xiàng)委托和相應(yīng)的密鑰、委托口令以及密鑰的訪(fǎng)問(wèn)口令輸入到可信硬件;可信硬件利用根密鑰解密密鑰,提取密鑰訪(fǎng)問(wèn)口令,以驗(yàn)證輸入的訪(fǎng)問(wèn)口令是否正確;在輸入的訪(fǎng)問(wèn)口令正確的情況下,將委托和密鑰相關(guān)聯(lián);用根密鑰加密委托口令,并填入委托中,利用憑證數(shù)據(jù)計(jì)算完整性值并填入委托中,產(chǎn)生授權(quán)的委托;將授權(quán)的委托返回給軟件協(xié)議棧,以填入委托信息表中。
      2.如權(quán)利要求1所述的方法,其特征在于,所述將委托和密鑰相關(guān)聯(lián)的步驟包括可信硬件讀取計(jì)數(shù)器表中與該密鑰相對(duì)應(yīng)的計(jì)數(shù)器的校驗(yàn)值,填入委托的對(duì)應(yīng)字段,并計(jì)算當(dāng)前密鑰的雜湊值,填入委托的密鑰摘要字段。
      3.如權(quán)利要求1所述的方法,其特征在于,所述軟件協(xié)議棧還存儲(chǔ)有具有至少一組策略的策略組表,所述方法還包括策略設(shè)定步驟可信硬件所有者為一委托策略創(chuàng)建一個(gè)策略組,包括設(shè)置有效的計(jì)數(shù)器標(biāo)識(shí)符、標(biāo)記以及描述,連同根密鑰的訪(fǎng)問(wèn)口令一起傳送給可信硬件;可信硬件檢查根密鑰的訪(fǎng)問(wèn)口令;在根密鑰的訪(fǎng)問(wèn)口令正確的情況下,在計(jì)數(shù)器表中建立對(duì)應(yīng)的計(jì)數(shù)器,根據(jù)策略設(shè)定計(jì)數(shù)器的狀態(tài);將該計(jì)數(shù)器的信息返回軟件協(xié)議棧,以更新策略組表。
      4.如權(quán)利要求1所述的方法,其特征在于,還包括步驟被委托方將授權(quán)的委托、密鑰、相應(yīng)的操作和委托口令輸入到可信硬件內(nèi);可信硬件驗(yàn)證委托口令是否正確和相應(yīng)的操作是否在委托范圍之內(nèi);在驗(yàn)證成功的情況下,被委托方執(zhí)行該操作。
      5.如權(quán)利要求4所述的方法,其特征在于,通過(guò)用根密鑰解密委托來(lái)驗(yàn)證委托口令是否正確。
      6.如權(quán)利要求4所述的方法,其特征在于,可信硬件校驗(yàn)委托的委托摘要、密鑰摘要。
      7.如權(quán)利要求6所述的方法,其特征在于,可信硬件檢查與該密鑰相對(duì)應(yīng)的計(jì)數(shù)器的狀態(tài)和校驗(yàn)值。
      8.如權(quán)利要求1所述的方法,其特征在于,所述完整性值是HMAC值。
      9.如權(quán)利要求2或3所述的方法,其特征在于,所述根密鑰是RSA密鑰對(duì)。
      10.如權(quán)利要求2或3所述的方法,其特征在于,所述密鑰是RSA密鑰對(duì)。
      11.一種基于可信計(jì)算平臺(tái)的撤銷(xiāo)授權(quán)委托的方法,所述可信計(jì)算平臺(tái)包括可信硬件和處于該可信硬件上的軟件協(xié)議棧,所述可信硬件存儲(chǔ)有根密鑰和具有至少一個(gè)計(jì)數(shù)器的計(jì)數(shù)器表,所述軟件協(xié)議棧中存儲(chǔ)有具有至少一個(gè)密鑰的密鑰表和具有至少一項(xiàng)委托的委托表,所述方法包括步驟從委托表中選擇待撤銷(xiāo)的委托,與相應(yīng)的密鑰和密鑰的所有者口令輸入到可信硬件;在可信硬件內(nèi)通過(guò)用根密鑰解密所述密鑰來(lái)驗(yàn)證所有者口令;在驗(yàn)證成功的情況下,檢查委托信息的完整性以及委托信息與密鑰是否匹配;在檢查結(jié)果是肯定的情況下,可信硬件修改計(jì)數(shù)器值;在軟件協(xié)議棧刪除所述委托表中的該委托。
      12.一種基于可信計(jì)算平臺(tái)的撤銷(xiāo)授權(quán)委托的方法,所述可信計(jì)算平臺(tái)包括可信硬件和處于該可信硬件上的軟件協(xié)議棧,所述可信計(jì)算平臺(tái)包括可信硬件和處于該可信硬件上的軟件協(xié)議棧,所述可信硬件存儲(chǔ)有根密鑰和具有至少一個(gè)計(jì)數(shù)器的計(jì)數(shù)器表,所述軟件協(xié)議棧中存儲(chǔ)有具有至少一個(gè)密鑰的密鑰表、具有至少一項(xiàng)委托的委托表和具有至少一組策略的策略組表,所述方法包括步驟可信硬件所有者從策略組表中選擇要撤回的策略組,連同所有者口令一起傳送給可信硬件;可信硬件驗(yàn)證用戶(hù)輸入的所有者訪(fǎng)問(wèn)口令是否正確;在驗(yàn)證成功的情況下,檢查委托信息的完整性以及委托信息與密鑰是否匹配;在檢查結(jié)果是肯定的情況下,可信硬件修改計(jì)數(shù)器值;在軟件協(xié)議棧刪除所述委托表中的該委托。
      全文摘要
      公開(kāi)了一種基于可信計(jì)算平臺(tái)的、委托由密鑰表示的權(quán)限的方法,可信計(jì)算平臺(tái)包括可信硬件和軟件協(xié)議棧,可信硬件存儲(chǔ)有憑證數(shù)據(jù)、根密鑰和具有至少一個(gè)計(jì)數(shù)器的計(jì)數(shù)器表,軟件協(xié)議棧中存儲(chǔ)有具有至少一個(gè)密鑰的密鑰表和具有至少一項(xiàng)委托的委托表,該方法包括將至少一項(xiàng)委托和相應(yīng)的密鑰、委托口令以及密鑰的訪(fǎng)問(wèn)口令輸入到可信硬件;可信硬件利用根密鑰解密密鑰,提取密鑰訪(fǎng)問(wèn)口令,以驗(yàn)證輸入的訪(fǎng)問(wèn)口令是否正確;在輸入的訪(fǎng)問(wèn)口令正確的情況下,將委托和密鑰相關(guān)聯(lián);用根密鑰加密委托口令,并填入委托中,利用憑證數(shù)據(jù)計(jì)算完整性值并填入委托中,產(chǎn)生授權(quán)的委托;將授權(quán)的委托返回給軟件協(xié)議棧,以填入委托信息表中。
      文檔編號(hào)H04L9/08GK1992714SQ20051013557
      公開(kāi)日2007年7月4日 申請(qǐng)日期2005年12月29日 優(yōu)先權(quán)日2005年12月29日
      發(fā)明者馮榮峰, 王凱, 郭軼尊, 李俊 申請(qǐng)人:聯(lián)想(北京)有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1