国产精品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>

      使用多因素或密鑰式分散對數(shù)據(jù)進行保護的系統(tǒng)和方法

      文檔序號:7732621閱讀:221來源:國知局
      專利名稱:使用多因素或密鑰式分散對數(shù)據(jù)進行保護的系統(tǒng)和方法
      技術(shù)領(lǐng)域
      本發(fā)明一般涉及用于對數(shù)據(jù)進行保護的改進系統(tǒng)和方法。本文所述的系統(tǒng)和方法 中的一些利用密鑰式信息分散算法(稱作密鑰式IDA)和多因素秘密共享技術(shù)??梢耘c在 共同擁有的美國專利No. 7391865和在2003年6月11日提交的共同擁有的美國專利申請 No. 10/458928、2005年10月25日提交的美國專利申請No. 11/258839、2006年11月20日 提交的美國專利申請No. 11/602667、2007年11月7日提交的美國專利申請No. 11/983355、 2007年12月5日提交的美國專利申請No. 11/999575和2008年9月12提交的美國專利申 請No. 12/209703中描述的其它系統(tǒng)和方法結(jié)合地使用本文所述的系統(tǒng)和方法,上述所有 的美國專利和專利申請的全部內(nèi)容通過引用并入本文。
      背景技術(shù)
      在當(dāng)今社會中,個人和企業(yè)通過計算機系統(tǒng)進行越來越多的活動。這些計算機系 統(tǒng)包括專有和非專有的計算機網(wǎng)絡(luò),常常存儲、存檔和發(fā)送所有類型的敏感信息。因此,日 益需要確保通過這些系統(tǒng)進行存儲和發(fā)送的數(shù)據(jù)不會被讀取或以其它方式受到危害。一種保護計算機系統(tǒng)的普通方案是提供登錄和口令功能。然而,由于大部分的服 務(wù)臺呼叫與口令問題有關(guān),所以口令管理被證明是成本極高的。此外,由于口令通常存儲在 例如通過暴力攻擊而易被不當(dāng)訪問的文件中,所以口令提供極小的安全性。另一種保護計算機系統(tǒng)的方案是提供密碼基礎(chǔ)結(jié)構(gòu)。密碼術(shù)通常是指通過將數(shù)據(jù) 變換或加密成不可讀格式對數(shù)據(jù)進行保護。只有擁有加密密鑰的那些人才能將數(shù)據(jù)解密成 可用格式。密碼術(shù)用于識別用戶,例如允許訪問特權(quán)的認(rèn)證、例如建立數(shù)字證書和簽名的授 權(quán)等等。一種流行的密碼術(shù)系統(tǒng)是使用兩個密鑰的公鑰系統(tǒng),這兩個密鑰是任何人知道的 公鑰和只有它的個人或企業(yè)擁有者知道的私鑰。通常,用一個密鑰加密的數(shù)據(jù)被用另一個 密鑰進行解密,并且從任一個密鑰無法重建另一個密鑰。不幸的是,對于安全性來講,即使是上述的典型公鑰密碼系統(tǒng)也高度依賴于用戶。 例如,密碼系統(tǒng)例如通過用戶的瀏覽器向用戶發(fā)布私鑰。沒有經(jīng)驗的用戶然后通常將私鑰 存儲在硬盤上,其它人通過開放計算機系統(tǒng)(例如,互聯(lián)網(wǎng))可以訪問該硬盤。另一方面, 用戶可能為包含他們的私鑰的文件選擇差的名稱(例如,“密鑰.”)。上述和其它行為的結(jié) 果是使一個密鑰或多個密鑰易受危害。除了上述的危害以外,用戶可將他或她的私鑰保存在配置有存檔或備份系統(tǒng)的計 算機系統(tǒng)上,這潛在導(dǎo)致私鑰的復(fù)本行經(jīng)多個計算機存儲裝置或其它系統(tǒng)。這種安全性破 壞常被稱作“密鑰遷移”。與密鑰遷移類似,許多應(yīng)用最多通過簡單的登錄和口令訪問,提供對用戶的私鑰的訪問。如上所述,登錄和口令訪問常常不提供充足的安全性。一種提高上述密碼系統(tǒng)的安全性的方案是包括生物測定作為認(rèn)證或授權(quán)的一部 分。生物測定通常包括可測量物理特性,例如可通過自動系統(tǒng)(例如,指紋模式或語音模式 的模式匹配或識別)進行檢查的指紋或語音。在這些系統(tǒng)中,用戶的生物測定和/或密鑰 可以存儲在移動計算裝置(例如,智能卡、膝上型電腦、個人數(shù)字助理或移動電話)上,從而 允許在移動環(huán)境中可以使用生物測定或密鑰。上述的移動生物測定密碼系統(tǒng)仍然具有多種缺點。例如,移動用戶可能會丟失或 損壞智能卡或便攜式計算裝置,從而令他或她對潛在重要數(shù)據(jù)的訪問被完全切斷。或者,懷 有惡意的人可能偷取移動用戶的智能卡或便攜式計算裝置并且使用它有效地偷取移動用 戶的數(shù)字證明。另一方面,便攜式計算裝置可以連接到開放系統(tǒng)(例如,互聯(lián)網(wǎng)),并且與口 令一樣,由于用戶對安全性的不在意或者惡意入侵者,存儲生物測定的文件會易于受危害。

      發(fā)明內(nèi)容
      基于上述內(nèi)容,需要提供一種安全性與用戶無關(guān)同時還支持移動用戶的密碼系 統(tǒng)。因此,本發(fā)明的一個方面提供一種實質(zhì)上對任何類型的數(shù)據(jù)進行保護以防止未授 權(quán)訪問或使用的方法。該方法包括將要保護的數(shù)據(jù)解析、分裂和/或分離成兩個或更多部 分的一個或更多步驟。該方法還包括對要保護的數(shù)據(jù)進行加密??梢栽谑状谓馕觥⒎至押? 或分離數(shù)據(jù)之前或之后執(zhí)行數(shù)據(jù)的加密。此外,針對一個或更多的數(shù)據(jù)部分可以重復(fù)加密 步驟。類似地,可以針對一個或更多數(shù)據(jù)部分重復(fù)解析、分裂和/或分離步驟。可選地,該方 法還包括將已經(jīng)加密的解析、分裂和/或分離后的數(shù)據(jù)存儲在一個位置或者多個位置???選地,該方法還包括將保護的數(shù)據(jù)重構(gòu)或重裝成它的原始形式以用于授權(quán)訪問或使用。這 個方法可以并入能夠執(zhí)行該方法的期望步驟的任何計算機、服務(wù)器、引擎等的操作中。本發(fā)明的另一個方面提供了一種實質(zhì)上保護任何類型的數(shù)據(jù)以防止未授權(quán)訪問 或使用的系統(tǒng)。這個系統(tǒng)包括數(shù)據(jù)分裂模塊、密碼處理模塊、以及可選的數(shù)據(jù)組裝模塊。在 一個實施例中,該系統(tǒng)還可以包括可存儲安全數(shù)據(jù)的一個或更多數(shù)據(jù)存儲設(shè)施。因此,本發(fā)明的一個方面提供一種具有服務(wù)器中心密鑰或者換言之在服務(wù)器上存 儲密碼密鑰和用戶認(rèn)證數(shù)據(jù)的安全服務(wù)器或者信任引擎。根據(jù)這個實施例,用戶訪問信任 引擎以執(zhí)行認(rèn)證和密碼功能,例如但不限于認(rèn)證、授權(quán)、數(shù)字簽名以及證書的產(chǎn)生、存儲和 獲取、加密、公證類和委托書類行為等。本發(fā)明的另一個方面提供一種可靠的或信任的認(rèn)證過程。此外,在值得信賴的肯 定認(rèn)證后,可以采取許多不同的動作,從提供密碼技術(shù),到系統(tǒng)或裝置授權(quán)和訪問,到允許 一個或大量的電子裝置的使用或控制。本發(fā)明的另一個方面是在密碼密鑰和認(rèn)證數(shù)據(jù)沒有丟失、被盜或受危害的環(huán)境下 提供密碼密鑰和認(rèn)證數(shù)據(jù),由此有利地避免持續(xù)地重新發(fā)布和管理新密鑰和認(rèn)證數(shù)據(jù)的需 要。根據(jù)本發(fā)明的另一個方面,信任引擎允許用戶針對多個活動、賣方和/或認(rèn)證請求使用 一個密鑰對。根據(jù)本發(fā)明的另一個方面,信任引擎執(zhí)行密碼處理(例如但不限于在服務(wù)器 端的加密、認(rèn)證或簽名)中的至少一個步驟,由此使得客戶或用戶可以僅擁有最小計算資 源。
      根據(jù)本發(fā)明的另一個方面,信任引擎包括用于存儲每個密碼密鑰和認(rèn)證數(shù)據(jù)的部 分的一個或多個儲存器(depository)。通過數(shù)據(jù)分裂過程建立這些部分,從而使得在沒有 來自一個儲存器中的超過一個的位置或者來自多個儲存器的預(yù)定部分的情況下不能夠進 行重建。根據(jù)另一個實施例,多個儲存器可以在地理上遠(yuǎn)離從而使得一個儲存器的無良雇 員或受危害系統(tǒng)不會對用戶的密鑰或認(rèn)證數(shù)據(jù)提供訪問。根據(jù)另一個實施例,認(rèn)證過程有利地允許信任引擎并行處理多個認(rèn)證活動。根據(jù) 另一個實施例,信任引擎可以有利地跟蹤失敗的訪問嘗試并且由此限制惡意入侵者可以嘗 試破壞系統(tǒng)的次數(shù)。根據(jù)另一個實施例,信任引擎可以包括多個實例,其中,每個信任引擎可以預(yù)測并 與其它信任引擎分擔(dān)處理負(fù)載。根據(jù)另一個實施例,信任引擎可以包括冗余模塊,用于輪詢 多個認(rèn)證結(jié)果以確保多于一個的系統(tǒng)認(rèn)證了用戶。因此,本發(fā)明的一個方面包括一種可遠(yuǎn)程訪問的安全密碼系統(tǒng),用于存儲任何類 型的數(shù)據(jù),包括但不限于與多個用戶關(guān)聯(lián)的多個私有密碼密鑰。該密碼系統(tǒng)將所述多個用 戶中的每個與所述多個私有密碼密鑰中的一個或多個不同密鑰進行關(guān)聯(lián),并且使用關(guān)聯(lián)的 一個或多個不同密鑰執(zhí)行用于每個用戶的密碼功能,而不向用戶發(fā)布所述多個私有密碼密 鑰。該密碼系統(tǒng)包括具有至少一個服務(wù)器的儲存器系統(tǒng),該至少一個服務(wù)器存儲要保護的 數(shù)據(jù),諸如多個私有密碼密鑰和多個登記認(rèn)證數(shù)據(jù)。每個登記認(rèn)證數(shù)據(jù)識別多個用戶之一, 并且多個用戶中的每個與所述多個私有密碼密鑰中的一個或多個不同密鑰關(guān)聯(lián)。該密碼系 統(tǒng)還可以包括認(rèn)證引擎,該認(rèn)證引擎用于將由多個用戶中的一個接收的認(rèn)證數(shù)據(jù)和與多個 用戶中的所述一個對應(yīng)并且從儲存器系統(tǒng)接收的登記認(rèn)證數(shù)據(jù)進行比較,從而生成認(rèn)證結(jié) 果。該密碼系統(tǒng)還可以包括密碼引擎,當(dāng)認(rèn)證結(jié)果指示多個用戶中的所述一個的正確識別 時,該密碼引擎使用從儲存器系統(tǒng)接收的所述關(guān)聯(lián)的一個或多個不同密鑰代表多個用戶中 的所述一個執(zhí)行密碼功能。該密碼系統(tǒng)還可以包括事務(wù)引擎,該事務(wù)引擎連接用來從多個 用戶將數(shù)據(jù)路由到儲存器服務(wù)器系統(tǒng)、認(rèn)證引擎和密碼引擎。本發(fā)明的另一個方面包括一種安全密碼系統(tǒng),可選地,可對該安全密碼系統(tǒng)進行 遠(yuǎn)程訪問。該密碼系統(tǒng)包括具有存儲至少一個私鑰和任何其它數(shù)據(jù)(例如但不限于多個登 記認(rèn)證數(shù)據(jù))的至少一個服務(wù)器的儲存器系統(tǒng),其中,每個登記認(rèn)證數(shù)據(jù)識別可能的多個 用戶之一。可選地,該密碼系統(tǒng)還可以包括認(rèn)證引擎,該認(rèn)證引擎將由用戶接收的認(rèn)證數(shù)據(jù) 和與用戶對應(yīng)并且從儲存器系統(tǒng)接收的登記認(rèn)證數(shù)據(jù)進行比較,從而生成認(rèn)證結(jié)果。該密 碼系統(tǒng)還包括密碼引擎,當(dāng)認(rèn)證結(jié)果指示用戶的正確識別時,該加密引擎使用可從儲存器 系統(tǒng)接收的至少所述私鑰代表用戶執(zhí)行密碼功能??蛇x地,該密碼系統(tǒng)還可包括事務(wù)引擎, 該事務(wù)引擎連接用來從用戶向其它引擎或系統(tǒng)(例如但不限于儲存器服務(wù)器系統(tǒng)、認(rèn)證引 擎和密碼引擎)傳送數(shù)據(jù)。本發(fā)明的另一個方面包括一種便于執(zhí)行密碼功能的方法。該方法包括將多個用戶 中的一個用戶與存儲在安全位置(例如安全服務(wù)器)上的多個私有密碼密鑰中的一個或多 個密鑰進行關(guān)聯(lián)。該方法還包括從該用戶接收認(rèn)證數(shù)據(jù),并且將認(rèn)證數(shù)據(jù)和與該用戶對應(yīng) 的認(rèn)證數(shù)據(jù)進行比較,從而驗證用戶的身份。該方法還包括利用所述一個或多個密鑰執(zhí)行 密碼功能而不用向用戶發(fā)布所述一個或多個密鑰。本發(fā)明的另一個方面包括一種認(rèn)證系統(tǒng),用于通過用戶的登記認(rèn)證數(shù)據(jù)的安全存儲來唯一地識別用戶。該認(rèn)證系統(tǒng)包括一個或多個數(shù)據(jù)存儲設(shè)施,其中,每個數(shù)據(jù)存儲設(shè)施 包括存儲登記認(rèn)證數(shù)據(jù)的至少一個部分的計算機可訪問存儲介質(zhì)。該認(rèn)證系統(tǒng)還包括與一 個或多個數(shù)據(jù)存儲設(shè)施進行通信的認(rèn)證引擎。該認(rèn)證引擎包括數(shù)據(jù)分裂模塊、數(shù)據(jù)組裝模 塊和數(shù)據(jù)比較模塊,其中,數(shù)據(jù)分裂模塊對登記認(rèn)證數(shù)據(jù)進行操作以建立多個部分,數(shù)據(jù)組 裝模塊對來自至少一個數(shù)據(jù)存儲設(shè)施的部分進行處理以組裝登記認(rèn)證數(shù)據(jù),數(shù)據(jù)比較模塊 從用戶接收當(dāng)前認(rèn)證數(shù)據(jù)并且將當(dāng)前認(rèn)證數(shù)據(jù)與組裝的登記認(rèn)證數(shù)據(jù)進行比較以確定是 否唯一地識別了用戶。本發(fā)明的另一個方面包括一種密碼系統(tǒng)。該密碼系統(tǒng)包括一個或多個數(shù)據(jù)存儲設(shè) 施,其中,每個數(shù)據(jù)存儲設(shè)施包括存儲一個或多個密碼密鑰的至少一個部分的計算機可訪 問存儲介質(zhì)。該密碼系統(tǒng)還包括與數(shù)據(jù)存儲設(shè)施進行通信的密碼引擎。該密碼引擎還包括 數(shù)據(jù)分裂模塊、數(shù)據(jù)組裝模塊和密碼處理模塊,其中,數(shù)據(jù)分裂模塊對密碼密鑰進行操作以 建立多個部分,數(shù)據(jù)組裝模塊對來自數(shù)據(jù)至少一個存儲設(shè)施的部分進行處理以組裝密碼密 鑰,密碼處理模塊接收組裝的密碼密鑰并且用其執(zhí)行密碼功能。本發(fā)明的另一個方面包括一種將任何類型的數(shù)據(jù)(包括但不限于認(rèn)證數(shù)據(jù))存儲 在地理上遠(yuǎn)離的安全數(shù)據(jù)存儲設(shè)施中從而保護數(shù)據(jù)以防止任何個體數(shù)據(jù)存儲設(shè)施的合成 的方法。該方法包括在信任引擎接收數(shù)據(jù),在信任引擎將該數(shù)據(jù)與第一基本隨機值進行組 合以形成第一組合值,并且將該數(shù)據(jù)與第二基本隨機值進行組合以形成第二組合值。該方 法包括建立第一基本隨機值與第二組合值的第一配對,建立第一基本隨機值與第二基本隨 機值的第二配對,并且將第一配對存儲在第一安全數(shù)據(jù)存儲設(shè)施中。該方法包括將第二配 對存儲在遠(yuǎn)離第一安全數(shù)據(jù)存儲設(shè)施的第二安全數(shù)據(jù)存儲設(shè)施中。本發(fā)明的另一個方面包括一種存儲任何類型的數(shù)據(jù)(包括但不限于認(rèn)證數(shù)據(jù))的 方法,該方法包括接收數(shù)據(jù),將該數(shù)據(jù)與第一比特集進行組合以形成第二比特集,并且將該 數(shù)據(jù)與第三比特集進行組合以形成第四比特集。該方法還包括建立第一比特集與第三比特 集的第一配對。該方法還包括建立第一比特集與第四比特集的第二配對,并且將第一和第 二配對之一存儲在第一計算機可訪問存儲介質(zhì)中。該方法還包括將第一和第二配對中的另 一個存儲在第二計算機可訪問存儲介質(zhì)中。本發(fā)明的另一個方面包括一種將加密數(shù)據(jù)存儲在地理上遠(yuǎn)離的安全數(shù)據(jù)存儲設(shè) 施中從而保護加密數(shù)據(jù)以防止任何個體數(shù)據(jù)存儲設(shè)施的合成的方法。該方法包括在信任引 擎接收加密數(shù)據(jù),在信任引擎將加密數(shù)據(jù)與第一基本隨機值進行組合以形成第一組合值, 并且將加密數(shù)據(jù)與第二基本隨機值進行組合以形成第二組合值。該方法還包括建立第一基 本隨機值與第二組合值的第一配對,建立第一基本隨機值與第二基本隨機值的第二配對, 并且將第一配對存儲在第一安全數(shù)據(jù)存儲設(shè)施中。該方法還包括將第二配對存儲在遠(yuǎn)離第 一安全數(shù)據(jù)存儲設(shè)施的第二安全數(shù)據(jù)存儲設(shè)施中。本發(fā)明的另一個方面包括一種存儲加密數(shù)據(jù)的方法,該方法包括接收認(rèn)證數(shù)據(jù)并 且將加密數(shù)據(jù)與第一比特集進行組合以形成第二比特集。該方法還包括將加密數(shù)據(jù)與第三 比特集進行組合以形成第四比特集,建立第一比特集與第三比特集的第一配對,并且建立 第一比特集與第四比特集的第二配對。該方法還包括將第一和第二配對之一存儲在第一計 算機可訪問存儲介質(zhì)中,并且將第一和第二配對中的另一個存儲在第二計算機可訪問存儲 介質(zhì)中。
      7
      本發(fā)明的另一個方面包括一種在密碼系統(tǒng)內(nèi)處理任何類型或形式的敏感數(shù)據(jù)的 方法,其中,僅僅在授權(quán)用戶采用敏感數(shù)據(jù)執(zhí)行動作期間敏感數(shù)據(jù)以可用形式存在。該方法 還包括在軟件模塊中從第一計算機可訪問存儲介質(zhì)接收基本隨機化或加密的敏感數(shù)據(jù),并 且在軟件模塊中從一個或多個其它計算機可訪問存儲介質(zhì)接收可以是也可以不是敏感數(shù) 據(jù)的基本隨機化或加密的數(shù)據(jù)。該方法還包括在軟件模塊中對基本隨機化的預(yù)加密的敏感 數(shù)據(jù)和可以是也可以不是敏感數(shù)據(jù)的基本隨機化或加密的數(shù)據(jù)進行處理以組裝敏感數(shù)據(jù), 并且在軟件引擎中采用該敏感數(shù)據(jù)執(zhí)行動作。該動作包括但不限于對用戶進行認(rèn)證和執(zhí)行 密碼功能中的一個動作。本發(fā)明的另一個方面包括一種安全認(rèn)證系統(tǒng)。該安全認(rèn)證系統(tǒng)包括多個認(rèn)證引 擎。每個認(rèn)證引擎接收被設(shè)計為以一定確信度唯一識別用戶的登記認(rèn)證數(shù)據(jù)。每個認(rèn)證引 擎接收當(dāng)前認(rèn)證數(shù)據(jù)以與登記認(rèn)證數(shù)據(jù)進行比較,并且每個認(rèn)證引擎確定認(rèn)證結(jié)果。安全 認(rèn)證系統(tǒng)還包括冗余系統(tǒng),該冗余系統(tǒng)接收至少兩個認(rèn)證引擎的認(rèn)證結(jié)果并且確定是否唯 一識別了用戶。本發(fā)明的另一個方面包括一種運動系統(tǒng)中的安全數(shù)據(jù),借助該運動系統(tǒng)數(shù)據(jù)可以 在根據(jù)本發(fā)明而保護的不同部分中進行發(fā)送,從而被危害的任何一個部分都不會提供用于 恢復(fù)原始數(shù)據(jù)的足夠數(shù)據(jù)。這可以應(yīng)用到任何數(shù)據(jù)傳輸,不管它是有線、無線還是物理的。本發(fā)明的另一個方面包括將本發(fā)明的安全數(shù)據(jù)解析器集成到存儲或傳送數(shù)據(jù)的 任何合適系統(tǒng)內(nèi)。例如,電子郵件系統(tǒng)、RAID系統(tǒng)、視頻廣播系統(tǒng)、數(shù)據(jù)庫系統(tǒng)或者任何其 它合適系統(tǒng)可以具有以任何合適等級集成的安全數(shù)據(jù)解析器。本發(fā)明的另一個方面包括使用任何合適的解析和分裂算法來產(chǎn)生多份(share) 數(shù)據(jù)。對于解析和分裂數(shù)據(jù),可以采用隨機、偽隨機、確定性或者它們的任何組合。


      在下文中結(jié)合附圖更加詳細(xì)描述本發(fā)明,這些附圖旨在例示而非限制本發(fā)明,在 附圖中圖1示出了根據(jù)本發(fā)明的實施例的各方面的密碼系統(tǒng)的框圖;圖2示出了根據(jù)本發(fā)明的實施例的各方面的圖1的信任引擎的框圖;圖3示出了根據(jù)本發(fā)明的實施例的各方面的圖2的事務(wù)引擎的框圖;圖4示出了根據(jù)本發(fā)明的實施例的各方面的圖2的儲存器的框圖;圖5示出了根據(jù)本發(fā)明的實施例的各方面的圖2的認(rèn)證引擎的框圖;圖6示出了根據(jù)本發(fā)明的實施例的各方面的圖2的密碼引擎的框圖;圖7示出了根據(jù)本發(fā)明的另一個實施例的各方面的儲存器系統(tǒng)的框圖;圖8示出了根據(jù)本發(fā)明的實施例的各方面的數(shù)據(jù)分裂過程的流程圖;圖9A示出了根據(jù)本發(fā)明的實施例的各方面的登記過程的數(shù)據(jù)流;圖9B示出了根據(jù)本發(fā)明的實施例的各方面的互用性過程的流程圖;圖10示出了根據(jù)本發(fā)明的實施例的各方面的認(rèn)證過程的數(shù)據(jù)流;圖11示出了根據(jù)本發(fā)明的實施例的各方面的簽名過程的數(shù)據(jù)流;圖12示出了根據(jù)本發(fā)明的另一個實施例的各方面的加密/解密過程的數(shù)據(jù)流;圖13示出了根據(jù)本發(fā)明的另一個實施例的各方面的信任引擎系統(tǒng)的簡化框圖14示出了根據(jù)本發(fā)明的另一個實施例的各方面的信任引擎系統(tǒng)的簡化框圖;圖15示出了根據(jù)本發(fā)明的實施例的各方面的圖14的冗余模塊的框圖;圖16示出了根據(jù)本發(fā)明的一個方面的評估認(rèn)證的過程;圖17示出了根據(jù)本發(fā)明的如在圖16中所示的一個方面向認(rèn)證分配值的過程;圖18示出了在如圖17所示的本發(fā)明的一個方面中執(zhí)行信任仲裁的過程;以及圖19示出了根據(jù)本發(fā)明的實施例的各方面的用戶與賣方之間的樣本事務(wù),其中, 初始基于web的合同導(dǎo)致由雙方簽名的銷售合同。圖20示出了具有向用戶系統(tǒng)提供安全性功能的密碼服務(wù)提供商模塊的樣本用戶 系統(tǒng)。圖21示出了在加密以及加密主密鑰與數(shù)據(jù)存儲在一起的情況下解析、分裂和/或 分離數(shù)據(jù)的過程。圖22示出了在加密以及加密主密鑰與數(shù)據(jù)分離地存儲的情況下解析、分裂和/或 分離數(shù)據(jù)的過程。圖23示出了在加密以及加密主密鑰與數(shù)據(jù)存儲在一起的情況下解析、分裂和/或 分離數(shù)據(jù)的中間密鑰過程。圖24示出了在加密以及加密主密鑰與數(shù)據(jù)分離地存儲的情況下解析、分裂和/或 分離數(shù)據(jù)的中間密鑰過程。圖25示出了小工作組對本發(fā)明的密碼方法和系統(tǒng)的利用。圖26是采用根據(jù)本發(fā)明的一個實施例的安全數(shù)據(jù)解析器的例示性物理令牌安全 性系統(tǒng)的框圖。圖27是根據(jù)本發(fā)明的一個實施例的將安全數(shù)據(jù)解析器集成到系統(tǒng)中的例示性布 置的框圖。圖28是根據(jù)本發(fā)明的一個實施例的例示性移動中數(shù)據(jù)系統(tǒng)的框圖。圖29是根據(jù)本發(fā)明的一個實施例的另一個例示性移動中數(shù)據(jù)系統(tǒng)的框圖。圖30-32是根據(jù)本發(fā)明的一個實施例的集成了安全數(shù)據(jù)解析器的例示性系統(tǒng)的 框圖。圖33是根據(jù)本發(fā)明的一個實施例的解析和分裂數(shù)據(jù)的例示性過程的處理流程 圖。圖34是根據(jù)本發(fā)明的一個 施例的將數(shù)據(jù)部分恢復(fù)成原始數(shù)據(jù)的例示性過程的 處理流程圖。圖35是根據(jù)本發(fā)明的一個實施例的以比特級分裂數(shù)據(jù)的例示性過程的處理流程 圖。圖36是根據(jù)本發(fā)明的一個實施例的可以在任何合適組合(具有任何合適添加、刪 除或修改)中使用的例示性步驟和特征的處理流程圖。圖37是根據(jù)本發(fā)明的一個實施例的可以在任何合適組合(具有任何合適添加、刪 除或修改)中使用的例示性步驟和特征的處理流程圖。 圖38是根據(jù)本發(fā)明的一個實施例的可以在任何合適組合(具有任何合適添加、刪 除或修改)中使用的在份內(nèi)存儲密鑰和數(shù)據(jù)成分的簡化框圖。 圖39是根據(jù)本發(fā)明的一個實施例的可以在任何合適組合(具有任何合適添加、刪除或修改)中使用的使用工作組密鑰在份內(nèi)存儲密鑰和數(shù)據(jù)成分的簡化框圖。圖40A和40B是根據(jù)本發(fā)明的一個實施例的可以在任何合適組合(具有任何合適 添加、刪除或修改)中使用的針對移動中數(shù)據(jù)的首標(biāo)產(chǎn)生和數(shù)據(jù)分裂的簡化和例示性處理 流程圖。圖41是根據(jù)本發(fā)明的一個實施例的可以在任何合適組合(具有任何合適添加、刪 除或修改)中使用的例示性份格式的簡化框圖。
      具體實施例方式本發(fā)明的一個方面是提供一種密碼系統(tǒng),在該密碼系統(tǒng)中,一個或多個安全服務(wù) 器或信任引擎存儲密碼密鑰和用戶認(rèn)證數(shù)據(jù)。用戶通過對信任引擎的網(wǎng)絡(luò)訪問,訪問傳統(tǒng) 密碼系統(tǒng)的功能,然而,信任引擎沒有發(fā)布實際密鑰和其它認(rèn)證數(shù)據(jù),因此這些密鑰和數(shù)據(jù) 仍是安全的。密鑰和認(rèn)證數(shù)據(jù)的這種服務(wù)器中心存儲提供了用戶無關(guān)的安全性、移植性、可 用性和直率性。因為用戶能夠確信或信任密碼系統(tǒng)來執(zhí)行用戶和文檔認(rèn)證以及其它密碼功能,所 以多種多樣的功能可以包括在該系統(tǒng)內(nèi)。例如,通過例如對協(xié)議參與者進行認(rèn)證,代表或針 對參與者對該協(xié)議進行數(shù)字簽名,并且存儲由每個參與者數(shù)字簽名的協(xié)議的記錄,信任引 擎提供商可以確保不會出現(xiàn)協(xié)議抵賴。此外,該密碼系統(tǒng)可以監(jiān)視協(xié)議并且例如基于價格、 用戶、賣方、地理位置、使用地點等來確定應(yīng)用不同程度的認(rèn)證。為了便于完全理解本發(fā)明,具體實施方式
      的其余部分參照附圖描述本發(fā)明,其中, 相同元素始終由相同標(biāo)號進行表示。圖1示出了根據(jù)本發(fā)明的實施例的各方面的密碼系統(tǒng)100的框圖。如圖1所示, 密碼系統(tǒng)100包括通過通信鏈路125進行通信的用戶系統(tǒng)105、信任引擎110、認(rèn)證機構(gòu)115 和賣方系統(tǒng)120。根據(jù)本發(fā)明的一個實施例,用戶系統(tǒng)105包括具有一個或多個微處理器(例如,基 于Intel的處理器)的傳統(tǒng)通用計算機。此外,用戶系統(tǒng)105包括適當(dāng)?shù)牟僮飨到y(tǒng),例如能 夠包括圖形或窗口的操作系統(tǒng)(例如,Windows, Unix、Linux等)。如圖1所示,用戶系統(tǒng) 105可以包括生物測定裝置107。生物測定裝置107可以有利地獲取用戶的生物測定并且 將獲取的生物測定傳送給信任引擎110。根據(jù)本發(fā)明的一個實施例,生物測定裝置可有利地 包括具有與在以下文獻中公開的類似的屬性和特征的裝置1997年9月5日提交的題目為 "RELIEF OBJECT IMAGE GENERATOR”的美國專利申請 No. 08/926277、2000 年 4 月 26 日提交 的題目為"IMAGING DEVICE FOR A RELIEF OBJECT AND SYSTEM AND METHOD OF USING THE IMAGE DEVICE”的美國專利申請No. 09/558634、1999年11月5日提交的題目為‘‘RELIEF OBJECT SENSOR ADAPTOR”的美國專利申請No. 09/435011和2000年1月5日提交的題目為 "PLANAR OPTICAL IMAGE SENSOR AND SYSTEM FOR GENERATING AN ELECTRONIC IMAGE OF A RELIEF OBJECT FOR FINGERPINT READING” 的美國專利申請 No. 09/477934,上述所有的 美國專利申請由當(dāng)前受讓人擁有并且通過引用并入本文。此外,用戶系統(tǒng)105可以通過傳統(tǒng)的服務(wù)提供商(例如,撥號、數(shù)字用戶線(DSL)、 線纜調(diào)制解調(diào)器、光纖連接等)連接到通信鏈路125。根據(jù)另一個實施例,用戶系統(tǒng)105通 過網(wǎng)絡(luò)連接性(例如,局域網(wǎng)或廣域網(wǎng))連接通信鏈路125。根據(jù)一個實施例,操作系統(tǒng)包括TCP/IP棧,該TCP/IP棧處理在通信鏈路125上傳遞的所有的出入消息通信。盡管參照上述實施例公開了用戶系統(tǒng)105,但是本發(fā)明不限于此。相反,熟練技術(shù) 人員從這里的公開可以識別用戶系統(tǒng)105的大量的替代實施例,包括能夠發(fā)送或從另一個 計算機系統(tǒng)接收信息的幾乎任何計算裝置。例如,用戶系統(tǒng)105可以包括但不限于能夠與 通信鏈路125進行交互的計算機工作站、交互式電視、交互亭、個人移動計算裝置(例如,數(shù) 字助理、移動電話、膝上型電腦等)、無線通信裝置、智能卡、嵌入式計算裝置等。在這些替代 系統(tǒng)中,操作系統(tǒng)很可能不同并且針對特定裝置進行改動。然而,根據(jù)一個實施例,操作系 統(tǒng)有利地繼續(xù)提供與通信鏈路125建立通信所需的適當(dāng)?shù)耐ㄐ艆f(xié)議。圖1示出了信任引擎110。根據(jù)一個實施例,信任引擎110包括用于訪問和存儲敏 感信息的一個或多個安全服務(wù)器,敏感信息可以是任何類型或形式的數(shù)據(jù),例如是但不限 于文本、音頻、視頻、用戶認(rèn)證數(shù)據(jù)以及公共和私有密碼密鑰。根據(jù)一個實施例,認(rèn)證數(shù)據(jù)包 括被設(shè)計為唯一識別密碼系統(tǒng)100的用戶的數(shù)據(jù)。例如,認(rèn)證數(shù)據(jù)可以包括用戶識別號、一 個或多個生物測定、以及由信任引擎110或用戶產(chǎn)生但是在登記時由用戶初始回答的一系 列提問和回答。上述提問可以包括人口數(shù)據(jù)(例如,出生地、地址、周年紀(jì)念等)、個人數(shù)據(jù) (例如,母親未婚時的名字、喜歡的冰激凌等)、或被設(shè)計為唯一識別用戶的其它數(shù)據(jù)。信任 引擎110將與當(dāng)前事務(wù)關(guān)聯(lián)的用戶的認(rèn)證數(shù)據(jù)與先前(例如在登記時)設(shè)置的認(rèn)證數(shù)據(jù)進 行比較。信任引擎110可以有利地要求用戶在每次事務(wù)時生成認(rèn)證數(shù)據(jù),或者信任引擎110 可以有利地允許用戶定期地(例如,在一串事務(wù)的開始時或者在登錄到特定賣方網(wǎng)站時) 生成認(rèn)證數(shù)據(jù)。根據(jù)用戶生成生物測定數(shù)據(jù)的實施例,用戶向生物測定裝置107提供身體特征, 例如但不限于面部掃描、手掃描、耳掃描、虹膜掃描、視網(wǎng)膜掃描、血管模式、DNA、指紋、筆跡 或語音。生物測定裝置有利地生成身體特征的電子模式或生物測定。為了登記或認(rèn)證,電 子模式通過用戶系統(tǒng)105傳送至信任引擎110。一旦用戶生成了適當(dāng)?shù)恼J(rèn)證數(shù)據(jù)并且信任引擎110確定該認(rèn)證數(shù)據(jù)(當(dāng)前認(rèn)證數(shù) 據(jù))與在登記時設(shè)置的認(rèn)證數(shù)據(jù)(登記認(rèn)證數(shù)據(jù))之間的明確匹配,信任引擎110向用戶 提供完整的密碼功能。例如,正確認(rèn)證的用戶可以有利地采用信任引擎110執(zhí)行哈希處理、 數(shù)字簽名、加密和解密(??偡Q為加密)、建立或分布數(shù)字證書等等。然而,密碼功能中使用 的私有密碼密鑰在信任引擎110之外將不可用,從而確保了密碼密鑰的完整性。根據(jù)一個實施例,信任引擎110產(chǎn)生并存儲密碼密鑰。根據(jù)另一個實施例,至少一 個密碼密鑰與每個用戶關(guān)聯(lián)。此外,當(dāng)密碼密鑰包括公鑰技術(shù)時,在信任引擎110內(nèi)產(chǎn)生但 不從其發(fā)放與用戶關(guān)聯(lián)的每個私鑰。因此,只要用戶可以訪問信任引擎110,用戶就可以使 用他或她的私鑰或公鑰執(zhí)行密碼功能。有利的是,這種遠(yuǎn)程訪問使用戶可以通過實際任何 互聯(lián)網(wǎng)連接(例如,蜂窩和衛(wèi)星電話、信息亭、膝上型電腦、賓館房間等)保持完全移動并訪 問密碼功能。根據(jù)另一個實施例,信任引擎110使用針對信任引擎110產(chǎn)生的密鑰對,執(zhí)行密碼 功能。根據(jù)這個實施例,信任引擎110首先對用戶進行認(rèn)證,并且在用戶正確地生成與登記 認(rèn)證數(shù)據(jù)匹配的認(rèn)證數(shù)據(jù)后,信任引擎110使用它自身的密碼密鑰對,代表認(rèn)證的用戶執(zhí) 行密碼功能。熟練技術(shù)人員將從這里的公開認(rèn)識到,密碼密鑰可以有利地包括對稱密鑰、公鑰和私鑰的全部或一些。此外,熟練技術(shù)人員將從這里的公開認(rèn)識到,可以采用可從商業(yè)技術(shù) 獲得的大量的算法(例如,RSA、ELGAMAL等)來實現(xiàn)上述密鑰。圖1還示出了認(rèn)證機構(gòu)115。根據(jù)一個實施例,認(rèn)證機構(gòu)115可有利地包括發(fā)放數(shù) 字證書的信任第三方組織或公司,例如VeriSigruBaltimorejntrust等。信任引擎110可 有利地通過一個或多個傳統(tǒng)的數(shù)字證書協(xié)議(例如,PKCS10)向認(rèn)證機構(gòu)115發(fā)送對數(shù)字 證書的請求。作為響應(yīng),認(rèn)證機構(gòu)115將發(fā)放多個不同協(xié)議中的一個或多個(例如,PKCS7) 的數(shù)字證書。根據(jù)本發(fā)明的一個實施例,信任引擎110從幾個或所有的主要認(rèn)證機構(gòu)115 請求數(shù)字證書,從而使得信任引擎110可訪問與任何請求方的證書標(biāo)準(zhǔn)對應(yīng)的數(shù)字證書。根據(jù)另一個實施例,信任引擎110在內(nèi)部執(zhí)行證書發(fā)放。在這個實施例中,當(dāng)證書 被請求時(例如,在密鑰產(chǎn)生時)或者在請求時請求的證書標(biāo)準(zhǔn)中,信任引擎110可以訪問 用于產(chǎn)生證書的證書系統(tǒng)和/或可以在內(nèi)部產(chǎn)生證書。在下文中將更加詳細(xì)地公開信任引 擎 110。圖1還示出了賣方系統(tǒng)120。根據(jù)一個實施例,賣方系統(tǒng)120有利地包括Web服務(wù) 器。典型的Web服務(wù)器通常使用幾個互聯(lián)網(wǎng)標(biāo)記語言或文檔格式標(biāo)準(zhǔn)(例如,超文本標(biāo)記語 言(HTML)或可擴展標(biāo)記語言(XML))之一在互聯(lián)網(wǎng)上提供內(nèi)容。Web服務(wù)器從如Netscape 和Internet Explorer的瀏覽器接受請求,然后返回適當(dāng)?shù)碾娮游臋n。多個服務(wù)器或客戶 端技術(shù)能夠用于提高Web服務(wù)器的能力以超越它的傳遞標(biāo)準(zhǔn)電子文檔的能力。例如,這些 技術(shù)包括公共網(wǎng)關(guān)接口(CGI)腳本、安全套接字層(SSL)安全性和動態(tài)服務(wù)器頁面(ASP)。 賣方系統(tǒng)120可有利地提供與商業(yè)、個人、教育或其它事務(wù)有關(guān)的電子內(nèi)容。盡管參照上述實施例公開了賣方系統(tǒng)120,但是本發(fā)明不限于此。相反,熟練技術(shù) 人員將從這里的公開認(rèn)識到,賣方系統(tǒng)120可有利地包括參照用戶系統(tǒng)105描述的裝置中 的任何一個或者它們的組合。圖1還示出了連接用戶系統(tǒng)105、信任引擎110、認(rèn)證機構(gòu)115和賣方系統(tǒng)120的 通信鏈路125。根據(jù)一個實施例,通信鏈路125優(yōu)選包括互聯(lián)網(wǎng)。本文所用的互聯(lián)網(wǎng)是計算 機的全球網(wǎng)絡(luò)。本領(lǐng)域普通技術(shù)人員公知的互聯(lián)網(wǎng)的結(jié)構(gòu)包括網(wǎng)絡(luò)骨干和從骨干分支的網(wǎng) 絡(luò)。這些分支繼而具有從它們分支的網(wǎng)絡(luò),如此類推。路由器在網(wǎng)絡(luò)級之間移動信息包,然 后從網(wǎng)絡(luò)到網(wǎng)絡(luò)移動信息包,直到包到達它的目的地附近。目的地網(wǎng)絡(luò)的主機將信息包從 該目的地導(dǎo)向適當(dāng)?shù)慕K端或節(jié)點。在一個有利的實施例中,互聯(lián)網(wǎng)路由集線器包括使用現(xiàn) 有技術(shù)公知的傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)的域名系統(tǒng)(DNS)服務(wù)器。路由集線 器經(jīng)由高速通信鏈路連接到一個或多個其它路由集線器。互聯(lián)網(wǎng)的一個流行部分是萬維網(wǎng)。萬維網(wǎng)包含不同的計算機,這些計算機存儲能 夠顯示圖形和文本信息的文檔。在萬維網(wǎng)上提供信息的計算機通常稱作“網(wǎng)站”。網(wǎng)站由 具有關(guān)聯(lián)的電子頁面的互聯(lián)網(wǎng)地址定義。電子頁面能夠通過統(tǒng)一資源定位符(URL)進行識 別。通常,電子頁面是組織文本、圖形圖像、音頻、視頻等的呈現(xiàn)的文檔。盡管在針對其優(yōu)選實施例公開了通信鏈路125,但是本領(lǐng)域普通技術(shù)人員將從這 里的公開認(rèn)識到,通信鏈路125可以包括各種交互通信鏈路。例如,通信鏈路125可以包括 交互電視網(wǎng)絡(luò)、電話網(wǎng)絡(luò)、無線數(shù)據(jù)傳輸系統(tǒng)、雙向線纜系統(tǒng)、定制的私有或公共計算機網(wǎng) 絡(luò)、交互亭網(wǎng)絡(luò)、自動柜員機網(wǎng)絡(luò)、直接鏈路、衛(wèi)星或蜂窩網(wǎng)絡(luò)等。圖2示出了根據(jù)本發(fā)明的實施例的各方面的圖1的信任引擎110的框圖。如圖2
      12所示,信任引擎110包括事務(wù)引擎205、儲存器210、認(rèn)證引擎215和密碼引擎220。根據(jù)本 發(fā)明的一個實施例,信任引擎110還包括海量存儲器225。進一步如圖2所示,事務(wù)引擎205 與儲存器210、認(rèn)證引擎215和密碼引擎220以及海量存儲器225進行通信。此外,儲存器 210與認(rèn)證引擎215、密碼引擎220和海量存儲器225進行通信。此外,認(rèn)證引擎215與密 碼引擎220進行通信。根據(jù)本發(fā)明的一個實施例,上述通信中的一些或全部可有利地包括 將XML文檔發(fā)送至與接收裝置對應(yīng)的IP地址。如上所述,有利的是,XML文檔使設(shè)計者可 以建立他們自己定制的文檔標(biāo)記,從而實現(xiàn)應(yīng)用之間以及組織之間的數(shù)據(jù)的定義、傳輸、驗 證和解釋。此外,上述通信中的一些或全部可包括傳統(tǒng)的SSL技術(shù)。根據(jù)一個實施例,事務(wù)引擎205包括例如可從Netscape、Microsoft、Apache等獲 得的傳統(tǒng)Web服務(wù)器的數(shù)據(jù)路由裝置。例如,Web服務(wù)器可以有利地從通信鏈路125接收輸 入數(shù)據(jù)。根據(jù)本發(fā)明的一個實施例,輸入數(shù)據(jù)被尋址至信任引擎110的前端安全系統(tǒng)。例 如,前端安全系統(tǒng)可以有利地包括防火墻、搜索已知攻擊概況的入侵檢測系統(tǒng)、和/或病毒 掃描器。在通過了前端安全系統(tǒng)后,數(shù)據(jù)由事務(wù)引擎205接收并且被路由至儲存器210、認(rèn) 證引擎215、密碼引擎220和海量存儲器225之一。此外,事務(wù)引擎205監(jiān)視來自認(rèn)證引擎 215和密碼引擎220的輸入數(shù)據(jù),并且通過通信鏈路125將該數(shù)據(jù)路由至特定系統(tǒng)。例如, 事務(wù)引擎205可有利地向用戶系統(tǒng)105、認(rèn)證機構(gòu)115或賣方系統(tǒng)120路由該數(shù)據(jù)。根據(jù)一個實施例,使用傳統(tǒng)的HTTP路由技術(shù),例如采用URL或統(tǒng)一資源指示符 (URI)來路由數(shù)據(jù)。URI與URL類似,然而,URI通常指示文件或動作(例如,可執(zhí)行文件、 腳本等)的源。因此,根據(jù)一個實施例,用戶系統(tǒng)105、認(rèn)證機構(gòu)115、賣方系統(tǒng)120和信任 引擎210的部件有利地包括通信URL或URI內(nèi)的充足數(shù)據(jù),以供事務(wù)引擎205在整個密碼 系統(tǒng)內(nèi)正確地路由數(shù)據(jù)。盡管參照其優(yōu)選實施例公開了數(shù)據(jù)路由,但是熟練技術(shù)人員將認(rèn)識到大量的可能 的數(shù)據(jù)路由方案或策略。例如,XML或其它數(shù)據(jù)包可以有利地進行拆包并且通過它們的格 式、內(nèi)容等進行識別,從而使得事務(wù)引擎205可以在整個信任引擎110內(nèi)正確地路由數(shù)據(jù)。 此外,熟練技術(shù)人員將認(rèn)識到,有利的是,例如當(dāng)通信鏈路125包括局域網(wǎng)時,數(shù)據(jù)路由可 進行改動以適應(yīng)符合特定網(wǎng)絡(luò)系統(tǒng)的數(shù)據(jù)傳輸協(xié)議。根據(jù)本發(fā)明的另一個實施例,事務(wù)引擎205包括傳統(tǒng)的SSL加密技術(shù),從而在特定 通信期間,通過事務(wù)引擎205,上述系統(tǒng)可以對它們自身進行認(rèn)證,反之亦然。本發(fā)明中使用 的術(shù)語“V2SSL”是指服務(wù)器(但客戶機不必)進行SSL認(rèn)證的通信,術(shù)語“全SSL”是指客 戶機和服務(wù)器均進行SSL認(rèn)證的通信。當(dāng)本公開使用術(shù)語“SSL”時,通信可以包括1/2SSL 或全SSL。由于事務(wù)引擎205將數(shù)據(jù)路由至密碼系統(tǒng)100的各個部件,所以事務(wù)引擎205可 有利地建立審計索引(audit trail)。根據(jù)一個實施例,審計索引包括在整個密碼系統(tǒng)100 內(nèi)由事務(wù)引擎205進行路由的數(shù)據(jù)的至少類型和格式的記錄。這種審計數(shù)據(jù)可有利地存儲 在海量存儲器225中。圖2還示出了儲存器210。根據(jù)一個實施例,儲存器210包括一個或多個數(shù)據(jù)存儲 設(shè)施,例如目錄服務(wù)器、數(shù)據(jù)庫服務(wù)器等。如圖2所示,儲存器210存儲密碼密鑰和登記認(rèn) 證數(shù)據(jù)。密碼密鑰可有利地對應(yīng)于信任引擎110或者密碼系統(tǒng)100的用戶(例如,用戶或 賣方)。登記認(rèn)證數(shù)據(jù)可有利地包括被設(shè)計用于唯一識別用戶的數(shù)據(jù),例如用戶ID、口令、提問的回答、生物測定數(shù)據(jù)等。有利的是,可以在用戶登記時或者在另一個替代的以后時間 獲取這個登記認(rèn)證數(shù)據(jù)。例如,信任引擎110可以包括登記認(rèn)證數(shù)據(jù)的周期性或其它的更 新或重新發(fā)放。根據(jù)一個實施例,從事務(wù)引擎205到認(rèn)證引擎215和密碼引擎220的通信以及從 認(rèn)證引擎215和密碼引擎220到事務(wù)引擎205的通信包括安全通信(例如,傳統(tǒng)的SSL技 術(shù))。此外,如上所述,可以使用URL、URI、HTTP或XML文檔傳送到達和來自儲存器210的 通信的數(shù)據(jù),有利地在上述任何一個內(nèi)部嵌入了數(shù)據(jù)請求和格式。如上所述,儲存器210可有利地包括多個安全數(shù)據(jù)存儲設(shè)施。在這種實施例中,安 全數(shù)據(jù)存儲設(shè)施可被構(gòu)造為使得對一個個體數(shù)據(jù)存儲設(shè)施的安全性的危害將不會危害存 儲在其中的密碼密鑰或認(rèn)證數(shù)據(jù)。例如,根據(jù)這個實施例,密碼密鑰和認(rèn)證數(shù)據(jù)被進行數(shù)學(xué) 運算,從而在統(tǒng)計學(xué)上充分地對存儲在每個數(shù)據(jù)存儲設(shè)施中的數(shù)據(jù)進行隨機化。根據(jù)一個 實施例,個體數(shù)據(jù)存儲設(shè)施的數(shù)據(jù)的隨機化使得該數(shù)據(jù)無法被破譯。因此,對個體數(shù)據(jù)存儲 設(shè)施的危害僅僅生成隨機化的無法譯解的數(shù)字,并且不會危害作為整體的任何密碼密鑰或 認(rèn)證數(shù)據(jù)的安全性。圖2還示出了包括認(rèn)證引擎215的信任引擎110。根據(jù)一個實施例,認(rèn)證引擎215 包括數(shù)據(jù)比較器,該數(shù)據(jù)比較器被構(gòu)造為將來自事務(wù)引擎205的數(shù)據(jù)與來自儲存器210的 數(shù)據(jù)進行比較。例如,在認(rèn)證過程中,用戶將當(dāng)前認(rèn)證數(shù)據(jù)提供給信任引擎110從而事務(wù)引 擎205接收當(dāng)前認(rèn)證數(shù)據(jù)。如上所述,事務(wù)引擎205識別優(yōu)選在URL或URI中的數(shù)據(jù)請求, 并且將認(rèn)證數(shù)據(jù)路由至認(rèn)證引擎215。此外,當(dāng)被請求時,儲存器210將與用戶對應(yīng)的登記 認(rèn)證數(shù)據(jù)轉(zhuǎn)發(fā)至認(rèn)證引擎215。因此,認(rèn)證引擎215具有當(dāng)前認(rèn)證數(shù)據(jù)和登記認(rèn)證數(shù)據(jù)以進 行比較。根據(jù)一個實施例,到達認(rèn)證引擎的通信包括安全通信(例如,SSL技術(shù))。此外,安 全性(例如,使用公鑰技術(shù)的超級加密)可以設(shè)置在信任引擎110部件內(nèi)。例如,根據(jù)一個 實施例,用戶用認(rèn)證引擎215的公鑰對當(dāng)前認(rèn)證數(shù)據(jù)進行加密。此外,儲存器210還用認(rèn)證 引擎215的公鑰對登記認(rèn)證數(shù)據(jù)進行加密。這樣,僅有認(rèn)證引擎的私鑰能夠用于對傳輸進 行解密。如圖2所示,信任引擎110還包括密碼引擎220。根據(jù)一個實施例,密碼引擎包括 密碼處理模塊,該模塊被構(gòu)造為有利地提供傳統(tǒng)的密碼功能(例如,公鑰基礎(chǔ)設(shè)施(PKI)功 能)。例如,密碼引擎220可以有利地向密碼系統(tǒng)100的用戶發(fā)放公鑰和私鑰。以這種方 式,在密碼引擎220處產(chǎn)生密碼密鑰并且將其轉(zhuǎn)發(fā)至儲存器210,從而在信任引擎110之外 至少無法獲得私有密碼密鑰。根據(jù)另一個實施例,密碼引擎220至少對私有密碼密鑰數(shù)據(jù) 進行隨機化和分裂,從而僅僅存儲隨機化的分裂數(shù)據(jù)。與登記認(rèn)證數(shù)據(jù)的分裂類似,分裂過 程確保在密碼引擎220之外無法獲得存儲的密鑰。根據(jù)另一個實施例,密碼引擎的功能可 以與認(rèn)證引擎215組合并且由認(rèn)證引擎215執(zhí)行。根據(jù)一個實施例,到達和來自密碼引擎的通信包括安全通信,諸如SSL技術(shù)。此 外,可有利地采用XML文檔以傳送數(shù)據(jù)和/或進行密碼功能請求。圖2還示出了具有海量存儲225的信任引擎110。如上所述,事務(wù)引擎205保持 與審計索引對應(yīng)的數(shù)據(jù)并且將這個數(shù)據(jù)存儲在海量存儲器225中。類似地,根據(jù)本發(fā)明的 一個實施例,儲存器210保持與審計索引對應(yīng)的數(shù)據(jù)并且將這個數(shù)據(jù)存儲在海量存儲裝置
      14225中。由于審計索引數(shù)據(jù)包括由儲存器210接收到的請求的記錄及其響應(yīng),所以儲存器審 計索引數(shù)據(jù)與事務(wù)引擎205的審計索引數(shù)據(jù)類似。此外,海量存儲器225可用于存儲在內(nèi) 部包含了用戶的公鑰的數(shù)字證書。盡管參照其優(yōu)選實施例和替代實施例公開了信任引擎110,但是本發(fā)明不限于此。 相反,熟練技術(shù)人員將從這里的公開中認(rèn)識到信任引擎110的大量替代。例如,信任引擎 110可有利地僅僅執(zhí)行認(rèn)證,或者僅僅執(zhí)行例如數(shù)據(jù)加密和解密的一些或所有的密碼功能。 根據(jù)這些實施例,可有利地去除認(rèn)證引擎215和密碼引擎220之一,從而為信任引擎110建 立更加簡單的設(shè)計。此外,密碼引擎220還可以與認(rèn)證機構(gòu)進行通信從而在信任引擎110 內(nèi)實現(xiàn)認(rèn)證機構(gòu)。根據(jù)另一個實施例,信任引擎110可以有利地執(zhí)行認(rèn)證以及例如數(shù)字簽 名的一個或多個密碼功能。圖3示出了根據(jù)本發(fā)明的實施例的各方面的圖2的事務(wù)引擎205的框圖。根據(jù)這 個實施例,事務(wù)引擎205包括具有處理線程和偵聽線程的操作系統(tǒng)305。有利的是,操作系 統(tǒng)305可與在例如可從Apache得到的Web服務(wù)器的傳統(tǒng)高容量服務(wù)器中發(fā)現(xiàn)的操作系統(tǒng) 類似。偵聽線程針對輸入數(shù)據(jù)流,監(jiān)視來自通信鏈路125、認(rèn)證引擎215和密碼引擎220之 一的輸入通信。處理線程識別輸入數(shù)據(jù)流的特定數(shù)據(jù)結(jié)構(gòu)(例如,上述數(shù)據(jù)結(jié)構(gòu)),從而將 輸入數(shù)據(jù)路由至通信鏈路125、儲存器210、認(rèn)證引擎215、密碼引擎220或海量存儲器225 之一。如圖3所示,有利的是,通過例如SSL技術(shù)可以保護輸入和輸出數(shù)據(jù)。圖4示出了根據(jù)本發(fā)明的實施例的各方面的圖2的儲存器210的框圖。根據(jù)這個 實施例,儲存器210包括一個或多個輕量目錄訪問協(xié)議(LDAP)服務(wù)器??梢詮母鞣N制造商 (例如,NetSCape、IS0等)獲得LDAP目錄服務(wù)器。圖4還示出了目錄服務(wù)器優(yōu)選存儲與密 碼密鑰對應(yīng)的數(shù)據(jù)405和與登記認(rèn)證數(shù)據(jù)對應(yīng)的數(shù)據(jù)410。根據(jù)一個實施例,儲存器210包 括單個邏輯存儲結(jié)構(gòu),用于將認(rèn)證數(shù)據(jù)和密碼密鑰數(shù)據(jù)索引至唯一用戶ID。該單個邏輯存 儲結(jié)構(gòu)優(yōu)選包括確保存儲在其中的數(shù)據(jù)的高度信任或安全性的機制。例如,儲存器210的 物理位置可有利地包括大量的傳統(tǒng)安全性措施,諸如受限雇員訪問、現(xiàn)代監(jiān)視系統(tǒng)等。除了 物理安全性以外或者替代物理安全性,計算機系統(tǒng)或服務(wù)器可以有利地包括保護存儲的數(shù) 據(jù)的軟件方案。例如,儲存器210可有利地建立并存儲與采取的動作的審計索引對應(yīng)的數(shù) 據(jù)415。此外,有利的是,可以用與傳統(tǒng)的SSL技術(shù)結(jié)合的公鑰加密,對輸入和輸出通信進行 加密。根據(jù)另一個實施例,儲存器210可以包括不同的且物理分離的數(shù)據(jù)存儲設(shè)施,如 進一步參照圖7所公開的。圖5示出了根據(jù)本發(fā)明的實施例的各方面的圖2的認(rèn)證引擎215的框圖。與圖3 的事務(wù)引擎205類似,認(rèn)證引擎215包括操作系統(tǒng)505,操作系統(tǒng)505至少具有傳統(tǒng)的Web 服務(wù)器(例如,可從Apache獲得的Web服務(wù)器)的變型版本的偵聽和處理線程。如圖5所 示,認(rèn)證引擎215包括對至少一個私鑰510的訪問。有利的是,私鑰510可用于例如對來自 事務(wù)引擎205或儲存器210的數(shù)據(jù)進行解密,該數(shù)據(jù)用認(rèn)證引擎215的對應(yīng)公鑰進行了加

      Γ t [ O圖5還示出了包括比較器515、數(shù)據(jù)分裂模塊520和數(shù)據(jù)組裝模塊525的認(rèn)證引 擎215。根據(jù)本發(fā)明的優(yōu)選實施例,比較器515包括能夠比較與上述生物測定認(rèn)證數(shù)據(jù)有 關(guān)的潛在復(fù)雜模式的技術(shù)。該技術(shù)可以包括用于模式比較(例如,表示指紋模式或語音模式的模式比較)的硬件、軟件或者組合方案。此外,根據(jù)一個實施例,認(rèn)證引擎215的比較 器515可有利地比較文檔的傳統(tǒng)哈希值以呈現(xiàn)比較結(jié)果。根據(jù)本發(fā)明的一個實施例,比較 器515包括對該比較應(yīng)用啟發(fā)法(heuristics) 530。有利的是,啟發(fā)法530可以應(yīng)對圍繞認(rèn) 證嘗試的境況(例如,時間、IP地址或子網(wǎng)掩碼、購買概況、電子郵件地址、處理器序列號或 ID 等)。此外,生物測定數(shù)據(jù)比較的性質(zhì)會導(dǎo)致從當(dāng)前生物測定認(rèn)證數(shù)據(jù)與登記數(shù)據(jù)的匹 配產(chǎn)生變化的置信度。例如,與可僅僅返回肯定或否定匹配的傳統(tǒng)口令不同,指紋可被確定 為部分匹配,例如90%匹配、75%匹配或10%匹配,而非簡單地為正確或不正確。諸如聲紋 (voice print)分析或面部識別的其它生物測定識別法會共有這個概率認(rèn)證的屬性,而非 絕對認(rèn)證。當(dāng)利用這種概率認(rèn)證進行工作時或者在認(rèn)為認(rèn)證低于絕對可靠的其它情況下,期 望應(yīng)用啟發(fā)法530以確定設(shè)置的認(rèn)證的置信水平是否高到足夠?qū)φ谶M行的事務(wù)進行認(rèn) 證。有時候存在如下情況談及的事務(wù)是相對低值事務(wù),其中,它可以較低的置信水平 被接受而得到認(rèn)證。這可以包括具有與之關(guān)聯(lián)的低貨幣值(例如,$10購買)的事務(wù)或者 低風(fēng)險的事務(wù)(例如,進入會員制網(wǎng)站)。相反,為了對其它事務(wù)進行認(rèn)證,會期望在允許事務(wù)進行之前要求高的認(rèn)證置信 度。這些事務(wù)可以包括大貨幣值的事務(wù)(例如,簽署幾百萬美元供貨合同)或者在發(fā)生不 正確認(rèn)證的情況下具有高風(fēng)險的事務(wù)(例如,遠(yuǎn)程登錄政府計算機)。如下文所述,與置信水平和事務(wù)值組合的啟發(fā)法530的使用可用于允許比較器提 供動態(tài)的上下文敏感認(rèn)證系統(tǒng)。根據(jù)本發(fā)明的另一個實施例,比較器515可有利地跟蹤特定事務(wù)的認(rèn)證嘗試。例 如,當(dāng)事務(wù)失敗時,信任引擎110可以請求用戶重新輸入他或她的當(dāng)前認(rèn)證數(shù)據(jù)。認(rèn)證引擎 215的比較器515可有利地利用嘗試限制器535以限制認(rèn)證嘗試的次數(shù),由此禁止假扮用戶 的認(rèn)證數(shù)據(jù)的暴力嘗試。根據(jù)一個實施例,嘗試限制器535包括監(jiān)視事務(wù)的重復(fù)認(rèn)證嘗試 并且例如將給定事務(wù)的認(rèn)證嘗試限制為三次的軟件模塊。因此,嘗試限制器535例如將用 于假扮個人的認(rèn)證數(shù)據(jù)的自動嘗試限制為僅三次“猜測”。當(dāng)三次失敗時,嘗試限制器535 可有利地拒絕另外的認(rèn)證嘗試。有利的是,例如通過不管正在發(fā)送的當(dāng)前認(rèn)證數(shù)據(jù)如何比 較器515都返回否定結(jié)果,而實現(xiàn)這種拒絕。另一方面,事務(wù)引擎205可有利地阻止屬于三 次嘗試先前已經(jīng)失敗的事務(wù)的任何另外的認(rèn)證嘗試。認(rèn)證引擎215還包括數(shù)據(jù)分裂模塊520和數(shù)據(jù)組裝模塊525。數(shù)據(jù)分裂模塊520 有利地包括具有對各種數(shù)據(jù)進行數(shù)學(xué)運算從而充分地將數(shù)據(jù)隨機化并分裂成多個部分的 能力的軟件、硬件、或組合模塊。根據(jù)一個實施例,不可以從個體部分重建原始數(shù)據(jù)。數(shù)據(jù) 組裝模塊525有利地包括被構(gòu)造為對上述充分隨機化的部分進行數(shù)學(xué)運算從而使它們的 組合提供原始譯解數(shù)據(jù)的軟件、硬件或組合模塊。根據(jù)一個實施例,認(rèn)證引擎215利用數(shù)據(jù) 分裂模塊520將登記認(rèn)證數(shù)據(jù)隨機化并分裂成多個部分,并且利用數(shù)據(jù)組裝模塊525將這 些部分重新組裝成可用的登記認(rèn)證數(shù)據(jù)。圖6示出了根據(jù)本發(fā)明的一個實施例的各方面的圖2的信任引擎200的密碼引擎 220的框圖。與圖3的事務(wù)引擎205類似,密碼引擎220包括操作系統(tǒng)605,操作系統(tǒng)605
      16至少具有傳統(tǒng)的Web服務(wù)器(例如,可從Apache得到的Web服務(wù)器)的變型版本的偵聽和 處理線程。如圖6所示,密碼引擎220包括功能與圖5中類似的數(shù)據(jù)分裂模塊610和數(shù)據(jù) 組裝模塊620。然而,根據(jù)一個實施例,與上述的登記認(rèn)證數(shù)據(jù)不同,數(shù)據(jù)分裂模塊610和數(shù) 據(jù)組裝模塊620處理密碼密鑰數(shù)據(jù)。但是,熟練技術(shù)人員將從這里的公開認(rèn)識到,數(shù)據(jù)分裂 模塊910和數(shù)據(jù)分裂模塊620可以與認(rèn)證引擎215的相應(yīng)模塊進行組合。密碼引擎220還包括密碼處理模塊625,密碼處理模塊625被構(gòu)造為執(zhí)行大量的密 碼功能中的一個、一些或全部。根據(jù)一個實施例,密碼處理模塊625可以包括軟件模塊或程 序、硬件或二者。根據(jù)另一個實施例,密碼處理模塊625可以執(zhí)行數(shù)據(jù)比較、數(shù)據(jù)解析、數(shù)據(jù) 分裂、數(shù)據(jù)分離、數(shù)據(jù)哈希法、數(shù)據(jù)加密或解密、數(shù)字簽名驗證或創(chuàng)建、數(shù)字證書產(chǎn)生、存儲、 或請求、密碼密鑰產(chǎn)生等等。此外,熟練技術(shù)人員將從這里的公開認(rèn)識到,密碼處理模塊825 可有利地包括公鑰基礎(chǔ)設(shè)施,諸如良好隱私(PGP)、基于RSA的公鑰系統(tǒng)、或者大量的替代 密鑰管理系統(tǒng)。此外,密碼處理模塊625可以執(zhí)行公鑰加密、對稱密鑰加密或二者。除了上 述以外,密碼處理模塊625可以包括用于執(zhí)行無縫、透明的互用性功能的一個或多個計算 機程序或模塊、硬件或二者。熟練技術(shù)人員還將從這里的公開認(rèn)識到,密碼功能可以包括一般與密碼密鑰管理 系統(tǒng)有關(guān)的大量或多樣的功能。圖7示出了根據(jù)本發(fā)明的實施例的各方面的儲存器系統(tǒng)700的簡化框圖。如圖7 所示,儲存器系統(tǒng)700有利地包括多個數(shù)據(jù)存儲設(shè)施,例如,數(shù)據(jù)存儲設(shè)施D1、D2、D3和D4。 然而,本領(lǐng)域普通技術(shù)人員容易理解,儲存器系統(tǒng)可以僅僅具有一個數(shù)據(jù)存儲設(shè)施。根據(jù)本 發(fā)明的一個實施例,數(shù)據(jù)存儲設(shè)施Dl到D4中的每個可以有利地包括參照圖4的儲存器210 公開的一些或全部部件。與儲存器210類似,數(shù)據(jù)存儲設(shè)施Dl到D4優(yōu)選通過傳統(tǒng)SSL與 事務(wù)引擎205、認(rèn)證引擎215和密碼引擎220進行通信。通信鏈路例如傳送XML文檔。來自 事務(wù)引擎205的通信可有利地包括對數(shù)據(jù)的請求,其中,該請求被有利地廣播至每個數(shù)據(jù) 存儲設(shè)施Dl到D4的IP地址。另一方面,事務(wù)引擎205可以基于大量的標(biāo)準(zhǔn)(例如,響應(yīng) 時間、服務(wù)器負(fù)載、維護時間表等),向特定數(shù)據(jù)存儲設(shè)施廣播請求。響應(yīng)于來自事務(wù)引擎205的對數(shù)據(jù)的請求,儲存器系統(tǒng)700有利地將存儲的數(shù)據(jù) 轉(zhuǎn)發(fā)至認(rèn)證引擎215和密碼引擎220。相應(yīng)的數(shù)據(jù)組裝模塊接收轉(zhuǎn)發(fā)的數(shù)據(jù)并且將該數(shù)據(jù) 組裝成可用格式。另一方面,從認(rèn)證引擎215和密碼引擎220到數(shù)據(jù)存儲設(shè)施Dl到D4的 通信可以包括要存儲的敏感數(shù)據(jù)的傳輸。例如,根據(jù)一個實施例,認(rèn)證引擎215和密碼引擎 220可有利地利用它們各自的數(shù)據(jù)分裂模塊,將敏感數(shù)據(jù)劃分成多個不可譯解的部分,然后 將敏感數(shù)據(jù)的一個或多個不可譯解的部分發(fā)送至特定數(shù)據(jù)存儲設(shè)施。根據(jù)一個實施例,每個數(shù)據(jù)存儲設(shè)施Dl到D4包括分立且獨立的存儲系統(tǒng)(例如, 目錄服務(wù)器)。根據(jù)本發(fā)明的另一個實施例,儲存器系統(tǒng)700包括多個在地理上分離的獨立 數(shù)據(jù)存儲系統(tǒng)。通過將敏感數(shù)據(jù)分布到不同且獨立的存儲設(shè)施Dl到D4(存儲設(shè)施Dl到D4 中的一些或全部可有利地在地理上分離),儲存器系統(tǒng)700提供冗余連同附加的安全措施。 例如,根據(jù)一個實施例,為了對敏感數(shù)據(jù)進行譯解和重新組裝,僅需要來自多個數(shù)據(jù)存儲設(shè) 施Dl到D4中的兩個的數(shù)據(jù)。因此,四個數(shù)據(jù)存儲設(shè)施Dl到D4中的兩個可以由于維護、系 統(tǒng)故障、電源故障等而不工作,這不會影響信任引擎110的功能。此外,根據(jù)一個實施例,由 于存儲在每個數(shù)據(jù)存儲設(shè)施中的數(shù)據(jù)被隨機化并且不可譯解,所以對任何個體數(shù)據(jù)存儲設(shè)施的危害不會必然危害敏感數(shù)據(jù)。此外,在具有地理分離的數(shù)據(jù)存儲設(shè)施的實施例中,對多 個地理遠(yuǎn)離的設(shè)施的危害變得愈加困難。實際上,即使是無良雇員,想要破壞所需的多個獨 立的地理遠(yuǎn)離的數(shù)據(jù)存儲設(shè)施也是具有極大挑戰(zhàn)的。盡管參照其優(yōu)選和替代實施例公開了儲存器系統(tǒng)700,但是本發(fā)明并不限于此。相 反,熟練技術(shù)人員將從這里的公開認(rèn)識到儲存器系統(tǒng)700的大量的替代物。例如,儲存器 系統(tǒng)700可以包括一個、兩個或更多個數(shù)據(jù)存儲設(shè)施。此外,可對敏感數(shù)據(jù)進行數(shù)學(xué)運算, 從而使得為了對敏感數(shù)據(jù)進行重新組裝和譯解,需要來自兩個或更多的數(shù)據(jù)存儲設(shè)施的部 分。如上所述,認(rèn)證引擎215和密碼引擎220分別包括數(shù)據(jù)分裂模塊520和610,用于 分裂任何類型或形式的敏感數(shù)據(jù)(例如,文本、音頻、視頻、認(rèn)證數(shù)據(jù)和密碼密鑰數(shù)據(jù))。圖8 示出了根據(jù)本發(fā)明的實施例的各方面的數(shù)據(jù)分裂模塊執(zhí)行的數(shù)據(jù)分裂過程800的流程圖。 如圖8所示,當(dāng)認(rèn)證引擎215或密碼引擎220的數(shù)據(jù)分裂模塊接收到敏感數(shù)據(jù)“S”時,數(shù)據(jù) 分裂過程800在步驟805開始。優(yōu)選地,在步驟810,數(shù)據(jù)分裂模塊產(chǎn)生充分隨機數(shù)、值、或 者比特串或集“A”。例如,可以以本領(lǐng)域普通技術(shù)人員可獲得的用于生成適用于密碼應(yīng)用的 高質(zhì)量隨機數(shù)的大量的不同傳統(tǒng)技術(shù),產(chǎn)生隨機數(shù)A。此外,根據(jù)一個實施例,隨機數(shù)A包括 可為任何適當(dāng)長度的比特長度,例如,短于、長于或等于敏感數(shù)據(jù)S的比特長度。此外,在步驟820中,數(shù)據(jù)分裂過程800產(chǎn)生另一個統(tǒng)計隨機數(shù)“C”。根據(jù)優(yōu)選實 施例,有利的是,可以并行完成統(tǒng)計隨機數(shù)A和C的產(chǎn)生。數(shù)據(jù)分裂模塊然后將數(shù)A和C與 敏感數(shù)據(jù)S進行組合以產(chǎn)生新的數(shù)“B”和“D ”。例如,數(shù)B可以包括A XOR S的二進制組 合,數(shù)D可以包括C XOR S的二進制組合。XOR函數(shù)或“異或”函數(shù)對于本領(lǐng)域普通技術(shù)人 員是公知的。優(yōu)選地,分別在步驟825和830中分別發(fā)生上述組合,并且根據(jù)一個實施例, 上述組合也可以并行發(fā)生。數(shù)據(jù)分裂過程800然后進行到步驟835,在步驟835中,對隨機 數(shù)A和C以及數(shù)B和D進行配對以使得這些配對均不包含通過它們自身可以重新組織并譯 解原始敏感數(shù)據(jù)S的充分?jǐn)?shù)據(jù)。例如,這些數(shù)可以如下配對AC、AD、BC和BD。根據(jù)一個實 施例,上述配對中的每個被分布至圖7的儲存器Dl到D4之一。根據(jù)另一個實施例,上述配 對中的每個被隨機分布至儲存器Dl到D4之一。例如,在第一數(shù)據(jù)分裂過程800期間,配對 AC可以例如通過D2的IP地址的隨機選擇而發(fā)送至儲存器D2。然后,在第二數(shù)據(jù)分裂過程 800期間,配對AC可以例如通過D4的IP地址的隨機選擇而發(fā)送至儲存器D4。此外,這些 配對可以全部存儲在一個儲存器上,并且可以存儲在所述儲存器的分離的位置上?;谏厦娴拿枋觯欣氖?,數(shù)據(jù)分裂過程800將敏感數(shù)據(jù)的各部分安置在四個 數(shù)據(jù)存儲設(shè)施Dl到D4的每個中,從而使得沒有單個數(shù)據(jù)存儲設(shè)施Dl到D4包括用于重建 原始敏感數(shù)據(jù)S的充足的加密數(shù)據(jù)。如上所述,通過將數(shù)據(jù)隨機化成個體不可用的加密部 分,提高了安全性并且即使數(shù)據(jù)存儲設(shè)施Dl到D4之一受到危害仍可以保持?jǐn)?shù)據(jù)的信任。盡管參照其優(yōu)選實施例公開了數(shù)據(jù)分裂過程800,但是本發(fā)明不限于此。相反,熟 練技術(shù)人員將從這里的公開認(rèn)識到數(shù)據(jù)分裂過程800的大量替代。例如,數(shù)據(jù)分裂過程可 有利地將數(shù)據(jù)分裂成兩個數(shù),例如,隨機數(shù)A和數(shù)B,并且通過兩個數(shù)據(jù)存儲設(shè)施隨機分布A 和B。此外,通過產(chǎn)生附加的隨機數(shù),數(shù)據(jù)分裂過程800可有利地在大量的數(shù)據(jù)存儲設(shè)施之 間分裂數(shù)據(jù)。數(shù)據(jù)可被分裂成任何希望的、選擇的、預(yù)定的或者隨機指定的大小單元,包括 但不限于一個比特、多個比特、字節(jié)、千字節(jié)、兆字節(jié)或更大、或者大小的任何組合或序列。
      18此外,改變從分裂過程得到的數(shù)據(jù)單元的大小,可以使數(shù)據(jù)更加難于恢復(fù)成可用形式,由此 提高了敏感數(shù)據(jù)的安全性。本領(lǐng)域普通技術(shù)人員易于理解,分裂數(shù)據(jù)單元大小可以是多種 多樣的數(shù)據(jù)單元大小或大小的模式或者大小的組合。例如,數(shù)據(jù)單元大小可被選擇或預(yù)定 為都具有相同大小、不同大小的固定集合、大小的組合,或者隨機產(chǎn)生大小。類似地,根據(jù)固 定或預(yù)定的數(shù)據(jù)單元大小、數(shù)據(jù)單元大小的模式或組合、或者隨機產(chǎn)生的每份的數(shù)據(jù)單元 大小,數(shù)據(jù)單元可被分布成一份或多份。如上所述,為了重建敏感數(shù)據(jù)S,需要對數(shù)據(jù)部分進行去隨機化和重新組織。該過 程可以有利地分別在認(rèn)證引擎215和密碼引擎220的數(shù)據(jù)組裝模塊525和620中執(zhí)行。數(shù) 據(jù)組裝模塊(例如,數(shù)據(jù)組裝模塊525)從數(shù)據(jù)存儲設(shè)施Dl到D4接收數(shù)據(jù)部分,并且將數(shù) 據(jù)重新組裝成可用形式。例如,根據(jù)數(shù)據(jù)分裂模塊520采用圖8的數(shù)據(jù)分裂過程800的一 個實施例,數(shù)據(jù)組裝模塊525使用來自數(shù)據(jù)存儲設(shè)施Dl到D4中的至少兩個的數(shù)據(jù)部分重 建敏感數(shù)據(jù)S。例如,對AC、AD、BC和BD的配對被分布為任何兩個提供A和B或者C禾口 D 之一。要注意,S = AXOR B或者S = C XOR D指示當(dāng)數(shù)據(jù)組裝模塊接收到A和B或者C和 D之一時,數(shù)據(jù)組裝模塊525可有利地重新組裝敏感數(shù)據(jù)S。因此,當(dāng)例如響應(yīng)于信任引擎 110的組裝請求,數(shù)據(jù)組裝模塊525從數(shù)據(jù)存儲設(shè)施Dl到D4中的至少前兩個接收到數(shù)據(jù)部 分時,數(shù)據(jù)組裝部分525可以組裝敏感數(shù)據(jù)S?;谝陨蠑?shù)據(jù)分裂和組裝過程,可用格式的敏感數(shù)據(jù)S僅僅存在于信任引擎110 的有限區(qū)域內(nèi)。例如,當(dāng)敏感數(shù)據(jù)S包括登記認(rèn)證數(shù)據(jù)時,可用的非隨機化的登記認(rèn)證數(shù)據(jù) 僅在認(rèn)證引擎215中可獲得。同樣地,當(dāng)敏感數(shù)據(jù)S包括私有密碼密鑰數(shù)據(jù)時,可用的非隨 機化的私有密碼密鑰數(shù)據(jù)僅在密碼引擎220中可獲得。盡管參照其優(yōu)選實施例公開了數(shù)據(jù)分裂和組裝過程,但是本發(fā)明不限于此。相反, 熟練技術(shù)人員將從這里的公開認(rèn)識到用于分裂和重新組裝敏感數(shù)據(jù)S的大量替代。例如, 公鑰加密可用于進一步保護數(shù)據(jù)存儲設(shè)施Dl到D4中的數(shù)據(jù)。此外,本領(lǐng)域普通技術(shù)人員 易于理解,本文所述的數(shù)據(jù)分裂模塊也是可納入、進行組合或以其它形式成為任何預(yù)先存 在的計算機系統(tǒng)、軟件套裝、數(shù)據(jù)庫或其組合的一部分的本發(fā)明的獨立且不同的實施例,或 者本發(fā)明的其它實施例,諸如這里公開和描述的信任引擎、認(rèn)證引擎和事務(wù)引擎。圖9A示出了根據(jù)本發(fā)明的實施例的各方面的登記過程900的數(shù)據(jù)流。如圖9A所 示,當(dāng)用戶希望向密碼系統(tǒng)100的信任引擎110登記時,登記過程900在步驟905開始。根 據(jù)這個實施例,用戶系統(tǒng)105有利地包括例如基于Java的詢問用戶輸入登記數(shù)據(jù)(例如, 人口數(shù)據(jù)和登記認(rèn)證數(shù)據(jù))的客戶機側(cè)Java小程序(applet)。根據(jù)一個實施例,登記認(rèn) 證數(shù)據(jù)包括用戶ID、口令、生物測定等等。根據(jù)一個實施例,在詢問過程中,客戶機側(cè)Java 小程序優(yōu)選與信任引擎110進行通信以確保選擇的用戶ID是唯一的。當(dāng)用戶ID不是唯一 時,信任引擎110可有利地建議一個唯一用戶ID??蛻魴C側(cè)Java小程序收集登記數(shù)據(jù)并且 例如通過XML文檔將登記數(shù)據(jù)傳輸至信任引擎110,具體地講傳輸至事務(wù)引擎205。根據(jù)一 個實施例,用認(rèn)證引擎215的公鑰對該傳輸進行編碼。根據(jù)一個實施例,用戶在登記過程900的步驟905中執(zhí)行單次登記。例如,用戶將 他或她自己作為特定人員(例如,Joe User)登記。當(dāng)Joe User希望作為Joe User (Mega 公司的CEO)進行登記時,根據(jù)這個實施例,Joe User登記第二次,接收第二唯一用戶ID并 且信任引擎110不將這兩個身份進行關(guān)聯(lián)。根據(jù)本發(fā)明的另一個實施例,登記過程900為
      19一個用戶ID提供多個用戶身份。因此,在以上例子中,信任引擎110將有利地將Joe User 的兩個身份進行關(guān)聯(lián)。熟練技術(shù)人員從這里的公開應(yīng)該明白,一個用戶可以具有許多身份, 例如Joe User (戶主)、Joe User (慈善基金成員)等。即使用戶可以具有多個身份,根據(jù) 這個實施例,信任引擎110優(yōu)選僅僅存儲一組登記數(shù)據(jù)。此外,有利的是,用戶可以在需要 時添加、編輯/更新或刪除身份。盡管參照其優(yōu)選實施例公開了登記過程900,但是本發(fā)明不限于此。相反,熟練技 術(shù)人員將從這里的公開認(rèn)識到用于收集登記數(shù)據(jù)(具體地為登記認(rèn)證數(shù)據(jù))的大量替代。 例如,Java小程序可以是基于公共對象模型(COM)的Java小程序等。另一方面,登記過程可包括分級登記。例如,在最低的登記等級,用戶可以經(jīng)由通 信鏈路125進行登記而不生成關(guān)于他或她的身份的文檔。根據(jù)提高的登記等級,用戶使用 信任第三方(例如,數(shù)字公證人)進行登記。例如,用戶可以親自到信任第三方,生成證明 (例如,出生證明、駕照、軍官證等),并且信任第三方可有利地將例如它們的數(shù)字簽名包括 在登記提交中。信任第三方可以包括真實公證人、政府機構(gòu)(例如,郵局或機動車部門)、 大公司中招募雇員的人力資源人員等。熟練技術(shù)人員從這里的公開應(yīng)該明白,在登記過程 900期間可以進行大量的不同等級的登記。在接收到登記認(rèn)證數(shù)據(jù)后,在步驟915,事務(wù)引擎205使用傳統(tǒng)的全SSL技術(shù)將登 記認(rèn)證數(shù)據(jù)轉(zhuǎn)發(fā)至認(rèn)證引擎215。在步驟920中,認(rèn)證引擎215使用認(rèn)證引擎215的私鑰對 登記認(rèn)證數(shù)據(jù)進行解密。此外,認(rèn)證引擎215利用數(shù)據(jù)分裂模塊對登記認(rèn)證數(shù)據(jù)進行數(shù)學(xué) 運算從而將該數(shù)據(jù)分裂成至少兩個獨立不可譯解的隨機數(shù)。如上所述,至少兩個數(shù)可以包 括統(tǒng)計隨機數(shù)和二進制異或數(shù)。在步驟925中,認(rèn)證引擎215將隨機數(shù)的每個部分轉(zhuǎn)發(fā)至 數(shù)據(jù)存儲設(shè)施Dl到D4之一。如上所述,有利的是,認(rèn)證引擎215還可以對哪些部分傳送到 哪個儲存器進行隨機化。在登記過程900中,用戶常常還希望發(fā)放數(shù)字證書使得他或她可以從密碼系統(tǒng) 100之外的其它人接收加密的文檔。如上所述,認(rèn)證機構(gòu)115通常根據(jù)幾個傳統(tǒng)標(biāo)準(zhǔn)中的一 個或多個發(fā)放數(shù)字證書。通常,數(shù)字證書包括每人皆知的用戶或系統(tǒng)的公鑰。不管在登記時或者在另一個時間用戶是否請求了數(shù)字證書,該請求都通過信任引 擎110傳送到認(rèn)證引擎215。根據(jù)一個實施例,該請求包括例如具有用戶的正確名稱的XML 文檔。根據(jù)步驟935,認(rèn)證引擎215將該請求傳送給密碼引擎220以指示密碼引擎220產(chǎn)生 密碼密鑰或密鑰對。在被請求時,在步驟935,密碼引擎220產(chǎn)生至少一個密碼密鑰。根據(jù)一個實施例, 密碼處理模塊625產(chǎn)生密鑰對,其中,一個密鑰用作私鑰,一個密鑰用作公鑰。密碼引擎220 存儲私鑰,并且根據(jù)一個實施例存儲公鑰的副本。在步驟945中,密碼引擎220向事務(wù)引擎 205發(fā)送對數(shù)字證書的請求。根據(jù)一個實施例,該請求有利地包括例如嵌入在XML文檔內(nèi)的 諸如PKCSlO的標(biāo)準(zhǔn)化請求。對數(shù)字證書的請求可有利地對應(yīng)于一個或多個認(rèn)證機構(gòu)以及 這些認(rèn)證機構(gòu)要求的一個或多個標(biāo)準(zhǔn)格式。在步驟950中,事務(wù)引擎205將這個請求轉(zhuǎn)發(fā)至認(rèn)證機構(gòu)115,在步驟955中,認(rèn)證 機構(gòu)115返回數(shù)字證書。有利的是,返回數(shù)字證書可以是例如PKCS7的標(biāo)準(zhǔn)化格式或者是 一個或多個認(rèn)證機構(gòu)115的專有格式。在步驟960中,數(shù)字證書由事務(wù)引擎205接收,副本 被轉(zhuǎn)發(fā)至用戶并且副本由信任引擎110存儲。信任引擎110存儲證書的副本從而使得信任引擎110將不需要依賴于認(rèn)證機構(gòu)115的可用性。例如,當(dāng)用戶希望發(fā)送數(shù)字證書或者第 三方請求用戶的數(shù)字證書時,對數(shù)字證書的請求通常被發(fā)送至認(rèn)證機構(gòu)115。然而,如果認(rèn) 證機構(gòu)115正在進行維護或者成為故障或安全危害的犧牲品,則無法獲得數(shù)字證書。在發(fā)放密碼密鑰后的任何時間,密碼引擎220可有利地利用上述的數(shù)據(jù)分裂過程 800從而使得密碼密鑰被分裂成獨立不可譯解的隨機數(shù)。與認(rèn)證數(shù)據(jù)類似,在步驟965中, 密碼引擎220將隨機數(shù)傳送給數(shù)據(jù)存儲設(shè)施Dl到D4。熟練技術(shù)人員將從這里的公開認(rèn)識到,用戶可以在登記后的任何時間請求數(shù)字證 書。此外,系統(tǒng)之間的通信可有利地包括全SSL或公鑰加密技術(shù)。此外,登記過程可以發(fā)放 來自多個認(rèn)證機構(gòu)(包括信任引擎110內(nèi)部或外部的一個或多個專有認(rèn)證機構(gòu))的多個數(shù) 字證書。如在步驟935到步驟960中所公開的,本發(fā)明的一個實施例包括對最終存儲在信 任引擎110上的證書的請求。根據(jù)一個實施例,由于密碼處理模塊625發(fā)放由信任引擎110 使用的密鑰,所以每個證書對應(yīng)于一個私鑰。因此,信任引擎110通過監(jiān)視用戶擁有的或與 用戶關(guān)聯(lián)的證書,可以有利地提供互用性。例如,當(dāng)密碼引擎220接收對密碼功能的請求 時,密碼處理模塊625可以調(diào)查請求用戶擁有的證書以確定該用戶是否擁有與該請求的屬 性匹配的私鑰。當(dāng)存在這種證書時,密碼處理模塊625可以使用該證書或者與之關(guān)聯(lián)的公 鑰或私鑰執(zhí)行被請求的功能。當(dāng)不存在這種證書時,密碼處理模塊625可以有利并透明地 執(zhí)行多個動作以嘗試補救適當(dāng)密鑰的缺失。圖9B示出了互用性過程970的流程圖,根據(jù)本 發(fā)明的實施例的各方面,它公開了上述步驟以確保密碼處理模塊625使用適當(dāng)密鑰執(zhí)行密 碼功能。如圖9B所示,互用性過程970在步驟972開始,在步驟972中,密碼處理模塊925 確定希望的證書的類型。根據(jù)本發(fā)明的一個實施例,有利的是,在對密碼功能的請求或者由 請求者提供的其它數(shù)據(jù)中指定證書的類型。根據(jù)另一個實施例,證書類型可以通過該請求 的數(shù)據(jù)格式進行確定。例如,密碼處理模塊925可以有利地識別與特定類型對應(yīng)的請求。根據(jù)一個實施例,證書類型可以包括一個或多個算法標(biāo)準(zhǔn),例如,RSA、ELGAMAL等。 此外,證書類型可以包括一個或多個密鑰類型,例如,對稱密鑰、公鑰、例如256比特密鑰的 強加密密鑰、較不安全的密鑰等。此外,證書類型可以包括一個或多個上述算法標(biāo)準(zhǔn)或密 鑰、一個或多個消息或數(shù)據(jù)格式、一個或多個數(shù)據(jù)封裝或編碼方案(例如,Base 32或Base 64)的升級或替換。證書類型還可以包括與一個或多個第三方密碼應(yīng)用或接口、一個或多 個通信協(xié)議或者一個或多個證書標(biāo)準(zhǔn)或協(xié)議的兼容性。熟練技術(shù)人員將從這里的公開認(rèn)識 到,在證書類型中可存在其它差別,并且可以如本文公開地執(zhí)行從或到這些差別的翻譯。一旦密碼處理模塊625確定了證書類型,互用性過程970進行到步驟974,并且在 步驟974中確定用戶是否擁有與確定的類型匹配的證書。當(dāng)用戶擁有匹配的證書時,例如, 信任引擎110通過例如其先前存儲可訪問該匹配的證書,加密處理模塊825知道匹配的私 鑰也存儲在信任引擎110內(nèi)。例如,匹配的私鑰可存儲在儲存器210或儲存器系統(tǒng)700內(nèi)。 有利的是,密碼處理模塊625可以請求從例如儲存器210組裝匹配的私鑰,然后在步驟976 中,使用該匹配的私鑰執(zhí)行密碼操作或功能。例如,如上所述,密碼處理模塊625可以有利 地執(zhí)行哈希法、哈希比較、數(shù)據(jù)加密或解密、數(shù)字簽名驗證或建立等。當(dāng)用戶不擁有匹配的證書時,互用性過程970進行到步驟978,在步驟978,密碼處
      21理模塊625確定用戶是否擁有交叉認(rèn)證的證書。根據(jù)一個實施例,當(dāng)?shù)谝徽J(rèn)證機構(gòu)確定信 任來自第二認(rèn)證機構(gòu)的證書時,出現(xiàn)認(rèn)證機構(gòu)之間的交叉認(rèn)證。換言之,第一認(rèn)證機構(gòu)確定 來自第二認(rèn)證機構(gòu)的證書滿足特定質(zhì)量標(biāo)準(zhǔn),由此可被“認(rèn)證”為與第一認(rèn)證機構(gòu)自身的證 書等效。當(dāng)認(rèn)證機構(gòu)例如發(fā)放具有信任等級的證書時,交叉認(rèn)證變得更加復(fù)雜。例如,第一 認(rèn)證機構(gòu)通?;诘怯涍^程的可靠度可以向特定證書提供三個等級的信任,而第二認(rèn)證機 構(gòu)可以提供七個等級的信任。有利的是,交叉認(rèn)證可以跟蹤來自第二認(rèn)證機構(gòu)的哪些等級 和哪些證書可替代來自第一認(rèn)證機構(gòu)的哪些等級和哪些證書。當(dāng)在兩個認(rèn)證機構(gòu)之間正式 公開地完成上述交叉認(rèn)證時,證書和等級的彼此映射通常稱作“鏈鎖(chaining) ”。根據(jù)本發(fā)明的另一個實施例,有利的是,密碼處理模塊625可以開發(fā)由認(rèn)證機構(gòu) 達成一致的交叉認(rèn)證之外的交叉認(rèn)證。例如,密碼處理模塊625可以訪問第一認(rèn)證機構(gòu)的 證書操作聲明(CPS)或者其它公布的政策聲明,并且例如使用特定信任等級要求的認(rèn)證令 牌(token),將第一認(rèn)證機構(gòu)的證書與另一個認(rèn)證機構(gòu)的證書進行匹配。當(dāng)在步驟978中密碼處理模塊625確定用戶擁有交叉認(rèn)證的證書時,互用性過程 970進行到步驟976,并且使用交叉認(rèn)證的公鑰、私鑰或二者執(zhí)行密碼操作或功能。另選地, 當(dāng)密碼處理模塊625確定用戶不擁有交叉認(rèn)證的證書時,互用性過程970進行到步驟980, 在步驟980,密碼處理模塊625選擇向其發(fā)放被請求的證書類型或者交叉認(rèn)證的證書的認(rèn) 證機構(gòu)。在步驟982中,密碼處理模塊625確定上面討論的用戶登記認(rèn)證數(shù)據(jù)是否滿足選 擇的認(rèn)證機構(gòu)的認(rèn)證要求。例如,如果用戶例如通過回答人口和其它提問經(jīng)由網(wǎng)絡(luò)登入,則 與提供生物測定數(shù)據(jù)并且出現(xiàn)在第三方(例如,公證人)前的用戶相比,提供的認(rèn)證數(shù)據(jù)可 以建立較低等級的信任。根據(jù)一個實施例,有利的是,可以在選擇的認(rèn)證機構(gòu)的CPS中提供 上述認(rèn)證要求。當(dāng)用戶已經(jīng)向信任引擎110提供滿足選擇的認(rèn)證機構(gòu)的要求的登記認(rèn)證數(shù)據(jù)時, 互用性過程970進行到步驟984,在步驟984,密碼處理模塊825從選擇的認(rèn)證機構(gòu)獲取證 書。根據(jù)一個實施例,密碼處理模塊625通過登記過程900的下面的步驟945到960獲取 證書。例如,密碼處理模塊625可有利地利用密碼引擎220已經(jīng)可獲得的一個或多個密鑰 對中的一個或多個公鑰,從認(rèn)證機構(gòu)請求證書。根據(jù)另一個實施例,密碼處理模塊625可有 利地產(chǎn)生一個或多個新密鑰對,并且使用與之對應(yīng)的公鑰從認(rèn)證機構(gòu)請求證書。根據(jù)另一個實施例,信任引擎110可有利地包括能夠發(fā)放一個或多個證書類型的 一個或多個證書發(fā)放模塊。根據(jù)這個實施例,證書發(fā)放模塊可以提供上述證書。當(dāng)密碼處 理模塊625獲取證書時,互用性過程970進行到步驟976,并且使用與獲取的證書對應(yīng)的公 鑰、私鑰或二者執(zhí)行密碼操作或功能。當(dāng)在步驟982中用戶沒有向信任引擎110提供滿足選擇的認(rèn)證機構(gòu)的要求的登記 認(rèn)證數(shù)據(jù)時,在步驟986中密碼處理模塊625確定是否存在具有不同的認(rèn)證要求的其它認(rèn) 證機構(gòu)。例如,密碼處理模塊625可以尋找具有更低的認(rèn)證要求但是仍發(fā)放選擇的證書或 其交叉認(rèn)證的認(rèn)證機構(gòu)。當(dāng)上述具有更低要求的認(rèn)證機構(gòu)存在時,互用性過程970進行到步驟980并且選 擇該認(rèn)證機構(gòu)。另選地,當(dāng)不存在這種認(rèn)證機構(gòu)時,在步驟988中信任引擎110可以從用戶 請求另外的認(rèn)證令牌。例如,信任引擎110可以請求包括例如生物測定數(shù)據(jù)的新的登記認(rèn) 證數(shù)據(jù)。另外,信任引擎110可以請求用戶出現(xiàn)在信任第三方前并且提供適當(dāng)?shù)恼J(rèn)證證明(例如,出現(xiàn)在針對駕照、社會保險卡、銀行卡、出生證明、軍官證等等的公證前)。當(dāng)信任引 擎110接收到更新的認(rèn)證數(shù)據(jù)時,互用性過程970進行到步驟984并且獲取上述選擇的證 書。通過上述互用性過程970,密碼處理模塊625有利地在不同的密碼系統(tǒng)之間提供 無縫透明的翻譯和轉(zhuǎn)換。熟練技術(shù)人員將從這里的公開認(rèn)識到上述互用系統(tǒng)的大量的優(yōu)點 和實施方式。例如,互用性過程970的上述步驟986可有利地包括信任仲裁的方面(下文 更加詳細(xì)討論),其中,認(rèn)證機構(gòu)可以在特殊境況下接受較低等級的交叉認(rèn)證。此外,互用性 過程970可以包括確保標(biāo)準(zhǔn)證書撤銷之間的互用性以及標(biāo)準(zhǔn)證書撤銷的利用,例如,利用 證書撤銷列表(CRL)、在線證書狀態(tài)協(xié)議(OCSP)等。圖10示出了根據(jù)本發(fā)明的實施例的各方面的認(rèn)證過程1000的數(shù)據(jù)流。根據(jù)一個 實施例,認(rèn)證過程1000包括從用戶收集當(dāng)前認(rèn)證數(shù)據(jù)并且將它與用戶的登記認(rèn)證數(shù)據(jù)進 行比較。例如,認(rèn)證過程1000在步驟1005開始,在步驟1005,用戶希望與例如賣方執(zhí)行事 務(wù)。這種事務(wù)例如可包括選擇購買選項、請求訪問賣方系統(tǒng)120的限制區(qū)或裝置、等等。在 步驟1010中,賣方向用戶提供事務(wù)ID和認(rèn)證請求。事務(wù)ID可有利地包括192比特量(32 比特時間戳,串連128比特隨機量或“現(xiàn)時(nonce)”,再串連32比特賣方特定常數(shù))。這種 事務(wù)ID唯一識別事務(wù)從而使信任引擎110能夠拒絕假冒事務(wù)。認(rèn)證請求可有利地包括針對特定事務(wù)需要什么等級的認(rèn)證。例如,賣方可以指定 談及的事務(wù)要求的特定置信等級。如果不能夠使得認(rèn)證達到這個置信等級,則如下文所述, 在用戶沒有進一步認(rèn)證以提升置信等級或者賣方與服務(wù)器之間的認(rèn)證條款沒有變化的情 況下,將不會發(fā)生事務(wù)。在下文中更加完整地討論這些問題。根據(jù)一個實施例,有利的是,可由賣方側(cè)Java小程序或其它軟件程序產(chǎn)生事務(wù)ID 和認(rèn)證請求。此外,事務(wù)ID和認(rèn)證數(shù)據(jù)的傳輸可以包括使用傳統(tǒng)的SSL技術(shù)(例如,1/2 SSL或換言之賣方側(cè)認(rèn)證的SSL)加密的一個或多個XML文檔。在用戶系統(tǒng)105接收到事務(wù)ID和認(rèn)證請求后,用戶系統(tǒng)105從用戶收集潛在包括 當(dāng)前生物測定信息的當(dāng)前認(rèn)證數(shù)據(jù)。在步驟1015,用戶系統(tǒng)105用認(rèn)證引擎215的公鑰至 少對當(dāng)前認(rèn)證數(shù)據(jù)“B ”和事務(wù)ID進行加密,并且將該數(shù)據(jù)傳送到信任引擎110。所述傳輸 優(yōu)選包括至少用傳統(tǒng)的1/2SSL技術(shù)進行加密的XML文檔。在步驟1020中,事務(wù)引擎205接 收該傳輸,優(yōu)選識別URL或URI中的數(shù)據(jù)格式或請求,并且將該傳輸轉(zhuǎn)發(fā)至認(rèn)證引擎215。在步驟1015和1020中,賣方系統(tǒng)120在步驟1025使用優(yōu)選的全SSL技術(shù)向信任 引擎110轉(zhuǎn)發(fā)事務(wù)ID和認(rèn)證請求。該通信還可以包括賣方ID,盡管還可以通過事務(wù)ID的 非隨機部分傳送賣方標(biāo)識。在步驟1030和1035,事務(wù)引擎205接收該通信,建立審計索引 的記錄,并且產(chǎn)生對要從數(shù)據(jù)存儲設(shè)施Dl到D4進行組裝的用戶的登記認(rèn)證數(shù)據(jù)的請求。在 步驟1040,儲存器系統(tǒng)700向認(rèn)證引擎215傳送與用戶對應(yīng)的登記認(rèn)證數(shù)據(jù)的部分。在步 驟1045,認(rèn)證引擎215使用它的私鑰對該傳輸進行解密并且將該登記認(rèn)證數(shù)據(jù)與由用戶提 供的當(dāng)前認(rèn)證數(shù)據(jù)進行比較。步驟1045的比較可有利地應(yīng)用啟發(fā)式上下文敏感認(rèn)證(上文提及并且在下文更 加詳細(xì)討論)。例如,如果接收到的生物測定信息沒有完美匹配,則得到較低置信匹配。在 特定實施例中,認(rèn)證的置信等級針對事務(wù)的性質(zhì)以及用戶和賣方二者的期望進行平衡。在 下文對此進行更加詳細(xì)的討論。
      23
      在步驟1050,認(rèn)證引擎215在認(rèn)證請求內(nèi)填入步驟1045的比較的結(jié)果。根據(jù)本發(fā) 明的一個實施例,認(rèn)證請求填充有認(rèn)證過程1000的是/否或者真/假結(jié)果。在步驟1055, 被填充的認(rèn)證請求返回到賣方以由賣方遵照行事,例如允許用戶完成發(fā)起該認(rèn)證請求的事 務(wù)。根據(jù)一個實施例,確認(rèn)消息被傳遞至用戶。基于上面的描述,有利的是,認(rèn)證過程1000使敏感數(shù)據(jù)保持安全并且生成被構(gòu)造 為維護敏感數(shù)據(jù)的完整性的結(jié)果。例如,僅僅在認(rèn)證引擎215內(nèi)組裝敏感數(shù)據(jù)。例如,登記 認(rèn)證數(shù)據(jù)在通過數(shù)據(jù)組裝模塊在認(rèn)證引擎215內(nèi)進行組裝前是不可譯解的,并且當(dāng)前認(rèn)證 數(shù)據(jù)在通過傳統(tǒng)的SSL技術(shù)和認(rèn)證引擎215的私鑰進行展開(unwrap)前是不可譯解的。此 外,發(fā)送至賣方的認(rèn)證結(jié)果不包括敏感數(shù)據(jù),并且用戶甚至無法知道是否他或她生成了有 效的認(rèn)證數(shù)據(jù)。盡管參照其優(yōu)選和替代實施例公開了認(rèn)證過程1000,但是本發(fā)明不限于此。相反, 熟練技術(shù)人員將從這里的公開認(rèn)識到認(rèn)證過程1000的大量替代。例如,有利的是,賣方可 由幾乎任何請求應(yīng)用(甚至是駐留在用戶系統(tǒng)105內(nèi)的應(yīng)用)替代。例如,在對文檔進行解 鎖之前,客戶機應(yīng)用(例如,Microsoft Word)可使用應(yīng)用程序接口(API)或密碼API (CAPI) 請求認(rèn)證。另選地,郵件服務(wù)器、網(wǎng)絡(luò)、蜂窩電話、個人或移動計算裝置、工作站等都可以形 成能夠通過認(rèn)證過程1000進行填充的認(rèn)證請求。實際上,在提供上述信任的認(rèn)證過程1000 后,請求應(yīng)用或裝置可以訪問或使用大量的電子或計算機裝置或系統(tǒng)。此外,在認(rèn)證失敗的情況下,認(rèn)證過程1000可以采用大量的替代過程。認(rèn)證失敗 可以保持用戶重新輸入他或她的當(dāng)前認(rèn)證數(shù)據(jù)的相同事務(wù)ID和請求。如上所述,使用相同 的事務(wù)ID使認(rèn)證引擎215的比較器可以監(jiān)視并限制針對特定事務(wù)的認(rèn)證嘗試的數(shù)目,由此 建立更加安全的密碼系統(tǒng)100此外,有利的是,認(rèn)證過程1000可用于開發(fā)一流的單登錄方案(例如,對敏感數(shù) 據(jù)倉庫(vault)進行解鎖)。例如,成功或肯定認(rèn)證可以向認(rèn)證的用戶提供自動訪問幾乎 無限數(shù)目的系統(tǒng)和應(yīng)用的任何數(shù)目的口令的能力。例如,用戶的認(rèn)證可以向用戶提供對與 多個在線賣方關(guān)聯(lián)的口令、登錄、金融證明等、局域網(wǎng)、各種個人計算裝置、互聯(lián)網(wǎng)服務(wù)提供 商、拍賣商、投資經(jīng)紀(jì)商等的訪問。通過采用敏感數(shù)據(jù)倉庫,用戶可以選擇真正大的和隨機 的口令,這是因為他們不再需要通過關(guān)聯(lián)來記住它們。而且,認(rèn)證過程1000提供對它們的 訪問。例如,用戶可以選擇長度為20多位的隨機字母數(shù)字串,而非與可記憶數(shù)據(jù)、名稱等關(guān) 聯(lián)的字母數(shù)字串。根據(jù)一個實施例,有利的是,與給定用戶關(guān)聯(lián)的敏感數(shù)據(jù)倉庫可以存儲在儲存器 210的數(shù)據(jù)存儲設(shè)施內(nèi),或者被分裂并存儲在儲存器系統(tǒng)700內(nèi)。根據(jù)這個實施例,在肯定 的用戶認(rèn)證后,信任引擎110將被請求的敏感數(shù)據(jù)(例如,適當(dāng)?shù)目诹?提供給請求應(yīng)用。 根據(jù)另一個實施例,信任引擎110可以包括用于存儲敏感數(shù)據(jù)倉庫的單獨系統(tǒng)。例如,信任 引擎110可以包括孤立的軟件引擎,用于執(zhí)行數(shù)據(jù)倉庫功能并且形象化地駐留在信任引擎 110的上述前端安全系統(tǒng)的“后方”。根據(jù)這個實施例,在軟件引擎從信任引擎110接收到 指示肯定的用戶認(rèn)證的信號后,軟件引擎提供被請求的敏感數(shù)據(jù)。在另一個實施例中,數(shù)據(jù)倉庫可由第三方系統(tǒng)實現(xiàn)。與軟件引擎實施例類似,有利 的是,在第三方系統(tǒng)從信任引擎110接收到指示肯定的用戶認(rèn)證的信號后,第三方系統(tǒng)可 以提供被請求的敏感數(shù)據(jù)。根據(jù)另一個實施例,數(shù)據(jù)倉庫可以在用戶系統(tǒng)105上實現(xiàn)。在從信任引擎110接收到指示肯定的用戶認(rèn)證的信號后,用戶側(cè)軟件引擎可以有利地提供上 述數(shù)據(jù)。盡管參照替代實施例公開了上述數(shù)據(jù)倉庫,但是熟練技術(shù)人員將從這里的公開認(rèn) 識到它的大量的另外實施方式。例如,特定數(shù)據(jù)倉庫可以包括一些或所有的上述實施例中 的方面。此外,任何的上述數(shù)據(jù)倉庫可以在不同的時刻采用一個或多個認(rèn)證請求。例如,任 一數(shù)據(jù)倉庫可以對于每一個或多個事務(wù)定期地要求認(rèn)證,對于每一個或多個會話以及對一 個或多個網(wǎng)頁或網(wǎng)站的每次訪問要求認(rèn)證,以一個或多個其它指定間隔等要求認(rèn)證。圖11示出了根據(jù)本發(fā)明的實施例的各方面的簽名過程1100的數(shù)據(jù)流。如圖11 所示,簽名過程1100包括與在上文參照圖10描述的認(rèn)證過程1000類似的步驟。根據(jù)本發(fā) 明的一個實施例,簽名過程1100首先對用戶進行認(rèn)證,然后執(zhí)行幾個數(shù)字簽名功能中的一 個或多個(在下文進行更加詳細(xì)的描述)。根據(jù)另一個實施例,有利的是,簽名過程1100可 以存儲與之相關(guān)的數(shù)據(jù),例如,消息或文檔的哈希值等。有利的是,這個數(shù)據(jù)可用于審計或 任何其它事件,例如,當(dāng)參與方嘗試抵賴事務(wù)時。如圖11所示,在認(rèn)證步驟中,用戶和賣方可以有利地對消息(例如,合同)達成一 致。在簽名過程中,有利的是,簽名過程1100確保由用戶簽名的合同與由賣方提供的合同 相同。因此,根據(jù)一個實施例,在認(rèn)證過程中,賣方和用戶在發(fā)送至認(rèn)證引擎215的數(shù)據(jù)中 包括消息或合同的各自副本的哈希值。通過僅僅采用消息或合同的哈希值,信任引擎110 可有利地存儲明顯減小的數(shù)據(jù)量,從而提供更高效且成本效益高的密碼系統(tǒng)。此外,有利的 是,存儲的哈希值可與討論的文檔的哈希值進行比較,以確定討論的文檔是否與由任一方 簽名的文檔匹配。確定文檔是否和與事務(wù)相關(guān)的一個文檔相同的能力提供了附加證據(jù),其 能夠用于對抗由一方對事務(wù)抵賴的主張。在步驟1103,認(rèn)證引擎215組裝登記認(rèn)證數(shù)據(jù),并且將它與由用戶提供的當(dāng)前認(rèn) 證數(shù)據(jù)進行比較。當(dāng)認(rèn)證引擎215的比較器指示登記認(rèn)證數(shù)據(jù)與當(dāng)前認(rèn)證數(shù)據(jù)匹配時,認(rèn) 證引擎215的比較器還將由賣方提供的消息的哈希值與由用戶提供的消息的哈希值進行 比較。因此,有利的是,認(rèn)證引擎215確保用戶同意的消息與賣方同意的消息相同。在步驟1105中,認(rèn)證引擎215向密碼引擎220發(fā)送數(shù)字簽名請求。根據(jù)本發(fā)明的 一個實施例,該請求包括消息或合同的哈希值。然而,熟練技術(shù)人員將從這里的公開認(rèn)識 到,密碼引擎220實際上可以對任何類型的數(shù)據(jù)(包括但不限于視頻、音頻、生物測定、圖像 或文本)進行加密以形成期望的數(shù)字簽名。返回到步驟1105,數(shù)字簽名請求優(yōu)選包括通過 傳統(tǒng)的SSL技術(shù)傳送的XML文檔。在步驟1110中,認(rèn)證引擎215向數(shù)據(jù)存儲設(shè)施Dl到D4的每個發(fā)送請求,從而使 得數(shù)據(jù)存儲設(shè)施Dl到D4的每個發(fā)送它們各自的與簽名方對應(yīng)的一個或多個密碼密鑰的部 分。根據(jù)另一個實施例,密碼引擎220采用上文所述的互用性過程970的一些或所有的步 驟,從而使得密碼引擎220首先確定簽名方要從儲存器210或儲存器系統(tǒng)700請求的一個 或多個適當(dāng)密鑰,并且采取行動以提供適當(dāng)?shù)钠ヅ涿荑€。根據(jù)另一個實施例,有利的是,認(rèn) 證引擎215或密碼引擎220可以請求與簽名方關(guān)聯(lián)并存儲在儲存器210或儲存器系統(tǒng)700 中的一個或多個密鑰。根據(jù)一個實施例,簽名方包括用戶和賣方之一或二者。在這種情況下,有利的是, 認(rèn)證引擎215請求與用戶和/或賣方對應(yīng)的密碼密鑰。根據(jù)另一個實施例,簽名方包括信任引擎110。在這個實施例中,信任引擎110在證明認(rèn)證過程1000正確地認(rèn)證了用戶、賣方 或二者。因此,認(rèn)證引擎215請求信任引擎110的密碼密鑰(例如,屬于密碼引擎220的密 鑰)以執(zhí)行數(shù)字簽名。根據(jù)另一個實施例,信任引擎110執(zhí)行數(shù)字公證類功能。在這個實 施例中,簽名方包括連同信任引擎110的用戶、賣方或二者。因此,信任引擎110提供用戶 和/或賣方的數(shù)字簽名,然后用它自身的數(shù)字簽名指示用戶和/或賣方得到正確認(rèn)證。在 這個實施例中,有利的是,認(rèn)證引擎215可以請求與用戶、賣方或二者對應(yīng)的密碼密鑰的組 裝。根據(jù)另一個實施例,有利的是,認(rèn)證引擎215可以請求與信任引擎110對應(yīng)的密碼密鑰 的組裝。根據(jù)另一個實施例,信任引擎110執(zhí)行授權(quán)書類功能。例如,信任引擎110可以代 表第三方對消息進行數(shù)字簽名。在這種情況下,認(rèn)證引擎215請求與第三方關(guān)聯(lián)的密碼密 鑰。根據(jù)這個實施例,有利的是,簽名過程1100可以包括在允許授權(quán)書類功能之前對第三 方進行認(rèn)證。此外,認(rèn)證過程1000可以包括對第三方約束(例如,規(guī)定何時以及在什么境 況下可使用特定的第三方的簽名的商業(yè)邏輯等)的檢查?;谏厦娴拿枋?,在步驟1110中,認(rèn)證引擎從與簽名方對應(yīng)的數(shù)據(jù)存儲設(shè)施Dl到 D4請求密碼密鑰。在步驟1115中,數(shù)據(jù)存儲設(shè)施Dl到D4將它們各自的與簽名方對應(yīng)的密 碼密鑰的部分傳輸至密碼引擎220。根據(jù)一個實施例,上述傳輸包括SSL技術(shù)。根據(jù)另一個 實施例,有利的是,上述傳輸可用密碼引擎220的公鑰進行超級加密。在步驟1120中,密碼引擎220組裝簽名方的上述密碼密鑰并且用其對消息進行加 密,從而形成數(shù)字簽名。在簽名過程1100的步驟1125中,密碼引擎220向認(rèn)證引擎215發(fā) 送該數(shù)字簽名。在步驟1130中,認(rèn)證引擎215將填充了的認(rèn)證請求連同哈希處理的消息的 副本以及數(shù)字簽名發(fā)送至事務(wù)引擎205。在步驟1135中,事務(wù)引擎205將包括事務(wù)ID、認(rèn) 證是否成功的指示以及數(shù)字簽名的收據(jù)傳輸至賣方。根據(jù)一個實施例,有利的是,上述傳輸 可以包括信任引擎110的數(shù)字簽名。例如,信任引擎110可以用它的私鑰對該收據(jù)的哈希 值進行加密,從而形成要附加到至賣方的傳輸?shù)臄?shù)字簽名。根據(jù)一個實施例,事務(wù)引擎205還向用戶發(fā)送確認(rèn)消息。盡管參照其優(yōu)選和替代 實施例公開了簽名過程1100,但是本發(fā)明不限于此。相反,熟練技術(shù)人員將從這里的公開認(rèn) 識到簽名過程1100的大量替代。例如,可以用諸如電子郵件應(yīng)用的用戶應(yīng)用替換賣方。例 如,用戶可能希望利用他或她的數(shù)字簽名對特定電子郵件進行數(shù)字簽名。在這種實施例中, 有利的是,整個簽名過程1100中的傳輸可以僅僅包括消息的哈希值的一個副本。此外,熟 練技術(shù)人員將從這里的公開認(rèn)識到,大量的客戶機應(yīng)用可以請求數(shù)字簽名。例如,客戶機應(yīng) 用可以包括字處理器、電子數(shù)據(jù)表、電子郵件、語音郵件、對限制系統(tǒng)區(qū)域的訪問等。此外,熟練技術(shù)人員將從這里的公開認(rèn)識到,有利的是,簽名過程1100的步驟 1105到1120可以采用圖9B的互用性過程970的一些或所有的步驟,從而提供例如需要處 理不同簽名類型下的數(shù)字簽名的不同密碼系統(tǒng)之間的互用性。圖12示出了根據(jù)本發(fā)明的實施例的各方面的加密/解密過程1200的數(shù)據(jù)流。如 圖12所示,通過使用認(rèn)證過程1000對用戶進行認(rèn)證,開始解密過程1200。根據(jù)一個實施 例,認(rèn)證過程1000在認(rèn)證請求中包括同步會話密鑰。例如,在傳統(tǒng)的PKI技術(shù)中,熟練技術(shù) 人員明白,使用公鑰和私鑰的加密或解密的計算強度大并且可能要求大量的系統(tǒng)資源。然 而,在對稱密鑰密碼系統(tǒng)或消息的發(fā)送方和接收方共享用于對消息進行加密和解密的一個公同密鑰的系統(tǒng)中,數(shù)學(xué)運算明顯更簡單并更快速。因此,在傳統(tǒng)的PKI技術(shù)中,消息的發(fā) 送方將產(chǎn)生同步會話密鑰并且使用更簡單更快速的對稱密鑰系統(tǒng)對消息進行加密。然后, 發(fā)送方用接收方的公鑰對會話密鑰進行加密。加密的會話密鑰將附加到同步加密的消息并 且這兩個數(shù)據(jù)都被發(fā)送至接收方。接收方使用他或她的私鑰對會話密鑰進行解密,然后使 用會話密鑰對消息進行解密。基于上面的描述,更簡單更快速的對稱密鑰系統(tǒng)用于大部分 的加密/解密處理。因此,在解密過程1200中,解密有利地假定已利用用戶的公鑰對同步 密鑰進行了加密。因此,如上所述,加密的會話密鑰包括在認(rèn)證請求中。返回解密過程1200,在步驟1205中用戶已經(jīng)得到認(rèn)證后,認(rèn)證引擎215將加密的 會話密鑰轉(zhuǎn)發(fā)至密碼引擎220。在步驟1210中,認(rèn)證引擎215向數(shù)據(jù)存儲設(shè)施Dl到D4的 每個轉(zhuǎn)發(fā)請求用戶的密碼密鑰數(shù)據(jù)的請求。在步驟1215中,每個數(shù)據(jù)存儲設(shè)施Dl到D4將 密碼密鑰的它們各自的部分傳輸至密碼引擎220。根據(jù)一個實施例,用密碼引擎220的公鑰 對上述傳輸進行加密。在解密過程1200的步驟1220中,密碼引擎220組裝密碼密鑰并且用其對會話密 鑰進行解密。在步驟1225中,密碼引擎將會話密鑰轉(zhuǎn)發(fā)至認(rèn)證引擎215。在步驟1227中, 認(rèn)證引擎215填充包括解密的會話密鑰的認(rèn)證請求,并且將填充了的認(rèn)證請求發(fā)送至事務(wù) 引擎205。在步驟1230中,事務(wù)引擎205將認(rèn)證請求連同會話密鑰轉(zhuǎn)發(fā)至請求應(yīng)用或賣方。 然后,根據(jù)一個實施例,請求應(yīng)用或賣方使用會話密鑰對加密的消息進行解密。盡管參照其優(yōu)選和替代實施例公開了解密過程1200,但是熟練技術(shù)人員將從這里 的公開認(rèn)識到解密過程1200的大量替代。例如,解密過程1200可以在同步密鑰加密之前 并且依賴于全公鑰技術(shù)。在這種實施例中,請求應(yīng)用可以將整個消息發(fā)送至密碼引擎220, 或者可以采用一些類型的壓縮或可逆哈希法以將消息發(fā)送至密碼引擎220。熟練技術(shù)人員 從本文公開還將認(rèn)識到上述通信可有利地包括以SSL技術(shù)打包的XML文檔。加密/解密過程1200還提供文檔或其它數(shù)據(jù)的加密。因此,在步驟1235中,請求 應(yīng)用或賣方可有利地向信任引擎110的事務(wù)引擎205發(fā)送對用戶的公鑰的請求。請求應(yīng)用 或賣方產(chǎn)生這個請求,因為請求應(yīng)用或賣方例如使用用戶的公鑰對將用于對文檔或消息進 行加密的會話密鑰進行加密。如在登記過程900中所述,事務(wù)引擎205例如將用戶的數(shù)字證 書的副本存儲在海量存儲器225中。因此,在加密過程1200的步驟1240中,事務(wù)引擎205 從海量存儲器225請求用戶的數(shù)字證書。在步驟1245中,海量存儲器225將與用戶對應(yīng)的 數(shù)字證書發(fā)送至事務(wù)引擎205。在步驟1250中,事務(wù)引擎205將數(shù)字證書發(fā)送至請求應(yīng)用 或賣方。根據(jù)一個實施例,加密過程1200的加密部分不包括用戶的認(rèn)證。這是因為請求賣 方僅需要用戶的公鑰,而不請求任何敏感數(shù)據(jù)。熟練技術(shù)人員將從這里的公開認(rèn)識到,如果特定用戶沒有數(shù)字證書,信任引擎110 可采用一些或全部的登記過程900以為該特定用戶產(chǎn)生數(shù)字證書。然后,信任引擎110可 啟動加密/解密過程1200,并由此提供適當(dāng)?shù)臄?shù)字證書。此外,熟練技術(shù)人員將從這里的 公開認(rèn)識到,加密/解密過程1200的步驟1220和1235到1250可有利地采用圖9B的互用 性過程的一些或所有的步驟,從而提供例如可能需要處理加密的不同密碼系統(tǒng)之間的互用 性。圖13示出了根據(jù)本發(fā)明的另一個實施例的各方面的信任引擎系統(tǒng)1300的簡化框 圖。如圖13所示,信任引擎系統(tǒng)1300包括多個不同的信任引擎1305、1310、1315和1320。
      27為了便于更加全面理解本發(fā)明,圖13示出了具有事務(wù)引擎、儲存器和認(rèn)證引擎的每個信任 引擎1305、1310、1315和1320。然而,熟練技術(shù)人員認(rèn)識到,每個事務(wù)引擎可有利地包括參 照圖1到圖8公開的部件和通信通道中的一些、組合或全部。例如,一個實施例可有利地包 括具有一個或多個事務(wù)引擎、儲存器以及密碼服務(wù)器或它們的任何組合的信任引擎。根據(jù)本發(fā)明的一個實施例,信任引擎1305、1310、1315和1320的每個在地理上分 離,從而例如信任引擎1305可以駐留在第一位置,信任引擎1310可以駐留在第二位置,信 任引擎1315可以駐留在第三位置,信任引擎1320可以駐留在第四位置。有利的是,上述地 理分離減小了系統(tǒng)響應(yīng)時間同時提高整個信任引擎系統(tǒng)1300的安全性。例如,當(dāng)用戶登錄到密碼系統(tǒng)100時,用戶可能離第一位置最近并且可能希望得 到認(rèn)證。如參照圖10所述,為了得到認(rèn)證,用戶提供當(dāng)前認(rèn)證數(shù)據(jù)(例如,生物測定等等), 并且當(dāng)前認(rèn)證數(shù)據(jù)被與該用戶的登記認(rèn)證數(shù)據(jù)進行比較。因此,根據(jù)一個例子,有利的是, 用戶向地理上最近的信任引擎1305提供當(dāng)前認(rèn)證數(shù)據(jù)。信任引擎1305的事務(wù)引擎1321然 后將當(dāng)前認(rèn)證數(shù)據(jù)轉(zhuǎn)發(fā)至也駐留在第一位置的認(rèn)證引擎1322。根據(jù)另一個實施例,事務(wù)引 擎1321將當(dāng)前認(rèn)證數(shù)據(jù)轉(zhuǎn)發(fā)至信任引擎1310、1315或1320的認(rèn)證引擎中的一個或多個。事務(wù)引擎1321還向例如信任引擎1305到1320的每個的儲存器請求登記認(rèn)證數(shù) 據(jù)的組裝。根據(jù)這個實施例,每個儲存器將它的登記認(rèn)證數(shù)據(jù)部分提供給信任引擎1305的 認(rèn)證引擎1322。認(rèn)證引擎1322然后利用例如來自前兩個儲存器的加密的數(shù)據(jù)部分進行響 應(yīng),并且將登記認(rèn)證數(shù)據(jù)組裝成譯解的形式。認(rèn)證引擎1322將登記認(rèn)證數(shù)據(jù)與當(dāng)前認(rèn)證數(shù) 據(jù)進行比較并且將認(rèn)證結(jié)果返回到信任引擎1305的事務(wù)引擎1321。基于以上內(nèi)容,信任引擎系統(tǒng)1300采用多個地理分離的信任引擎1305到1320中 的最接近的一個執(zhí)行認(rèn)證過程。根據(jù)本發(fā)明的一個實施例,有利的是,可以在在用戶系統(tǒng) 105、賣方系統(tǒng)120或認(rèn)證機構(gòu)115中的一個或多個上執(zhí)行的客戶機側(cè)Java小程序處執(zhí)行 到最接近的事務(wù)引擎的信息路由。根據(jù)一個替代實施例,可以采用更加精密的判斷過程以 從信任引擎1305到1320進行選擇。例如,該判斷可以基于給定信任引擎的可用性、操作性、 連接速度、負(fù)載、性能、地理接近、或者它們的組合。這樣,信任引擎系統(tǒng)1300降低它的響應(yīng)時間,同時保持與地理上遠(yuǎn)離的數(shù)據(jù)存儲 設(shè)施(例如,參照圖7描述的那些數(shù)據(jù)存儲設(shè)施,其中,每個數(shù)據(jù)存儲設(shè)施存儲敏感數(shù)據(jù)的 隨機化部分)關(guān)聯(lián)的安全性優(yōu)點。例如,在例如信任引擎1315的儲存器1325處的安全危 害不一定危害信任引擎系統(tǒng)1300的敏感數(shù)據(jù)。這是因為儲存器1325僅僅包含不可譯解的 隨機化數(shù)據(jù),在沒有更多數(shù)據(jù)的情況下它們是完全無用的。根據(jù)另一個實施例,有利的是,信任引擎系統(tǒng)1300可以包括與認(rèn)證引擎類似地布 置的多個密碼引擎。密碼引擎可有利執(zhí)行密碼功能,例如,參照圖1到圖8公開的那些密碼 功能。根據(jù)另一個實施例,信任引擎系統(tǒng)1300可有利地用多個密碼引擎替代多個認(rèn)證引 擎,從而執(zhí)行諸如參照圖1到圖8公開的密碼功能的密碼功能。根據(jù)本發(fā)明的另一個實施 例,信任引擎系統(tǒng)1300可以用具有在上文公開的認(rèn)證引擎、密碼引擎或它們二者的一些或 所有的功能的引擎,來替代各多個認(rèn)證引擎。盡管參照其優(yōu)選和替代實施例公開了信任引擎系統(tǒng)1300,但是熟練技術(shù)人員將認(rèn) 識到,信任引擎系統(tǒng)1300可以包括信任引擎1305到1320的部分。例如,信任引擎系統(tǒng)1300 可以包括一個或多個事務(wù)引擎、一個或多個儲存器、一個或多個認(rèn)證引擎、一個或多個密碼引擎、或者它們的組合。圖14示出了根據(jù)本發(fā)明的另一個實施例的各方面的信任引擎系統(tǒng)1400的簡化框 圖。如圖14所示,信任引擎系統(tǒng)1400包括多個信任引擎1405、1410、1415和1420。根據(jù) 一個實施例,信任引擎1405、1410、1415和1420的每個包括參照圖1到圖8公開的信任引 擎110的一些或所有的部件。根據(jù)這個實施例,當(dāng)用戶系統(tǒng)105、賣方系統(tǒng)120或認(rèn)證機構(gòu) 115的客戶機側(cè)Java小程序與信任引擎系統(tǒng)1400進行通信時,這些通信被發(fā)送至信任引 擎1405到1420的每個的IP地址。另外,信任引擎1405、1410、1415和1420的每個的每個 事務(wù)引擎的行為與參照圖13公開的信任引擎1305的事務(wù)引擎1321的行為類似。例如,在 認(rèn)證過程中,信任引擎1405、1410、1415和1420的每個的每個事務(wù)引擎將當(dāng)前認(rèn)證數(shù)據(jù)發(fā) 送至它們各自的認(rèn)證引擎并且發(fā)送對存儲在信任引擎1405到1420的每個的每個儲存器中 的隨機化數(shù)據(jù)進行組裝的請求。圖14沒有示出所有這些通信,因為這種圖示將變得極度復(fù) 雜。從認(rèn)證過程繼續(xù),儲存器的每個然后將它的隨機化數(shù)據(jù)的部分發(fā)送至信任引擎1405到 1420的每個的每個認(rèn)證引擎。信任引擎的每個的每個認(rèn)證引擎利用它的比較器確定當(dāng)前 認(rèn)證數(shù)據(jù)是否與由信任引擎1405到1420的每個的儲存器提供的登記認(rèn)證數(shù)據(jù)匹配。根據(jù) 這個實施例,由每個認(rèn)證引擎進行的比較的結(jié)果然后被發(fā)送至其它三個信任引擎的冗余模 塊。例如,來自信任引擎1405的認(rèn)證引擎的結(jié)果被發(fā)送至信任引擎1410、1415和1420的 冗余模塊。因此,信任引擎1405的冗余模塊同樣地從信任引擎1410、1415和1420接收認(rèn) 證引擎的結(jié)果。圖15示出了圖14的冗余模塊的框圖。該冗余模塊包括比較器,該比較器被構(gòu)造 為從三個認(rèn)證引擎接收認(rèn)證結(jié)果并且將該結(jié)果發(fā)送至第四個信任引擎的事務(wù)引擎。該比較 器對來自三個認(rèn)證引擎的認(rèn)證結(jié)果進行比較,并且如果這些結(jié)果中的兩個一致,則比較器 得出認(rèn)證結(jié)果應(yīng)該與兩個一致認(rèn)證引擎的認(rèn)證結(jié)果匹配。這個結(jié)果然后被發(fā)送回與不與所 述三個認(rèn)證引擎關(guān)聯(lián)的信任引擎對應(yīng)的事務(wù)引擎。基于上面的描述,冗余模塊從來自優(yōu)選與該冗余模塊的信任引擎在地理上遠(yuǎn)離的 認(rèn)證引擎接收的數(shù)據(jù),確定認(rèn)證結(jié)果。通過提供這種冗余功能,信任引擎系統(tǒng)1400確保對 信任引擎1405到1420之一的認(rèn)證引擎的危害不足以危害該特定信任引擎的冗余模塊的認(rèn) 證結(jié)果。熟練技術(shù)人員將認(rèn)識到,信任引擎系統(tǒng)1400的冗余模塊功能還可以應(yīng)用到信任引 擎1405到1420的每個的密碼引擎。然而,在圖14中沒有示出這種密碼引擎通信以避免復(fù) 雜性。此外,熟練技術(shù)人員將認(rèn)識到,針對圖15的比較器的大量的替代認(rèn)證結(jié)果沖突解決 算法適用于本發(fā)明。根據(jù)本發(fā)明的另一個實施例,有利的是,信任引擎系統(tǒng)1400在密碼比較步驟內(nèi)利 用冗余模塊。例如,有利的是,可以在特定事務(wù)期間由一方或多方提供的文檔的哈希比較過 程中實現(xiàn)參照圖14和圖15公開的一些或所有的上述冗余模塊。盡管針對特定的優(yōu)選和替代實施例描述了上述發(fā)明,但是基于這里的公開本領(lǐng)域 普通技術(shù)人員將想到其它實施例。例如,信任引擎110可以發(fā)放短期證書,其中,私有密碼 密鑰發(fā)布給用戶達到預(yù)定時長。例如,當(dāng)前證書標(biāo)準(zhǔn)包括可以設(shè)置為在預(yù)定時間量后過期 的有效性字段。因此,信任引擎Iio可以向用戶發(fā)布私鑰,其中,該私鑰例如在24小時內(nèi)有 效。根據(jù)這種實施例,有利的是,信任引擎110可以發(fā)放與特定用戶關(guān)聯(lián)的新的密碼密鑰 對,然后發(fā)布該新的密碼密鑰對的私鑰。然后,一旦發(fā)布了私有密碼密鑰,信任引擎110使這種私鑰的任何內(nèi)部有效使用立即過期,這是因為它不再能由信任引擎110保護。此外,熟練技術(shù)人員將認(rèn)識到,密碼系統(tǒng)100或信任引擎110可以包括識別任何類 型的裝置(例如但不限于膝上型電腦、蜂窩電話、網(wǎng)絡(luò)、生物測定裝置等)的能力。根據(jù)一 個實施例,這種識別可來自在對特定服務(wù)的請求(例如,對導(dǎo)致訪問或使用的認(rèn)證的請求、 對密碼功能的請求等)中提供的數(shù)據(jù)。根據(jù)一個實施例,上述請求可以包括唯一裝置標(biāo)識 符,例如,處理器ID。另選地,該請求可以包括特定可識別數(shù)據(jù)格式的數(shù)據(jù)。例如,移動和衛(wèi) 星電話常常不包括對全X509. v3重加密證書的處理能力,因此不請求它們。根據(jù)這個實施 例,信任引擎110可以識別提供的數(shù)據(jù)格式的類型,并且僅僅以同樣方式進行回應(yīng)。在上述的系統(tǒng)的附加方面中,可以使用將在下文描述的各種技術(shù)提供上下文敏感 認(rèn)證。例如如圖16所示的上下文敏感認(rèn)證提供不僅評估當(dāng)用戶嘗試認(rèn)證自身時由用戶發(fā) 送的實際數(shù)據(jù)還評估圍繞該數(shù)據(jù)的產(chǎn)生和傳遞的境況的可能性。這些技術(shù)還可以支持用戶 與信任引擎110之間或者賣方與信任引擎110之間的事務(wù)特定信任仲裁,這將在下面描述。如上所述,認(rèn)證是證明用戶是他說他是的那個人的過程。通常,認(rèn)證要求向認(rèn)證管 理機構(gòu)展示一些事實。本發(fā)明的信任引擎110代表用戶必須向其認(rèn)證自己的機構(gòu)。用戶必 須通過以下方式向信任引擎110展示他就是他說他是的那個人知道僅該用戶應(yīng)該知道的 事物(基于知識的認(rèn)證),具有僅該用戶應(yīng)該具有的事物(基于令牌的認(rèn)證),或者通過成 為僅該用戶應(yīng)該是的事物(基于生物測定的認(rèn)證)?;谥R的認(rèn)證的例子包括但不限于口令、PIN碼或者密碼鎖。基于令牌的認(rèn)證 的例子包括但不限于房屋鑰匙、物理信用卡、駕照或者特定電話號碼。基于生物測定的認(rèn)證 的例子包括但不限于指紋、筆跡分析、面部掃描、手掃描、耳掃描、虹膜掃描、血管模式、DNA、 語音分析或者視網(wǎng)膜掃描。每種類型的認(rèn)證具有特定的優(yōu)點和缺點,并且均提供不同的安全等級。例如,與偷 聽某人的口令并且重復(fù)它相比,建立與他人的指紋匹配的假指紋一般更加困難。每種類型 的認(rèn)證還要求認(rèn)證機構(gòu)知道不同類型的數(shù)據(jù)從而使用該形式的認(rèn)證來驗證某人。本文所用的“認(rèn)證”廣義地是指驗證某人的身份為他說他是的那個人的全部過程。 “認(rèn)證技術(shù)”是指基于特定知識、物理令牌、或者生物測定讀數(shù)的特定類型的認(rèn)證。“認(rèn)證數(shù) 據(jù)”是指發(fā)送至或以其它方式向認(rèn)證機構(gòu)進行展示以建立身份的信息?!暗怯洈?shù)據(jù)”是指初 始提交給認(rèn)證機構(gòu)以建立與認(rèn)證數(shù)據(jù)進行比較的基線的數(shù)據(jù)。“認(rèn)證實例”是指與根據(jù)認(rèn)證 技術(shù)進行認(rèn)證的嘗試關(guān)聯(lián)的數(shù)據(jù)。參照以上圖10描述了對用戶進行認(rèn)證的過程中涉及的內(nèi)部協(xié)議和通信。在如圖 10的步驟1045所示的比較步驟內(nèi)發(fā)生這個過程的進行上下文敏感認(rèn)證的部分。這個步驟 在認(rèn)證引擎215內(nèi)發(fā)生,并且涉及對從儲存器210取回的登記數(shù)據(jù)410進行組裝并且將由 用戶提供的認(rèn)證數(shù)據(jù)與它進行比較。在圖16中示出并且在下文描述這個過程的一個特定 實施例。在圖16的步驟1600中,認(rèn)證引擎215接收由用戶提供的當(dāng)前認(rèn)證數(shù)據(jù)和從儲存 器取回的登記數(shù)據(jù)。這兩組數(shù)據(jù)可以包含與不同的認(rèn)證技術(shù)有關(guān)的數(shù)據(jù)。在步驟1605中, 認(rèn)證引擎215將與每個個體認(rèn)證實例關(guān)聯(lián)的認(rèn)證數(shù)據(jù)進行分離。這是必要的,從而將認(rèn)證 數(shù)據(jù)與用戶的登記數(shù)據(jù)的適當(dāng)子集進行比較(例如,指紋認(rèn)證數(shù)據(jù)應(yīng)該與指紋登記數(shù)據(jù)而 非口令登記數(shù)據(jù)進行比較)。
      通常,對用戶進行認(rèn)證涉及一個或多個個體認(rèn)證實例,這取決于用戶可使用哪些 認(rèn)證技術(shù)。這些方法受到在用戶的登記過程內(nèi)由用戶提供的登記數(shù)據(jù)的限制(如果用戶當(dāng) 登記時沒有提供視網(wǎng)膜掃描,則他將不能夠使用視網(wǎng)膜掃描認(rèn)證自己)以及受到用戶當(dāng)前 可用的裝置的限制(例如,如果用戶在他的當(dāng)前位置沒有指紋讀取器,則指紋認(rèn)證是不實 際的)。在一些情況下,單個認(rèn)證實例足以對用戶進行認(rèn)證,然而,在某些境況下,可以使用 多個認(rèn)證實例的組合從而對于特定事務(wù)對用戶進行更確信的認(rèn)證。每個認(rèn)證實例包括與特定認(rèn)證技術(shù)(例如,指紋、口令、智能卡等)有關(guān)的數(shù)據(jù)以 及針對該特定技術(shù)的圍繞數(shù)據(jù)的捕捉和傳遞的境況。例如,嘗試經(jīng)由口令進行認(rèn)證的特定 實例不僅將產(chǎn)生與口令自身有關(guān)的數(shù)據(jù),還將產(chǎn)生與該口令嘗試有關(guān)的稱為“元數(shù)據(jù)”的境 況數(shù)據(jù)。這個境況數(shù)據(jù)包括諸如以下的信息特定認(rèn)證實例發(fā)生的時間、從其傳遞認(rèn)證信 息的網(wǎng)絡(luò)地址、以及本領(lǐng)域技術(shù)人員已知的關(guān)于認(rèn)證數(shù)據(jù)的起源可以確定的任何其它信息 (連接的類型、處理器序列號等)。在許多情況下,僅僅少量的境況元數(shù)據(jù)可用。例如,如果用戶位于使用掩蔽起源計 算機的地址的代理服務(wù)器或網(wǎng)絡(luò)地址翻譯或另一技術(shù)的網(wǎng)絡(luò)上,則僅僅可以確定代理服務(wù) 器或路由器的地址。類似地,在許多情況下,例如處理器序列號的信息由于使用的硬件或操 作系統(tǒng)的限制(系統(tǒng)運營商禁用這些特征)或者用戶的系統(tǒng)與信任引擎110之間的連接的 其它限制而不可用。如圖16所示,一旦在步驟1605中提取并分離了在認(rèn)證數(shù)據(jù)內(nèi)表示的各個認(rèn)證實 例,認(rèn)證引擎215針對每個實例的指示用戶是他宣稱的那個人的可靠性進行評估。通常,基 于幾個因素確定單個認(rèn)證實例的可靠性??蓪⑺鼈兎纸M為在步驟1610中評估的和與認(rèn)證 技術(shù)關(guān)聯(lián)的可靠性有關(guān)的因素以及在步驟1815中評估的與提供的特定認(rèn)證數(shù)據(jù)的可靠性 有關(guān)的因素。第一組包括但不限于正使用的認(rèn)證技術(shù)的固有可靠性以及與該方法一起使用 的登記數(shù)據(jù)的可靠性。第二組包括但不限于登記數(shù)據(jù)與由認(rèn)證實例提供的數(shù)據(jù)之間的匹配 度以及與該認(rèn)證實例關(guān)聯(lián)的元數(shù)據(jù)。這些因素中的每一個可以獨立于其它因素而變化。認(rèn)證技術(shù)的固有可靠性基于冒名頂替者提供他人的正確數(shù)據(jù)的難度以及認(rèn)證技 術(shù)的整體誤差率。對于基于口令和知識的認(rèn)證方法,這種可靠性常常是相當(dāng)?shù)偷?,這是因為 無法防止某人向另一個人泄露他們的口令以及該第二人使用該口令。即使是更加復(fù)雜的基 于知識的系統(tǒng)仍可能僅具有中等可靠性,這是因為知識從一個人傳遞到另一人是相當(dāng)容易 的?;诹钆频恼J(rèn)證(例如,具有正確智能卡或者使用特定終端執(zhí)行認(rèn)證)在獨自使用時 的可靠性同樣低,這是因為不能夠保證正當(dāng)?shù)娜藫碛姓_令牌。然而,生物測定技術(shù)的固有可靠性更高,因為一般難以以方便的方式(甚至是有 意地)向他人提供使用你的指紋的能力。由于破壞生物測定認(rèn)證技術(shù)更加困難,所以生物 測定方法的固有可靠性通常高于純粹基于知識或令牌的認(rèn)證技術(shù)。然而,即使是生物測定 技術(shù)也會有一些產(chǎn)生誤接受或誤拒絕的情況。通過相同生物測定技術(shù)的不同實施方式的不 同可靠性,可以反映出這些情況。例如,由一個公司提供的指紋匹配系統(tǒng)可以提供比由一個 不同公司提供的指紋匹配系統(tǒng)更高的可靠性,因為一個公司使用了更高質(zhì)量的光學(xué)部件或 更好的掃描分辨率或者減少誤接受或誤拒絕的發(fā)生的一些其它改進。要注意,該可靠性可以通過不同方式進行表示。期望以可由啟發(fā)法530和認(rèn)證引 擎215的算法用來計算每個認(rèn)證的置信等級的一些度量來表示可靠性。表示這些可靠性的一個優(yōu)選方式是百分比或分?jǐn)?shù)。例如,可能向指紋被分配97%的固有可靠性,而可能僅向口 令分配50%的固有可靠性。本領(lǐng)域技術(shù)人員將認(rèn)識到,這些特定值僅僅是示例性的并且可 以在特定實施方式之間變化。必須評估可靠性的第二因素是登記的可靠性。這是上文提及的“分級登記”過程 的一部分。該可靠性因素反映在初始登記過程內(nèi)提供的標(biāo)識的可靠性。例如,如果個人最 初以他們用身體向公證人或其它公共官員生成他們的身份的證據(jù)的方式進行登記并且此 時記錄并公證登記數(shù)據(jù),則該數(shù)據(jù)的可靠性要強于經(jīng)由網(wǎng)絡(luò)在登記過程中提供并且僅通過 數(shù)字簽名或不真實依賴于該個人的其它信息進行擔(dān)保的數(shù)據(jù)。具有不同可靠性等級的其它登記技術(shù)包括但不限于在信任引擎110運營商的物 理辦公室進行登記、在用戶的雇傭地點進行登記、在郵局或護照辦公室進行登記、通過附屬 或信任方向信任引擎110運營商進行登記、登記身份還沒有被識別為真實個人的匿名或筆 名登記、以及本領(lǐng)域知道的其它方式。這些因素反映信任引擎110與在登記過程期間提供的標(biāo)識的源之間的信任。例 如,如果在提供身份證明的初始過程中與雇主關(guān)聯(lián)地執(zhí)行登記,則可認(rèn)為這個信息對于公 司內(nèi)的用途是非??煽康模菍τ谡畽C構(gòu)或競爭者而言信任程度較低。因此,由這些其 它組織的每個操作的信任引擎可以為這個登記分配不同的可靠性等級。類似地,在網(wǎng)絡(luò)上提交但是通過在先前向同一信任引擎110登記過程中提供的其 它信任數(shù)據(jù)進行認(rèn)證的附加數(shù)據(jù)可以被認(rèn)為與原始登記數(shù)據(jù)一樣可靠,即使后一數(shù)據(jù)是在 開放網(wǎng)絡(luò)上提交的。在這種境況下,隨后的公證將有效地提高與原始登記數(shù)據(jù)關(guān)聯(lián)的可靠 性的等級。這樣,例如,通過向某登記官員展示與登記的數(shù)據(jù)匹配的個人的身份,匿名或筆 名登記然后可被提升至全登記。通常,上述的可靠性因素是在任何特定認(rèn)證實例之前確定的值。這是因為它們基 于登記和技術(shù)而非實際認(rèn)證。在一個實施例中,基于這些因素產(chǎn)生可靠性的步驟包括查找 針對這個特定認(rèn)證技術(shù)的先前確定的值以及用戶的登記數(shù)據(jù)。在本發(fā)明的有利實施例的另 一個方面中,這些可靠性可以包括在登記數(shù)據(jù)自身內(nèi)。這樣,這些因素連同從儲存器210發(fā) 送的登記數(shù)據(jù)被自動傳遞給認(rèn)證引擎215。盡管通常可以在任何個體認(rèn)證實例之前確定這些因素,但是它們?nèi)匀粚︶槍υ撚?戶使用該特定認(rèn)證技術(shù)的每個認(rèn)證實例具有影響。另外,盡管這些值可以隨時間而變化 (例如,如果用戶以更可靠的方式重新登記),但是它們并不取決于認(rèn)證數(shù)據(jù)自身。通過對 比,與單個特定實例的數(shù)據(jù)關(guān)聯(lián)的可靠性因素對于每個場合會變化。在步驟1815中,針對 每個新的認(rèn)證必須對下述的這些因素進行評估從而產(chǎn)生可靠性得分。認(rèn)證數(shù)據(jù)的可靠性反映了在特定認(rèn)證實例中由用戶提供的數(shù)據(jù)與在認(rèn)證登記過 程內(nèi)提供的數(shù)據(jù)之間的匹配。這是認(rèn)證數(shù)據(jù)是否與用戶所宣稱的個人的登記數(shù)據(jù)匹配的基 本提問。通常,當(dāng)數(shù)據(jù)不匹配時,認(rèn)為用戶沒有得到成功認(rèn)證,并且認(rèn)證失敗。對此進行評 估的方式可以根據(jù)使用的認(rèn)證技術(shù)而改變。通過如圖5所示的認(rèn)證引擎215的比較器515 功能執(zhí)行這種數(shù)據(jù)的比較。例如,通常以二元方式對口令的匹配進行評估。換言之,口令要么是完全匹配,要 么是失敗匹配。如果口令不是完全正確的,即使是部分匹配(接近于正確口令的口令),通 常也是不可以接受的。因此,當(dāng)對口令認(rèn)證進行評估時,由比較器515返回的認(rèn)證的可靠性通常要么是100% (正確)要么是0% (錯誤),而不存在中間值的可能性。通常,與口令的規(guī)則類似的規(guī)則應(yīng)用于基于令牌的認(rèn)證方法(例如,智能卡)。這 是因為具有一具有相似標(biāo)識符或者與正確智能卡類似的智能卡,仍然與具有任何其它不正 確令牌一樣是錯誤的。因此,令牌同樣趨于二元認(rèn)證用戶要么具有正確令牌,要么沒有。然而,某些類型的認(rèn)證數(shù)據(jù)(例如,問卷和生物測定)通常不是二元認(rèn)證者。例如, 指紋可以以不同程度與基準(zhǔn)指紋進行匹配。在一定程度上,這可能是由于在初始登記過程 或者在隨后的認(rèn)證中捕捉的數(shù)據(jù)的質(zhì)量的變化。(指紋可能被弄臟,或者人在特定手指上 具有治療傷疤或燒傷)。在其它情況下,由于信息自身有些可變并且基于模式匹配,所以數(shù) 據(jù)不會那么完美地匹配。(由于背景噪聲、或者記錄語音的環(huán)境的聲學(xué)或者由于人感冒,語 音分析看起來接近但并非相當(dāng)正確)。最終,在大量數(shù)據(jù)進行比較的情況下,就會有如下情 況很多數(shù)據(jù)匹配良好,但是一些數(shù)據(jù)不匹配。(十個提問的問卷會得到針對個人提問的八 個正確回答以及兩個不正確回答)。針對這些理由中的任何理由,期望由比較器515向登記 數(shù)據(jù)與特定認(rèn)證實例的數(shù)據(jù)之間的匹配分配一個部分匹配值。這樣,例如,可以將指紋說成 是85%匹配,將聲紋說成是65%匹配,將問卷說成是80%匹配。由比較器515生成的這種測量(匹配度)是表示認(rèn)證是否正確的基本問題的因 素。然而,如上所述,這僅僅是可用于確定給定的認(rèn)證實例的可靠性的因素之一。還要注意, 即使可以確定某部分程度的匹配,最終,希望基于部分匹配提供二元結(jié)果。在另一種操作模 式下,還可以基于匹配度是否通過特定閾值的匹配水平,將部分匹配視為二元的,即,要么 完美(100%),要么失敗(0%)。這種過程可用于向系統(tǒng)提供簡單的通過/失敗等級的匹 配,該系統(tǒng)否則以其它方式生成部分匹配。在評估給定的認(rèn)證實例的可靠性時要考慮的另一個因素涉及提供針對這個特定 實例的認(rèn)證數(shù)據(jù)的境況。如上所述,這些境況是指與特定認(rèn)證實例關(guān)聯(lián)的元數(shù)據(jù)。這可以 包括但不限于如下信息能夠進行確定的認(rèn)證者的網(wǎng)絡(luò)地址、認(rèn)證的時間、認(rèn)證數(shù)據(jù)的傳輸 模式(電話線、蜂窩電話、網(wǎng)絡(luò)等)、以及認(rèn)證者的系統(tǒng)的序號。這些因素可用于生成由用戶通常請求的認(rèn)證的類型的概況。然后,這個信息能夠 用于以至少兩種方式評估可靠性。一種方式是考慮用戶是否正在以與該用戶的認(rèn)證的正常 概況一致的方式請求認(rèn)證。如果用戶通常在工作日(當(dāng)她工作時)向一個網(wǎng)絡(luò)地址進行認(rèn) 證請求并且在晚間或周末(當(dāng)她在家時)向一個不同的網(wǎng)絡(luò)地址進行認(rèn)證請求,則在工作 日從家庭地址發(fā)生的認(rèn)證是較不可靠的,因為它在正常認(rèn)證概況之外。類似地,如果用戶通 常使用指紋生物測定并且在夜間進行認(rèn)證,則在白天僅僅使用口令發(fā)起的認(rèn)證是較不可靠 的。境況元數(shù)據(jù)可用于評估認(rèn)證的實例的可靠性的另外方式是確定境況提供認(rèn)證者 是它宣稱的個人有多么確實。例如,如果認(rèn)證來自已知與用戶關(guān)聯(lián)的序號的系統(tǒng),則這是用 戶是他們宣稱的人的良好境況指示符。相反地,如果認(rèn)證來自已知位于洛杉磯的網(wǎng)絡(luò)地址 而用戶已知位于倫敦,則這是該認(rèn)證基于其境況而較不可靠的指示。當(dāng)用戶與賣方系統(tǒng)或信任引擎110進行交互時,cookie或其它電子數(shù)據(jù)可以安置 在用戶使用的系統(tǒng)上。這個數(shù)據(jù)寫入到用戶的系統(tǒng)的存儲器并且可以包含可由Web瀏覽器 或用戶系統(tǒng)上的其它軟件讀取的標(biāo)識。如果在會話之間這個數(shù)據(jù)被允許駐留在用戶系統(tǒng)上 (“持久cookie”),則在特定用戶的認(rèn)證過程中,該數(shù)據(jù)可以與認(rèn)證數(shù)據(jù)一起發(fā)送,作為這
      33個系統(tǒng)的過去使用的進一步證據(jù)。實際上,給定實例的元數(shù)據(jù)(尤其是持久cookie)可以 自身形成一種基于令牌的認(rèn)證器。一旦如上所述在步驟1610和步驟1615中分別產(chǎn)生基于認(rèn)證實例的技術(shù)和數(shù)據(jù)的 適當(dāng)?shù)目煽啃砸蛩兀诓襟E1620中它們用于產(chǎn)生提供的認(rèn)證實例的總可靠性。這樣做的一 種方式是以百分比簡單表示每個可靠性,然后將它們一起相乘。例如,假定根據(jù)用戶的過去認(rèn)證概況從對于用戶的家庭計算機完全已知的網(wǎng) 絡(luò)地址送入認(rèn)證數(shù)據(jù)(100%),使用的技術(shù)是指紋識別(97%),初始指紋數(shù)據(jù)由用戶的 雇主通過信任引擎110進行登記(90% ),認(rèn)證數(shù)據(jù)與登記數(shù)據(jù)中的原始指紋模板之間 的匹配非常好(99%)。這個認(rèn)證實例的總可靠性于是可以被計算為這些可靠性的乘積 (100% X97% X90% X99%= 86. 4%可靠性)。這個計算的可靠性表示一個認(rèn)證的實例的可靠性。還可以使用不同地對待不同可 靠性因素的技術(shù),例如,通過使用向每個可靠性因素分配不同權(quán)重的公式,來計算一個認(rèn)證 實例的總可靠性。另外,本領(lǐng)域技術(shù)人員將認(rèn)識到,使用的實際值可以表示與百分比不同的 值并且可以使用非算術(shù)系統(tǒng)。一個實施例可以包括由認(rèn)證請求者用來設(shè)置每個因素的權(quán)重 和用于建立認(rèn)證實例的總可靠性的算法的模塊。如步驟1620所示,認(rèn)證引擎215可以使用以上技術(shù)及其變型來確定一個認(rèn)證實例 的可靠性。然而,在許多認(rèn)證情形下,它對于要同時提供的多個認(rèn)證實例是有用的。例如, 當(dāng)使用本發(fā)明的系統(tǒng)嘗試對自身進行認(rèn)證時,用戶可以提供用戶標(biāo)識、指紋認(rèn)證數(shù)據(jù)、智能 卡和口令。在這種情況下,三個獨立的認(rèn)證實例被提供給信任引擎110以進行評估。進行 到步驟1625,如果認(rèn)證引擎215確定由用戶提供的數(shù)據(jù)包括超過一個認(rèn)證實例,則如步驟 1630所示將依次選擇每個實例并且如上所述在步驟1610、1615和1620中進行評估。要注意,許多所述的可靠性因素在這些實例中的一個與另一個之間不同。例如,這 些技術(shù)的固有可靠性以及在認(rèn)證數(shù)據(jù)與登記數(shù)據(jù)之間提供的匹配度很可能不同。另外,用 戶可能已經(jīng)在不同時間在不同境況下針對這些技術(shù)的每一個提供了登記數(shù)據(jù),針對這些實 例的每一個也提供不同的登記可靠性。最終,即使這些實例中的每一個實例的數(shù)據(jù)被提交 的境況相同,這些技術(shù)的使用也均可以不同地適應(yīng)用戶的概況。(例如,用戶可以正常使用 他們的口令和指紋,而不是他們的智能卡)。結(jié)果,這些認(rèn)證實例的每一個的最終可靠性會彼此不同。然而,通過一起使用多個 實例,認(rèn)證的總置信等級將趨于增大。一旦認(rèn)證引擎針對在認(rèn)證數(shù)據(jù)中提供的所有的認(rèn)證實例執(zhí)行了步驟1610到 1620,在步驟1635中使用每個實例的可靠性,評估總認(rèn)證置信等級。將各個認(rèn)證實例可靠 性組合成認(rèn)證置信等級的這個過程可以通過與生成的各個可靠性相關(guān)的各種方法進行模 擬,并且還可以解決這些認(rèn)證技術(shù)中的一些之間的特定交互。(例如,與一個口令甚至是例 如基本語音分析的相當(dāng)弱的生物測定相比,諸如口令的多個基于知識的系統(tǒng)可以生成較低 的置信度)。認(rèn)證引擎215可以將多個并發(fā)認(rèn)證實例的可靠性進行組合以產(chǎn)生最終置信等級 的一個方式是將每個實例的不可靠性相乘以達到總不可靠性。通常,不可靠性是可靠性的 互補百分比。例如,84%可靠的技術(shù)是16%不可靠的。生成86%、75%和72%的可靠性的 上述的三個認(rèn)證實例(指紋、智能卡、口令)分別將具有對應(yīng)的(100-86)%、(100-75) %和(100-72)%、或者14%、25%和28%的不可靠性。通過將這些不可靠性相乘,我們得到 14% X25% X28%的累積不可靠性,即0.98%的不可靠性,這對應(yīng)于99. 02%的可靠性。在另一種操作模式中,可以在認(rèn)證引擎215內(nèi)應(yīng)用附加因素和啟發(fā)法530以解決 各種認(rèn)證技術(shù)的依存性。例如,如果某人未經(jīng)授權(quán)地訪問了特定家庭計算機,則他們很可能 也可訪問該地址的電話線。因此,基于發(fā)起電話號碼以及認(rèn)證系統(tǒng)的序號的認(rèn)證不會使認(rèn) 證的總置信度增加多少。然而,基于知識的認(rèn)證很大程度上獨立于基于令牌的認(rèn)證(即,如 果某人盜取了你的蜂窩電話或鑰匙,他們在沒有你的PIN或口令的情況下不大可能知道你 的PIN或口令)。另外,不同賣方或其它認(rèn)證請求者可能希望對認(rèn)證的不同方面進行不同的加權(quán)。 這可以包括使用單獨的加權(quán)因子或用于計算各個實例的可靠性的算法以及使用不同方式 來評估具有多個實例的認(rèn)證事件。例如,某些類型的事務(wù)的賣方(例如公司電子郵件系統(tǒng))希望缺省地主要基于啟 發(fā)法和其它境況數(shù)據(jù)進行認(rèn)證。因此,他們可以對與元數(shù)據(jù)和與圍繞認(rèn)證事件的境況關(guān)聯(lián) 的其它概況相關(guān)信息相關(guān)的因素施加高權(quán)重。通過與在工作時間內(nèi)用戶登錄到正確機器相 比不從用戶要求更多,這種布置可用于減輕正常工作時間內(nèi)用戶的負(fù)擔(dān)。然而,另一個賣方 可能對來自特定技術(shù)(例如指紋匹配)的認(rèn)證進行最重加權(quán),這是由于這種技術(shù)最適于出 于特定賣方的目的進行認(rèn)證的策略判斷。在一種操作模式下,在產(chǎn)生認(rèn)證請求時由請求者定義這些不同的權(quán)重,并且這些 不同的權(quán)重與認(rèn)證請求一起發(fā)送至信任引擎110。在另一種操作模式下,在初始登記過程內(nèi) 針對認(rèn)證請求者還可將這些選項設(shè)置為偏好并且存儲在認(rèn)證引擎內(nèi)。一旦認(rèn)證引擎215針對提供的認(rèn)證數(shù)據(jù)生成了認(rèn)證置信等級,在步驟1640中這個 置信等級用于完成認(rèn)證請求,并且這個信息從認(rèn)證引擎215轉(zhuǎn)發(fā)至事務(wù)引擎205,以包含在 去往認(rèn)證請求者的消息內(nèi)。上述的過程僅僅是示例性的,本領(lǐng)域技術(shù)人員將認(rèn)識到這些步驟不需要按照所 示順序執(zhí)行,或者僅希望執(zhí)行某些步驟,或者希望步驟的各種組合。另外,如果境況允許,某 些步驟(例如,提供的每個認(rèn)證實例的可靠性的評估)可以彼此并行地執(zhí)行。
      0247]在本發(fā)明的另一個方面中,提供了一種適應(yīng)當(dāng)由上述過程生成的認(rèn)證置信等級無 法滿足要求認(rèn)證的賣方或其它方的要求的信任等級時的情況的方法。在例如在提供的置信 等級與希望的信任等級之間存在差距的境況下,信任引擎110的運營商能夠向一方或雙方 提供提供替代數(shù)據(jù)或要求以彌合這個信任差距的機會。這里,這個過程將稱作“信任仲裁”。信任仲裁可以發(fā)生在以上參照圖10和圖11描述的密碼認(rèn)證的框架內(nèi)。如那里所 示,賣方或其它方將請求與特定事務(wù)關(guān)聯(lián)的特定用戶的認(rèn)證。在一種境況下,賣方簡單地請 求認(rèn)證(要么肯定,要么否定),并且在從用戶接收到適當(dāng)數(shù)據(jù)后,信任引擎110將提供這種 二元認(rèn)證。在例如這些的境況下,基于在信任引擎110內(nèi)設(shè)置的偏好,確定為了保護肯定認(rèn) 證所需的置信度。然而,賣方也可以請求特定的信任等級以完成特定事務(wù)。這個所需的等級可包括 在認(rèn)證請求內(nèi)(例如,對這個用戶認(rèn)證達到98%置信度),或者可由信任引擎110基于與事 務(wù)關(guān)聯(lián)的其它因素確定(即,針對這個事務(wù)適當(dāng)?shù)貙@個用戶進行認(rèn)證)。一個這種因素可 以是事務(wù)的經(jīng)濟值。針對具有較大經(jīng)濟值的事務(wù),可能需要更高的信任度。相似地,針對具有高風(fēng)險度的事務(wù),可能需要高的信任度。相反,針對低風(fēng)險或者低值的事務(wù),賣方或其它 認(rèn)證請求者可能要求較低的信任等級。信任仲裁的過程發(fā)生于在圖10的步驟1050中信任引擎110接收認(rèn)證數(shù)據(jù)的步驟 和在圖10的步驟1055中將認(rèn)證結(jié)果返回到賣方的步驟之間。在這些步驟之間,如圖17所 示發(fā)生導(dǎo)致信任等級的評估和潛在信任仲裁的過程。在執(zhí)行簡單的二元認(rèn)證的境況下,圖 17所示的過程縮減為如上面參照圖10所述使事務(wù)引擎205直接將提供的認(rèn)證數(shù)據(jù)與識別 的用戶的登記數(shù)據(jù)進行比較,將任何差別標(biāo)記為否定認(rèn)證。如圖17所示,在步驟1050中接收數(shù)據(jù)后的第一個步驟是在步驟1710中針對這個 特定事務(wù)由事務(wù)引擎205確定肯定認(rèn)證所需的信任等級。這個步驟可通過幾種不同方法之 一執(zhí)行。當(dāng)進行認(rèn)證請求時,認(rèn)證請求者可以對信任引擎110指定所需的信任等級。認(rèn)證請 求者還可以預(yù)先設(shè)置偏好,這個偏好存儲在可由事務(wù)引擎205訪問的儲存器210或其它存 儲器內(nèi)。然后,每當(dāng)這個認(rèn)證請求者進行認(rèn)證請求時,可以讀取和使用這個偏好。該偏好還 可以與特定用戶進行關(guān)聯(lián),作為使得總是需要特定的信任等級以對那個用戶進行認(rèn)證的安 全性措施,該用戶偏好存儲在可由事務(wù)引擎205訪問的儲存器210或其它存儲介質(zhì)中。所 需等級還可以由事務(wù)引擎205或認(rèn)證引擎215基于在認(rèn)證請求中提供的信息(例如,要認(rèn) 證的事務(wù)的值和風(fēng)險等級)而導(dǎo)出。在一種操作模式下,策略管理模塊或當(dāng)產(chǎn)生認(rèn)證請求時使用的其它軟件用于為事 務(wù)的認(rèn)證指定所需的信任度。這可以用于提供當(dāng)基于在策略管理模塊內(nèi)指定的策略分配所 需的信任等級時要遵守的一系列規(guī)則。一種有利的操作模式是將這種模塊包括在賣方的 Web服務(wù)器內(nèi),以針對由賣方的Web服務(wù)器發(fā)起的事務(wù)適當(dāng)?shù)卮_定所需的信任等級。這樣, 可以根據(jù)賣方的策略向來自用戶的事務(wù)請求分配所需的信任等級,并且這種信息可以與認(rèn) 證請求一起轉(zhuǎn)發(fā)至信任引擎110。這個所需的信任等級與賣方希望具有的、個人認(rèn)證實際上是他將自己識別成的那 個人的確定度相關(guān)。例如,如果事務(wù)是賣方希望合理的確定度的事務(wù)(由于貨物是轉(zhuǎn)手 的),則賣方可以要求85%的信任等級。對于賣方僅對用戶進行認(rèn)證以允許他觀看會員內(nèi) 容或在聊天室實踐特權(quán)的情形,不利風(fēng)險足夠小從而賣方僅要求60%的信任等級。然而,為 了參與上萬美元的生產(chǎn)合同,賣方可以要求99%或更高的信任等級。這個所需的信任等級表示用戶必須對自己進行認(rèn)證以完成事務(wù)的度量。例如如果 所需的信任等級是85%,則用戶必須向信任引擎110提供足以使信任引擎110以85%置信 度說用戶是他們說他們是的那個人的認(rèn)證。這是所需的信任等級與生成肯定認(rèn)證(達到賣 方的滿意)或可能的信任仲裁的認(rèn)證置信等級之間的平衡。如圖17所示,在事務(wù)引擎205接收到所需的信任等級后,在步驟1720中將所需的 信任等級與認(rèn)證引擎215針對當(dāng)前認(rèn)證計算的認(rèn)證置信等級(參照圖16所討論的)進行比 較。在步驟1730中如果認(rèn)證置信等級高于事務(wù)的所需的信任等級,則過程移至步驟1740, 在步驟1740中,事務(wù)引擎205針對這個事務(wù)生成肯定認(rèn)證。表示此意的消息然后將被插入 到認(rèn)證結(jié)果中并且由事務(wù)引擎205返回到賣方,如在步驟1055中所示(見圖10)。然而,如果在步驟1730中認(rèn)證置信等級沒有滿足所需的信任等級,則對于當(dāng)前認(rèn) 證存在置信度差距,并且在步驟1750中進行信任仲裁。在下文參照圖18更加完全地描述 信任仲裁。下述的這個過程在信任引擎110的事務(wù)引擎205內(nèi)發(fā)生。由于執(zhí)行信任仲裁不需要認(rèn)證或其它密碼操作(除了事務(wù)引擎205與其它部件之間的SSL通信所需的那些以 外),所以可以在認(rèn)證引擎215之外執(zhí)行該過程。然而,如下所述,認(rèn)證數(shù)據(jù)或其它密碼或認(rèn) 證事件的任何重新評估將要求事務(wù)引擎205向認(rèn)證引擎215重新提交適當(dāng)?shù)臄?shù)據(jù)。本領(lǐng)域 技術(shù)人員將認(rèn)識到,信任仲裁過程可以代替地構(gòu)造為部分或全部地在認(rèn)證引擎215自身內(nèi) 發(fā)生。如上所述,信任仲裁是信任引擎110對賣方與用戶之間的協(xié)商進行調(diào)停以嘗試適 當(dāng)?shù)乇WC肯定認(rèn)證的過程。如在步驟1805所示,事務(wù)引擎205首先確定當(dāng)前情況是否適于 信任仲裁。這可以基于認(rèn)證的境況(例如,這個認(rèn)證是否已經(jīng)經(jīng)過多個循環(huán)的仲裁)以及 賣方或者用戶的偏好進行確定,這將在下文進一步進行討論。在不可以仲裁的這些境況下,該過程進行到步驟1810,在步驟1810中,事務(wù)引擎 205產(chǎn)生否定認(rèn)證,然后將它插入到認(rèn)證結(jié)果,該認(rèn)證結(jié)果在步驟1055中發(fā)送至賣方(見圖 10)。可有利用于防止認(rèn)證不確定地待決的一個限制是設(shè)置從初始認(rèn)證請求開始的超時時 段。這樣,在時限內(nèi)沒有得到肯定認(rèn)證的任何事務(wù)被拒絕進一步仲裁并且得到否定認(rèn)證。本 領(lǐng)域技術(shù)人員將認(rèn)識到,這種時限可以根據(jù)事務(wù)的境況以及用戶和賣方的希望而變化。還 可以對在提供成功認(rèn)證時可進行的嘗試的數(shù)目進行限制。可以通過如圖5所示的嘗試限制 器535對這些限制進行處理。如果在步驟1805中沒有禁止仲裁,則事務(wù)引擎205然后將與事務(wù)方之一或二者進 行協(xié)商。如在步驟1820中所示,事務(wù)引擎205可以向用戶發(fā)送消息以請求某形式的附加認(rèn) 證從而提高生成的認(rèn)證置信等級。在最簡單的形式中,這可以簡單指示認(rèn)證是不充分的。還 可以發(fā)送生成一個或多個附加認(rèn)證實例以提高認(rèn)證的總置信等級的請求。如果在步驟1825中用戶提供一些附加認(rèn)證實例,則事務(wù)引擎205向事務(wù)的認(rèn)證數(shù) 據(jù)添加這些認(rèn)證實例并且將它發(fā)送至認(rèn)證引擎215,如在步驟1015所示(見圖10),并且基 于針對這個事務(wù)的預(yù)先存在的認(rèn)證實例和新提供的認(rèn)證實例重新評估該認(rèn)證。一種附加類型的認(rèn)證可以是來自信任引擎110的用于例如通過電話呼叫在信任 引擎110運營商(或者信任的合作人)與用戶之間進行某形式的人對人聯(lián)系的請求。這個 電話呼叫或其它非計算機認(rèn)證能夠用于提供與個人的私人聯(lián)系以及執(zhí)行某形式的基于問 卷的認(rèn)證。這還可以給出驗證發(fā)起電話號碼以及當(dāng)呼入時潛在的用戶語音解析的機會。即 使不能夠提供附加認(rèn)證數(shù)據(jù),與用戶的電話號碼關(guān)聯(lián)的附加上下文仍可以提高認(rèn)證上下文 的可靠性?;谶@個電話呼叫的任何修正的數(shù)據(jù)或境況被送入信任引擎110以用于對認(rèn)證 請求的考慮。此外,在步驟1820中,信任引擎110可以向用戶提供購買保險的機會,從而有效地 購買更加確信的認(rèn)證。信任引擎110的運營商有時可能僅希望使得在認(rèn)證的置信等級高于 某閾值的情況下才開始可用這個選項。實際上,這個用戶側(cè)保險是當(dāng)認(rèn)證滿足信任引擎110 對于認(rèn)證的正常所需信任等級但不滿足這個事務(wù)的賣方的所需信任等級時信任引擎110 對用戶進行擔(dān)保的方式。這樣,即使用戶僅僅具有生成針對信任引擎110足夠的置信度的 認(rèn)證實例,他仍可以成功地認(rèn)證為賣方要求的非常高的等級。信任引擎110的這個功能使得信任引擎110可以對被認(rèn)證為滿足信任引擎110而 非滿足賣方的某人進行擔(dān)保。這與在向文檔添加公證人的簽名以向以后讀取該文檔的某人 指示簽名出現(xiàn)在文檔上的人實際是對它進行簽名的人時由公證人執(zhí)行的功能類似。公證人的簽名證實用戶簽名的動作。以相同的方式,信任引擎提供執(zhí)行事務(wù)的人是他們說他們是 的人的指示。然而,因為信任引擎110人工推升用戶提供的置信等級,所以對于信任引擎110運 營商存在更大的風(fēng)險,因為用戶實際上沒有滿足賣方的所需的信任等級。保險的花費被設(shè) 計為抵消誤肯定認(rèn)證對于信任引擎110 (其可有效地對用戶的認(rèn)證進行公證)的風(fēng)險。用 戶向信任引擎110運營商付費以承擔(dān)認(rèn)證為比實際提供的還要高的置信等級的風(fēng)險。由于這種保險系統(tǒng)允許某人從信任引擎110有效地購買更高的置信等級,所以賣 方和用戶都會希望防止在某些事務(wù)中使用用戶側(cè)保險。賣方可能希望將肯定認(rèn)證限制到它 們知道實際認(rèn)證數(shù)據(jù)支持它們要求的置信度的情況,因此可能向信任引擎110指示用戶側(cè) 保險不被允許。類似地,為了保護他的在線身份,用戶可能希望防止在他的帳戶上使用用戶 側(cè)保險或者可能希望將它的使用限制到?jīng)]有保險的認(rèn)證置信等級高于一定限制的情形。這 可用作防止某人偷聽口令或盜取智能卡并使用它們假冒認(rèn)證到低置信等級并且然后購買 保險以生成非常高的(假)置信等級的安全措施。在確定是否允許用戶側(cè)保險時可以對這 些因素進行評估。如果在步驟1840中用戶購買了保險,則在步驟1845中基于購買的保險調(diào)整認(rèn)證 置信等級,并且在步驟1730中把認(rèn)證置信等級與所需的信任等級再次進行比較(見圖17)。 該過程從步驟1730繼續(xù),并且可能導(dǎo)致步驟1740中的肯定認(rèn)證(見圖17)或者返回步驟 1750中的信任仲裁過程從而進一步進行仲裁(如果允許的話),或者如果進一步仲裁被禁 止則導(dǎo)致步驟1810中的否定認(rèn)證。除了在步驟1820中向用戶發(fā)送消息以外,在步驟1830中事務(wù)引擎205還可以向 賣方發(fā)送指示未決認(rèn)證當(dāng)前低于所需信任等級的消息。該消息還可以提供關(guān)于如何前進到 賣方的各種選項。這些選項之一是簡單地向賣方通知當(dāng)前認(rèn)證置信等級是什么以及詢問賣 方是否希望維持他們的當(dāng)前未滿足的所需信任等級。這是有益的,因為在一些情況下,賣方 可以具有用于對事務(wù)進行認(rèn)證的獨立手段或者可能已經(jīng)使用缺省的一組要求,該組要求通 常導(dǎo)致初始指定比手邊的特定事務(wù)實際需要的更高的所需等級。例如,與賣方的所有輸入購買訂單事務(wù)預(yù)計滿足98%信任等級是標(biāo)準(zhǔn)實踐。然而, 如果通過電話在賣方與長期顧客之間最近討論了訂單,并且緊接之后該事務(wù)得到認(rèn)證,但 是僅僅認(rèn)證到93%置信等級,則賣方可能希望簡單降低這個事務(wù)的接受閾值,因為電話呼 叫有效地向賣方提供了附加認(rèn)證。在某些境況下,賣方會愿意降低他們的所需信任等級,但 是并不總是降低到當(dāng)前認(rèn)證置信等級。例如,以上例子中的賣方可能認(rèn)為,在訂單之前的電 話呼叫可能值所需信任度下降4%,然而,這仍大于用戶生成的93%的置信度。如果在步驟1835中賣方確實調(diào)整了他們的所需的信任等級,則在步驟1730中對 由認(rèn)證生成的認(rèn)證置信等級與該所需的信任等級進行比較(見圖17)。如果置信等級現(xiàn)在 超過所需的信任等級,則在步驟1740中在事務(wù)引擎205中可產(chǎn)生肯定認(rèn)證(見圖17)。如 果沒有超過,則在允許的情況下可以如上所述嘗試進一步仲裁。除了請求對所需的信任等級進行調(diào)整外,事務(wù)引擎205還可以向請求認(rèn)證的賣方 提供賣方側(cè)保險。這個保險用于與以上針對用戶側(cè)保險描述的用途相同的用途。這里,然 而,成本不對應(yīng)于由信任引擎110在以上認(rèn)證生成的實際認(rèn)證置信等級時所承擔(dān)的風(fēng)險, 保險的成本對應(yīng)于賣方在認(rèn)證中接受低信任等級時所承擔(dān)的風(fēng)險。
      不是僅僅降低他們的實際所需的信任等級,賣方可以選擇購買保險以保護自己免 受與用戶認(rèn)證中的低信任等級關(guān)聯(lián)的附加風(fēng)險。如上所述,在現(xiàn)有認(rèn)證已經(jīng)高于某閾值的 條件下,賣方僅僅考慮購買這種保險來覆蓋信任差距是有利的。得到這種賣方側(cè)保險,允許賣方有如下選項在對自己無附加成本的情況下直接 降低他的信任要求;自己承受誤認(rèn)證的風(fēng)險(基于所需的低信任等級);或者針對認(rèn)證置信 等級與他的要求之間的信任差距購買保險,其中由信任引擎110運營商承擔(dān)已經(jīng)提供的低 置信等級的風(fēng)險。通過購買保險,賣方有效地保持他的高信任等級要求,因為誤認(rèn)證的風(fēng)險 被轉(zhuǎn)移給信任引擎110運營商。如果在步驟1840中賣方購買了保險,則在步驟1730中對認(rèn)證置信等級與所需的 信任等級進行比較(見圖17),并且該過程如上所述繼續(xù)。要注意,用戶和賣方均響應(yīng)來自信任引擎110的消息也是可以的。本領(lǐng)域技術(shù)人 員將認(rèn)識到,有多種方式可以處理這些情形。處理多個響應(yīng)的可能性的一種有利模式是簡 單地以先來先服務(wù)方式處理響應(yīng)。例如,如果賣方以降低的所需信任等級進行響應(yīng)并且用 戶之后還立即購買保險以提升他的認(rèn)證等級,則首先基于來自賣方的降低的信任要求對認(rèn) 證進行重新評估。如果認(rèn)證現(xiàn)在是肯定的,則用戶的保險購買被忽略。在另一種有利的操 作模式下,可能僅針對滿足新的降低的賣方的信任要求所需的保險等級向用戶收費(如果 即使在降低了賣方信任要求的情況下仍然存在信任差距的話)。如果在步驟1850中在信任仲裁過程中在針對認(rèn)證設(shè)置的時限內(nèi)沒有從任何一方 接收到響應(yīng),則在步驟1805中對仲裁進行重新評估。這有效地再次開始仲裁過程。如果在 步驟1805中時限終止或者其它境況防止進一步仲裁,則在步驟1810中由事務(wù)引擎205產(chǎn) 生否定認(rèn)證并且在步驟1055中返回到賣方(見圖10)。否則,新消息可以發(fā)送至用戶和賣 方,并且該過程可以按期望被重復(fù)。要注意,對于某些類型的事務(wù),例如,對不是事務(wù)的一部分的文檔進行數(shù)字簽名, 并不一定有賣方或其它第三方,因此事務(wù)主要在用戶與信任引擎110之間。在例如這些的 境況下,信任引擎110將具有必須被滿足以產(chǎn)生肯定認(rèn)證的它自身的所需的信任等級。然 而,在這些境況下,常常不希望信任引擎110向用戶提供保險以使他可以提升他自己簽名
      的置信度??梢允褂迷谏衔闹袇⒄招湃我?10描述的各種通信模式,執(zhí)行上述以及在圖16 到圖18中所示的過程。例如,這些消息可以是基于web的并且使用信任引擎110與實時下 載到在用戶或賣方系統(tǒng)上運行的瀏覽器的Java小程序之間的SSL連接進行發(fā)送。在另一種 操作模式下,便于進行這種仲裁和保險事務(wù)的某些專用的應(yīng)用可以由用戶和賣方使用。在 另一種操作模式下,安全電子郵件操作可用于對上述的仲裁進行調(diào)停,由此實現(xiàn)延遲評估 和認(rèn)證的批處理。本領(lǐng)域技術(shù)人員將認(rèn)識到,不同的通信模式可適用于賣方的認(rèn)證要求和 境況。下面參照圖19的說明描述了整合上述本發(fā)明的各個方面的樣本事務(wù)。這個例子 示出了由信任引擎110進行調(diào)停的用戶與賣方之間的整個過程。盡管以上詳細(xì)描述的各個 步驟和部件可用于執(zhí)行下面的事務(wù),但是所示的過程集中于信任引擎110、用戶以及賣方之 間的交互。在步驟1900中,當(dāng)用戶在在線觀看網(wǎng)頁時在賣方的網(wǎng)站上填寫訂單表格時,事務(wù)
      39開始。用戶希望將簽寫有他的數(shù)字簽名的這個訂單表格提交給賣方。為了這樣做,在步驟 1905中,用戶向信任引擎110提交訂單表格和他對簽名的請求。用戶還將提供將如上所述 用于對他的身份進行認(rèn)證的認(rèn)證數(shù)據(jù)。在步驟1910中,如上所述由信任引擎110將認(rèn)證數(shù)據(jù)與登記數(shù)據(jù)進行比較,并且 如果生成了肯定認(rèn)證,則用用戶的私鑰簽名的訂單表格的哈希值與訂單表格自身一起被轉(zhuǎn) 發(fā)送賣方。在步驟1915中,賣方接收到簽名的表格,然后在步驟1920中,賣方將產(chǎn)生發(fā)票或 與要進行的購買有關(guān)的其它合同。在步驟1925中,這個合同以及對簽名的請求被發(fā)送回用 戶。在步驟1930中,賣方還向信任引擎110發(fā)送針對這個合同事務(wù)的認(rèn)證請求(包括將由 雙方簽名的合同的哈希值)。為了允許由雙方對合同進行數(shù)字簽名,賣方還包括針對自身的 認(rèn)證數(shù)據(jù)從而使得能夠在以后對合同上的賣方的簽名進行驗證(如果需要的話)。如上所述,信任引擎110然后對由賣方提供的認(rèn)證數(shù)據(jù)進行驗證以確認(rèn)賣方的身 份,并且如果在步驟1935中該數(shù)據(jù)生成肯定認(rèn)證,則當(dāng)從用戶接收到數(shù)據(jù)時從步驟1955繼 續(xù)。如果賣方的認(rèn)證數(shù)據(jù)沒有與賣方的登記數(shù)據(jù)匹配達到期望程度,則將一消息返回給賣 方以請求進一步認(rèn)證。如上所述,為了使得賣方向信任引擎110成功地認(rèn)證自身,如果需要 的話在這里可以執(zhí)行信任仲裁。當(dāng)在步驟1940中用戶接收到合同時,他檢查合同,在步驟1945中如果合同可以接 受則產(chǎn)生認(rèn)證數(shù)據(jù)以對它進行簽名,然后在步驟1950中,向信任引擎110發(fā)送合同的哈希 值以及他的認(rèn)證數(shù)據(jù)。在步驟1955中,信任引擎110驗證該認(rèn)證數(shù)據(jù),并且如果認(rèn)證良好, 則如下所述繼續(xù)處理合同。如以上參照圖17和圖18所述,可以適當(dāng)?shù)貓?zhí)行信任仲裁以彌 合認(rèn)證置信等級與事務(wù)的所需的認(rèn)證等級之間存在的任何信任差距。在步驟1960中,信任引擎110用用戶的私鑰對合同的哈希值進行簽名,并且將該 簽名的哈希值發(fā)送至賣方,代表自己對完整消息進行簽名,即,包括利用信任引擎110的私 鑰510加密的完整消息(包括用戶的簽名)的哈希值。在步驟1965中,這個消息由賣方接 收。該消息代表簽名的合同(使用用戶的私鑰加密的合同的哈希值)以及來自信任引擎 110的收據(jù)(包括使用信任引擎110的私鑰加密的簽名的合同的消息的哈希值)。在步驟1970中,信任引擎110利用賣方的私鑰類似地準(zhǔn)備合同的哈希值,并且將 由信任引擎110簽名的這個合同轉(zhuǎn)發(fā)至用戶。這樣,在步驟1975中,用戶還接收由賣方簽 名的合同的副本以及由信任引擎110簽名的傳遞簽名的合同的收據(jù)。除了上述以外,本發(fā)明的附加方面提供了一種密碼服務(wù)提供模塊(SPM),該密碼服 務(wù)提供模塊(SPM)可由客戶機側(cè)應(yīng)用用作訪問上述的由信任引擎110提供的功能的裝置。 密碼SPM提供這種服務(wù)的一個有利方式是對第三方應(yīng)用編程接口(API)與可經(jīng)由網(wǎng)絡(luò)或其 它遠(yuǎn)程連接進行訪問的信任引擎110之間的通信進行調(diào)停。在下文中參照圖20描述樣本 密碼SPM。例如,在典型系統(tǒng)上,程序員可使用多個API。每個API提供可由在系統(tǒng)上運行的 應(yīng)用2000進行的一組功能調(diào)用。提供適于密碼功能、認(rèn)證功能和其它安全功能的編程接口 的API的例子包括由微軟在它的Windows操作系統(tǒng)中提供的密碼API (CAPI)2010和由IBM、 Intel和開放組的其它成員發(fā)起的公共數(shù)據(jù)安全架構(gòu)(CDSA)。在下文的討論中,CAPI將用 作示例性安全API。然而,還可以與CDSA或者本領(lǐng)域已知的其它安全API —起使用所述的密碼SPM。當(dāng)調(diào)用密碼功能時,用戶系統(tǒng)105或賣方系統(tǒng)120使用這個API。包括在這些功能 中的可以是與執(zhí)行各種密碼操作(諸如用特定密鑰對文檔進行加密,對文檔進行簽名,請 求數(shù)字證書,驗證簽名的文檔上的簽名)關(guān)聯(lián)的請求以及本文所述或本領(lǐng)域技術(shù)人員知道 的其它密碼功能。通常,在CAPI 2010所處于的系統(tǒng)本地執(zhí)行這些密碼功能。這是因為一般調(diào)用的 功能要求使用本地用戶系統(tǒng)105的資源(例如,指紋讀取器)或者使用在本地機器上執(zhí)行 的庫進行編程的軟件功能。通常由以上提及的提供執(zhí)行密碼功能使用的資源的一個或多個 服務(wù)提供模塊(SPM)2015、2020執(zhí)行對這些本地資源的訪問。這些SPM可以包括執(zhí)行加密 或解密操作的軟件庫2015或者能夠訪問專用硬件2025 (例如,生物測定掃描裝置)的驅(qū)動 程序和應(yīng)用2020。與CAPI 2010提供可由系統(tǒng)105的應(yīng)用2000使用的功能的方式非常類 似,SPM 2015,2020向CAPI提供對與系統(tǒng)上的可用服務(wù)關(guān)聯(lián)的低級功能和資源的訪問。根據(jù)本發(fā)明,可以提供一種密碼SPM 2030,其能夠訪問由信任引擎110提供的密 碼功能并且使得應(yīng)用2000通過CAPI 2010可獲得這些功能。與CAPI 2010僅僅能夠訪問可 通過SPM 2015和2020在本地獲得的資源的實施例不同,這里所述的密碼SPM 2030將能夠 向位于遠(yuǎn)處的可進行網(wǎng)絡(luò)訪問的信任引擎110提交對密碼操作的請求以執(zhí)行希望的操作。例如,如果應(yīng)用2000需要密碼操作,例如對文檔進行簽名,則應(yīng)用2000對適當(dāng)?shù)?CAPI 2010功能進行功能調(diào)用。CAPI 2010繼而將執(zhí)行這個功能,利用通過SPM 2015和2020 以及密碼SPM 2030使其可獲得的資源。在數(shù)字簽名功能的情況下,密碼SPM 2030將產(chǎn)生 將通過通信鏈路125發(fā)送至信任引擎110的適當(dāng)請求。在密碼SPM 2030與信任引擎110之間發(fā)生的操作是可以在任何其它系統(tǒng)與信任 引擎110之間進行的相同操作。然而,通過CAPI 2010可以使得用戶系統(tǒng)105有效地獲得 這些功能,從而使這些功能看起來在用戶系統(tǒng)105自己的本地可獲得。然而,與普通的SPM 2015和2020不同,這些功能在遠(yuǎn)程信任引擎110上執(zhí)行,并且響應(yīng)于適當(dāng)請求,結(jié)果經(jīng)由通 信鏈路125中繼到密碼SPM 2030。這個密碼SPM 2030使用戶系統(tǒng)105或賣方系統(tǒng)120可以獲得以其它方式可能無 法獲得的大量操作。這些功能包括但不限于文檔的加密和解密、數(shù)字證書的發(fā)放、文檔的 數(shù)字簽名、數(shù)字簽名的驗證、以及對本領(lǐng)域技術(shù)人員顯而易見的其它操作。在一個單獨的實施例中,本發(fā)明包括對任何數(shù)據(jù)集執(zhí)行本發(fā)明的數(shù)據(jù)保護方法的 完整系統(tǒng)。這個實施例的計算機系統(tǒng)包括數(shù)據(jù)分裂模塊,該數(shù)據(jù)分裂模塊包括圖8所示和 本文所述的功能。在本發(fā)明的一個實施例中,在本文中有時稱作安全數(shù)據(jù)解析器的數(shù)據(jù)分 裂模塊包括包含數(shù)據(jù)分裂、加密和解密、重構(gòu)或重裝功能的解析器程序或軟件套裝。這個實 施例還可以包括一個數(shù)據(jù)存儲設(shè)施或多個數(shù)據(jù)存儲設(shè)施。數(shù)據(jù)分裂模塊或安全數(shù)據(jù)解析器 包括跨平臺軟件模塊套裝,該跨平臺軟件模塊套裝集成在電子基礎(chǔ)設(shè)施內(nèi)或者作為要求其 數(shù)據(jù)元素的最大安全性的任何應(yīng)用的附件。這個解析過程對任何類型的數(shù)據(jù)集,以及對任 何和所有文件類型,或者在數(shù)據(jù)庫中對該數(shù)據(jù)庫中的任何數(shù)據(jù)行或列或單元進行運算。在一個實施例中,可以以模塊分層方式設(shè)計本發(fā)明的解析過程,并且任何加密過 程適用于本發(fā)明的過程。本發(fā)明的解析和分裂過程的模塊層可以包括但不限于1)密碼 分裂,分散并安全存儲在多個位置;2)加密,密碼分裂,分散并安全存儲在多個位置;3)加密,密碼分裂,對每份加密,然后分散并安全存儲在多個位置;以及4)加密,密碼分裂,用與 在第一步驟中使用的加密不同類型的加密對每份進行加密,然后分散并安全存儲在多個位置。在一個實施例中,這個過程包括根據(jù)產(chǎn)生的隨機數(shù)或密鑰的內(nèi)容對數(shù)據(jù)進行分 裂,并且對把要保護的數(shù)據(jù)分裂成兩個或更多部分或份的解析或分裂數(shù)據(jù)(在一個實施例 中,優(yōu)選分裂成四個或更多部分的解析和分裂數(shù)據(jù))的加密中使用的密鑰執(zhí)行相同的密碼 分裂,對所有的部分進行加密,然后根據(jù)請求者對隱私和安全的需要,將這些部分分散并存 儲回數(shù)據(jù)庫中或者將它們重新定位到固定或可移動的任何指定裝置?;蛘?,在另一個實施 例中,在由分裂模塊或安全數(shù)據(jù)解析器對數(shù)據(jù)集進行分裂之前可以進行加密。如在這個實 施例中所述進行處理的原始數(shù)據(jù)被加密并打亂并且得到保護。實際上,如果希望的話,加密 的元素可以分散到任何地方,包括但不限于單個服務(wù)器或數(shù)據(jù)存儲裝置、或者多個獨立的 數(shù)據(jù)存儲設(shè)施或裝置之間。在一個實施例中,加密密鑰管理可以包括在軟件套裝內(nèi),或者在 另一個實施例中,可以集成到現(xiàn)有的基礎(chǔ)設(shè)施或任何其它期望位置。密碼分裂(密碼術(shù)分裂)將數(shù)據(jù)劃分成N份。該劃分可以基于任何大小的數(shù)據(jù)單 元,包括一個比特、多個比特、字節(jié)、千字節(jié)、兆字節(jié)或更大單元以及預(yù)定或隨機產(chǎn)生的數(shù)據(jù) 單元大小的任何模式或組合?;陔S機或者預(yù)定的一組值,這些單元還可以具有不同的大 小。這意味著數(shù)據(jù)能夠被看作是這些單元的序列。按照這種方式,例如通過使用一個或多 個預(yù)定或隨機產(chǎn)生的數(shù)據(jù)單元大小的模式、序列或組合,數(shù)據(jù)單元自身的大小可以使數(shù)據(jù) 更加安全。這些單元然后(隨機地或者根據(jù)一組預(yù)定值)被分布到N份中。該分布還可以 涉及在各份中攪亂(shuffle)單元的順序。本領(lǐng)域普通技術(shù)人員易于明白,可以根據(jù)多種 多樣的可能選擇(包括但不限于固定大小、預(yù)定大小、或者預(yù)定或隨機產(chǎn)生的數(shù)據(jù)單元大 小的一個或多個組合、模式或序列)執(zhí)行將數(shù)據(jù)單元分布到多份中。這種密碼分裂過程或密碼術(shù)分裂的一個例子將考慮數(shù)據(jù)大小為23個字節(jié),數(shù)據(jù) 單元大小選擇為1個字節(jié),并且選擇的份數(shù)為4。每個字節(jié)將被分布到這4份之一中。假定 隨機分布,將獲得密鑰以建立23個隨機數(shù)的序列(rl、r2、r3到r23),其中,每個隨機數(shù)具 有與這4份對應(yīng)的1至4的值。數(shù)據(jù)的每個單元(在這個例子中,數(shù)據(jù)的23個獨立字節(jié)) 與對應(yīng)于4份之一的23個隨機數(shù)之一關(guān)聯(lián)。通過將數(shù)據(jù)的第一字節(jié)安置到份號rl、將第二 字節(jié)安置到份r2,將第三字節(jié)安置到份r3只至將數(shù)據(jù)的第23字節(jié)安置到份r23,可以將數(shù) 據(jù)的各字節(jié)分布到這4份中。本領(lǐng)域普通技術(shù)人員易于理解,多種多樣的其它可行步驟或 者步驟的組合或序列(包括數(shù)據(jù)單元的大小)可用于本發(fā)明的密碼術(shù)分裂過程,并且以上 例子是用于對數(shù)據(jù)進行密碼術(shù)分裂的一個過程的非限制性描述。為了重建原始數(shù)據(jù),將執(zhí) 行反向操作。在本發(fā)明的密碼術(shù)分裂過程的另一個實施例中,用于密碼術(shù)分裂過程的選項是在 各份中提供充足冗余從而使得僅僅需要這些份的子集就能夠?qū)?shù)據(jù)重裝或恢復(fù)成它的原 始或可用形式。作為一個非限制性例子,可以按照“4取3”密碼術(shù)分裂進行密碼術(shù)分裂,從 而使得將數(shù)據(jù)重裝或恢復(fù)成它的原始或可用形式僅僅需要這4份中的3份。這還稱作“N 取M密碼術(shù)分裂”,其中,N是總份數(shù),M至少比N小1。本領(lǐng)域普通技術(shù)人員易于理解,在本 發(fā)明的密碼術(shù)分裂過程中建立這種冗余存在許多可能性。在本發(fā)明的密碼術(shù)分裂過程的一個實施例中,數(shù)據(jù)的每個單元存儲在兩份(主要份和備份份)中。使用上述的“4取3”密碼術(shù)分裂過程,可以丟失任何一份,并且由于僅僅 需要全部4份中的3份,所以在沒有丟失數(shù)據(jù)單元的情況下這仍足以重裝或恢復(fù)原始數(shù)據(jù)。 如本文所述,對應(yīng)于這些份之一產(chǎn)生隨機數(shù)?;诿荑€,該隨機數(shù)與數(shù)據(jù)單元關(guān)聯(lián)并且存儲 在對應(yīng)份中。在這個實施例中,一個密鑰用于產(chǎn)生主要份和備份份隨機數(shù)。如本文所述,對 于本發(fā)明的密碼術(shù)分裂過程,產(chǎn)生與數(shù)據(jù)單元的數(shù)目相等的從0到3的一組隨機數(shù)(還稱 作主要份數(shù)字)。然后,產(chǎn)生與數(shù)據(jù)單元的數(shù)目相等的從1到3的另一組的隨機數(shù)(還稱作 備份份數(shù)字)。然后,將數(shù)據(jù)的每個單元與主要份數(shù)字和備份份數(shù)字進行關(guān)聯(lián)?;蛘?,可以 產(chǎn)生少于數(shù)據(jù)單元的數(shù)目的一組隨機數(shù)并且重復(fù)該隨機數(shù)組,但是這會降低敏感數(shù)據(jù)的安 全性。主要份數(shù)字用于確定數(shù)據(jù)單元存儲在哪個份中。備份份數(shù)字與主要份數(shù)字進行組合 以建立0至3的第三份數(shù)字,并且這個數(shù)字用于確定數(shù)據(jù)單元存儲在哪個份中。在這個例 子中,用于確定第三份數(shù)字的式子是
      (主要份數(shù)字+備份份數(shù)字)MOD 4 =第三份數(shù)字在上述的主要份數(shù)字為0至3且備份份數(shù)字為1至3的實施例中,確保了第三份 數(shù)字與主要份數(shù)字不同。這導(dǎo)致數(shù)據(jù)單元存儲在兩個不同份中。本領(lǐng)域普通技術(shù)人員易于 理解,除了本文公開的實施例以外,還有執(zhí)行冗余密碼術(shù)分裂和非冗余密碼術(shù)分裂的許多 方式。例如,可以使用不同的算法攪亂每份中的數(shù)據(jù)單元。例如,當(dāng)原始數(shù)據(jù)分裂成多個數(shù) 據(jù)單元時,或者在將數(shù)據(jù)單元安置到各份中以后,或者份已滿以后,可以執(zhí)行該數(shù)據(jù)單元攪 亂??梢詫θ魏未笮〉臄?shù)據(jù)單元(包括但不限于一個比特、多個比特、字節(jié)、千字節(jié)、 兆字節(jié)或更大)執(zhí)行本文所述的各種密碼術(shù)分裂過程和數(shù)據(jù)攪亂過程以及本發(fā)明的密碼 術(shù)分裂和數(shù)據(jù)攪亂方法的所有其它實施例。執(zhí)行本文所述的密碼術(shù)分裂過程的源代碼的一個實施例的例子是DATA[1:24]_具有要分裂的數(shù)據(jù)的字節(jié)數(shù)組SHARES
      -2維數(shù)組,每行表示各份之一RAND0M[1:24J-0. . 3的范圍內(nèi)的數(shù)組隨機數(shù)SI = 1 ;S2 = 1 ;S3 = 1 ;S4 = 1 ;For J = 1 to 24 doBeginIF RANDOM [J] ==0 thenBeginSHARES [1, SI] = DATA [J];SI = Sl+1 ;EndELSE IF RANDOM [J] == 1 thenBeginSHARES [2, S2] = DATA [J];
      43
      S2 = S2+1 ;ENDELSE IF RANDOM [J] ==2 thenBeginSHARES [3, S3] = data [J];S3 = S3+1 ;EndElse beginSHARES [4, S4] = data [J];S4 = S4+1 ;End ;END ;執(zhí)行本文所述的密碼術(shù)分裂RAID過程的源代碼的一個實施例的例子是產(chǎn)生兩組數(shù)字,PrimaryShare是0到3,BackupShare是1到3。然后,按照與上述 的密碼術(shù)分裂相同的過程,將每個數(shù)據(jù)單元放入share [primaryshare [1]]以及share [ (pr imaryshare[l]+backupshare[l])mod 4]中。這個方法可調(diào)整至任何大小N,其中,恢復(fù)數(shù) 據(jù)僅僅需要N-1份。加密的數(shù)據(jù)元素的獲取、重組、重裝或重構(gòu)可以利用任何數(shù)目的認(rèn)證技術(shù),包括但 不限于生物測定,例如,指紋識別、面部掃描、手掃描、虹膜掃描、視網(wǎng)膜掃描、耳掃描、血管 模式識別或DNA分析。根據(jù)需要,本發(fā)明的數(shù)據(jù)分裂和/或解析器模塊可以集成到多種多 樣的基礎(chǔ)產(chǎn)品或應(yīng)用中?,F(xiàn)有技術(shù)中已知的傳統(tǒng)加密技術(shù)依賴于用于對數(shù)據(jù)進行加密的一個或多個密鑰 并且使得在無密鑰的情況下不可用。然而,數(shù)據(jù)仍然是一個整體并且完整,并且易受攻擊。 在一個實施例中,通過對加密的文件執(zhí)行密碼解析并分裂成兩個或更多個部分或份(在另 一個實施例中,優(yōu)選為4個或更多份),對每個數(shù)據(jù)份增加另一層加密,然后將這些份存儲 在不同物理和/或邏輯位置,本發(fā)明的安全數(shù)據(jù)解析器解決了這個問題。當(dāng)通過使用可移 動裝置(例如,數(shù)據(jù)存儲裝置)或者通過在另一方的控制下對份進行安置從系統(tǒng)中物理地 去除一個或多個數(shù)據(jù)份時,有效去除了對被保護數(shù)據(jù)的危害的任何可能性。在圖21中示出并在下文中描述本發(fā)明的安全數(shù)據(jù)解析器的一個實施例的例子以 及如何利用它的例子。然而,本領(lǐng)域普通技術(shù)人員易于理解,除了下面的非限制性例子以 外,還可以以多種多樣的方式利用本發(fā)明的安全數(shù)據(jù)解析器。作為一種部署選項,在一個實 施例中,可以通過外部會話密鑰管理或者會話密鑰的安全內(nèi)部存儲,實現(xiàn)安全數(shù)據(jù)解析器。 當(dāng)實現(xiàn)時,將產(chǎn)生解析器主密鑰,它將用于保護應(yīng)用以及加密目的。還應(yīng)該注意,通過將解 析器主密鑰加入到得到的保護數(shù)據(jù)中,可以實現(xiàn)由工作組、企業(yè)或擴展受眾內(nèi)的個人共享 被保護數(shù)據(jù)的靈活性。如圖21所示,本發(fā)明的這個實施例示出了由安全數(shù)據(jù)解析器對數(shù)據(jù)執(zhí)行存儲會 話主密鑰與解析的數(shù)據(jù)的過程的步驟1.產(chǎn)生會話主密鑰并且使用RS1流密碼對數(shù)據(jù)進行加密。2.根據(jù)會話主密鑰的模式將得到的加密的數(shù)據(jù)分離成四份或部分的解析數(shù)據(jù)。
      3.在本發(fā)明的這個實施例中,會話主密鑰將與保護數(shù)據(jù)份一起存儲在數(shù)據(jù)儲存器 內(nèi)。根據(jù)解析器主密鑰的模式對會話主密鑰進行分離并且將密鑰數(shù)據(jù)附于加密的解析數(shù) 據(jù)。4.得到的四個數(shù)據(jù)份將包含加密的原始數(shù)據(jù)的部分以及會話主密鑰的部分。針對 這四個數(shù)據(jù)份的每一個產(chǎn)生流密碼密鑰。5.對每份進行加密,然后將加密密鑰存儲在與加密的數(shù)據(jù)部分或份不同的位置 份1獲得密鑰4,份2獲得密鑰1,份3獲得密鑰2,份4獲得密鑰3。為了恢復(fù)原始數(shù)據(jù)格式時,顛倒這些步驟。本領(lǐng)域普通技術(shù)人員易于理解,根據(jù)需要,本文所述的方法的某些步驟可以以不 同順序執(zhí)行或者重復(fù)多次。本領(lǐng)域技術(shù)人員還易于理解,可以以彼此不同的方式對這些數(shù) 據(jù)部分進行處理。例如,可以僅僅對解析數(shù)據(jù)的一個部分執(zhí)行多個解析步驟??梢酝ㄟ^任 何希望的方式對解析數(shù)據(jù)的每個部分進行獨特的保護,只要數(shù)據(jù)可以被重裝置、重構(gòu)、重形 成、解密或恢復(fù)到它的原始或其它可用形式即可。如圖22所示和本文所述,本發(fā)明的另一個實施例包括由安全數(shù)據(jù)解析器對數(shù)據(jù) 執(zhí)行的將會話主密鑰數(shù)據(jù)存儲在一個或多個單獨的密鑰管理表中的過程的步驟1.產(chǎn)生會話主密鑰并且使用RS1流密碼對數(shù)據(jù)進行加密。2.根據(jù)會話主密鑰的模式將得到的加密的數(shù)據(jù)分離成四份或部分的解析數(shù)據(jù)。3.在本發(fā)明的該方法的這個實施例中,會話主密鑰將存儲在數(shù)據(jù)儲存器中的單獨 的密鑰管理表內(nèi)。為這個事務(wù)產(chǎn)生唯一事務(wù)ID。將事務(wù)ID和會話主密鑰存儲在單獨的密 鑰管理表中。根據(jù)解析器主密鑰的模式將事務(wù)ID進行分離并且將該數(shù)據(jù)附于加密的解析 數(shù)據(jù)或分離的數(shù)據(jù)。4.得到的四個數(shù)據(jù)份將包含加密的原始數(shù)據(jù)的部分和事務(wù)ID的部分。5.針對這四個數(shù)據(jù)份的每一個產(chǎn)生流密碼密鑰。6.對每份進行加密,然后將加密密鑰存儲在與加密的數(shù)據(jù)部分或份不同的位置 份1獲得密鑰4,份2獲得密鑰1,份3獲得密鑰2,份4獲得密鑰3。為了恢復(fù)原始數(shù)據(jù)格式,需要顛倒這些步驟。本領(lǐng)域普通技術(shù)人員易于理解,根據(jù)需要,本文所述的方法的某些步驟可以以不 同順序執(zhí)行或者重復(fù)多次。本領(lǐng)域技術(shù)人員還易于理解,可以以彼此不同的方式對這些數(shù) 據(jù)部分進行處理。例如,可以僅僅對解析數(shù)據(jù)的一個部分執(zhí)行多個分離或解析步驟??梢?通過任何希望的方式對解析數(shù)據(jù)的各個部分進行獨特保護,只要數(shù)據(jù)可以被重裝、重構(gòu)、重 形成、解密或恢復(fù)到它的原始或其它可用形式即可。如圖23所示,本發(fā)明的這個實施例示出了由安全數(shù)據(jù)解析器對數(shù)據(jù)執(zhí)行的存儲 會話主密鑰與解析數(shù)據(jù)的過程的步驟1.訪問與認(rèn)證的用戶關(guān)聯(lián)的解析器主密鑰。2.產(chǎn)生唯一會話主密鑰。3.從解析器主密鑰與會話主密鑰的異或函數(shù)導(dǎo)出中間密鑰。4.使用現(xiàn)有或新的加密算法以中間密鑰為密鑰對數(shù)據(jù)進行可選加密。5.根據(jù)中間密鑰的模式將得到的可選加密的數(shù)據(jù)分離成四份或部分的解析數(shù)據(jù)。6.在該方法的這個實施例中,會話主密鑰將與被保護數(shù)據(jù)份一起存儲在數(shù)據(jù)儲存器內(nèi)。根據(jù)解析器主密鑰的模式對會話主密鑰進行分離并且將密鑰數(shù)據(jù)附于可選加密的解 析數(shù)據(jù)份。7.得到的多個數(shù)據(jù)份將包含可選加密的原始數(shù)據(jù)的部分和會話主密鑰的部分。8.可選地,為四個數(shù)據(jù)份的每一個產(chǎn)生加密密鑰。9.可選地,用現(xiàn)有或新的加密算法對每個份進行加密,然后將加密密鑰存儲在與 加密的數(shù)據(jù)部分或份不同的位置例如,份1獲得密鑰4,份2獲得密鑰1,份3獲得密鑰2, 份4獲得密鑰3。為了恢復(fù)原始數(shù)據(jù)格式時,需要顛倒這些步驟。本領(lǐng)域普通技術(shù)人員易于理解,根據(jù)需要,本文所述的方法的某些步驟可以以不 同順序執(zhí)行或者重復(fù)多次。本領(lǐng)域技術(shù)人員還易于理解,可以以彼此不同方式對這些數(shù)據(jù) 部分進行處理。例如,可以僅僅對解析數(shù)據(jù)的一個部分執(zhí)行多個解析步驟??梢砸匀魏蜗?望的方式對解析數(shù)據(jù)的每個部分進行獨特的保護,只要數(shù)據(jù)可以被重裝、重構(gòu)、重形成、解 密或恢復(fù)到它的原始或其它可用形式即可。如圖24所示和文本所述,本發(fā)明的另一個實施例包括由安全數(shù)據(jù)解析器對數(shù)據(jù) 執(zhí)行的將會話主密鑰數(shù)據(jù)存儲在一個或多個單獨的密鑰管理表中的過程的步驟1.訪問與認(rèn)證的用戶關(guān)聯(lián)的解析器主密鑰。2.產(chǎn)生唯一會話主密鑰。3.從解析器主密鑰與會話主密鑰的異或函數(shù)導(dǎo)出中間密鑰。4.使用現(xiàn)有或新的加密算法以中間密鑰為密鑰對數(shù)據(jù)進行可選加密。5.根據(jù)中間密鑰的模式將得到的可選加密的數(shù)據(jù)分離成四份或部分的解析數(shù)據(jù)。6.在本發(fā)明的該方法的這個實施例中,會話主密鑰將存儲在數(shù)據(jù)儲存器內(nèi)的單獨 的密鑰管理表中。為這個事務(wù)產(chǎn)生唯一事務(wù)ID。將事務(wù)ID和會話主密鑰存儲在單獨的密 鑰管理表中或者將會話主密鑰和事務(wù)ID傳回調(diào)用程序以用于外部管理。根據(jù)解析器主密 鑰的模式對事務(wù)ID進行分離并且將數(shù)據(jù)附于可選加密的解析數(shù)據(jù)或分離的數(shù)據(jù)。7.得到的四個數(shù)據(jù)份將包含可選加密的原始數(shù)據(jù)的部分和事務(wù)ID的部分。8.可選地,為這四個數(shù)據(jù)份的每個產(chǎn)生加密密鑰。9.可選地,對每份進行加密,然后將加密密鑰存儲在與加密的數(shù)據(jù)部分或份不同 的位置。例如,份1獲得密鑰4,份2獲得密鑰1,份3獲得密鑰2,份4獲得密鑰3。為了恢復(fù)原始數(shù)據(jù)格式,需要顛倒這些步驟。本領(lǐng)域普通技術(shù)人員易于理解,根據(jù)需要,本文所述的方法的某些步驟可以以不 同順序執(zhí)行或者重復(fù)多次。本領(lǐng)域技術(shù)人員還易于理解,可以以彼此不同方式對這些數(shù)據(jù) 部分進行處理。例如,可以僅僅對解析數(shù)據(jù)的一個部分執(zhí)行多個分離或解析步驟??梢砸?任何希望的方式對解析數(shù)據(jù)的每個部分進行獨特的保護,只要數(shù)據(jù)可以被重裝、重構(gòu)、重形 成、解密或恢復(fù)到它的原始或其它可用形式即可。本領(lǐng)域技術(shù)人員易于理解,多種多樣的加密方法適用于本發(fā)明的方法。一次一密 亂碼本(One Time Pad)算法常常被認(rèn)為是最安全加密方法之一,并且適用于本發(fā)明的方 法。使用一次一密亂碼本算法要求產(chǎn)生與要保護的數(shù)據(jù)一樣長的密鑰。在諸如由于要保護 的數(shù)據(jù)集的大小而導(dǎo)致產(chǎn)生和管理非常長的密鑰的情況的某些境況下,不太希望使用這種 方法。在一次一密亂碼本(OTP)算法中,使用簡單的異或函數(shù)X0R。對于相同長度的兩個二進制流X和y,X XOR y是指x和y的逐比特異或。在比特級,產(chǎn)生0 X0R 0 = 00 XOR 1 = 11 X0R 0 = 11 XOR 1 = 0在本文中針對要分裂的n字節(jié)秘密s (或數(shù)據(jù)集),描述這個過程的例子。該過程 將產(chǎn)生n字節(jié)隨機值a,然后設(shè)置b = a XOR s。要注意,可以通過下式導(dǎo)出“s”s = a XOR b。值a和b稱作份或部分并且安置在分立的儲存器內(nèi)。一旦秘密s分被裂成兩個或 更多份,以安全方式將它丟棄。本發(fā)明的安全數(shù)據(jù)解析器可以利用這個函數(shù),執(zhí)行結(jié)合多個不同秘密密鑰值K1、 K2、K3、Kn、K5的多個XOR函數(shù)。在運算開始時,要保護的數(shù)據(jù)被傳遞給第一加密運算,安全 數(shù)據(jù)=數(shù)據(jù)X0R秘密密鑰5:S = D XOR K5為了將得到的加密數(shù)據(jù)安全地存儲在例如四個份SI、S2、S3、Sn中,根據(jù)K5的值 將數(shù)據(jù)解析并分裂成“n”個段或份。這個運算產(chǎn)生原始加密的數(shù)據(jù)的“n”個偽隨機份。然 后,可以用剩余的秘密密鑰值對每個份執(zhí)行接下來的X0R函數(shù),例如安全數(shù)據(jù)段1 =加密 的數(shù)據(jù)份1X0R秘密密鑰1 SD1 = SI XOR K1SD2 = S2 XOR K2SD3 = S3 XOR K3SDn = Sn XOR Kn在一個實施例中,可能不希望任何一個儲存器包含對其所持有的信息進行解密的 足夠信息,從而對份進行解密所需的密鑰被存儲在不同的數(shù)據(jù)儲存器中儲存器l:SDl,Kn儲存器2:SD2,K1儲存器3:SD3,K2儲存器n:SDn,K3此外,獲取原始會話加密密鑰K5所需的信息可以附于每個份。因此,在本文所述 的密鑰管理例子中,通過根據(jù)依賴于安裝的解析器主密鑰(TIDl、TID2、TID3、TIDn)的內(nèi)容 而分裂成“n”份的事務(wù)ID來參考原始會話主密鑰儲存器1 :SD1, Kn, TID1儲存器2 :SD2, Kl, TID2儲存器3 :SD3,K2,TID3儲存器n :SDn, K3, TIDn
      在本文所述的結(jié)合會話密鑰例子中,根據(jù)依賴于安裝的解析器主密鑰(SKI、SK2、 SK3、SKn)的內(nèi)容,會話主密鑰分裂成“n”份儲存器1 :SD1,Kn,SK1儲存器2 :SD2,Kl,SK2儲存器3 SD3,K2,SK3儲存器n :SDn,K3,SKn根據(jù)這個例子,除非獲得了所有四份,否則不能夠?qū)?shù)據(jù)進行重裝。即使捕獲了所 有四份,在無法訪問會話主密鑰和解析器主密鑰的情況下也不可能重裝或恢復(fù)原始信息。這個例子描述了本發(fā)明的該方法的一個實施例,并且在另一個實施例中還描述了 用于將份安置到儲存器中從而能夠?qū)λ袃Υ嫫髦械姆葸M行組合以形成秘密認(rèn)證材料的 算法。所需的計算非常簡單和快速。然而,對于一次一密亂碼本(OTP)算法,由于密鑰大小 與要存儲的數(shù)據(jù)的大小相同,所以可能會出現(xiàn)例如要保護大的數(shù)據(jù)集的、不太希望使用這 種算法的境況。因此,將需要存儲并發(fā)送原始數(shù)據(jù)量的大約兩倍,這在某些境況下是不希望 的。流密碼RS1流密碼RS1分裂技術(shù)與本文所述的OTP分裂技術(shù)非常類似。替代n字節(jié)隨機值, 產(chǎn)生n ‘ =min(n,16)字節(jié)隨機值并且將其用作RS1流密碼算法的密鑰。RS1流密碼算法 的優(yōu)點在于,從小得多的種子數(shù)產(chǎn)生偽隨機密鑰。RS1流密碼加密的執(zhí)行速度還被認(rèn)為是本 領(lǐng)域公知的三重DES加密的速度的近10倍,而不會危害安全性。RS1流密碼算法在本領(lǐng)域 是公知的,并且可用于產(chǎn)生用于X0R函數(shù)中的密鑰。RS1流密碼算法可與其它可買到的流 密碼算法(例如,RSA Security Inc的RC4 流密碼算法)互操作,并且適用于本發(fā)明的方 法。使用以上的密鑰符號,K1到K5現(xiàn)在是n'字節(jié)隨機值并且我們設(shè)置SD1 = SI XOR E(K1)SD2 = S2 XOR E (K2)SD3 = S3 XOR E (K3)SDn = Sn XOR E (Kn)其中,E(K1)到E(Kn)是以Kl到Kn為密鑰的RSI流密碼算法的輸出的前n'個字 節(jié)。如本文所述,將這些份現(xiàn)在安置到數(shù)據(jù)儲存器內(nèi)。在這個流密碼RS1算法中,所需的必要計算幾乎與OTP算法一樣簡單和快速。使用 RS1流密碼的這個例子的好處在于,對于每份,系統(tǒng)平均僅需要存儲并發(fā)送比要保護的原始 數(shù)據(jù)的大小多大約16字節(jié)。當(dāng)原始數(shù)據(jù)的大小大于16字節(jié)時,由于RS1算法簡單更短,所 以RS1算法要比OTP算法更高效。本領(lǐng)域普通技術(shù)人員易于理解,多種多樣的加密方法或 算法適用于本發(fā)明,包括但不限于RSI、OTP、RC4 、三重DES和AES。與傳統(tǒng)的加密方法相比,本發(fā)明的數(shù)據(jù)安全性方法和計算機系統(tǒng)提供了顯著優(yōu) 點。一個優(yōu)點是從將數(shù)據(jù)份移至可能位于不同的邏輯、物理或地理位置的一個或多個數(shù)據(jù) 儲存器或存儲裝置上的不同位置獲得的安全性。例如,當(dāng)對數(shù)據(jù)份進行物理分裂并且在不 同人員的控制下時,危害數(shù)據(jù)的可能性大幅減小。由本發(fā)明的方法和系統(tǒng)提供的另一個優(yōu)點是用于對數(shù)據(jù)進行保護以提供保持敏
      48感數(shù)據(jù)的安全性的綜合過程的本發(fā)明的方法的步驟的組合。該數(shù)據(jù)利用安全密鑰進行加密 并且根據(jù)該安全密鑰分裂成一份或多份(在一個實施例中,4份)。安全密鑰利用參考指針 被安全地存儲,該參考指針根據(jù)安全密鑰按四份保護。然后單獨地對各數(shù)據(jù)份進行加密,并 且將密鑰與不同的加密的份安全地存儲在一起。當(dāng)進行組合時,根據(jù)本文公開的方法對數(shù) 據(jù)進行保護的整個過程變成數(shù)據(jù)安全性的綜合包。根據(jù)本發(fā)明的方法進行保護的數(shù)據(jù)易于取回和恢復(fù)、重構(gòu)、重裝、解密或以其它方 式返回到它的原始或其它適合形式以供使用。為了恢復(fù)原始數(shù)據(jù),可利用下面的項1.數(shù)據(jù)集的所有份或部分。2.用于保護數(shù)據(jù)的方法的處理流程的知識,以及對該處理流程進行再現(xiàn)的能力。3.對會話主密鑰的訪問權(quán)。4.對解析器主密鑰的訪問權(quán)。因此,希望設(shè)計一種安全安裝,其中,以上元素中的至少一個可以與系統(tǒng)的其余組 件物理分離(例如,在不同系統(tǒng)管理員的控制下)。通過使用解析器主密鑰可以加強針對無良應(yīng)用調(diào)用數(shù)據(jù)保護方法應(yīng)用的保護。在 本發(fā)明的這個實施例中,在采取任何動作之前,可以要求在安全數(shù)據(jù)解析器與應(yīng)用之間進 行互相認(rèn)證握手。系統(tǒng)的安全性要求不存在用于重建原始數(shù)據(jù)的“后門”方法。針對可能出現(xiàn)數(shù)據(jù) 恢復(fù)問題的安裝,可以對安全數(shù)據(jù)解析器進行增強以提供四個份和會話主密鑰儲存器的鏡 像。例如RAID (用于在幾個盤上分散信息的廉價盤的冗余陣列)的硬件選項和例如復(fù)制的 軟件選項也能夠幫助進行數(shù)據(jù)恢復(fù)計劃。密鑰管理在本發(fā)明的一個實施例中,數(shù)據(jù)保護方法使用三個密鑰組用于進行加密操作。基 于安裝,每個密鑰組可具有各自的密鑰存儲、取回、安全性和恢復(fù)選項。可使用的密鑰包括 但不限于解析器主密鑰這個密鑰是與安全數(shù)據(jù)解析器的安裝關(guān)聯(lián)的個體密鑰。它安裝在已經(jīng)部署了安全 數(shù)據(jù)解析器的服務(wù)器上。有多種適于保護這個密鑰的選項,包括但不限于智能卡、單獨的硬 件密鑰庫、標(biāo)準(zhǔn)密鑰庫、定制密鑰庫或者例如位于受保護的數(shù)據(jù)庫表內(nèi)。會話主密鑰每次當(dāng)對數(shù)據(jù)進行保護時可以產(chǎn)生會話主密鑰。會話主密鑰用于在解析和分裂操 作之前對數(shù)據(jù)進行加密。它還可以并入作為對加密的數(shù)據(jù)進行解析的手段(如果會話主密 鑰沒有集成到解析數(shù)據(jù)內(nèi))。可以通過各種方式(包括但不限于標(biāo)準(zhǔn)密鑰庫、定制密鑰庫、 獨立數(shù)據(jù)庫表)或者例如在加密的份內(nèi)對會話主密鑰進行保護。份加密密鑰針對建立的數(shù)據(jù)集的每個份或部分,可產(chǎn)生單獨的份加密密鑰以進一步對份進行 加密。份加密密鑰可以存儲在與進行加密的份不同的份內(nèi)。本領(lǐng)域普通技術(shù)人員易于理解,本發(fā)明的數(shù)據(jù)保護方法和計算機系統(tǒng)可廣泛地應(yīng) 用于在任何設(shè)置或環(huán)境下的任何類型的數(shù)據(jù)。除了在互聯(lián)網(wǎng)上或者在顧客與賣方之間執(zhí)行 的商業(yè)應(yīng)用外,本發(fā)明的數(shù)據(jù)保護方法和計算機系統(tǒng)可高度應(yīng)用于非商業(yè)或私有設(shè)置或環(huán)境??梢允褂帽疚乃龅姆椒ê拖到y(tǒng)對希望針對未授權(quán)用戶保持安全的任何數(shù)據(jù)集進行保 護。例如,有利的是,通過利用本發(fā)明的方法和系統(tǒng)對數(shù)據(jù)進行保護,對公司或組織內(nèi)的特 定數(shù)據(jù)庫的訪問可以僅僅限于選擇的用戶。另一個例子是文檔的產(chǎn)生、修改或訪問,其中, 希望限制訪問或者防止未授權(quán)或意外訪問或者在選擇的個人、計算機或工作站之外的公 開。本發(fā)明的數(shù)據(jù)保護的方法和系統(tǒng)可應(yīng)用于任何非商業(yè)或商業(yè)環(huán)境或設(shè)置以進行任何設(shè) 置的方式的這些合其它例子包括但不限于任何組織、政府機構(gòu)或公司。在本發(fā)明的另一個實施例中,數(shù)據(jù)保護方法使用三個密鑰組進行加密操作?;?安裝,每個密鑰組可以具有單獨的密鑰庫、取回、安全性和恢復(fù)選項。可使用的密鑰包括但 不限于1.解析器主密鉬這個密鑰是與安全數(shù)據(jù)解析器的安裝關(guān)聯(lián)的獨立密鑰。它安裝在已經(jīng)部署了安全 數(shù)據(jù)解析器的服務(wù)器上。存在各種適于保護這個密鑰的選項,包括但不限于智能卡、單獨硬 件密鑰庫、標(biāo)準(zhǔn)密鑰庫、定制密鑰庫或者例如位于受保護的數(shù)據(jù)庫表內(nèi)。2.會話主密鉬每次當(dāng)對數(shù)據(jù)進行保護時可以產(chǎn)生會話主密鑰。會話主密鑰與解析器主密鑰結(jié)合 使用以導(dǎo)出中間密鑰??梢砸远喾N方式(包括但不限于標(biāo)準(zhǔn)密鑰庫、定制密鑰庫、獨立數(shù)據(jù) 庫表)或者例如在加密的份內(nèi)對會話主密鑰進行保護。3.中間密鉬每次當(dāng)對數(shù)據(jù)進行保護時可以產(chǎn)生中間密鑰。中間密鑰用于在解析和分裂操作之 前對數(shù)據(jù)進行加密。它還可以并入作為對加密的數(shù)據(jù)進行解析的手段。4.份加密密鑰針對建立的數(shù)據(jù)集的每個份或部分,可產(chǎn)生單獨的份加密密鑰以進一步對份進行 加密。份加密密鑰可以存儲在與進行加密的份不同的份內(nèi)。本領(lǐng)域普通技術(shù)人員易于理解,本發(fā)明的數(shù)據(jù)保護方法和計算機系統(tǒng)可廣泛地應(yīng) 用于在任何設(shè)置或環(huán)境下的任何類型的數(shù)據(jù)。除了在互聯(lián)網(wǎng)上或者在顧客與賣方之間執(zhí)行 的商業(yè)應(yīng)用外,本發(fā)明的數(shù)據(jù)保護方法和計算機系統(tǒng)可高度應(yīng)用于非商業(yè)或私有設(shè)置或環(huán) 境??梢允褂帽疚乃龅姆椒ê拖到y(tǒng)對希望針對未授權(quán)用戶保持安全的任何數(shù)據(jù)集進行保 護。例如,有利的是,通過利用本發(fā)明的方法和系統(tǒng)對數(shù)據(jù)進行保護,對公司或組織內(nèi)的特 定數(shù)據(jù)庫的訪問可以僅僅限于選擇的用戶。另一個例子是文檔的產(chǎn)生、修改或訪問,其中, 希望限制訪問或者防止未授權(quán)或意外訪問或者在選擇的個人、計算機或工作站之外的公 開。本發(fā)明的數(shù)據(jù)保護的方法和系統(tǒng)可應(yīng)用于任何非商業(yè)或商業(yè)環(huán)境或設(shè)置以進行任何設(shè) 置的方式的這些合其它例子包括但不限于任何組織、政府機構(gòu)或公司。工作組、項目、個人PC/膝上型電腦或跨平臺數(shù)據(jù)安全性本發(fā)明的數(shù)據(jù)保護方法和計算機系統(tǒng)還用于由工作組、項目、個人PC/膝上型電 腦和例如用于企業(yè)、辦公室、政府機構(gòu)或建立、處理或存儲敏感數(shù)據(jù)的任何設(shè)置的任何其它 平臺,對數(shù)據(jù)進行保護。本發(fā)明提供已知由諸如美國政府的組織所尋求的用于在整個政府 組織上或者在州或聯(lián)邦級政府之間實施的對數(shù)據(jù)進行保護的方法和計算機系統(tǒng)。本發(fā)明的數(shù)據(jù)保護方法和計算機系統(tǒng)提供不僅對普通文件進行解析和分裂還對 任何類型的數(shù)據(jù)字段、集合和/或表進行解析和分裂的能力。此外,所有形式的數(shù)據(jù)(包括但不限于文本、視頻、圖像、生物測定和語音數(shù)據(jù))能夠在這個過程之下得到保護。本發(fā)明 的保護數(shù)據(jù)的方法的可調(diào)整性、速度和數(shù)據(jù)吞吐量僅限于用戶可以支配的硬件。在本發(fā)明的一個實施例中,如下所述在工作組環(huán)境中利用數(shù)據(jù)保護方法。在一個 實施例中,如圖23所示和如下文所述,本發(fā)明的工作組級數(shù)據(jù)保護方法使用信任引擎的私 鑰管理功能來存儲一組用戶共享安全數(shù)據(jù)所需的關(guān)聯(lián)私鑰(解析器組主密鑰)和用戶/組 關(guān)系。本發(fā)明的方法具有根據(jù)如何部署解析器主密鑰為企業(yè)、工作組或個體用戶保護數(shù)據(jù) 的能力。在一個實施例中,可以提供附加密鑰管理和用戶/組管理程序,從而用單點的支 配和密鑰管理實現(xiàn)寬范圍工作組執(zhí)行方式。密鑰產(chǎn)生、管理和撤銷由單個維護程序處理,隨 著用戶數(shù)目的增加,這些都變得尤其重要。在另一個實施例中,還可以跨一個或幾個不同的 系統(tǒng)管理員設(shè)置密鑰管理,這不允許任何一個人或組根據(jù)需要控制數(shù)據(jù)。這允許通過由組 織定義的角色、責(zé)任、成員資格、權(quán)利等獲得被保護數(shù)據(jù)的管理,并且對被保護數(shù)據(jù)的訪問 能夠僅限于被許可或要求僅僅訪問它們工作的部分的那些人,而諸如經(jīng)理或執(zhí)行官的其它 人可以訪問所有被保護數(shù)據(jù)。這個實施例使得能夠在公司或組織內(nèi)的不同組之間共享被保 護數(shù)據(jù),同時僅僅允許某些選擇的個人(例如,具有授權(quán)和預(yù)定的角色和責(zé)任的那些人)觀 察整個數(shù)據(jù)。此外,本發(fā)明的方法和系統(tǒng)的這個實施例還允許例如在不同公司、或公司的不 同部門或分支機構(gòu)、或任何政府或組織等的任何不同組織部門、團體、機構(gòu)、辦公室等(其 中要求一些共享但并非任一方被許可訪問所有數(shù)據(jù))之間共享數(shù)據(jù)。針對本發(fā)明的這種方 法和系統(tǒng)的需要和利用的特別明顯的例子是允許例如在政府區(qū)域、機構(gòu)和辦公室之間以及 在大公司或任何其它組織的不同分支機構(gòu)、部門或辦公室之間進行共享但保持安全性。如下是本發(fā)明的方法在較小范圍進行應(yīng)用的例子。解析器主密鑰用作安全數(shù)據(jù)解 析器的對于組織的串行化或打標(biāo)記。當(dāng)解析器主密鑰的使用范圍從整個企業(yè)縮小至較小工 作組時,本文所述的數(shù)據(jù)保護方法用于在用戶組內(nèi)共享文件。在圖25所示和下文所述的例子中,定義了六個用戶以及他們在組織內(nèi)的頭銜或 角色。邊條表示用戶根據(jù)他們的角色而所屬于的五個可能的組。箭頭表示用戶在一個或多 個組內(nèi)的成員資格。當(dāng)構(gòu)造用于這個例子的安全數(shù)據(jù)解析器時,系統(tǒng)管理員通過維護程序從操作系統(tǒng) 訪問用戶和組信息。這個維護程序基于用戶在組中的成員資格產(chǎn)生并向用戶分配解析器組 主密鑰。在這個例子中,在高級職員組中有三個成員。對于這個組,動作如下1.訪問高級職員組的解析器組主密鑰(在不可獲得的情況下,產(chǎn)生密鑰);2.產(chǎn)生將CE0與高級職員組進行關(guān)聯(lián)的數(shù)字證書;3.產(chǎn)生將CF0與高級職員組進行關(guān)聯(lián)的數(shù)字證書;4.產(chǎn)生將主管市場的副總裁與高級職員組進行關(guān)聯(lián)的數(shù)字證書。針對每個組以及每個組內(nèi)的每個成員將執(zhí)行相同的一組動作。當(dāng)維護程序完成 時,解析器組主密鑰變成組的每個成員的共享證明。當(dāng)通過維護程序從組中去除用戶時可 以自動完成分配的數(shù)字證書的撤銷而不會影響該組的剩余成員。一旦定義了共享證明,解析和分裂過程仍相同。當(dāng)要對文件、文檔或數(shù)據(jù)元素進行 保護時,向用戶提示當(dāng)保護數(shù)據(jù)時要使用的目標(biāo)組。得到的被保護數(shù)據(jù)僅僅可由目標(biāo)組的其它成員訪問。本發(fā)明的方法和系統(tǒng)的這個功能可以與任何其它計算機系統(tǒng)或軟件平臺一 起使用,或者例如可以集成到現(xiàn)有的應(yīng)用程序或者為文件安全性而獨立使用。本領(lǐng)域普通技術(shù)人員易于理解,加密算法的任何一個或者組合適用于本發(fā)明的方 法和系統(tǒng)。例如,在一個實施例中,加密步驟可以被重復(fù)以生成多層加密方案。此外,不同 的加密算法或者加密算法的組合可用于重復(fù)加密步驟從而使得不同的加密算法被應(yīng)用于 多層加密方案的不同層。這樣,加密方案自身可以變成用于保護敏感數(shù)據(jù)免遭未授權(quán)使用 或訪問的本發(fā)明的方法的組成部分。安全數(shù)據(jù)解析器可包括作為內(nèi)部部件、外部部件或者這兩者的錯誤檢查部件。例 如,在一個適當(dāng)?shù)姆椒ㄖ?,?dāng)使用根據(jù)本發(fā)明的安全數(shù)據(jù)解析器建立數(shù)據(jù)的部分時,為了確 保一個部分內(nèi)數(shù)據(jù)的完整性,在這個部分內(nèi)以預(yù)設(shè)間隔獲取哈希值并且將它附于所述間隔 的末端。該哈希值是數(shù)據(jù)的可預(yù)測且可再現(xiàn)的數(shù)值表示。如果數(shù)據(jù)內(nèi)的任何比特變化,則 哈希值將不同。掃描模塊(作為安全數(shù)據(jù)解析器外部的獨立部件或者作為內(nèi)部部件)然后 可以對由安全數(shù)據(jù)解析器產(chǎn)生的數(shù)據(jù)的部分進行掃描。將每個數(shù)據(jù)部分(或者根據(jù)某間隔 或根據(jù)隨機或偽隨機采樣而少于所有的數(shù)據(jù)部分)與所附的一個或多個哈希值進行比較 并且可采取動作。這個動作可以包括匹配和不匹配的值的報告、對不匹配的值的警告、或 者調(diào)用某外部或內(nèi)部程序以觸發(fā)數(shù)據(jù)的恢復(fù)。例如,可以通過調(diào)用恢復(fù)模塊基于根據(jù)本發(fā) 明的不需要所有部分就可以產(chǎn)生原始數(shù)據(jù)的概念來執(zhí)行數(shù)據(jù)的恢復(fù)??梢允褂酶接谒袛?shù)據(jù)部分或這些數(shù)據(jù)部分的子集中的任何地方的任何合適的 完整性信息,執(zhí)行任何其它合適的完整性檢查。完整性信息可以包括能夠用于確定數(shù)據(jù)部 分的完整性的任何合適信息。完整性信息的例子可以包括基于任何合適參數(shù)(例如基于 各個數(shù)據(jù)部分)計算的哈希值、數(shù)字簽名信息、消息認(rèn)證碼(MAC)信息、任何其它合適信息、 或者它們的任何組合。本發(fā)明的安全數(shù)據(jù)解析器可用于任何合適應(yīng)用中。即,本文所述的安全數(shù)據(jù)解析 器在不同領(lǐng)域的計算和技術(shù)中具有不同的應(yīng)用。在下文中討論幾個這種領(lǐng)域。應(yīng)該明白,本 質(zhì)上這些僅僅是例示并且任何其它合適應(yīng)用可以利用安全數(shù)據(jù)解析器。還應(yīng)該明白,所述 的例子僅僅是例示性實施例,可以以任何合適方式對其進行修改以滿足任何合適期望。例 如,解析和分裂可以基于任何合適單元(例如,比特、字節(jié)、千字節(jié)、兆字節(jié)、它們的任何組 合或者任何其它合適單元)。本發(fā)明的安全數(shù)據(jù)解析器可用于實現(xiàn)安全物理令牌,由此,為了訪問存儲在另一 個存儲區(qū)內(nèi)的附加數(shù)據(jù),可能需要存儲在物理令牌內(nèi)的數(shù)據(jù)。在一個合適方案中,物理令 牌(例如,緊湊USB閃存驅(qū)動器、軟盤、光盤、智能卡、或者任何其它合適的物理令牌)可用 于存儲根據(jù)本發(fā)明的解析數(shù)據(jù)的至少兩個部分中的一個。為了訪問原始數(shù)據(jù),需要對USB 閃存驅(qū)動器進行訪問。因此,保持解析數(shù)據(jù)的一個部分的個人計算機在能夠訪問原始數(shù)據(jù) 之前將需要附接具有解析數(shù)據(jù)的另一部分的USB閃存驅(qū)動器。圖26示出了這個應(yīng)用。存 儲區(qū)2500包括解析數(shù)據(jù)的一部分2502。為了訪問原始數(shù)據(jù),需要使用任何合適通信接口 2508 (例如,USB、串口、并口、藍(lán)牙、IR、IEEE 1394、以太網(wǎng)或者任何其它合適的通信接口) 把具有解析數(shù)據(jù)的一部分2506的物理令牌2504連接到存儲區(qū)2500。這在例如計算機上的 敏感數(shù)據(jù)被獨自留下并且遭受未授權(quán)訪問嘗試的情形下是有用的。通過去除物理令牌(例 如,USB閃存驅(qū)動器),無法對敏感數(shù)據(jù)進行訪問。應(yīng)該明白,可以使用用于利用物理令牌的
      52任何其它合適方法。本發(fā)明的安全數(shù)據(jù)解析器可用于實現(xiàn)安全認(rèn)證系統(tǒng),由此,使用安全數(shù)據(jù)解析器 對用戶登記數(shù)據(jù)(例如,口令、私有加密密鑰、指紋模板、生物測定數(shù)據(jù)或任何其它合適的 用戶登記數(shù)據(jù))進行解析和分裂??梢詫τ脩舻怯洈?shù)據(jù)進行解析和分裂,由此,一個或多個 部分存儲在智能卡、政府公共訪問卡、任何合適的物理存儲裝置(例如,磁盤或光盤、USB密 鑰驅(qū)動器等)上或者任何其它合適裝置上。解析的用戶登記數(shù)據(jù)的一個或多個其它部分可 以存儲在執(zhí)行認(rèn)證的系統(tǒng)內(nèi)。這對認(rèn)證過程提供了附加等級的安全性(例如,除了從生物 測定源獲得的生物測定認(rèn)證信息以外,還必須經(jīng)由適當(dāng)?shù)慕馕龊头至训臄?shù)據(jù)部分獲得用戶 登記數(shù)據(jù))。本發(fā)明的安全數(shù)據(jù)解析器可以集成到任何合適的現(xiàn)有系統(tǒng)中,從而可以在每個系 統(tǒng)的各自環(huán)境內(nèi)提供對它的功能的使用。圖27示出了例示性系統(tǒng)2600的框圖,系統(tǒng)2600 可以包括用于實現(xiàn)任何合適應(yīng)用的軟件、硬件或二者。系統(tǒng)2600可以是安全數(shù)據(jù)解析器 2602可以被作為集成部件而進行翻新的現(xiàn)有系統(tǒng)。或者,例如可以從任何合適系統(tǒng)2600的 最早設(shè)計階段,將安全數(shù)據(jù)解析器2602集成到該系統(tǒng)2600內(nèi)。安全數(shù)據(jù)解析器2602可以 集成在系統(tǒng)2600的任何合適等級中。例如,安全數(shù)據(jù)解析器2602可以在充分后端等級集 成到系統(tǒng)2600中,從而使得安全數(shù)據(jù)解析器2602的存在對于系統(tǒng)2600的端用戶可以是實 質(zhì)上透明的。根據(jù)本發(fā)明,安全數(shù)據(jù)解析器2602可用于在一個或多個存儲裝置2604之間 對數(shù)據(jù)進行解析和分裂。在下文中討論在內(nèi)部集成了安全數(shù)據(jù)解析器的系統(tǒng)的一些例示性 例子。本發(fā)明的安全數(shù)據(jù)解析器可以集成到操作系統(tǒng)內(nèi)核(例如,Linux、Unix、或者任 何其它合適的商業(yè)或?qū)S貌僮飨到y(tǒng))。該集成可用于在裝置等級保護數(shù)據(jù),由此,例如,通常 將存儲在一個或多個裝置內(nèi)的數(shù)據(jù)被集成到操作系統(tǒng)內(nèi)的安全數(shù)據(jù)解析器分離成一定數(shù) 目的部分并且存儲在所述一個或多個裝置之間。當(dāng)嘗試訪問原始數(shù)據(jù)時,同樣集成到操作 系統(tǒng)內(nèi)的適當(dāng)軟件可以按照對于端用戶透明的方式將解析的數(shù)據(jù)部分重組成原始數(shù)據(jù)。本發(fā)明的安全數(shù)據(jù)解析器可以集成到存儲系統(tǒng)的卷管理器或者任何其它合適部 件,以跨任何或所有支持的平臺保護本地和聯(lián)網(wǎng)的數(shù)據(jù)存儲。例如,通過集成安全數(shù)據(jù)解析 器,存儲系統(tǒng)可利用由安全數(shù)據(jù)解析器提供的冗余(即,用于實現(xiàn)不需要數(shù)據(jù)的所有的分 離部分就可以重構(gòu)原始數(shù)據(jù)的特征)以防止數(shù)據(jù)損失。不管是否使用冗余,安全數(shù)據(jù)解析 器還使得寫入存儲裝置的所有數(shù)據(jù)可以成為根據(jù)本發(fā)明的解析而產(chǎn)生的多個部分的形式。 當(dāng)嘗試訪問原始數(shù)據(jù)時,同樣集成到卷管理器或存儲系統(tǒng)內(nèi)的其它合適部件的適當(dāng)軟件可 以按照對于端用戶透明的方式將解析的數(shù)據(jù)部分重組成原始數(shù)據(jù)。在一個合適方案中,本發(fā)明的安全數(shù)據(jù)解析器可以集成到RAID控制器(作為硬件 或者作為軟件)。這使得可以將數(shù)據(jù)安全存儲到多個驅(qū)動器上,同時在驅(qū)動器故障的情況下 保持容錯性。例如為了保護敏感表信息,本發(fā)明的安全數(shù)據(jù)解析器可以集成到數(shù)據(jù)庫。例如,在 一個合適方案中,可以根據(jù)本發(fā)明對與數(shù)據(jù)庫表的特定單元(例如,個體單元、一個或多個 特定列、一個或多個特定行、它們的任何組合、或者整個數(shù)據(jù)庫表)關(guān)聯(lián)的數(shù)據(jù)進行解析和 分離(例如,其中,不同的部分存儲在位于一個或多個位置處的一個或多個存儲裝置上或 者單個存儲裝置上)??梢酝ㄟ^傳統(tǒng)的認(rèn)證方法(例如,用戶名和口令)來授權(quán)為了觀看原始數(shù)據(jù)而重組這些部分的訪問。本發(fā)明的安全解析器可以集成到包括移動中數(shù)據(jù)(data in motion)(即,數(shù)據(jù)從 一個位置到另一個位置的轉(zhuǎn)移)的任何合適系統(tǒng)內(nèi)。這些系統(tǒng)例如包括電子郵件、流式數(shù) 據(jù)廣播和無線(例如,WiFi)通信。關(guān)于電子郵件,在一個合適方案中,安全解析器可用于 對外發(fā)消息(即,包含文本、二進制數(shù)據(jù)或二者(例如,附于電子郵件消息的文件))進行解 析并且沿著不同路徑發(fā)送解析數(shù)據(jù)的不同部分,由此建立多個數(shù)據(jù)流。如果這些數(shù)據(jù)流中 的任何一個受到危害,則原始消息仍然安全,因為根據(jù)本發(fā)明,為了產(chǎn)生原始數(shù)據(jù),該系統(tǒng) 要求組合超過一個的部分。在另一個合適方案中,數(shù)據(jù)的不同部分可以沿著一個路徑順序 地傳送從而使得如果獲得了 一個部分,則這不足以產(chǎn)生原始數(shù)據(jù)。根據(jù)本發(fā)明,這些不同部 分到達期望收件人的位置并且可以被組合以產(chǎn)生原始數(shù)據(jù)。圖28和圖29是這種電子郵件系統(tǒng)的例示性框圖。圖28示出了發(fā)件人系統(tǒng)2700, 它可以包括任何合適硬件,例如,計算機終端、個人計算機、手持裝置(例如,PDA、黑莓)、蜂 窩電話、計算機網(wǎng)絡(luò)、任何其它合適硬件、或者它們的任何組合。發(fā)件人系統(tǒng)2700用于產(chǎn)生 和/或存儲消息2704,消息2704例如可以是電子郵件消息、二進制數(shù)據(jù)文件(例如,圖形、 語音、視頻等)或二者。根據(jù)本發(fā)明由安全數(shù)據(jù)解析器2702對消息2704進行解析和分裂。 得到的數(shù)據(jù)部分可以經(jīng)由一個或多個分立的通信路徑2706通過網(wǎng)絡(luò)2708 (例如,互聯(lián)網(wǎng)、 內(nèi)聯(lián)網(wǎng)、LAN、WiFi、藍(lán)牙、任何其它合適有線或無線通信手段、或者它們的任何組合)傳送 至收件人系統(tǒng)2710??梢栽跁r間上并行地或者另選地根據(jù)不同數(shù)據(jù)部分的通信之間的任何 合適的時間延遲,傳送這些數(shù)據(jù)部分。收件人系統(tǒng)2710可以是關(guān)于發(fā)件人系統(tǒng)2700如上 所述的任何合適硬件。根據(jù)本發(fā)明,沿著通信路徑2706運送的單獨的數(shù)據(jù)部分在收件人系 統(tǒng)2710處被重組以產(chǎn)生原始消息或數(shù)據(jù)。圖29示出了發(fā)件人系統(tǒng)2800,它可以包括任何合適硬件,例如,計算機終端、個人 計算機、手持裝置(例如,PDA)、蜂窩電話、計算機網(wǎng)絡(luò)、任何其它合適硬件、或者它們的任 何組合。發(fā)件人系統(tǒng)2800用于產(chǎn)生和/或存儲消息2804,消息2804例如可以是電子郵件 消息、二進制數(shù)據(jù)文件(例如,圖形、語音、視頻等等)或二者。根據(jù)本發(fā)明由安全數(shù)據(jù)解析 器2802對消息2804進行解析和分裂。得到的數(shù)據(jù)部分可以經(jīng)由單個通信路徑2806通過 網(wǎng)絡(luò)2808 (例如,互聯(lián)網(wǎng)、內(nèi)聯(lián)網(wǎng)、LAN、WiFi、藍(lán)牙、任何其它合適的有線或無線通信手段、 或者它們的任何組合)傳送至收件人系統(tǒng)2810。這些數(shù)據(jù)部分可以經(jīng)由通信路徑2806相 對于彼此串行傳送。收件人系統(tǒng)2810可以是在上文關(guān)于發(fā)件人系統(tǒng)2800描述的任何合適 硬件。根據(jù)本發(fā)明,沿著通信路徑2806運送的各個數(shù)據(jù)部分在收件人系統(tǒng)2810處被重組 以產(chǎn)生原始消息或數(shù)據(jù)。應(yīng)該明白,圖28和圖29的布置僅僅是例示性的??梢允褂萌魏纹渌线m布置。例 如,在另一個合適方案中,圖28和29的系統(tǒng)的特征可以進行組合,從而使用圖28的多路徑 方案,并且其中,與在圖29中通信路徑2806 —樣,一個或多個通信路徑2706用于運送超過 一個的數(shù)據(jù)部分。安全數(shù)據(jù)解析器可以集成在移動中數(shù)據(jù)系統(tǒng)的任何合適等級。例如,在電子郵件 系統(tǒng)的情況下,安全解析器可以集成在用戶接口等級(例如,集成到Microsoft Outlook 中),在這種情況下,當(dāng)使用電子郵件時,用戶可以對安全數(shù)據(jù)解析器特征的使用進行控制。 或者,可以在后端部件(例如在交換服務(wù)器)中實現(xiàn)安全解析器,在這種情況下,根據(jù)本發(fā)明,不需要任何用戶干涉,可以自動對消息進行解析、分裂并且沿著不同路徑進行傳送。類似地,在數(shù)據(jù)(例如,音頻、視頻)的流式廣播的情況下,輸出數(shù)據(jù)可以被解析和 分離成多個流,每個流包含解析數(shù)據(jù)的一部分。根據(jù)本發(fā)明,這多個流可以沿著一個或多個 路徑發(fā)送并且在收件人的位置進行重組。這種方案的好處之一是,避免了與對數(shù)據(jù)進行傳 統(tǒng)加密然后通過單個通信通道發(fā)送加密的數(shù)據(jù)相關(guān)聯(lián)的相對較大的開銷。本發(fā)明的安全解 析器允許多個并行流中發(fā)送移動中數(shù)據(jù),從而提高了速度和效率。應(yīng)該明白,為了通過任何傳輸介質(zhì)(例如包括有線、無線或物理)的任何類型的移 動中數(shù)據(jù)的保護和容錯,可以集成安全數(shù)據(jù)解析器。例如,IP語音(VoIP)應(yīng)用可以利用本 發(fā)明的安全數(shù)據(jù)解析器??梢允褂帽景l(fā)明的安全數(shù)據(jù)解析器來保護往來于任何合適個人數(shù) 字助理(PDA)裝置(例如,黑莓和智能電話)的無線或有線數(shù)據(jù)傳輸。對等和基于集線器的 無線網(wǎng)絡(luò)的使用無線802. 11協(xié)議的通信、衛(wèi)星通信、點對點無線通信、互聯(lián)網(wǎng)客戶機/服務(wù) 器通信或者任何其它合適通信可以包括根據(jù)本發(fā)明的安全數(shù)據(jù)解析器的移動中數(shù)據(jù)能力。 計算機外設(shè)裝置(例如,打印機、掃描儀、監(jiān)視器、鍵盤、網(wǎng)絡(luò)路由器、生物測定認(rèn)證裝置(例 如,指紋掃描儀)、或者任何其它合適外設(shè)裝置)之間、計算機與計算機外設(shè)裝置之間、計算 機外設(shè)裝置與任何其它合適裝置之間的數(shù)據(jù)通信或者它們的任何組合可以利用本發(fā)明的 移動中數(shù)據(jù)特征。本發(fā)明的移動中數(shù)據(jù)特征還可以應(yīng)用于例如使用獨立路線、媒介物、方法的安全 份的物理傳輸、任何其它合適的物理傳輸或者它們的任何組合。例如,數(shù)據(jù)的物理傳輸可以 發(fā)生于數(shù)字/磁帶、軟盤、光盤、物理令牌、USB驅(qū)動器、可移動硬盤、具有閃存的消費電子裝 置(例如蘋果IP0D或其它MP3播放器)、閃存、用于傳輸數(shù)據(jù)的任何其它合適介質(zhì)、或者它 們的任何組合。本發(fā)明的安全數(shù)據(jù)解析器向安全性提供了災(zāi)難恢復(fù)的能力。根據(jù)本發(fā)明,為了獲 取原始數(shù)據(jù),不需要由安全數(shù)據(jù)解析器產(chǎn)生的所有部分的分離數(shù)據(jù)。也就是說,在存儲的m 個部分之中,n可以是這m個部分之中獲取原始數(shù)據(jù)所需的最小數(shù),其中,n<=m。例如, 如果四個部分的每個存儲在與其它三個部分不同的物理位置中,那么如果在這個例子中n =2,則這些位置中的兩個可被危害從而數(shù)據(jù)被破壞或者不可訪問,并且從其它兩個位置中 的部分仍可以獲取原始數(shù)據(jù)。對于n或m,可以使用任何合適值。此外,本發(fā)明的m取n特征可用于建立“雙人規(guī)則”,由此為了避免委托單個個人或 者任何其它實體對可能是敏感數(shù)據(jù)的事務(wù)進行全面訪問,兩個或更多不同實體(每個實體 具有由本發(fā)明的安全解析器解析的分離數(shù)據(jù)的一部分)需要同意將它們的各部分放到一 起以獲取原始數(shù)據(jù)。本發(fā)明的安全數(shù)據(jù)解析器可用于向一組實體提供組范圍密鑰,該組范圍密鑰使組 成員可以訪問由該特定組授權(quán)訪問的特定信息。組密鑰可以是例如為了獲取尋找的信息而 需要與在中心存儲的另一個部分進行組合的、由根據(jù)本發(fā)明的安全解析器產(chǎn)生的數(shù)據(jù)部分 之一。例如,這個特征允許在組內(nèi)實現(xiàn)安全協(xié)作。例如,它可以應(yīng)用于專有網(wǎng)絡(luò)、虛擬專用 網(wǎng)、內(nèi)聯(lián)網(wǎng)、或者任何其它合適網(wǎng)絡(luò)。安全解析器的這種用途的特定應(yīng)用例如包括聯(lián)合信息共享,在聯(lián)合信息共享中, 例如,對多國友好政府軍隊給予基于對每個對應(yīng)國家授權(quán)的安全等級通過單個網(wǎng)絡(luò)或雙重 網(wǎng)絡(luò)(即,與涉及當(dāng)前使用的相對較多人工處理的許多網(wǎng)絡(luò)相比)傳送在操作和其它方面
      55敏感的數(shù)據(jù)的能力。這種能力還可應(yīng)用于公司或其它組織,其中,需要由一個或多個特定個 人(組織內(nèi)或組織外)知道的信息可以經(jīng)由單個網(wǎng)絡(luò)傳送,而不需要擔(dān)心未授權(quán)個人觀看
      該{曰息。另一個特定應(yīng)用包括用于政府系統(tǒng)的多級安全性層級。也就是說,本發(fā)明的安全 解析器可以提供使用單個網(wǎng)絡(luò)以不同等級的機密信息(例如,不機密、機密、秘密、絕密)操 作政府系統(tǒng)的能力。如果需要,可使用更多網(wǎng)絡(luò)(例如,對于絕密使用單獨網(wǎng)絡(luò)),但是本發(fā) 明允許比對每個等級的機密使用獨立網(wǎng)絡(luò)的當(dāng)前布置實質(zhì)更少的布置。應(yīng)該明白,可以使用本發(fā)明的安全解析器的上述的應(yīng)用的任何組合。例如,組密鑰 應(yīng)用能夠與移動中數(shù)據(jù)安全性應(yīng)用一起使用(即,由此,通過網(wǎng)絡(luò)傳送的數(shù)據(jù)僅能夠由對 應(yīng)組的成員訪問,并且在這種情況下,當(dāng)數(shù)據(jù)在移動時,根據(jù)本發(fā)明它在多個路徑中進行分 裂(或者以順序得部分進行發(fā)送))。本發(fā)明的安全數(shù)據(jù)解析器可以集成到任何中間件應(yīng)用中,從而使得應(yīng)用能夠?qū)?shù) 據(jù)安全存儲到不同數(shù)據(jù)庫產(chǎn)品或不同裝置,而不需要對應(yīng)用或數(shù)據(jù)庫進行改動。中間件是 使得兩個獨立和已經(jīng)存在的程序可以進行通信的任何產(chǎn)品的一般術(shù)語。例如,在一個合適 方案中,集成了安全數(shù)據(jù)解析器的中間件可用于使得針對特定數(shù)據(jù)庫編寫的程序與其它數(shù) 據(jù)庫進行通信,而不用定制編碼。本發(fā)明的安全數(shù)據(jù)解析器可以實現(xiàn)為具有例如本文所述的任何合適能力的任何 組合。在本發(fā)明的一些實施例中,例如,安全數(shù)據(jù)解析器可以實現(xiàn)為僅僅具有某些能力,但 是可以通過使用直接或間接與安全數(shù)據(jù)解析器對接的外部軟件、硬件或二者而獲得其它能 力。圖30例如示出了作為安全數(shù)據(jù)解析器3000的安全數(shù)據(jù)解析器的例示性實施方 式。安全數(shù)據(jù)解析器3000可以實現(xiàn)為具有非常少的內(nèi)置能力。如所示,根據(jù)本發(fā)明,安全 數(shù)據(jù)解析器3000可以包括使用模塊3002將數(shù)據(jù)解析和分裂成多個部分(這里也稱作份) 的內(nèi)置能力。安全數(shù)據(jù)解析器3000還可以包括使用模塊3004執(zhí)行冗余從而能夠?qū)崿F(xiàn)例如 上述得m取n特征(即,不需要使用解析和分裂的所有的數(shù)據(jù)份就可以重建原始數(shù)據(jù))的 內(nèi)置能力。根據(jù)本發(fā)明,安全數(shù)據(jù)解析器3000還可以包括使用模塊3006將數(shù)據(jù)份安置到 緩沖器內(nèi)(這些數(shù)據(jù)份從這些緩沖器發(fā)送以傳送至遠(yuǎn)程位置、進行存儲等)的份分布能力。 應(yīng)該明白,任何其它合適能力可以內(nèi)置到安全數(shù)據(jù)解析器3000中。組裝數(shù)據(jù)緩沖器3008可以是用于存儲將由安全數(shù)據(jù)解析器3000進行解析和分裂 的原始數(shù)據(jù)(盡管不一定是它的原始形式)的任何合適存儲器。在分裂操作中,組裝數(shù)據(jù) 緩沖器3008向安全數(shù)據(jù)解析器3008提供輸入。在恢復(fù)操作中,組裝數(shù)據(jù)緩沖器3008可用 于存儲安全數(shù)據(jù)解析器3000的輸出。分裂份緩沖器3010可以是可用于存儲從原始數(shù)據(jù)的解析和分裂獲得的多個數(shù)據(jù) 份的一個或多個存儲器模塊。在分裂操作中,分裂份緩沖器3010保持安全數(shù)據(jù)解析器的輸 出。在恢復(fù)操作中,分裂份緩沖器保持對安全數(shù)據(jù)解析器3000的輸入。應(yīng)該明白,對于安全數(shù)據(jù)分裂器3000,可以內(nèi)置能力的任何其它合適布置??梢詢?nèi) 置任何附加特征,并且可以去除所例示的任何特征,使得所例示的任何特征更加健壯、較不 健壯,或者以任何合適方式對所例示的任何特征進行修改。緩沖器3008和3010同樣僅僅 是例示性的并且可以以任何合適方法進行修改、去除或者添加。
      以軟件、硬件或二者實現(xiàn)的任何合適模塊可以由安全數(shù)據(jù)解析器3000調(diào)用或者 對安全數(shù)據(jù)解析器3000進行調(diào)用。如果需要,即使是內(nèi)置到安全數(shù)據(jù)解析器3000中的能 力也可以由一個或多個外部模塊進行替換。如所示,一些外部模塊包括隨機數(shù)產(chǎn)生器3012、 密碼反饋密鑰產(chǎn)生器3014、哈希算法3016、任何一個或多個類型的加密3018和密鑰管理 3020。應(yīng)該明白,這些僅僅是例示性外部模塊。除了所示這些外部模塊以外或者替代所示 這些外部模塊,還可以使用任何其它合適模塊。密碼反饋密鑰產(chǎn)生器3014可以在安全數(shù)據(jù)解析器3000的外部,為每個安全數(shù)據(jù) 解析器操作產(chǎn)生唯一密鑰或者隨機數(shù)(例如使用隨機數(shù)產(chǎn)生器3012),該唯一密鑰或者隨 機數(shù)用作用于將原始會話密鑰大小(例如,128、256、512或1024比特的值)擴展至等于要 解析和分裂的數(shù)據(jù)的長度的值的操作的種子值。任何合適算法可用于密碼反饋密鑰產(chǎn)生, 例如包括AES密碼反饋密鑰產(chǎn)生算法。為了便于將安全數(shù)據(jù)解析器3000及其外部模塊(S卩,安全數(shù)據(jù)解析器層3026)集 成到應(yīng)用層3024(例如,電子郵件應(yīng)用、數(shù)據(jù)庫應(yīng)用等)中,可以使用可利用例如API函數(shù) 調(diào)用的包裝層??梢允褂帽阌趯踩珨?shù)據(jù)解析器層3026集成到應(yīng)用層3024中的任何其它 合適布置。圖31例示性示出了當(dāng)在應(yīng)用層3024中發(fā)出寫命令(例如,寫入存儲裝置)、插入 命令(例如,插入數(shù)據(jù)庫字段中)或者發(fā)送命令(例如,經(jīng)由網(wǎng)絡(luò))時可以如何使用圖30 的布置。在步驟3100中,識別要保護的數(shù)據(jù)并且調(diào)用安全數(shù)據(jù)解析器。該調(diào)用傳遞到包裝 器層3022,在步驟3102中,包裝器層3022將在步驟3100中識別的輸入數(shù)據(jù)流式傳輸?shù)浇M 裝數(shù)據(jù)緩沖器3008。另外,在步驟3102中,任何合適的份信息、文件名、任何其它合適信息、 或者它們的任何組合可以被存儲(例如,作為包裝器層3022中的信息3106)。根據(jù)本發(fā)明, 安全數(shù)據(jù)處理器3000然后對它從組裝數(shù)據(jù)緩沖器3008作為輸入獲取的數(shù)據(jù)進行解析和分 裂。它將數(shù)據(jù)份輸出到分裂份緩沖器3010。在步驟3104中,包裝器層3022從存儲的信息 3106獲得任何合適份信息(即,在步驟3102中由包裝器層3022存儲的份信息)和份位置 (例如,來自于一個或多個配置文件)。包裝器層3022然后適當(dāng)?shù)貙敵龇?從分裂份緩 沖器3010獲得)執(zhí)行寫操作(例如,寫入一個或多個存儲裝置,在網(wǎng)絡(luò)上傳送,等等)。圖32例示性示出了當(dāng)執(zhí)行讀(例如,從存儲裝置)、選擇(例如,從數(shù)據(jù)庫字段)、 或者接收(例如,從網(wǎng)絡(luò))時可以如何使用圖30的布置。在步驟3200中,識別要恢復(fù)的數(shù) 據(jù)并且從應(yīng)用層3024調(diào)用安全數(shù)據(jù)解析器3000。在步驟3202中,從包裝器層3022獲得 任何合適份信息并且確定份位置。包裝器層3022將在步驟3200中識別的數(shù)據(jù)的部分加載 到分裂份緩沖器3010中。然后,安全數(shù)據(jù)解析器3000根據(jù)本發(fā)明對這些份進行處理(例 如,如果僅可獲得四份中的三份,則可以使用安全數(shù)據(jù)解析器3000的冗余能力,從而僅使 用這三份就能夠恢復(fù)原始數(shù)據(jù))。然后,恢復(fù)的數(shù)據(jù)存儲在組裝數(shù)據(jù)緩沖器3008中。在步 驟3204中,應(yīng)用層3022將存儲在組裝數(shù)據(jù)緩沖器3008中的數(shù)據(jù)轉(zhuǎn)換成它的原始數(shù)據(jù)格式 (如果需要)并且將原始格式的原始數(shù)據(jù)提供給應(yīng)用層3024。應(yīng)該明白,圖31所示的原始數(shù)據(jù)的解析和分裂以及圖32所示的將數(shù)據(jù)部分恢復(fù) 為原始數(shù)據(jù)僅僅是例示性的。除了所示的這些以外或者替代所示的這些,還可以使用任何 其它合適的過程、部件或二者。圖33是根據(jù)本發(fā)明的一個實施例的用于將原始數(shù)據(jù)解析和分裂成兩個或更多數(shù)據(jù)部分的例示性處理流程的框圖。如所示,期望進行解析和分裂的原始數(shù)據(jù)是明文 3306(即,單詞“SUMMIT”用作例子)。應(yīng)該明白,可以根據(jù)本發(fā)明對任何其它類型的數(shù)據(jù)進 行解析和分裂。產(chǎn)生會話密鑰3300。如果會話密鑰3300的長度與原始數(shù)據(jù)3306的長度不 兼容,則可以產(chǎn)生密碼反饋會話密鑰3304。在一個合適方案中,在進行解析、分裂或在二者之前,可以對原始數(shù)據(jù)3306進行 加密。例如,如圖33所示,可將原始數(shù)據(jù)3306與任何合適值(例如,與密碼反饋會話密鑰 3304或者與任何其它合適值)進行異或。應(yīng)該明白,除了所示的X0R技術(shù)以外或者替代所 示的X0R技術(shù),還可以使用任何其它合適的加密技術(shù)。還應(yīng)該明白,盡管針對逐字節(jié)的操作 示出圖33,但是該操作可以以比特級或任何其它合適等級進行。還應(yīng)該明白,如果希望,不 需要對原始數(shù)據(jù)3306進行任何加密。然后,對得到的加密的數(shù)據(jù)(或者原始數(shù)據(jù)(在沒有進行加密的情況下))進行哈 希處理以確定如何在輸出桶(例如,在所示例子中是四個)之間將加密(或者原始)數(shù)據(jù) 分裂。在所示例子中,基于字節(jié)進行哈希處理并且哈希處理是密碼反饋會話密鑰3304的函 數(shù)。應(yīng)該明白,這僅僅是例示性的。如果希望,可以在比特級執(zhí)行哈希處理。哈希處理可以 是除密碼反饋會話密鑰3304以外的任何其它合適值的函數(shù)。在另一個合適方案中,不需要 使用哈希處理。而是可以采用用于對數(shù)據(jù)進行分裂的任何其它合適技術(shù)。圖34是根據(jù)本發(fā)明的一個實施例的用于從原始數(shù)據(jù)3306的兩個或更多的解析和 分裂部分恢復(fù)原始數(shù)據(jù)3306的例示性處理流程的框圖。該處理包括基于密碼反饋會話密 鑰3304對這些部分進行反向哈希處理(S卩,與圖33的過程反向)從而恢復(fù)加密的原始數(shù) 據(jù)(或者原始數(shù)據(jù),如果在解析和分裂之前沒有進行加密的話)。然后可使用加密密鑰來恢 復(fù)原始數(shù)據(jù)(即,在所示的例子中,通過將密碼反饋會話密鑰3304與加密的數(shù)據(jù)進行X0R 處理,使用密碼反饋會話密鑰3304對X0R加密進行解密)。這恢復(fù)了原始數(shù)據(jù)3306。圖35示出了在圖33和圖34的例子中如何實現(xiàn)比特分裂。哈希處理可用于確定 分裂每個數(shù)據(jù)字節(jié)的比特值(例如,基于密碼反饋會話密鑰、基于任何其它合適值)。應(yīng)該 明白,這僅僅是在比特級實施分裂的一個例示性方法。可使用其它合適技術(shù)。應(yīng)該明白,可以針對任何合適哈希算法形成本文所述的哈希功能。這些算法例如 包括MD5和SHA-1??梢栽诓煌瑫r間由本發(fā)明的不同部件使用不同的哈希算法。在根據(jù)以上例示性過程或者通過任何其它過程或算法確定了分裂點后,確定向哪 些數(shù)據(jù)部分附加左段和右段的每一個。任何合適算法可用于執(zhí)行這個確定。例如,在一個 合適方案中,可建立所有可能分布(例如,按照針對左段和針對右段的目的地的配對的形 式)的表,由此,可以通過對可被產(chǎn)生并擴展至原始數(shù)據(jù)的大小的會話密鑰、密碼反饋會話 密鑰或任何其它合適的隨機或偽隨機值中的對應(yīng)數(shù)據(jù)使用任何合適哈希函數(shù),來確定針對 左段和右段的每個的目的地份值。例如,可以產(chǎn)生隨機或偽隨機值中的對應(yīng)字節(jié)的哈希函 數(shù)。該哈希函數(shù)的輸出用于確定從所有目的地組合的表中選擇哪個目的地的配對(即,針 對左段的一個目的地和針對右段的一個目的地)。基于這個結(jié)果,分裂數(shù)據(jù)單元的各段被附 加到由作為哈希函數(shù)的結(jié)果而選擇的表值所指示的對應(yīng)的兩份。根據(jù)本發(fā)明可以將冗余信息附加到數(shù)據(jù)部分從而不需要使用所有的數(shù)據(jù)部分就 能夠恢復(fù)原始數(shù)據(jù)。例如,如果希望四個部分中的兩個部分就足以恢復(fù)數(shù)據(jù),則份中的附加 數(shù)據(jù)可以例如以輪循(round-robin)方式相應(yīng)地附加到每份(例如,當(dāng)原始數(shù)據(jù)的大小是4MB時,份1獲得它自身的份以及份2和份3的份;份2獲得它自身的份以及份3和份4的 份;份3獲得它自身的份以及份4和份1的份;份4獲得它自身的份以及份1和份2的份)。 根據(jù)本發(fā)明,可以使用任何這種合適的冗余。應(yīng)該明白,根據(jù)本發(fā)明,任何其它合適的解析和分裂方案可用于從原始數(shù)據(jù)集產(chǎn) 生多個數(shù)據(jù)部分。例如,可以逐比特地隨機或偽隨機處理解析和分裂??梢允褂秒S機或偽 隨機值(例如,會話密鑰、密碼反饋會話密鑰等),由此,針對原始數(shù)據(jù)中的每個比特,關(guān)于 隨機或偽隨機值中的對應(yīng)數(shù)據(jù)的哈希函數(shù)的結(jié)果可以指示向哪個份附加對應(yīng)比特。在一個 合適方案中,隨機或偽隨機值可以被產(chǎn)生為或者擴展至原始數(shù)據(jù)的大小的8倍,從而可以 關(guān)于原始數(shù)據(jù)的每個比特,對隨機或偽隨機值的對應(yīng)字節(jié)執(zhí)行哈希函數(shù)。根據(jù)本發(fā)明,可以 使用逐比特級解析并分裂數(shù)據(jù)的任何其它合適算法。還應(yīng)該明白,根據(jù)本發(fā)明,冗余數(shù)據(jù)例 如可以以上文剛描述的方式附加到數(shù)據(jù)份。在一個合適方案中,解析和分裂不需要是隨機或偽隨機的。而且,可以使用用于解 析和分裂數(shù)據(jù)的任何合適確定性算法。例如,可以采用將原始數(shù)據(jù)分解成多個順序份,作為 一種解析和分裂算法。另一個例子是逐比特地解析并分裂原始數(shù)據(jù),按照輪循方式順序地 向數(shù)據(jù)份附加每個對應(yīng)比特。還應(yīng)該明白,根據(jù)本發(fā)明,冗余數(shù)據(jù)可以例如以上述方式附加 到數(shù)據(jù)份。在本發(fā)明的一個實施例中,在安全數(shù)據(jù)解析器產(chǎn)生原始數(shù)據(jù)的多個部分后,為了 恢復(fù)原始數(shù)據(jù),某一個或更多的產(chǎn)生的部分可以是強制性的。例如,如果這些部分之一用作 認(rèn)證份(例如,保存在物理令牌裝置上)并且如果使用安全數(shù)據(jù)解析器的容錯特征(即,恢 復(fù)原始數(shù)據(jù)不需要所有的數(shù)據(jù)部分),則即使安全數(shù)據(jù)解析器可訪問足夠數(shù)目的原始數(shù)據(jù) 的部分來恢復(fù)原始數(shù)據(jù),在它恢復(fù)原始數(shù)據(jù)之前仍需要存儲在物理令牌裝置上的認(rèn)證份。 應(yīng)該明白,例如基于應(yīng)用、數(shù)據(jù)類型、用戶、任何其它合適因素、或者它們的任何組合,可要 求任何數(shù)目和類型的特定份。在一個合適方案中,安全數(shù)據(jù)解析器或者安全數(shù)據(jù)解析器的某外部部件可以對原 始數(shù)據(jù)的一個或多個部分進行加密。為了恢復(fù)原始數(shù)據(jù),需要提供并解密加密的部分???用不同的加密密鑰對不同的加密部分進行加密。例如,這個特征可用于實現(xiàn)更安全的“雙人 規(guī)則”,由此,第一用戶將需要具有使用第一加密進行加密的特定份,第二用戶將需要具有 使用第二加密密鑰進行加密的特定份。為了訪問原始數(shù)據(jù),這兩個用戶將需要具有他們各 自的加密密鑰并且提供他們各自的原始數(shù)據(jù)的部分。在一個合適方案中,可用公鑰對一個 或多個數(shù)據(jù)部分(可能是恢復(fù)原始數(shù)據(jù)所需的強制性份)進行加密。然后可用私鑰對該份 進行解密從而用于恢復(fù)成原始數(shù)據(jù)??墒褂美脧娭菩苑莸娜魏芜@種合適范例,其中,恢復(fù)原始數(shù)據(jù)不需要所有份。在本發(fā)明的一個合適實施例中,可以隨機或偽隨機地處理,將數(shù)據(jù)分布到有限數(shù) 目的數(shù)據(jù)份中,從而基于統(tǒng)計觀點,任何特定數(shù)據(jù)份接收特定數(shù)據(jù)單元的概率與剩余份中 的任何一個將接收該數(shù)據(jù)單元的概率相等。結(jié)果,每個數(shù)據(jù)份將具有近似相等的數(shù)據(jù)比特量。根據(jù)本發(fā)明的另一個實施例,有限數(shù)目的數(shù)據(jù)份中的每個不需要具有從原始數(shù)據(jù) 的解析和分裂接收數(shù)據(jù)單元的相等概率。而且,某一份或多份可具有比其余份要高或低的 概率。結(jié)果,某些份與其它份相比,比特大小可以更大或更小。例如,在兩份的情況下,一份
      59可具有接收數(shù)據(jù)單元的概率,而第二份具有99%概率。由此,應(yīng)該明白,一旦數(shù)據(jù)單元 被安全數(shù)據(jù)解析器分布到兩份之中,第一份應(yīng)該具有約1 %的數(shù)據(jù),第二份應(yīng)該具有99 % 的數(shù)據(jù)。根據(jù)本發(fā)明,可使用任何合適概率。應(yīng)該明白,安全數(shù)據(jù)解析器可以被設(shè)計為根據(jù)精確(或者近似精確)的百分比 向份分布數(shù)據(jù)。例如,安全數(shù)據(jù)解析器可以被設(shè)計為將數(shù)據(jù)的80%分布給第一份,將剩余 20%的數(shù)據(jù)分布給第二份。根據(jù)本發(fā)明的另一個實施例,安全數(shù)據(jù)解析器可以產(chǎn)生多個數(shù)據(jù)份,這些數(shù)據(jù)份 中的一個或多個具有預(yù)定大小。例如,安全數(shù)據(jù)解析器可以將原始數(shù)據(jù)分裂成多個數(shù)據(jù)部 分,其中,這些部分之一是精確的256比特。在一個合適方案中,如果不可以產(chǎn)生具有需要 大小的數(shù)據(jù)部分,則安全數(shù)據(jù)解析器可以填塞該部分以使其為正確大小。可使用任何合適 大小。在一個合適方案中,數(shù)據(jù)部分的大小可以是加密密鑰、分裂密鑰、任何其它合適密 鑰、或者任何其它合適數(shù)據(jù)元素的大小。如上所述,在解析和分裂數(shù)據(jù)的過程中,安全數(shù)據(jù)解析器可以使用密鑰。為了清楚 和簡潔,在本文中這些密鑰將被稱作“分裂密鑰”。例如,先前介紹的會話主密鑰是一種分裂 密鑰。另外,如上所述,可以在由安全數(shù)據(jù)解析器產(chǎn)生的數(shù)據(jù)份內(nèi)對分裂密鑰進行保護。用 于保護分裂密鑰的任何合適算法可用于在數(shù)據(jù)份之間對它們進行保護。例如,Shamir算法 可用于保護分裂密鑰,由此,產(chǎn)生可用于重建分裂密鑰的信息并且將其附加到數(shù)據(jù)份。根據(jù) 本發(fā)明可以使用任何其它這樣的合適算法。類似地,可以根據(jù)任何合適算法(例如,Shamir算法)在一個或多個數(shù)據(jù)份內(nèi)對 任何合適的加密密鑰進行保護。例如,可使用Shamir算法或者任何其它合適算法保護用于 在解析和分裂之前對數(shù)據(jù)集進行加密的加密密鑰、用于在解析和分裂后對數(shù)據(jù)部分進行加 密的加密密鑰或者這二者。根據(jù)本發(fā)明的一個實施例,可使用諸如全包變換的全都或全不變換(All or Nothing Transform, AoNT),通過對分裂密鑰、加密密鑰、任何其它合適數(shù)據(jù)元素或者它們 的任何組合進行變換,進一步保護數(shù)據(jù)。例如,用于在根據(jù)本發(fā)明的解析和分裂之前對數(shù)據(jù) 集進行加密的加密密鑰可通過AoNT算法進行變換。然后,變換的加密密鑰可以根據(jù)例如 Shamir算法或者任何其它合適算法分布到各數(shù)據(jù)份之中。為了重建加密密鑰,必須恢復(fù)加 密的數(shù)據(jù)集(例如,如果根據(jù)本發(fā)明使用冗余,則不需要使用所有數(shù)據(jù)份),從而訪問關(guān)于 根據(jù)本領(lǐng)域技術(shù)人員公知的AoNT的變換的必要信息。當(dāng)獲取了原始加密密鑰時,它可用于 對加密的數(shù)據(jù)集進行解密以獲取原始數(shù)據(jù)集。應(yīng)該明白,本發(fā)明的容錯特征可以與AoNT特 征進行結(jié)合使用。也就是說,冗余數(shù)據(jù)可以包括在數(shù)據(jù)部分中,從而恢復(fù)加密的數(shù)據(jù)集不需 要所有的數(shù)據(jù)部分。應(yīng)該明白,除了與在解析和分裂之前的數(shù)據(jù)集對應(yīng)的各個加密密鑰的加密和AoNT 以外或者代替地,AoNT可應(yīng)用于用于在解析和分裂后對數(shù)據(jù)部分進行加密的加密密鑰。同 樣地,AoNT可應(yīng)用于分裂密鑰。在本發(fā)明的一個實施例中,例如可使用工作組密鑰對根據(jù)本發(fā)明使用的加密密 鑰、分裂密鑰或二者進行進一步加密,從而向保護的數(shù)據(jù)集提供額外等級的安全性。在本發(fā)明的一個實施例中,可以提供一個審計模塊,每當(dāng)調(diào)用安全數(shù)據(jù)解析器對數(shù)據(jù)進行分裂時,該審計模塊進行跟蹤。圖36示出了使用根據(jù)本發(fā)明的安全數(shù)據(jù)解析器的部件的可能選項3600。在圖36 中,在下面概要說明選項的每個組合并且用適當(dāng)?shù)牟襟E編號進行標(biāo)記。安全數(shù)據(jù)解析器實 質(zhì)上可以是模塊式的,從而可以在圖36所示的每個功能塊內(nèi)使用任何已知算法。例如,其 它密鑰分裂(例如,秘密共享)算法(例如,Blakely算法)可用于替代Shamir,或者AES 加密可由其它已知加密算法(例如,三重DES)替代。圖36的例子中所示的標(biāo)簽僅僅描繪 用于本發(fā)明的一個實施例中的算法的一個可能組合。應(yīng)該明白,可使用任何合適算法或者 算法組合來替代所標(biāo)記的算法。1)3610、3612、3614、3615、3616、3617、3618、3619在步驟3610中使用先前加密的數(shù)據(jù),該數(shù)據(jù)最終可以分裂成預(yù)定數(shù)目的份。如果 分裂算法要求密鑰,則在步驟3612中可使用密碼術(shù)安全偽隨機數(shù)產(chǎn)生器來產(chǎn)生分裂加密 密鑰。可選地,在步驟3614中可以使用全都或全不變換(AoNT)將分裂加密密鑰變換成變 換分裂密鑰,然后在步驟3615中分裂加密密鑰成為分裂成具有容錯性的預(yù)定數(shù)目的份的 密鑰。在步驟3616中,該數(shù)據(jù)然后可分裂成預(yù)定數(shù)目的份。可以在步驟3617中使用容錯 方案,從而不需要全部的份就可以重新產(chǎn)生數(shù)據(jù)。一旦建立了份,在步驟3618中認(rèn)證/完 整性信息可以嵌入到這些份中??蛇x地,在步驟3619中可對每份進行后置加密。2)3111、3612、3614、3615、3616、3617、3618、3619在一些實施例中,可使用由用戶或外部系統(tǒng)提供的加密密鑰對輸入數(shù)據(jù)進行加 密。在步驟3611中提供外部密鑰。例如,該密鑰可以從外部密鑰庫提供。如果分裂算法要 求密鑰,則在步驟3612中可使用密碼術(shù)安全偽隨機數(shù)產(chǎn)生器產(chǎn)生分裂加密密鑰??蛇x地, 在步驟3614中可以使用全都或全不變換(AoNT)將分裂密鑰變換成變換分裂加密密鑰,然 后在步驟3615中分裂密鑰成為分裂成具有容錯性的預(yù)定數(shù)目的份的密鑰。在步驟3616中, 該數(shù)據(jù)然后分裂成預(yù)定數(shù)目的份。可以在步驟3617中使用容錯方案,從而不需要全部的份 就可以重新產(chǎn)生數(shù)據(jù)。一旦建立了份,在步驟3618中認(rèn)證/完整性信息可以嵌入到這些份 中??蛇x地,在步驟3619中可對每份進行后置加密。3)3612、3613、3614、3615、3612、3614、3615、3616、3617、3618、3619在一些實施例中,在步驟3612中可以使用密碼術(shù)安全偽隨機數(shù)產(chǎn)生器產(chǎn)生加密 密鑰以對數(shù)據(jù)進行變換。在步驟3613中可以使用產(chǎn)生的加密密鑰對數(shù)據(jù)進行加密。可選 地,在步驟3614中可使用全都或全不變換(AoNT)將加密密鑰變換成變換加密密鑰。然后, 在步驟3615中,變換加密密鑰和/或產(chǎn)生的加密密鑰可以被分裂到具有容錯性的預(yù)定數(shù)目 的份中。如果分裂算法要求密鑰,則在步驟3612中使用密碼術(shù)安全偽隨機數(shù)產(chǎn)生器產(chǎn)生分 裂加密密鑰??蛇x地,在步驟3614中可以使用全都或全不變換(AoNT)將分裂密鑰變換成 變換分裂加密密鑰,然后在步驟3615中分裂密鑰成為分裂成具有容錯性的預(yù)定數(shù)目的份 的密鑰。在步驟3616中,該數(shù)據(jù)然后可分裂成預(yù)定數(shù)目的份??梢栽诓襟E3617中使用容 錯方案,從而不需要全部的份就可以重新產(chǎn)生數(shù)據(jù)。一旦建立了份,在步驟3618中認(rèn)證/ 完整性信息可以嵌入到這些份中??蛇x地,在步驟3619中可對每份進行后置加密。4)3612、3614、3615、3616、3617、3618、3619在一些實施例中,數(shù)據(jù)可以被分裂成預(yù)定數(shù)目的份。如果分裂算法要求密鑰,則在 步驟3612中使用密碼術(shù)安全偽隨機數(shù)產(chǎn)生器產(chǎn)生分裂加密密鑰??蛇x地,在步驟3614中可以使用全都或全不變換(AoNT)將分裂密鑰變換成變換分裂密鑰,然后在步驟3615中分 裂密鑰成為分裂成具有容錯性的預(yù)定數(shù)目的份的密鑰。在步驟3616中,該數(shù)據(jù)然后可分裂 成預(yù)定數(shù)目的份??梢栽诓襟E3617中使用容錯方案,從而不需要全部的份就可以重新產(chǎn)生 數(shù)據(jù)。一旦建立了份,在步驟3618中認(rèn)證/完整性信息可以嵌入到這些份中??蛇x地,在 步驟3619中可對每份進行后置加密。盡管以上四個選項組合優(yōu)選用于本發(fā)明的一些實施例,但是在其它實施例中任何 其它合適的特征、步驟或選項的組合可與安全數(shù)據(jù)解析器一起使用。安全數(shù)據(jù)解析器通過使物理分離容易,可以提供靈活的數(shù)據(jù)保護??梢允紫葘?shù) 據(jù)進行加密,然后基于“n取m”容錯性將數(shù)據(jù)分裂成多個份。這使得當(dāng)不能夠獲取全部數(shù) 目的份時仍能夠重新產(chǎn)生原始信息。例如,一些份在傳輸過程中可能丟失或損壞。如下文 更加詳細(xì)的描述,基于附于各份的完整性信息和容錯性,可以重建丟失或損壞的份。 為了建立這些份,可選地,安全數(shù)據(jù)解析器利用多個密鑰。這些密鑰可以包括下面 密鑰中的一個或多個前置加密密鑰當(dāng)選擇各份的前置加密時,外部密鑰可以傳遞至安全數(shù)據(jù)解析器。 這個密鑰可以被產(chǎn)生并且存儲在外部的密鑰庫中(或者其它位置)并且可用于可選地在數(shù) 據(jù)分裂之前對數(shù)據(jù)進行加密。分裂加密密鑰這個密鑰可以在內(nèi)部產(chǎn)生并且由安全數(shù)據(jù)解析器用于在分裂之前 對數(shù)據(jù)進行加密。然后,可以使用密鑰分裂算法將這個密鑰安全地存儲在各份內(nèi)。分裂會話密鑰這個密鑰不用于加密算法,而且當(dāng)選擇了隨機分裂時,它可用作數(shù) 據(jù)劃分算法的密鑰。當(dāng)使用隨機分裂時,可在內(nèi)部產(chǎn)生分裂會話密鑰并且由安全數(shù)據(jù)解析 器用其將數(shù)據(jù)劃分成多個份??梢允褂妹荑€分裂算法將這個密鑰安全地存儲在各份內(nèi)。后置加密密鑰當(dāng)選擇了各份的后置加密時,外部密鑰可以傳遞至安全數(shù)據(jù)解析 器并且用于對各個份進行后置加密。這個密鑰可以產(chǎn)生并且存儲在外部的密鑰庫中或者其 它合適位置。在一些實施例中,當(dāng)以這種方式使用安全數(shù)據(jù)解析器保護數(shù)據(jù)時,只有存在所有 所需的份和外部加密密鑰才可以重裝信息。圖37示出了在一些實施例中使用本發(fā)明的安全數(shù)據(jù)解析器的例示性總覽過程 3700。如上所述,安全數(shù)據(jù)解析器3706的兩個非常合適的功能可以包括加密3702和備份 3704。這樣,在一些實施例中,安全數(shù)據(jù)解析器3706可以與RAID或備份系統(tǒng)或硬件或軟件 密碼引擎集成在一起。與安全數(shù)據(jù)解析器3706關(guān)聯(lián)的主密鑰過程可以包括前置加密過程3708、加密/變 換過程3710、密鑰保護過程3712、解析/分布過程3714、容錯過程3716、份認(rèn)證過程3716 和后置加密過程3720中的一個或多個。如圖36所詳示,這些過程可以按照幾個合適順序 或組合執(zhí)行。使用的過程的組合和順序可以取決于特定應(yīng)用或使用、希望的安全等級、希望 可選的前置加密、后置加密還是二者、希望的冗余、基礎(chǔ)或集成系統(tǒng)的能力或性能、或者任 何其它合適因素或因素的組合。例示性過程3700的輸出可以是兩個或更多的份。如上所述,在一些實施例中,數(shù) 據(jù)可以隨機地(或偽隨機地)分布到這些份中的每一個。在其它實施例中,可使用確定性 算法(或者隨機、偽隨機和確定性算法的某合適組合)。
      除了信息資產(chǎn)的個別保護外,有時候需要在不同用戶組或者關(guān)注團體之間共享信 息。于是需要在用戶組內(nèi)控制對各份的訪問或者在僅僅允許組成員對份進行重裝的那些用 戶之間共享證明。為此,在本發(fā)明的一些實施例中,可將工作組密鑰部署給組成員。由于 工作組密鑰受到危害可潛在允許組外的人訪問信息,所以工作組密鑰應(yīng)該被保護并保持保 密。在下文討論用于工作組密鑰部署和保護的一些系統(tǒng)和方法。通過對存儲在各份內(nèi)的密鑰信息進行加密,工作組密鑰概念允許對信息資產(chǎn)的加 強保護。一旦執(zhí)行了這個操作,即使發(fā)現(xiàn)了所有所需的份和外部密鑰,攻擊方無法訪問工作 組密鑰的話也沒有希望重建信息。圖38示出了在份內(nèi)存儲密鑰和數(shù)據(jù)成分的例示性框圖3800。在圖3800的例子 中,省去了可選的前置加密和后置加密步驟,但是在其它實施例中可以包括這些步驟。分裂數(shù)據(jù)的簡化過程包括在加密階段3802使用加密密鑰3804對數(shù)據(jù)進行加密。 根據(jù)本發(fā)明,加密密鑰3804的部分然后可以被分裂并存儲在各份3810中。分裂加密密鑰 3806的部分也可存儲在各份3810中。使用分裂加密密鑰,數(shù)據(jù)3808于是被分裂并存儲在 各份3810中。為了恢復(fù)數(shù)據(jù),根據(jù)本發(fā)明可以獲取并恢復(fù)分裂加密密鑰3806。然后,可以反轉(zhuǎn)分 裂操作以恢復(fù)密文。還可以獲得并且恢復(fù)加密密鑰3804,然后使用該加密密鑰對密文進行 解密。當(dāng)利用工作組密鑰時,可以稍微改變以上過程以用工作組密鑰保護加密密鑰。于 是,在將加密密鑰存儲在份中之前,加密密鑰可以通過工作組密鑰進行加密。在圖39的例 示性框圖3900中示出了修改的步驟。使用工作組密鑰分裂數(shù)據(jù)的簡化過程包括在階段3902中首先使用加密密鑰對數(shù) 據(jù)進行加密。然后,在階段3904中可以用工作組密鑰對加密密鑰進行加密。然后,用工作 組密鑰加密的加密密鑰可以被分裂成多個部分并且存儲在各份3912內(nèi)。分裂密鑰3908也 可以被分裂并存儲在各份3912中。最后,使用分裂密鑰3908將數(shù)據(jù)3910的部分分裂并存 儲在各份3912中。為了恢復(fù)數(shù)據(jù),根據(jù)本發(fā)明可以獲取并恢復(fù)分裂密鑰。然后,根據(jù)本發(fā)明可以反轉(zhuǎn) 分裂操作以恢復(fù)密文??梢垣@取并恢復(fù)加密密鑰(使用工作組密鑰對其進行了加密)。然 后,可以使用工作組密鑰對加密密鑰進行解密。最后,可使用加密密鑰對密文進行解密。有多種用于部署并保護工作組密鑰的安全方法。選擇哪個方法用于特定應(yīng)用取決 于多個因素。這些因素可以包括所需的安全等級、成本、便利性、以及工作組中用戶的數(shù)目。 下面提供了在一些實施例中使用的一些常用技術(shù)?;谟布拿荑€存儲基于硬件的方案通常為密碼系統(tǒng)內(nèi)的加密/解密密鑰的安全性提供最強保證?;?于硬件的存儲方案的例子包括將密鑰存儲在便攜式裝置(例如,智能卡/加密狗)中的防 篡改密鑰令牌裝置或者非便攜式密鑰存儲外設(shè)。這些裝置被設(shè)計為防止由未授權(quán)方對密鑰 材料進行容易的復(fù)制。密鑰可由信任的機構(gòu)產(chǎn)生并且分布給用戶,或者在硬件內(nèi)產(chǎn)生。此 外,許多密鑰存儲系統(tǒng)提供多因素認(rèn)證,其中,密鑰的使用要求訪問物理對象(令牌)以及 密碼短語(passphrase)或生物測定二者。基于軟件的密鑰存儲
      盡管對于高安全性部署或應(yīng)用會期望專用的基于硬件的存儲,但是可以選擇其它 部署將密鑰直接存儲在本地硬件(例如,盤、RAM或諸如USB驅(qū)動器的非易失性RAM存儲器) 上。針對內(nèi)部攻擊或者在攻擊方能夠直接訪問加密機的情況下,這提供較低等級的保護。為了保護盤上的密鑰,基于軟件的密鑰管理常常通過在從其它認(rèn)證度量(包括口 令和密碼短語、其它密鑰的存在(例如,來自基于硬件的方案)、生物測定、或者上述度量的 任何合適組合)導(dǎo)出的密鑰之下以加密的形式存儲密鑰來對密鑰進行保護。由這些技術(shù)提 供的安全性的等級可以在從由一些操作系統(tǒng)(例如,MS Windows和Linux)提供的相對較 弱密鑰保護機制到使用多因素認(rèn)證實現(xiàn)的更健壯方案的范圍內(nèi)。有利的是,本發(fā)明的安全數(shù)據(jù)解析器可用于多個應(yīng)用和技術(shù)中。例如,電子郵件系 統(tǒng)、RAID系統(tǒng)、視頻廣播系統(tǒng)、數(shù)據(jù)庫系統(tǒng)、磁帶備份系統(tǒng)、或者任何其它合適系統(tǒng)可以具有 以任何合適等級集成的安全數(shù)據(jù)解析器。如上所述,應(yīng)該明白,還可以集成安全數(shù)據(jù)解析器 以用于通過任何傳輸介質(zhì)(例如包括有線、無線或者物理傳輸介質(zhì))的任何類型的移動中 數(shù)據(jù)的保護和容錯。作為一個例子,IP語音(VoIP)應(yīng)用可以利用本發(fā)明的安全數(shù)據(jù)解析器 解決與在VoIP內(nèi)通常存在的回聲和延遲有關(guān)的問題。通過使用容錯可以消除對漏掉包進 行網(wǎng)絡(luò)再試的需要,即使在丟失預(yù)定數(shù)目的份的情況下這仍可以保證包傳送。數(shù)據(jù)包(例 如,網(wǎng)絡(luò)包)還可以以最小延遲和緩沖“即時地(on-the-fly)”被高效地分裂和恢復(fù),從而 獲得針對各種類型的移動中數(shù)據(jù)的綜合方案。安全數(shù)據(jù)解析器可作用于網(wǎng)絡(luò)數(shù)據(jù)包、網(wǎng)絡(luò) 語音包、文件系統(tǒng)數(shù)據(jù)塊、或者任何其它合適的信息單元。除了與VoIP應(yīng)用集成在一起以 外,安全數(shù)據(jù)解析器可以與文件共享應(yīng)用(例如,對等文件共享應(yīng)用)、視頻廣播應(yīng)用、電子 投票或民意調(diào)查應(yīng)用(可以實現(xiàn)例如Sensus協(xié)議的電子投票協(xié)議和盲簽名)、電子郵件應(yīng) 用、或者要求或希望安全通信的任何其它網(wǎng)絡(luò)應(yīng)用集成在一起。在一些實施例中,本發(fā)明的安全數(shù)據(jù)解析器在兩個不同階段(即,首標(biāo)產(chǎn)生階段 和數(shù)據(jù)劃分階段)可以提供對移動中網(wǎng)絡(luò)數(shù)據(jù)的支持。在圖40A和40B中分別示出了簡化 的首標(biāo)產(chǎn)生過程4000和簡化的數(shù)據(jù)劃分過程4010??梢詫W(wǎng)絡(luò)包、文件系統(tǒng)塊、或者任何 其它合適信息執(zhí)行這些過程中的一個或二者。在一些實施例中,在網(wǎng)絡(luò)包流開始時可以執(zhí)行一次首標(biāo)產(chǎn)生過程4000。在步驟 4002中,可以產(chǎn)生隨機(或偽隨機)分裂加密密鑰K。然后,在AES密鑰包裝步驟4004中, (例如,使用上述的工作組密鑰)可選地對分裂加密密鑰K進行加密。盡管在一些實施例中 可以使用AES密鑰包裝,但是在其它實施例中可以使用任何合適的密鑰加密或者密鑰包裝 算法。AES密鑰包裝步驟4004可以對整個分裂加密密鑰K進行操作,或者該分裂加密密鑰 可以被解析成幾個塊(例如,64比特塊)。如果需要,AES密鑰包裝步驟4004然后可以對 分裂加密密鑰的塊進行操作。在步驟4006中,秘密共享算法(例如,Shamir)可用于將分裂加密密鑰K分裂成 多個密鑰份。然后,每個密鑰份可以嵌入到輸出份之一中(例如,份首標(biāo)中)。最后,份完整 性塊和(可選的)后置認(rèn)證標(biāo)記(例如,MAC)可以附于每份的首標(biāo)塊。每個首標(biāo)塊可以被 設(shè)計為適合安置在單個數(shù)據(jù)包內(nèi)。在首標(biāo)產(chǎn)生完成后(例如,使用簡化的首標(biāo)產(chǎn)生過程4000),安全數(shù)據(jù)解析器可使 用簡化的數(shù)據(jù)分裂過程4010進入數(shù)據(jù)劃分階段。在步驟4012中,使用分裂加密密鑰K對 流中的每個輸入數(shù)據(jù)包或數(shù)據(jù)塊進行加密。在步驟4014中,可以對從步驟4012獲得的密文計算份完整性信息(例如,哈希值H)。例如,可以計算出SHA-256哈希值。然后,在步驟 4016中,可以使用根據(jù)本發(fā)明以上描述的數(shù)據(jù)分裂算法之一將數(shù)據(jù)包或數(shù)據(jù)塊劃分成兩個 或更多數(shù)據(jù)份。在一些實施例中,數(shù)據(jù)包或數(shù)據(jù)塊可以被分裂為使得每個數(shù)據(jù)份包含加密 的數(shù)據(jù)包或數(shù)據(jù)塊的基本隨機的分布。然后,完整性信息(例如,哈希值H)可以附于每個 數(shù)據(jù)份。在一些實施例中,還可以計算可選的后置認(rèn)證標(biāo)記(例如,MAC)并且將其附于每 個數(shù)據(jù)份。每個數(shù)據(jù)份可以包括允許數(shù)據(jù)塊或數(shù)據(jù)包的正確重建所需的元數(shù)據(jù)。這個信息可 以包括在份首標(biāo)內(nèi)。元數(shù)據(jù)可以包括諸如密碼密鑰份、密鑰身份、份現(xiàn)時、簽名/MAC值和完 整性塊的信息。為了使帶寬效率最大化,元數(shù)據(jù)可以以緊湊二進制格式存儲。例如,在一些實施例中,份首標(biāo)包括明文首標(biāo)塊,該明文首標(biāo)塊沒有加密并且可以 包括例如Shamir密鑰份、每會話現(xiàn)時、每份現(xiàn)時、密鑰標(biāo)識符(例如,工作組密鑰標(biāo)識符和 后置認(rèn)證密鑰標(biāo)識符)的元素。份首標(biāo)還可以包括通過分裂加密密鑰進行加密的加密的首 標(biāo)塊。完整性首標(biāo)塊也可以包括在該首標(biāo)內(nèi),完整性首標(biāo)塊可以包括對任何數(shù)目的先前塊 (例如,先前兩塊)的完整性檢查。任何其它合適值或信息也可以包括在份首標(biāo)內(nèi)。如圖41的例示性份格式4100所示,首標(biāo)塊4102可與兩個或更多的輸出塊4104 關(guān)聯(lián)。例如首標(biāo)塊4102的每個首標(biāo)塊可被設(shè)計為適合安置在單個網(wǎng)絡(luò)數(shù)據(jù)包內(nèi)。在一些 實施例中,在首標(biāo)塊4102從第一位置發(fā)送至第二位置后,輸出塊然后可以被發(fā)送?;蛘撸?標(biāo)塊4102和輸出塊4104可以同時并行地發(fā)送。可以經(jīng)由一個或更多的類似或不類似的通 信路徑進行該發(fā)送。每個輸出塊可以包括數(shù)據(jù)部分4106和完整性/真實性部分4108。如上所述,可以 使用包括加密的預(yù)先劃分的數(shù)據(jù)的份完整性信息(例如,SHA-256哈希值)的份完整性部 分,對每個數(shù)據(jù)份進行保護。為了在恢復(fù)時驗證輸出塊的完整性,安全數(shù)據(jù)解析器可以比較 每份的份完整性塊并且然后顛倒分裂算法。然后,可以針對份哈希值驗證恢復(fù)的數(shù)據(jù)的哈 希值。如上所述,在本發(fā)明的一些實施例中,安全數(shù)據(jù)解析器可以與磁帶備份系統(tǒng)結(jié)合 使用。例如,根據(jù)本發(fā)明,各個帶子可用作節(jié)點(即,部分/份)。可以使用任何其它合適的 布置。例如,由兩個或更多磁帶組成的磁帶庫或子系統(tǒng)可被看作單個節(jié)點。根據(jù)本發(fā)明,冗余也可以與磁帶一起使用。例如,如果數(shù)據(jù)集分配在四個磁帶 (即,部分/份)之中,則為了恢復(fù)原始數(shù)據(jù)需要這四個磁帶中的兩個。應(yīng)該明白,根據(jù)本發(fā) 明的冗余特征,恢復(fù)原始數(shù)據(jù)可能需要任何合適數(shù)目的節(jié)點(即,少于全部數(shù)目的節(jié)點)。 這實質(zhì)上增大了當(dāng)一個或多個磁帶過期時恢復(fù)的可能性。還可以用SHA-256、HMAC哈希值、任何其它合適值、或者它們的任何組合對每個磁 帶進行數(shù)字保護從而確保不會被篡改。如果磁帶上的任何數(shù)據(jù)或者哈希值變化,則該磁帶 將不會是用于恢復(fù)的候選并且剩余磁帶中的任何最小所需數(shù)目的磁帶將用于恢復(fù)數(shù)據(jù)。在傳統(tǒng)的磁帶備份系統(tǒng)中,當(dāng)用戶請求將數(shù)據(jù)寫入磁帶或者從磁帶讀取數(shù)據(jù)時, 磁帶管理系統(tǒng)(TMS)呈現(xiàn)與物理磁帶安裝對應(yīng)的數(shù)目。這個磁帶安裝指向?qū)惭b數(shù)據(jù)的物 理驅(qū)動器。由人磁帶操作員或者磁帶機器人在磁帶倉中裝載磁帶。在本發(fā)明之下,物理磁帶安裝可被認(rèn)為是指向多個物理磁帶的邏輯安裝點。由于 并行性,這不僅增大了數(shù)據(jù)容量還提高了性能。
      65
      為了提高性能,磁帶節(jié)點可以是或者可以包括用于存儲磁帶映像的盤的RAID陣 列。由于總是可以在受保護的RAID中獲得數(shù)據(jù),所以這可以實現(xiàn)高速恢復(fù)。在任何上述實施例中,可以使用確定性的、概率性、或者既確定性又概率性的數(shù)據(jù) 分布技術(shù),將要保護的數(shù)據(jù)分布到多個份中。為了防止攻擊方開始對任何密碼塊進行密碼 攻擊,密碼塊中的比特可以被確定性地分布到份。例如,可以使用BitSegment(比特段)例 程執(zhí)行分布,或者可以對BlockSegment例程進行修改以允許將塊的部分分布到多個份。這 個策略可以防御累積了少于“M”份的攻擊方。在一些實施例中,可以使用密鑰式信息分散(例如,通過使用密鑰式信息分散算 法或“IDA”),采用密鑰式秘密共享例程。密鑰式IDA的密鑰還可以由一個或多個外部工作 組密鑰、一個或多個共享密鑰、或者工作組密鑰和共享密鑰的任何組合進行保護。這樣,可 以采用多因素秘密共享方案。在一些實施例中,為了重建數(shù)據(jù),至少需要“M”份外加工作組 密鑰(和/或共享密鑰)。IDA(或者IDA的密鑰)還可以被帶入加密過程。例如,變換可 以被帶入明文(例如,在加密之前的前置處理層期間)并且還可以在對明文進行加密之前 進一步對明文進行保護。例如,在一些實施例中,密鑰式信息分散用于將數(shù)據(jù)集中的數(shù)據(jù)的唯一部分分 布到兩個或更多份中。密鑰式信息分散可以使用會話密鑰首先加密數(shù)據(jù)集,然后將數(shù)據(jù) 集的加密的數(shù)據(jù)的唯一部分分布到兩個或更多的加密數(shù)據(jù)集份,或者既對數(shù)據(jù)集加密又 將數(shù)據(jù)集的加密的數(shù)據(jù)的唯一部分分布到兩個或更多加密數(shù)據(jù)集份。例如,為了分布數(shù) 據(jù)集或加密數(shù)據(jù)集的唯一部分,可以使用秘密共享(或者上述方法,例如BitSegment或 BlockSegment (塊段))。會話密鑰然后可以可選地進行變換(例如,使用全包變換或AoNT) 并且例如使用秘密共享(或者密鑰式信息分散和會話密鑰)進行共享。在一些實施例中,在密鑰的唯一部分被分布或分配到兩個或更多會話密鑰份之 前,可以使用共享密鑰(例如,工作組密鑰)對會話密鑰進行加密。然后,通過將至少一個 加密數(shù)據(jù)集份與至少一個會話密鑰份進行組合可以形成兩個或更多用戶份。在形成用戶份 時,在一些實施例中,所述至少一個會話密鑰份可以交織到加密的數(shù)據(jù)集份中。在其它實施 例中,所述至少一個會話密鑰份可以在至少部分基于共享的工作組密鑰的位置插入到加密 數(shù)據(jù)集份中。例如,密鑰式信息分散可用于將每個會話密鑰份分布到唯一加密數(shù)據(jù)集份以 形成用戶份。在至少部分基于共享工作組的位置將會話密鑰份交織或插入到加密數(shù)據(jù)集份 可以提高面對密碼攻擊的安全性。在其它實施例中,一個或更多會話密鑰份可以附于加密 數(shù)據(jù)集份的開始或末端以形成用戶份。然后,用戶份的集合可以單獨地存儲在至少一個數(shù) 據(jù)儲存器上。該數(shù)據(jù)儲存器或多個數(shù)據(jù)儲存器可以位于同一物理位置(例如,位于同一磁 或磁帶存儲裝置上)或者在地理上分離(例如,位于不同地理位置處的物理分離的服務(wù)器 上)。為了重建原始數(shù)據(jù)集,需要一組授權(quán)的用戶份和共享的工作組密鑰。即使在面對密鑰獲取啟示器(oracle)時,密鑰式信息分散仍是安全的。例如,取 塊密碼E和針對E的密鑰獲取啟示器,該針對E的密鑰獲取啟示器取對塊密碼的輸入/輸
      出對的列表(Ui)........(XC,YC)并且返回與輸入/輸出例子一致的密鑰K(例如,對于
      所有HzEjXi))。如果沒有一致的密鑰,則該啟示器可以返回特異值丄。這個啟示器可 以模擬可從輸入/輸出例子的列表恢復(fù)密鑰的密碼分析攻擊。在存在密鑰獲取啟示器的情況下,標(biāo)準(zhǔn)的基于塊密碼的方案可能會失敗。例如,在存在密鑰獲取啟示器的情況下,CBC加密或者CBCMAC可能變得完全不安全。如果11_是IDA方案并且IIEne是由某塊密碼E的操作模式給出的加密方案,則如 果在對手具有密鑰獲取啟示器的模式下這兩種方案與按照HK1或HK2的任意完美秘密共享 方案(PSS)進行組合時達到健壯計算秘密共享(RCSS)目標(biāo),則(IIIDA,IIEnc;)提供了面對密 鑰獲取攻擊的安全性。如果存在IDA方案IIIDA和加密方案IIEne以使得這對方案提供面對密鑰獲取攻擊 的安全性,則實現(xiàn)這對方案的一個方法是具有“聰明(clever) ” IDA和“愚笨(dumb) ”加密 方案。實現(xiàn)這對方案的另一個方法是具有“愚笨” IDA和“聰明”加密方案。為了示出聰明IDA和愚笨加密方案的使用,在一些實施例中,加密方案可以是CBC 并且IDA可以具有“弱私密”性質(zhì)。弱私密性質(zhì)例如是指如果對IDA的輸入是塊的隨機序 列M = M” . . Mi并且對手從未授權(quán)的集合獲得份,則存在某塊索引i使得對手無法計算Mi0 通過首先向M應(yīng)用信息理論AoNT (例如,Stinson的AoNT)然后應(yīng)用例如BlockSegment的 簡單IDA或者如Rabin方案(例如,Reed-Solomon編碼)的比特高效IDA,可以建立弱私密 IDA。為了示出愚笨IDA和聰明加密方案的使用,在一些實施例中,可以使用以雙重加 密替代單加密的CBC模式。現(xiàn)在,即使在復(fù)制的情況下仍可以使用任何IDA。由于對手將被 拒絕任何單加密的輸入/輸出例子,所以對于對手來講具有針對塊密碼的密鑰獲取啟示器 是無用的。盡管聰明IDA具有價值,但是在一些環(huán)境下它也是無關(guān)緊要的,這意味著提供面 對密鑰獲取攻擊的安全性所需的“聰明”本可被“推送”到別處。例如,在一些實施例中,不 管IDA如何聰明,以及不管在HK1/HK2環(huán)境下用IDA嘗試達到什么目標(biāo),聰明可被從IDA推 出并且推進加密方案,從而留下固定且愚笨的IDA?;谝陨蟽?nèi)容,在一些實施例中,可以使用“普遍健全”的聰明IDAIIida。例如,提 供IDA從而使得對于所有的加密方案IIEn%對(IIIDA,IIEnc)普遍地提供面對密鑰獲取攻擊 的安全性。在一些實施例中,提供一種加密方案,該加密方案在面對密鑰獲取啟示器時是 RCSS安全的。該方案可以與HK1/HK2、與任何IDA集成以達到面對密鑰獲取的安全性。使 用新方案可能特別有用,例如,使對稱加密方案對于密鑰獲取攻擊更加安全。如上所述,經(jīng)典秘密共享概念通常不是密鑰式的。因此,將秘密分解成多份,或者 按照既不要求經(jīng)銷商也不要求重建秘密的一方持有任何類型的對稱或非對稱密鑰的方式 從這些份重建秘密。然而,可選地,本文所述的安全數(shù)據(jù)解析器可以是密鑰式的。經(jīng)銷商可 提供對稱密鑰,如果這個對稱密鑰用于數(shù)據(jù)共享,則進行數(shù)據(jù)恢復(fù)需要這個對稱密鑰。安全 數(shù)據(jù)解析器可以使用該對稱密鑰把要保護的消息的唯一部分分散或分布到兩個或更多份。共享的密鑰可以實現(xiàn)多因素或兩因素秘密共享(2FSS)。于是,對手需要排除兩個 基本不同類型的安全性以破壞安全性機制。例如,為了侵犯秘密共享目標(biāo),對手⑴需要 獲得一組授權(quán)的玩家的份;(2)需要獲得應(yīng)該不能獲得的秘密密鑰(或者破壞通過該密鑰 進行密鑰式控制的加密機制)。在一些實施例中,一組新的附加要求添加到RCSS目標(biāo)。這些附加要求可以包括 “第二因素”,即密鑰擁有??梢约尤脒@些附加要求而不減少原始的一組要求。一組要求可以涉及如果對手知道秘密密鑰但沒有獲得足夠份也不能夠破壞方案(例如,經(jīng)典或第一因 素要求),而另一組要求可以涉及如果對手具有秘密密鑰但設(shè)法獲得所有的份也不能夠破 壞方案(例如,新的或第二因素要求)。在一些實施例中,存在兩個第二因素要求私密要求和真實性要求。在私密要求 中,涉及一個博弈,其中,由環(huán)境選擇秘密密鑰K和比特b。對手現(xiàn)在在秘密共享方案的域中
      提供一對等長消息和M/。環(huán)境計算M113的份以獲得份的矢量S1 = (S1Ll].....S1Ln]),
      并且它將份S1 (所有它們)給予對手。使用相同密鑰K和隱藏的比特b,對手現(xiàn)在可以選擇 另一對消息(M2°,M21)并且任何事情如上進行。對手的工作是輸出他相信為b的比特b'。 對手私密優(yōu)勢是1小于b = b'的概率的兩倍。該博弈獲得如下概念即使獲知所有份,如 果缺少秘密密鑰,對手仍不能夠獲知關(guān)于共享秘密的任何事。在真實性要求中,可以涉及一個博弈,其中,環(huán)境選擇私密密鑰K并且在接下來對 Share和Recover的調(diào)用中使用它。在一些實施例中,Share和Recover可以修改它們的語
      法以反映這個密鑰的存在。然后,對手對它在秘密共享方案的域中選擇的任何消息M1.....
      Mq進行Share請求。響應(yīng)于每個Share請求,它獲得份S1.....Sq的對應(yīng)η矢量。對手的目
      的是偽造新的明本;如果它輸出份S'的矢量使得當(dāng)送給Recover算法時產(chǎn)生不在{Μρ..、 MJ中的東西則它獲勝。這是“明文完整性”概念。有兩種實現(xiàn)多因素秘密共享的方案。第一種方案是通用方案,在以黑盒方式使用 基本(R)CSS方案的意義上的通用。認(rèn)證的加密方案用于對要進行CSS共享的消息進行加 密,然后例如可以使用秘密共享算法(例如,Blakely或Sbamir)對得到的密文進行分配。潛在更加高效的方案是允許共享密鑰是工作組密鑰。也就是說,(1)可以使用共 享密鑰對(R)CSS方案的隨機產(chǎn)生的會話密鑰進行加密,(2)應(yīng)用于消息(例如,文件)的 加密方案可由認(rèn)證的加密方案替代。這個方案會使性能僅蒙受最小的下降。盡管在上文描述了安全數(shù)據(jù)解析器的一些應(yīng)用,但是應(yīng)該清楚地明白,本發(fā)明可 以與任何網(wǎng)絡(luò)應(yīng)用進行集成以提高安全性、容錯性、匿名、或者上述的任何合適組合。此外,鑒于本文的公開,熟練技術(shù)人員將明白其它的組合、添加、替代和修改。
      68
      權(quán)利要求
      一種保護數(shù)據(jù)集的方法,所述方法包括產(chǎn)生會話密鑰;使用會話密鑰對數(shù)據(jù)集進行加密以生成加密的數(shù)據(jù)集;用共享的工作組密鑰對會話密鑰進行加密;將加密的會話密鑰的各唯一部分分布到兩個或更多會話密鑰份中;將加密的數(shù)據(jù)集的各唯一部分分布到兩個或更多加密數(shù)據(jù)集份中;通過將至少一個會話密鑰份與至少一個加密數(shù)據(jù)集份進行組合,形成兩個或更多用戶份;以及將所述兩個或更多用戶份分離地存儲在至少一個數(shù)據(jù)儲存器上,由此可以從所述兩個或更多用戶份中的至少兩個以及共享的工作組密鑰恢復(fù)所述數(shù)據(jù)集。
      2.根據(jù)權(quán)利要求1的方法,其中,使用健壯計算秘密共享(RCSS)執(zhí)行分布會話密鑰的 各唯一部分和分布加密的數(shù)據(jù)集的各唯一部分中的至少一個操作。
      3.根據(jù)權(quán)利要求1的方法,其中,通過將至少一個會話密鑰份與至少一個加密數(shù)據(jù)集 份進行組合形成兩個或更多用戶份包括將所述至少一個會話密鑰份交織到所述至少一個 加密數(shù)據(jù)集份中。
      4.根據(jù)權(quán)利要求1的方法,其中,通過將至少一個會話密鑰份與至少一個加密數(shù)據(jù)集 份進行組合形成兩個或更多用戶份包括在至少部分基于共享的工作組密鑰的位置,將所 述至少一個會話密鑰份插入到所述至少一個加密數(shù)據(jù)集份中。
      5.根據(jù)權(quán)利要求1的方法,其中,將所述兩個或更多用戶份分離地存儲在至少一個數(shù) 據(jù)儲存器上包括將所述兩個或更多用戶份存儲在同一數(shù)據(jù)儲存器的不同位置上。
      6.根據(jù)權(quán)利要求1的方法,其中,將所述兩個或更多用戶份分離地存儲在至少一個數(shù) 據(jù)儲存器上包括將所述兩個或更多用戶份存儲在不同的數(shù)據(jù)儲存器上。
      7.根據(jù)權(quán)利要求1的方法,其中,將所述兩個或更多用戶份分離地存儲在至少一個數(shù) 據(jù)儲存器上包括將所述兩個或更多用戶份存儲在不同地理位置處的不同數(shù)據(jù)儲存器上。
      8.根據(jù)權(quán)利要求1的方法,其中,將加密的數(shù)據(jù)集的各唯一部分分布到兩個或更多加 密數(shù)據(jù)集份中包括至少部分基于會話密鑰產(chǎn)生隨機數(shù)或偽隨機數(shù); 將所述隨機數(shù)或偽隨機數(shù)與所述兩個或更多加密數(shù)據(jù)集份進行關(guān)聯(lián); 將所述隨機數(shù)或偽隨機數(shù)與加密的數(shù)據(jù)集的數(shù)據(jù)單元進行關(guān)聯(lián);以及 至少部分基于所述隨機數(shù)或偽隨機數(shù)與所述兩個或更多用戶份以及與所述數(shù)據(jù)單元 的關(guān)聯(lián),確定將每個數(shù)據(jù)單元分布到所述兩個或更多加密數(shù)據(jù)集份中的哪一個中。
      9.根據(jù)權(quán)利要求8的方法,其中,所述數(shù)據(jù)單元包括數(shù)據(jù)集中的數(shù)據(jù)的字節(jié)。
      10.根據(jù)權(quán)利要求8的方法,其中,所述數(shù)據(jù)單元包括數(shù)據(jù)集中的數(shù)據(jù)的比特。
      11.一種保護數(shù)據(jù)集的設(shè)備,所述設(shè)備包括 至少一個數(shù)據(jù)儲存器;以及用戶系統(tǒng),被配置為 產(chǎn)生會話密鑰;使用會話密鑰對數(shù)據(jù)集進行加密以生成加密的數(shù)據(jù)集; 使用共享的工作組密鑰對會話密鑰進行加密;將加密的會話密鑰的各唯一部分分布到兩個或更多會話密鑰份中; 將加密的數(shù)據(jù)集的各唯一部分分布到兩個或更多加密數(shù)據(jù)集份中; 通過將至少一個會話密鑰份與至少一個加密數(shù)據(jù)集份進行組合,形成兩個或更多用戶 份;以及將所述兩個或更多用戶份分離地存儲在所述至少一個數(shù)據(jù)儲存器上,由此可以從所述 兩個或更多用戶份中的至少兩個以及共享的工作組密鑰恢復(fù)所述數(shù)據(jù)集。
      12.根據(jù)權(quán)利要求11的設(shè)備,其中,用戶系統(tǒng)被配置為使用健壯計算秘密共享(RCSS) 來分布會話密鑰的各唯一部分和加密的數(shù)據(jù)集的各唯一部分中的至少一個。
      13.根據(jù)權(quán)利要求11的設(shè)備,其中,用戶系統(tǒng)被配置為通過將所述至少一個會話密鑰 份交織到所述至少一個加密數(shù)據(jù)集份來形成所述兩個或更多用戶份。
      14.根據(jù)權(quán)利要求11的設(shè)備,其中,用戶系統(tǒng)被配置為通過在至少部分基于共享的工 作組密鑰的位置,將所述至少一個會話密鑰份插入到所述至少一個加密數(shù)據(jù)集份中而形成 兩個或更多用戶份。
      15.根據(jù)權(quán)利要求11的設(shè)備,其中,用戶系統(tǒng)被配置為將所述兩個或更多用戶份分離 地存儲在同一數(shù)據(jù)儲存器的不同位置上。
      16.根據(jù)權(quán)利要求11的設(shè)備,其中,用戶系統(tǒng)被配置為將所述兩個或更多用戶份分離 地存儲在不同的數(shù)據(jù)儲存器上。
      17.根據(jù)權(quán)利要求11的設(shè)備,其中,用戶系統(tǒng)被配置為將所述兩個或更多用戶份分離 地存儲在不同地理位置處的不同數(shù)據(jù)儲存器上。
      18.根據(jù)權(quán)利要求11的設(shè)備,其中,用戶系統(tǒng)被配置為通過下面的操作將加密的數(shù)據(jù) 集的各唯一部分分布到兩個或更多加密數(shù)據(jù)集份中至少部分基于會話密鑰產(chǎn)生隨機數(shù)或偽隨機數(shù); 將所述隨機數(shù)或偽隨機數(shù)與所述兩個或更多加密數(shù)據(jù)集份進行關(guān)聯(lián); 將所述隨機數(shù)或偽隨機數(shù)與加密的數(shù)據(jù)集的數(shù)據(jù)單元進行關(guān)聯(lián);以及 至少部分基于所述隨機數(shù)或偽隨機數(shù)與所述兩個或更多用戶份以及與所述數(shù)據(jù)單元 的關(guān)聯(lián),確定將每個數(shù)據(jù)單元分布到所述兩個或更多加密數(shù)據(jù)集份中的哪一個中。
      19.根據(jù)權(quán)利要求18的設(shè)備,其中,所述數(shù)據(jù)單元包括數(shù)據(jù)集中的數(shù)據(jù)的字節(jié)。
      20.一種機器可讀介質(zhì),其上記錄有機器程序邏輯,該機器程序邏輯用于 產(chǎn)生會話密鑰;使用會話密鑰對數(shù)據(jù)集進行加密以生成加密的數(shù)據(jù)集; 用共享的工作組密鑰對會話密鑰進行加密; 將加密的會話密鑰的各唯一部分分布到兩個或更多會話密鑰份中; 將加密的數(shù)據(jù)集的各唯一部分分布到兩個或更多加密數(shù)據(jù)集份中; 通過將至少一個會話密鑰份與至少一個加密數(shù)據(jù)集份進行組合,形成兩個或更多用戶 份;以及將所述兩個或更多用戶份分離地存儲在至少一個數(shù)據(jù)儲存器上,由此可以從所述兩個 或更多用戶份中的至少兩個以及共享的工作組密鑰恢復(fù)所述數(shù)據(jù)集。
      全文摘要
      提供了一種安全數(shù)據(jù)解析器,該安全數(shù)據(jù)解析器可以集成到用于安全存儲并傳送數(shù)據(jù)的任何合適系統(tǒng)中。該安全數(shù)據(jù)解析器對數(shù)據(jù)進行解析然后將數(shù)據(jù)分裂成以不同方式存儲或傳送的多個部分。為了附加安全性,可以采用原始數(shù)據(jù)的加密、數(shù)據(jù)部分的加密或者二者。該安全數(shù)據(jù)解析器可用于通過將原始數(shù)據(jù)分裂成可使用多個通信路徑傳送的多個數(shù)據(jù)部分來保護移動中數(shù)據(jù)。還可以使用密鑰式信息分散算法(密鑰式IDA)。此外,可以通過外部工作組密鑰保護密鑰式IDA的密鑰,從而生成多因素秘密共享方案。
      文檔編號H04L9/00GK101939946SQ200980104729
      公開日2011年1月5日 申請日期2009年1月7日 優(yōu)先權(quán)日2008年1月7日
      發(fā)明者M·S·奧哈雷, M·貝爾拉里, P·羅加威, R·L·奧西尼 申請人:安全第一公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1