国产精品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)和方法

      文檔序號:6503358閱讀:229來源:國知局
      數(shù)據(jù)保護系統(tǒng)和方法
      【專利摘要】一種基于可通過PIN訪問的令牌的認(rèn)證系統(tǒng),能夠?qū)ΥWo數(shù)據(jù)的訪問進行授權(quán)或拒絕,令牌具有存儲器,存儲器存儲:包含字母數(shù)字信息項和插入在信息項之間的隨機字母數(shù)字?jǐn)?shù)據(jù)項的數(shù)組;以及包含有關(guān)數(shù)組中信息項的排列和每個隨機數(shù)據(jù)項的字節(jié)大小信息的加密類型印鑒方案向量,以在數(shù)組中相應(yīng)的位置訪問每個信息項。認(rèn)證系統(tǒng)用于:通過輸入正確的PIN經(jīng)受對令牌的訪問;解密印鑒方案向量;獲取信息項的排列信息和印鑒方案向量中每個隨機數(shù)據(jù)項的大小信息;檢查獲取的排列信息和數(shù)組中信息項的有效排列之間的對應(yīng)關(guān)系,以及獲取的大小信息和隨機數(shù)據(jù)的有效大小之間的對應(yīng)關(guān)系;根據(jù)檢查結(jié)果,授權(quán)或拒絕對待保護數(shù)據(jù)的訪問。
      【專利說明】數(shù)據(jù)保護系統(tǒng)和方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及一種保護信息數(shù)據(jù)的系統(tǒng)和方法,尤其涉及一種用于對待保護信息數(shù)據(jù)的訪問進行授權(quán)的認(rèn)證系統(tǒng)和方法。
      【背景技術(shù)】
      [0002]現(xiàn)有多種數(shù)據(jù)保護的方法,特別是用于對保護信息的訪問進行授權(quán)和/或允許執(zhí)行計算機程序(軟件)以獲得使用保護信息的許可的方法。
      [0003]現(xiàn)有方法考慮到了密鑰的使用,該密鑰不為用戶所知,但可以通過購買使用目標(biāo)軟件所需的許可獲取。該方法也存在缺陷:非法用戶可以通過盜用復(fù)制密鑰使用相關(guān)軟件。
      [0004]其他方法考慮到了使用稱之為令牌的設(shè)備,令牌能夠基于用戶已知的算法生成密碼,該密碼通常由數(shù)字組成。典型的,在二因子認(rèn)證方案中,該密碼取依賴于隨時間(例如時間、日期等)變化的參數(shù)加上用戶選擇的已知部分(稱為個人識別碼,或更簡單的稱為PIN)的值,以便不易于復(fù)制。然而,該方法具有以下缺陷:任何人清楚,用戶通常會選擇容易記住的時間和PIN(實際上,用戶經(jīng)常將自己的生日日期、或自己愛人的名字等設(shè)為PIN)。目前,這種類型的方案所提供的信息保護,已面臨各種類型的攻擊,因此,信息保護力度已經(jīng)大打折扣。
      [0005]其他已知方法包括:將軟件整個部分都存儲在令牌中。然而,這樣的話,鑒于軟件運行時,需要訪問這些部分,將其編譯然后執(zhí)行,軟件的運行速度將受到影響。因而,通常僅在軟件的啟動階段執(zhí)行檢查,而非在使用軟件的整個過程中。

      【發(fā)明內(nèi)容】

      [0006]本發(fā)明的目的在于,提供一種數(shù)據(jù)保護系統(tǒng)和方法,以克服現(xiàn)有技術(shù)的缺陷。
      [0007]詳細(xì)地,所述認(rèn)證系統(tǒng)基于可通過PIN訪問的令牌,且用于授權(quán)或拒絕對待保護數(shù)據(jù)的訪問,所述令牌具有存儲器,該存儲器存儲:包含數(shù)字、和/或字母加數(shù)字(alphanumerical)、和/或字母類型的信息項,和數(shù)字、和/或字母加數(shù)字、和/或字母數(shù)字隨機數(shù)據(jù)項的數(shù)組,所述隨機數(shù)據(jù)項以數(shù)組的讀順序插入在直接連續(xù)的信息項直接;以及包含有關(guān)所述數(shù)組中信息項的排列的信息和有關(guān)每個隨機數(shù)據(jù)項的大小的信息(典型地,大小以比特數(shù)計算)的加密印鑒方案向量(或印鑒方案數(shù)組),以在所述數(shù)組中各自的位置訪問所述信息項。所述認(rèn)證系統(tǒng)用于:通過輸入正確的PIN來經(jīng)受對所述令牌的訪問;解密所述印鑒方案向量;獲取信息項的排列信息和所述印鑒方案向量中的每個隨機數(shù)據(jù)項所占用的空間的信息;檢查獲取的排列信息和數(shù)組中信息項的有效排列之間的對應(yīng)關(guān)系,以及獲取的大小信息和隨機數(shù)據(jù)的有效大小之間的對應(yīng)關(guān)系;根據(jù)上述對應(yīng)關(guān)系的檢查結(jié)果,授權(quán)或拒絕對所述待保護數(shù)據(jù)的訪問。
      [0008]根據(jù)本發(fā)明,提供了 一種用于對待保護信息的訪問進行授權(quán)的認(rèn)證系統(tǒng),包括硬件令牌,所述硬件令牌具有包括私有存儲區(qū)域的存儲器,所述私有訪問區(qū)域可通過個人識別碼進行訪問,且存儲:數(shù)字、和/或字母加數(shù)字、和/或字母類型的多個第一信息項;以及數(shù)字、和/或字母加數(shù)字、和/或字母類型的多個第一隨機數(shù)據(jù)項(RBX, y),每個第一隨機數(shù)據(jù)項具有各自的大小。將所述第一信息項和所述第一隨機數(shù)據(jù)項排列在數(shù)組內(nèi),所述數(shù)組具有至少一個讀取順序且使得每個所述第一信息項與下一第一信息項以所述讀取順序,被
      一個所述第一隨機數(shù)據(jù)項分離。所述私有存儲區(qū)域進一步存儲加密類型的第一印鑒方案向量,所述第一印鑒方案向量包含所述數(shù)組中所述第一信息項的第一相對排列信息,以及每個第一隨機數(shù)項的第一大小信息,以允許對所述數(shù)組中每個所述第一信息項進行訪問。所述認(rèn)證系統(tǒng)進一步用于:
      [0009]通過插入所述個人識別碼經(jīng)受對所述私有存儲區(qū)域的訪問;
      [0010]解密所述第一印鑒方案向量,并獲取所述數(shù)組中所述第一信息項的第一相對排列信息,以及每個第一隨機數(shù)項的所述第一大小信息;
      [0011]檢查所述獲取的第一相對排列信息和所述數(shù)組中所述第一信息項的排列之間的對應(yīng)關(guān)系,以及所述獲取的第一大小信息和所述數(shù)組中第一隨機數(shù)據(jù)項的大小之間的對應(yīng)關(guān)系;
      [0012]根據(jù)所述獲取的第一相對排列信息和所述數(shù)組中所述第一信息項的排列之間的對應(yīng)關(guān)系,以及所述獲取的第一大小信息和所述第一隨機數(shù)據(jù)項的各自大小之間的對應(yīng)關(guān)系的檢查結(jié)果,授權(quán)或拒絕對所述待保護信息項的訪問。
      [0013]根據(jù)本發(fā)明,還提供了一種用于對待保護信息的訪問進行授權(quán)的認(rèn)證方法,包括以下步驟:
      [0014]獲取數(shù)字、和/或字母加數(shù)字、和/或字母類型的多個第一信息項;
      [0015]生成數(shù)字、和/或字母加數(shù)字、和/或字母類型的多個第一隨機數(shù)據(jù)項,其中每個第一隨機數(shù)據(jù)項具有各自的大?。?br> [0016]將所述第一信息項和所述第一隨機數(shù)據(jù)項排列在數(shù)組內(nèi),所述數(shù)組具有至少一個讀取順序,且使得每個所述第一信息項與下一第一信息項,以所述讀取順序,被一個所述第一隨機數(shù)據(jù)項分離;
      [0017]生成加密類型的第一印鑒方案向量,所述第一印鑒方案向量包含所述數(shù)組中所述第一信息項的第一相對排列信息,以及每個第一隨機數(shù)項的第一大小信息,以允許對所述數(shù)組中每個所述第一信息項進行訪問;
      [0018]經(jīng)受對所述待保護信息的訪問授權(quán)的進一步準(zhǔn)許以:(i)輸入個人識別碼;(ii)解密所述第一印鑒方案向量,并獲取所述第一相對排列信息和所述第一大小信息;以及(iii)檢查所述獲取的第一相對排列信息和所述數(shù)組中所述第一信息項的排列之間的對應(yīng)關(guān)系,以及所述獲取的第一大小信息和所述數(shù)組中所述第一隨機數(shù)據(jù)項的大小之間的對應(yīng)關(guān)系;
      [0019]當(dāng)所述對應(yīng)關(guān)系檢查結(jié)果為“是”時,授權(quán)所述認(rèn)證。
      【專利附圖】

      【附圖說明】
      [0020]為了更好的理解本發(fā)明,以下將通過非限制的示例,結(jié)合附圖,對本發(fā)明的優(yōu)選實施方式進行詳細(xì)描述。附圖中:
      [0021]-圖1示意所示為生成認(rèn)證密鑰的設(shè)備或令牌;
      [0022]-圖2所示為適用于可操作地連接至圖1所示令牌的本質(zhì)上已知類型的計算機;[0023]-圖3[0024]-圖4信息項的數(shù)組;[0025]-圖5[0026]-圖6[0027]-圖7[0028]-圖8
      所示為根據(jù)本發(fā)明實施例的數(shù)據(jù)保護方法的步驟流程圖;
      以圖表形式示出包括根據(jù)圖3所示方法的步驟10和12編碼的多個數(shù)據(jù)
      所示為圖4中的數(shù)組的另一種不同圖形表示; 所示為圖3中的方法的分步驟的流程圖;
      所示為圖3中的方法的進一步的分步驟的流程圖;以及所示為根據(jù)本發(fā)明的數(shù)據(jù)保護方法的進一步的步驟流程圖。
      【具體實施方式】
      [0029]本說明書涉及一種保護數(shù)據(jù)的方法和系統(tǒng),尤其涉及密碼或加密電子數(shù)據(jù)。
      [0030]更加詳細(xì)地,本發(fā)明提供的保護級別包括:物理級,包括認(rèn)證設(shè)備或令牌,其能夠生成偽隨機認(rèn)證碼,例如,以數(shù)字、字母或字母加數(shù)字的形式;和軟件級,包括通過計算程序?qū)崿F(xiàn)的加密步驟。
      [0031]如圖1所示的由附圖標(biāo)記I指示的認(rèn)證令牌,包括已知類型的微處理器2,能夠在用戶請求時根據(jù)某個算法生成偽隨機認(rèn)證代碼,該算法綜合考慮了多個因子,諸如,例如,認(rèn)證令牌I的序列號、當(dāng)前日期值、認(rèn)證令牌I內(nèi)部時鐘定義的時間值或其它因子。該值通過基于時間的算法,利用硬件生成,不同廠商的令牌的序列號也不同。典型的,令牌如何生成偽隨機代碼的過程并未公開,并且每個令牌供應(yīng)商都采用專有算法。本發(fā)明提供的方法與認(rèn)證代碼生成方式無關(guān),因此認(rèn)證碼生成方式不再進一步描述。
      [0032]認(rèn)證令牌還包括存儲器4,例如,閃存,該存儲器與微處理器2連接。
      [0033]生成認(rèn)證碼的程序駐留于認(rèn)證令牌的存儲器4中,特別地,在存儲器4的私有區(qū)域4a中,該私有區(qū)域用于存儲那些可以通過關(guān)鍵字或PIN(Personal IdentificationNumber,個人識別碼)訪問的敏感數(shù)據(jù)。存儲器4的公共區(qū)域4a可存儲公共性質(zhì)的證書及非敏感信息。
      [0034]PIN自動生成并且不提供給終端用戶。在安裝后,或當(dāng)軟件第一次運行時,提示用戶選擇一個密碼以解鎖PIN使用并且存儲哈希值(即:在數(shù)據(jù)庫中不可逆或“有難度”可逆的操作的結(jié)果)。
      [0035]存儲器4的私有區(qū)域4a可以是隱藏類型(用戶不知道其存在),或?qū)τ脩艨梢姷L問受到關(guān)鍵字或密碼保護。該密碼可以修改,修改需要供應(yīng)商生成的種子記錄及令牌管理員的授權(quán)(稱為安全專員)。令牌管理員的授權(quán)受到另一密碼保護,通常可以修改,但不能覆寫。該另一密碼為預(yù)設(shè)值且保存在一個安全的位置。
      [0036]存儲器4的私有區(qū)域4a可以用于存儲大量數(shù)據(jù)和/或信息,該數(shù)據(jù)和/或信息在加密方法中使用,如下面所示。
      [0037]在一個實施例中,認(rèn)證令牌I可以連接到計算機6(圖2),這樣可以在認(rèn)證令牌I及計算6之間交換信息。例如,認(rèn)證令牌I可裝備一個連接到計算機6的USB端口。
      [0038]此后參考希望編碼的明文,這樣可以防止非授權(quán)用戶訪問明文中包括的信息。
      [0039]參考圖3,顯示的流程圖包括根據(jù)本發(fā)明一實施例的加密方法的步驟。
      [0040]在本發(fā)明中,生成的“印鑒(seal) ”包括大量可以任意選擇的數(shù)據(jù)及信息,所述數(shù)據(jù)及信息根據(jù)隨機方案進行加密。該印鑒的解密及讀取是授權(quán)或拒絕一個或多個進一步活動所必需的。
      [0041]根據(jù)優(yōu)選應(yīng)用,該印鑒的解密及讀取是授權(quán)軟件程序的執(zhí)行或獲取軟件程序使用許可的必需條件。根據(jù)本發(fā)明方法的加密步驟不是用于加密將要執(zhí)行的軟件程序,而是用于生成加密印鑒,為了獲取執(zhí)行此軟件程序的授權(quán),需要讀取所述加密印鑒。
      [0042]根據(jù)圖3的方法包括初始化步驟(步驟10和12),在初始化步驟中由明文生成印鑒并且寫入存儲器4的私有區(qū)域4a,以及加密步驟(步驟14和16),在加密步驟中使用已知類型的加密方法(例如,由RSA、AES、DES或其它算法選擇的已知方法)對步驟10和12中生成的印鑒進行加密以保證更高級別的保護。
      [0043]印鑒根據(jù)明文中的數(shù)據(jù)和/或信息生成,將此數(shù)據(jù)排列在數(shù)組中,如下更好地描述。另外,印鑒具有按比特計的大小,以便于與步驟14和16中使用的加密算法兼容(例如,長度為128比特、196比特、256比特、或一些它大小)并且留下足夠的“自由”空間以用隨機數(shù)據(jù)填充。
      [0044]明文可包括大量固定類型(值或信息內(nèi)容不會隨著時間發(fā)生變化)和/或可變類型(值或信息內(nèi)容隨時間而變)的數(shù)據(jù)和/或信息。例如,固定數(shù)據(jù)包括例如預(yù)設(shè)的識別碼,所述識別碼為數(shù)字、字母和/或字母加數(shù)字或一些其它格式,諸如,例如,以下一種或多種:軟件的商品名或代碼名、軟件開發(fā)商名、軟件當(dāng)前用戶的漸進許可號、客戶名和/或識別碼,初始化日期、令牌序號、啟用的軟件模塊(當(dāng)軟件由多個模塊組成時)以及相關(guān)的許可密碼/代碼和其它可選數(shù)據(jù)。
      [0045]例如,可變數(shù)據(jù)包括例如當(dāng)前日期、當(dāng)前時間的值或根據(jù)預(yù)設(shè)或意外條件下可取變化值的其它數(shù)據(jù)。
      [0046]關(guān)于可變域,內(nèi)容的正確性通過“約定”的方式進行檢查。換句話說,軟件組件檢查在時間h時寫入時間值,在“X”秒后,時間值為tfx (加上或減去幾百微秒左右的誤差)。值h是日期/時間值寫入的時間,“X”是一個可變偏差,由軟件根據(jù)自由選擇的統(tǒng)一分布即時和隨機決定,所述統(tǒng)一分布的限值指定為最小值及最大值之間,通常大約幾十秒/分鐘。
      [0047]在此后的描述中,每個固定或可變的數(shù)據(jù)項作為單個“項(item)”并通過I1, I2,13,...1n指示。該類型的N個項I1-1n形成一個集合(排列為向量I),此集合包括N個項
      T -T.1I 1N.[0048]I = (I1, I2, I3, I4, I5, , IJ
      [0049]如上所述,本發(fā)明的一個應(yīng)用是授權(quán)或拒絕執(zhí)行一個軟件程序,或獲取使用該軟件程序的一個許可。在這種情況下,向量I的副本以軟件程序用戶不可訪問的方式保存在軟件程序中。`
      [0050]當(dāng)考慮到其數(shù)字格式(具有邏輯值“I”或“O”的比特序列),N項I1-1n集合的每項具有自己的長度L (i),該長度的單位為比特數(shù)和/或字節(jié)數(shù),其中I個字節(jié)為8比特的一組。在這種情況下,“i”取值為I和N之間,因此L(I)是向量I的第一項的長度,L(2)是向量I的第二項的長度,等等。L(N)是向量I的第N(最后)項的長度。
      [0051]同時,每項I「IN具有自己的值J(i)或J「JN。例如,如果項I「IN為日期,該項的值J (i)為實際日期,如,為日/月/年格式。如果項I1-1n為軟件開發(fā)商名,該項的值J (i)為開發(fā)商的名字,等等。因此,對于每項I1-1n,值J(i)具有數(shù)字、字母加數(shù)字或字母值。
      [0052]上述項1「1^排列在數(shù)組100中,該數(shù)組包括M個通過行x(具有X = X1, X2,,xR)與各個列y(y = Yi? y2,...,yc)交叉定義的域。數(shù)組100在圖4中以圖形化方式顯示。N個項I1-1n中的每個項占有數(shù)組100的各自域(X, y)。數(shù)組100具有大量等于M = xK且大于N的域。特別地,選擇值M使得項I1-1n存儲在各自域(X, y)中,這些域不直接彼此連續(xù),這樣可以支持選擇的加密算法。換句話說,沿數(shù)組100的行,緊隨包括項I1-1n中一項的域的域不包括項I1-1n中的另外一項。
      [0053]當(dāng)所有項I1-1n已經(jīng)寫入數(shù)組100時,通過已知類型的隨機數(shù)生成器用隨機生成的字節(jié)來填充數(shù)組100中自由留下的域(X,Y)。通過這種方式,每個項I1-1n與其它項I1-1n分隔一個或多個隨機字節(jié)。
      [0054]在圖4中,隨機字節(jié)由RBx, y指示,其中下標(biāo)X,y為寫入隨機字符的域中相應(yīng)行X及相應(yīng)列I的值。例如,一個或多個隨機字節(jié)RBu存儲在第一行X = X1及第一列y = Y1指示的域中。同樣,一個或多個隨機字節(jié)RB2,2存儲在第二行X = X2及第二列y = y2指示的域中。
      [0055]通過參考圖4,項I1占用了第一行X = X1及第二列I = y2對應(yīng)的域,并通過I1li2指示。同樣,項I2占用了與第二行X = X2及第一行I = Y1對應(yīng)的域,并且指示為I22^其它類似。
      [0056]如圖3所示,在項I1-1J當(dāng)沿著行X1-Xk順序考慮時)之間及數(shù)組100的第一項I1之前,以及數(shù)組100的最后一項In之后插入隨機字節(jié)RBx,y。換句話說,根據(jù)此實施例,數(shù)組100的第一個域及數(shù)組100的最后一個域都包括隨機字節(jié)RBx, y。
      [0057]很清楚,每個項I1-1n及每個隨機字節(jié)序列RBx, y的字節(jié)長度可以具有任何字節(jié)長度。數(shù)組100的彼此不相同域x,y可以包括不同數(shù)量的字節(jié)。這種情況通過圖5中的圖形示例顯示,其中隨機字節(jié)由陰影線填充的域圖形顯示及項I1-1n由空白域顯示。
      [0058]根據(jù)一個實施例,數(shù) 組100的每個域(X,y)可以通過小于或等于M的識別號進行唯一標(biāo)識,反之亦然。識別號與數(shù)組100的每個域進行相關(guān),例如,通過沿行X不斷穿過數(shù)組100實現(xiàn),這樣數(shù)字“I”與域(X = l,y = I)對應(yīng)。數(shù)字“2”與域(x = l,y = 2)對應(yīng),其它類似。這樣數(shù)字“M”與域(X = xE, y = yc)對應(yīng)。很明顯,任何其它相關(guān)也可能。
      [0059]返回圖3,步驟10包括定義N個整數(shù)值的集合V1以確定項在數(shù)組100中必須遵循的相互插入順序。例如,順序被認(rèn)為是從數(shù)組100第一個域開始并且穿過行X。然而,可以選擇其它順序。
      [0060]如圖4所示,每個項通過數(shù)組100的一個域(x,y)與其它項分隔,其中數(shù)組100包括一個隨機字節(jié)RBx, y序列。為此目的,在圖3的步驟10包括生成N+1個隨機數(shù)字的集合Veb,其中每個數(shù)字標(biāo)識各自序列RBx, y的字節(jié)長度,RBx, y必須作為項I1-1n的一個分隔符插入到數(shù)組100中。
      [0061]因此,(向量)集合V1標(biāo)識了數(shù)組100中插入項I「IN的順序,(向量)集合Vkb標(biāo)識每個塊RBx,y的長度,塊RBx,y必須插入到項I1-1im及下一個項I2-1n之間(也在數(shù)組100的開始及結(jié)束)。向量V1和Veb保存在一個印鑒方案向量SS中,印鑒方案向量SS格式如下(印鑒方案向量SS中的數(shù)字值顯示可能的實施例并且不受限):
      [0062]SS= (V1 ;YJ = {1,2,3,4,...;23,4,46,5,11,...}。
      [0063]通過這種方式,當(dāng)沒有印鑒方案向量SS時,數(shù)組100的簡單讀取不允許輕松恢復(fù)數(shù)組100中包括的信息(例如,不能立即記錄明文,或者項I1-1n)。[0064]向量V1包括N個域(因此,當(dāng)每個域包括一個簡單值時有N個值),并且向量Vkb包括N+1個域(因而當(dāng)每個域僅僅包括一個值時有N+1值)。因此,印鑒方案向量包括2N+1個值,其中SS(N+1)的值是在數(shù)組100中第一個項I1之前的字節(jié)數(shù)。SS(N+2)的值是數(shù)組100中第一個項I1及第二個項I2之間的字節(jié)數(shù)。SS(N+3)的值是數(shù)組100中第二個項I2及第三個項13之間的字節(jié)數(shù)。SS(2N+1)值是最后項In之后數(shù)組中添加的字節(jié)數(shù)。
      [0065]如前所述,定義(向量)集合V1的步驟相當(dāng)于以相互插入項I1-1n到數(shù)組中的順序定義N個識別號。需要注意的是,形成向量個值不識別數(shù)組的各自域,但表示數(shù)組100中項I1-1n的插入順序。例如,考慮沿數(shù)組100的行X順序插入。與此處所描述類似,像示例方式一樣,向量V1是類型:
      [0066]V1 = {1,2,3,4,...}。
      [0067]向量V1通過以下方式理解:將I1作為第一個項插入在數(shù)組100 (I (V1 (I)) = {IJ,因為V1(I) = {1}并且I(I) = IJdfI2作為第二個項插入在數(shù)組中(I(V1O)) = {12},因為V1 (2) = {2}且I (2) = I2) 0將I3作為第三個項插入在數(shù)組中(I(V1G)) = {13},因為%(3) = {3}且1(3) = I3) ο將I4作為第四個項插入在數(shù)組中(I(V1G)) = {14},因為V1⑷={4}且I (4) = I4),向量I的所有N個項I「IN以此類推。
      [0068]一直作為一個定性示例,定義N+1個隨機數(shù)集合(其中每個數(shù)字確定各自塊RBx, y的長度)的步驟會產(chǎn)生以下類型的向量VKB。
      [0069]Veb = {23,4,46,5,11,...}。
      [0070]向量Veb通過以下方式解釋:在數(shù)組100的第一項之前立即插入23個隨機字節(jié),如向量V1中所定義(在該示例中,位于項I1之前);在數(shù)組100中第一個項之后立即插入4個隨機字節(jié),如向量'所定義(在此示例中,在項I1之后)。在數(shù)組100中第二個項之后立即插入46個隨機字節(jié),如向量V1所定義(在此示例中,在項I2之后)。在數(shù)組100中第三個項之后立即插入5個隨機字節(jié),如向量V1所定義(在此示例中,在項I3之后)。在數(shù)組100中第四個項之后立即插入11個隨機字節(jié),如向量'所定義(在該示例中,在項14之后)。
      [0071]數(shù)組100中的項I「IN的排序操作(例如,生成向量V1,如圖3中步驟10和12所示)和/或生成向量Veb可以執(zhí)行任意多次,并且可以以固定間隔和/或在以下特殊的預(yù)設(shè)事件發(fā)生時實現(xiàn)數(shù)組100的循環(huán)更新。印鑒方案向量SS也以相應(yīng)的方式進行更新。特別是,給定N個項I1-1n,在再次獲得數(shù)組100的開始順序之前有N !種可能的排列。這意味著在返回初始順序之前,通過向量V1定義的項I1-1n順序可以改變N !次。
      [0072]實際上,通過選擇兩個第一整數(shù)“A”及“B”(其值在I和M之間),執(zhí)行一個洗牌函數(shù),這樣以下操作被執(zhí)行A次。
      [0073](I)用向量V1的第二個值的位置置換向量V1的第一個值位置(兩個位置隨意選擇或通過使用兩種不同的計數(shù)器選擇);
      [0074](2)將向量V1的一個或多個值的位置與向量V1的各自一個或更多值的位置交換,這些位置位于在點(I)中所述的第一個值被原始包含的位置之后。
      [0075]置換步驟⑴對“B”的不同值執(zhí)行“B”次,這樣生成一個向量V1,該向量包括事先以非預(yù)設(shè)方式排列的值。
      [0076]隨機選擇B的值,使得B不是N ! (N+1) !的除數(shù)。通過這種方式,兩個數(shù)字B及N! (N+1) !是互質(zhì)數(shù),利用他們不能整除的特性,避免某些次數(shù)的重復(fù)后,再次返回到相同的值。
      [0077]更進一步描述,置換操作(I)包括對向量V1各自位置包含的數(shù)字值執(zhí)行置換操作。如前所述,向量'實際上是整數(shù)向量,每個整數(shù)描述了各自項I1-1n(或,與每個各自項I1-1n相關(guān)的值J1-Jn)插入數(shù)組100的位置。置換步驟包括以下步驟:
      [0078](a)選擇向量V1中各自第一個域中包含的第一個數(shù)字值(例如,V1(I)包括數(shù)字“I”);
      [0079](b)選擇與向量VI的第一個域不同的各自第二個域中包含的第二個數(shù)字值。
      [0080](c)將第一個域中包括的第一個數(shù)字值與第二個域中包括的第二個數(shù)字值進行彼此交換。
      [0081]置換步驟還包括以下可選步驟:
      [0082](d)重復(fù)步驟(a) - (C)。
      [0083]圖6和7通過流程圖更詳細(xì)地示出了上述步驟(a)-(b)。
      [0084]參考圖6,在步驟20中,假設(shè)位于圖6中方法的第一次迭代中。例如,向量V1是類型V1 = {1,2,3,4} ο在此示例中,變量P是標(biāo)識向量V1域的下標(biāo)(index),且取值為I到(N-1)之間,在這種情況下,(N-1) =4。選擇向量V1的倒數(shù)第二個位置,是V1(P) =V1(N-1)=V1 ⑶={3}。
      [0085]然后,在步驟22中,選擇向量V1的最后一個域,即V1 (p+1) =V1(N) = V1 (4) = {4}。
      [0086]此后,在步驟24中,域V1(N-1)和V1(N)中包含的值彼此進行比較。如果V1(N-1)小于V1 (N),則在步驟26中根`據(jù)以上提及的步驟(a)將%0-1)選擇為第一個項。
      [0087]否則,在步驟28,值P減少一個單位并且進行檢查。在步驟29,已經(jīng)達(dá)到向量V1的開始。如果P的當(dāng)前值等于0,則向量V1已經(jīng)退出并且所有可能置換已經(jīng)實現(xiàn)(該方法結(jié)束)。如果P大于或等于I,則在步驟30選擇V1 (p)。在步驟32選擇V1 (p+1)。處理,然后返回步驟24,將%(?)與%(?+1)進行比較。
      [0088]繼續(xù)前面示例,給定向量V1 = {1,2, 3,4},則步驟24導(dǎo)致步驟26,V1 (N-1)< V1 (N)。
      [0089]步驟28-32不執(zhí)行,然后選擇值V1(N-1) = 3作為以上步驟(a)的第一個數(shù)字值。
      [0090]處理,然后根據(jù)以上所述的步驟(b)選擇第二個數(shù)字值。參考圖7,在步驟36,在圖7的方法第一次迭代中選擇向量V1 (即V1(N))的最后一個值。根據(jù)圖7中的方法,下標(biāo)q用于對向量V1進行索引。因此,在步驟36中,q = N。
      [0091]然后,在步驟38中,在圖6的步驟26中選擇的值V1(P)與當(dāng)前值V1(Q)進行比較。如果'(q) SV1(P),那么在步驟40中,域V1 (P)中包括的值與域V1(Ci)中包含的值進行交換。在這種情況下,總是考慮向量V1 = {1,2,3,4},步驟40會生成向量V1 = {1,2,4,3}。
      [0092]如果步驟39中的比較顯示V1 (q) < V1 (p),則在步驟42中值q減少一個單位。在步驟43中,檢查是否q的當(dāng)前值大于P的當(dāng)前值。如果大于,則處理返回步驟38比較V1(P)和%&)。否則,方法結(jié)束。
      [0093]然后處理回到上述的“交換”步驟。在該步驟中,第P個位置后的向量%的N-p位置中包含的數(shù)字值細(xì)分為兩個(N-p)/2值分組。然后兩個(N-p)/2值分組的位置進行交換。當(dāng)N-p是一個奇數(shù)時,可能考慮N-p+1個域,或選擇不同的組。[0094]返回圖7的步驟40后生成的向量V1,即,V1 = {1,2,4,3},ρ的值等于3并且交換步驟沒有影響。
      [0095]通過再次重復(fù)步驟6和7中的步驟20-32 (第二次迭代),獲取的新V1向量具有以下形式:
      [0096]VI = {1,3,4,2} .
      [0097]然后,執(zhí)行交換步驟給出:
      [0098]VI2 = {1,3,2,4}。
      [0099]通過再次重復(fù)圖6和圖7中的步驟20-32 (第三次迭代),獲取的新V1向量具有以下形式:
      [0100]VI3 = {1,3,4,2}。
      [0101]在這種情況下,交換步驟不會改變向量V1 = {1,3,2,4}。
      [0102]通過重復(fù)圖6和圖7中的步驟20-32 (第四次迭代),獲取的新V1向量具有以下形式:
      [0103]VI = {1,4,3,2} ο
      [0104]然后,執(zhí)行交換步驟給出:
      [0105]VI4 = {1,4,2,3}。
      [0106]以這種方式繼續(xù)處理,獲取向量VI中包括的數(shù)字值的所有可能置換。
      [0107]為了使第一次生成時對數(shù)組100的項I1-In進行隨機排序,可能迭代執(zhí)行圖6-7中方法的步驟以及交換步驟“A”次(其中,A是隨機數(shù)),這樣可以在向量V1中生成事先沒有預(yù)設(shè)的數(shù)字值順序。
      [0108]根據(jù)進一步的實施例,在執(zhí)行交換步驟之前,圖6-7中方法的每次步驟迭代執(zhí)行“B” 次。
      [0109]定義N+1個隨機數(shù)的(向量)集合VRB的步驟滿足以下至少一個要求,其中這些數(shù)字中的每個數(shù)字標(biāo)識各自塊RBx,y的字節(jié)長度:
      [0110](I)在數(shù)組100中的第一個項I1-In之前插入至少一個塊RBx,y (任何大小/長度,以字節(jié)計算)。
      [0111](2)沿數(shù)組100的行X在兩個連續(xù)項I1-IN之間插入至少一個塊RBx,y (任何大小/長度,以字節(jié)計算),以便對兩個連續(xù)項I1-1n進行彼此分離。
      [0112](3)在數(shù)組100內(nèi)的最后項I1-1n之后插入至少一個塊RBx,y (任何大小/長度,以字節(jié)計算)。
      [0113](4)每個塊RBx, y的字節(jié)長度的概率分布一致。
      [0114](5)所有塊RBx,y的長度的總和SRB (單位為字節(jié)),使得數(shù)組100被完全填滿(即,ΣiL(i)+SRB= M)。
      [0115](6)根據(jù)本發(fā)明的一個實施例,各自的塊RBx,y的長度滿足所有上述要求(1)-(5)。
      [0116]返回圖3所示的流程圖,在步驟14中,根據(jù)步驟10和12生成的數(shù)組使用由圖1中認(rèn)證令牌I隨機生成的密鑰匕進行加密。根據(jù)選擇的加密算法,密鑰匕可以根據(jù)標(biāo)準(zhǔn)方法生成。在作為示例描述的情況下,是令牌處理其生成。這樣,使用密鑰ks的加密步驟調(diào)用該標(biāo)準(zhǔn)例程(因此,其自身不是本發(fā)明的主題)。例如,在AES加密方法中,密鑰與加密數(shù)據(jù)的最小塊一樣長(通常為32個字節(jié))并且由一個用戶可以選擇或已經(jīng)隨機生成的初始化向量生成。
      [0117]另外,數(shù)組100使用已知類型的加密方法加密,例如,一個非對稱加密算法,如RSA,或一個基于塊的加密算法,如AES (高級加密標(biāo)準(zhǔn))或DES (數(shù)據(jù)加密標(biāo)準(zhǔn))算法或任何其它文獻中已知的加密算法。以上提及的加密算法RSA、AES及DES在文獻中已知,此處為了簡潔,沒有指定相關(guān)的加密步驟。如所述,通過文獻中已知的方法也執(zhí)行生成密鑰ks。
      [0118]此后稱為“C_data”的加密數(shù)組(或,總稱加密文本對象)是圖3中步驟14的結(jié)果O
      [0119]密鑰ks及加密文本對象C_data存儲在認(rèn)證令牌I的存儲器4的私有區(qū)域4a。
      [0120]與數(shù)組100加密的描述類似,代表數(shù)組100的讀密鑰的印鑒方案向量SS也通過由圖1中認(rèn)證令牌I隨機生成的各自密鑰 <進行加密(步驟14)。密鑰kv的生成以與通過自由選擇的已知方法生成密鑰ks相類似方式進行。例如,再次參考AES算法,該密鑰kv通過與用于密鑰ks的初始化向量不同的初始化向量生成。
      [0121]向量SS也使用與數(shù)組100類似的已知算法進行加密。例如,可以使用AES加密算法。但是,顯然,其它算法也可以使用。
      [0122]密鑰kv及加密印鑒方案向量SS(此后也指示為“C_SCheme”)保存在認(rèn)證令牌I的存儲器4的私有區(qū)域4a。
      [0123]加密文本對象C_data構(gòu)成一個保持信息的印鑒(項I1-1n),該信息是能夠?qū)λMWo的進一步數(shù)據(jù)和/或信息進行訪問的必要條件。例如,繼續(xù)參考本發(fā)明的優(yōu)選應(yīng)用,該印鑒的解密及讀取是授權(quán)軟件程序執(zhí)行或獲取軟件程序使用許可的必需條件。如前所述,包含項I1-1n的向量I的副本通過一種軟件程序用戶不能訪問的方式保存在軟件程序中。通過將數(shù)組100中的項I1-1n與保存在軟件程序中的向量I的項I1-1n比較可以驗證是否正確讀取了數(shù)組100 (使用印鑒方案SS)。
      [0124]執(zhí)行如圖8所示的方法的步驟,以對該數(shù)據(jù)/信息/軟件程序的訪問進行授權(quán)。
      [0125]首先,在步驟50中,判斷使用的認(rèn)證令牌I是否與期望的認(rèn)證令牌I對應(yīng)。
      [0126]該判斷可以通過檢查所使用的認(rèn)證令牌I的型號和/或序列號是否與期望型號和/或序列號一致或者互相兼容來執(zhí)行。
      [0127]如果上述步驟50中的判斷結(jié)果為“是”時,則在步驟52中,通過訪問存儲器4的私有區(qū)域4a驗證所述印鑒是否完整或已被改變。如上所述,使用PIN可以訪問存儲器4的私有區(qū)域4a,其中PIN在許可初始化階段生成,且由具有足夠長度(例如,127個字符)一串可印刷字符(字母數(shù)字加符號)構(gòu)成,使得各種可能的攻擊無效或十分困難。事實上,當(dāng)通過連續(xù)嘗試猜測PIN時,如果失敗嘗試超過預(yù)設(shè)次數(shù),令牌會以不可恢復(fù)的方式鎖住。在這種情況下,只有聯(lián)系軟件開發(fā)商才能解鎖令牌。
      [0128]根據(jù)本發(fā)明的一個實施例,執(zhí)行以下步驟:(a)當(dāng)用戶嘗試啟動待保護軟件時,該軟件提示用戶插入令牌并輸入個人密碼;(b)用戶按照步驟(a)的要求提供其個人密碼;(C)待保護軟件,根據(jù)其自身但不是本發(fā)明一部分的方法,驗證所述用戶的個人密碼是否正確(例如,使用哈希函數(shù)時,計算哈希值并驗證計算得到的哈希值與之前存儲在,如,文件、數(shù)據(jù)庫、服務(wù)器等上的哈希值是否一致);(d)如果上述驗證成功,則待保護軟件使用與用戶許可對應(yīng)的PIN來開啟與令牌的通訊,并根據(jù)本發(fā)明方法的步驟執(zhí)行相關(guān)驗證。
      [0129]然后,在步驟54中,使用密鑰ks和kv,以使用如圖3中的步驟14和16所述的加密算法的已知方式,對加密文本對象C_data和加密印鑒方案SS C_scheme解密。隨后,對印鑒方案ss標(biāo)識的數(shù)組100中的項I1-1n的位置和數(shù)組100中的項I1-1n的有效位置進行一致性檢查。 [0130]在第一次檢查中,通過讀取印鑒方案ss中指定的位置,驗證得出,例如,通過檢查如下參數(shù)中的一項或多項,從數(shù)組100中讀取的內(nèi)容與待保護軟件程序中包含的向量I中的項I1-1n—致:(i)域基數(shù);(ii)域長度;(iii)域類型(數(shù)字、字符串、日期等);(iv)固定域內(nèi)容(即軟件開發(fā)商名);(V)軟件與印鑒指定的軟件名的一致性;(vi)與包含通過詢問硬件獲取的印鑒(例如,令牌芯片的序列號)的硬件有關(guān)的信息和印鑒中刻寫的等同數(shù)據(jù)的一致性。特別的,上述最后一點(vi)暗示出,即使有人惡意將整個私有存儲區(qū)域4a的內(nèi)容完全拷貝(并未毀壞芯片)至另一相同模式的令牌中,該區(qū)域中存儲的數(shù)據(jù)仍不可訪問。這是因為,該數(shù)據(jù)是與其特定的硬件(令牌)綁定的。
      [0131]在本步驟中,所述方法還用于讀取可變信息。通過非限制性的示例,該信息包括以下信息中的一條或多條:許可號;客戶端名稱;當(dāng)前印鑒生成的時間(日期/具體時刻);許可激活的模塊(如果適用)。
      [0132]在對待保護數(shù)據(jù)/信息的訪問被拒絕時,在步驟55中,如圖8所示的方法結(jié)束。
      [0133]在對待保護數(shù)據(jù)/信息的訪問被允許時,則在步驟56中,隨機生成新的印鑒方案向量SS,且在所生成的新的印鑒方案向量SS的基礎(chǔ)上,生成與數(shù)組100類似的新數(shù)組。根據(jù)本發(fā)明的一個實施例,所述新數(shù)組包含數(shù)組100中相同的項I1-1n,這些項以新的順序排列,且被具有不同字節(jié)數(shù)的塊RBx,y分離??蛇x的,根據(jù)不同實施例,所述新數(shù)組包含不同于數(shù)組100中項I1-1n的新項I^-1r ω ;項的I1^Ir ω數(shù)量N,也可以不同于項I1-1n的數(shù)量N。根據(jù)進一步的實施例,所述新數(shù)組包含部分與數(shù)組100中項^-、相同(例如,固定域相同,但可變域不同)的項這樣,生成了新的印鑒。
      [0134]用于生成新印鑒的數(shù)據(jù)域與原有印鑒中的數(shù)據(jù)域相同,如上所述。日期/時刻數(shù)據(jù)由本地計算裝置提供,在新印鑒生成過程中,該計算裝置上運行所述軟件。該方案由其涉及的當(dāng)前置換方案演進而來。為隨機字節(jié)(RBxy)預(yù)留的空間以隨機方式重新分配(采用與上述相同的標(biāo)準(zhǔn))。
      [0135]每次印鑒根據(jù)如圖8所示步驟56演進時,根據(jù)圖3所示的步驟14_16進行的加密步驟一并執(zhí)行。為了描述簡潔,詳細(xì)的執(zhí)行不在贅述。
      [0136]然后,預(yù)設(shè)或隨機的一段時間之后,再次檢查當(dāng)前印鑒方案SS和當(dāng)前數(shù)組之間的一致性,如步驟54所述。
      [0137]迭代執(zhí)行步驟54-56,直到通過步驟54得到可接受的結(jié)果,也即,使得當(dāng)前數(shù)組中項1廣)-1,>)的排列與當(dāng)前印鑒方案SS標(biāo)識的排列一致,以及所述塊RBx,y的字節(jié)大小與當(dāng)前印鑒方案SS指定的大小一致。
      [0138]當(dāng)通過步驟54得到作為輸出的肯定結(jié)果時(向量SS與數(shù)組100之間的對應(yīng)關(guān)系),認(rèn)為所使用的令牌有效,此時,獲得了訪問后續(xù)數(shù)據(jù)和/或信息的授權(quán)(例如,執(zhí)行軟件程序的授權(quán),或獲得使用該軟件程序的許可)。
      [0139]從此時起,在該軟件當(dāng)前使用會話期間,僅檢查所述令牌印鑒是否繼續(xù)回復(fù)其自身的標(biāo)識,而這在之前已經(jīng)得到確認(rèn)。
      [0140]然而,之前描述的深度檢查可以由所述軟件再次觸發(fā)。該軟件的觸發(fā)基于用戶請求使用與使用該軟件而言關(guān)鍵的功能(或者軟件開發(fā)商認(rèn)為重要的功能)的事件。
      [0141]令牌連接中斷時,可以檢測到該中斷,并要求重新插入相同的令牌(“相同”表示同一序列號的令牌)。一旦插入令牌,整個檢驗程序?qū)⒈恢匦鲁跏蓟?br> [0142]否則,如果沒有插入該令牌,或者該令牌具有不同的序列號,該軟件執(zhí)行中止(這意味著,一旦用一令牌開始會話,就無法用另一令牌繼續(xù)會話,即使該另一令牌包含有效的許可)。
      [0143]本發(fā)明系統(tǒng)和方法的優(yōu)點明顯。
      [0144]針對在包含信息項I1-1n的向量中的排序選擇,利用了這樣一個(數(shù)學(xué)上可證明的)事實:根據(jù)所謂詞匯置換排序的概念(可以根據(jù)Teinhaus-Johnson-Trotter算法獲得),通過一次交換一對項的位置以遍歷所有N個項的可能置換方法有且只有一個。該方法計算效率高,且構(gòu)成了漢密爾頓路徑,g卩,訪問假設(shè)向量空間多面體所有的頂點,穿過每個頂點僅一次。在這種情況下,向量空間多面體是假設(shè)的立方體,其中每個頂點包含信息項I1-1n的可能組合,該組合與其余頂點上出現(xiàn)的其他組合不同。
      [0145]遍歷該序列的方式可以根據(jù)特定標(biāo)準(zhǔn)選擇:事實上,通過沿著所述序列跳過所選擇的一定數(shù)量的步驟以不為項數(shù)(即N ! (N+1) !)的整除數(shù),保證了在獨特的漢密爾頓循環(huán)中生成原始序列。本質(zhì)上,所述序列成為非循環(huán)回路。這樣,定義了一個所謂的知識證據(jù)系統(tǒng),在該系統(tǒng)中,令牌是“知識”(或者,換言之,印鑒)的所有者。
      [0146]軟件組件用于檢查印鑒的完好性,該完好性表明出現(xiàn)在持有測試數(shù)據(jù)/信息的通用有效令牌上的許可的真實性(因此,其作為“證據(jù)”或“證明”)。
      [0147]因此,考慮到以上因素,以及:
      [0148]-所述加密系統(tǒng)包括初始`化第一印鑒的功能,打開印鑒,以及驗證印鑒;
      [0149]-所述印鑒每次根據(jù)不改變許可內(nèi)容的隨機方案改變其形式,但改變針對剩余消息的隨機材料的排列;
      [0150]-滿足完成標(biāo)準(zhǔn),即,每個初始和后續(xù)印鑒的驗證均成功,不論針對許可采用何種
      方案;
      [0151]-滿足完美的完好性標(biāo)準(zhǔn),具體的,如果印鑒形式不正確(即,如果經(jīng)兩次連續(xù)驗證均為偽造),則該印鑒被接受的可能性為零。因此,該系統(tǒng)的每次驗證均為非交互零知識證明類型,需要指出的是,其使用演進式約定方案。綜上,除了明顯提高的安全性,還具有以下優(yōu)點:
      [0152](i)即使要求進行數(shù)據(jù)傳輸,在軟件和硬件之間的用于生效許可而進行的數(shù)據(jù)交互中,許可信息的安全性也不會打折扣(因為該許可未泄露);
      [0153](ii)同時,仍然可以使用相同的軟件,在多臺機器上管理多個浮動許可(即,最為普通的情形,在該情形下,存在多臺機器和多個用戶,且每個用戶可以在其期望的機器上工作)。
      [0154]關(guān)于PIN的使用,初次初始化時,自動生成目標(biāo)代碼,以達(dá)到足夠長度(即,128個字符),且不對用戶公開,但可由軟件自動的、透明的及低級別的使用。這樣,需要注意的是,該令牌可以用于,當(dāng)超過預(yù)設(shè)失敗嘗試次數(shù)(例如,3或4次)之后對自身進行自動鎖定,想要獲取所述內(nèi)容的非法用戶訪問該令牌私有區(qū)域的可能性大大降低。
      [0155]進一步地,根據(jù)本發(fā)明,提供了各種保護級別:[0156](I)物理級,其要求訪問所述認(rèn)證令牌1,且使得該芯片不可篡改,或如果嘗試物理地取出該芯片,則實際上不可能恢復(fù)芯片中保存的數(shù)據(jù);相反,這些數(shù)據(jù)將丟失/損壞;
      [0157](2)私有存儲區(qū)域4a,其對用戶不可見,且僅可以通過軟件開發(fā)商設(shè)置的密碼進行訪問;
      [0158](3)加密級別,在所述存儲器的私有區(qū)域4a被發(fā)現(xiàn)和/或其訪問密碼被公開的情況下,能夠進一步加強信息保護力度;
      [0159](4)項I1-1n的相互排列方案,使得該方案或由該方案生成的數(shù)組的簡單讀取不會允許根據(jù)該方案排列的數(shù)據(jù)被輕易恢復(fù);
      [0160](5) 一致性驗證機制,使得對保存在數(shù)組中的數(shù)據(jù)導(dǎo)致甚至最小改變的訪問或解密嘗試觸發(fā)印鑒的失效。
      [0161](6)在多臺機器上安裝所述軟件以及實現(xiàn)浮動許可的可能性,所述浮動許可僅啟用上面插入了包含許可的令牌的機器。例如,僅使用3個令牌而將軟件安裝在10臺機器上。
      [0162]最后,應(yīng)該清楚的理解到,可以在不脫離本發(fā)明保護范圍的前提下,對本發(fā)明進行各種更改和變化。本發(fā)明的保護范圍由其權(quán)利要求所限定。
      [0163]例如,存儲器4的私有區(qū)域4a可以容納多個按照上述描述生成的印鑒,從而實現(xiàn)多個軟件和用戶的同時管理。
      【權(quán)利要求】
      1.一種用于對待保護信息的訪問進行授權(quán)的認(rèn)證系統(tǒng),其特征在于,包括:硬件令牌(I),所述硬件令牌(I)具有包括私有存儲區(qū)域(4a)的存儲器,所述私有存儲區(qū)域可通過個人識別碼進行訪問且存儲:為數(shù)字、和/或字母加數(shù)字、和/或字母類型的多個第一信息項(I1-1n);為數(shù)字、和/或字母加數(shù)字、和/或字母類型的多個第一隨機數(shù)據(jù)項(RBX, y),每個第一隨機數(shù)據(jù)項具有各自的大??;所述第一信息項(I1-1n)和所述第一隨機數(shù)據(jù)項(RBX, y)排列在數(shù)組(100)內(nèi),具有至少一個讀取順序且使得每個所述第一信息項(I1-1n)與下一第一信息項(I1-1n)以所述讀取順序被一個所述第一隨機數(shù)據(jù)項(RBX,y)分離;所述私有存儲區(qū)域(4a)進一步存儲加密類型的第一印鑒方案向量(SS),所述第一印鑒方案向量(SS)包含所述數(shù)組(100)中所述第一信息項(I1-1n)的第一相對排列信息,以及每個第一隨機數(shù)項(RBX,y)的第一大小信息,以允許對所述數(shù)組(100)中每個所述第一信息項(I1-1n)進行訪問;所述認(rèn)證系統(tǒng)進一步用于:通過插入所述個人識別碼經(jīng)受對所述私有存儲區(qū)域(4a)的訪問;解密所述第一印鑒方案向量,并獲取所述數(shù)組(100)中所述第一信息項(I1-1n)的所述第一相對排列信息,以及每個第一隨機數(shù)項(RBX,y)的所述第一大小信息;檢查所述獲取的第一相對排列信息和所述數(shù)組(100)中所述第一信息項(I1-1n)的排列之間的對應(yīng)關(guān)系,以及所述獲取的第一大小信息和所述數(shù)組(100)中所述第一隨機數(shù)據(jù)項的大小之間的對應(yīng)關(guān)系;`根據(jù)所述獲取的第一相對排列信息和所述數(shù)組(100)中所述第一信息項(I1-1n)的排列之間的對應(yīng)關(guān)系,以及所述獲取的第一大小信息和所述第一隨機數(shù)據(jù)項(RBX,y)的各自大小之間的對應(yīng)關(guān)系檢查結(jié)果,授權(quán)或拒絕對所述待保護信息項的訪問。
      2.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,當(dāng)所述認(rèn)證被拒絕時,還用于:生成加密類型的第二印鑒方案向量,所述第二印鑒方案向量包括所述第一信息項(I1-1n)的第二相對排列信息和所述第二隨機數(shù)據(jù)項(RBX,y)的第二大小信息;基于所述第二相對排列信息,將所述第一數(shù)據(jù)項(I1-1n)排列在所述數(shù)組(100)中,且使得每個所述第一信息項(I1-1n)與下一第一信息項(I1-1n)以所述讀取順序,被具有與所述第二大小信息對應(yīng)的大小的各自第二隨機數(shù)據(jù)項(RBX,y)分離;經(jīng)受對所述待保護信息的訪問授權(quán)的進一步準(zhǔn)許以:解密所述第一印鑒方案向量,并獲取所述第一相對排列信息和所述第一大小信息;檢查所述獲取的第一相對排列信息和所述數(shù)組(100)中所述第一信息項(I1-1n)的排列之間的對應(yīng)關(guān)系,以及所述獲取的第一大小信息和所述數(shù)組(100)中所述第一隨機數(shù)據(jù)項的大小之間的對應(yīng)關(guān)系。
      3.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,當(dāng)所述認(rèn)證被拒絕時,還用于:獲取第二信息項(I1-1n),每個所述第二信息項具有各自的數(shù)字、字母加數(shù)字、或者字母類型的值(J1-Jn);生成多個第二隨機數(shù)據(jù)項(RBX, y),每個所述第二隨機數(shù)據(jù)項具有各自的數(shù)字、字母加數(shù)字、或字母類型的值,以及各自的大??;生成加密類型的第二印鑒方案向量(SS),所述第二印鑒方案向量(SS)包括所述第二信息項(I1-1n)的第二相對排列信息和所述第二隨機數(shù)據(jù)項(RBX,y)的第二大小信息;基于所述第二相對排列信息,將所述第二信息項(I1-1n)排列在所述數(shù)組(100)中,且使得每個所述第二信息項(I1-1n)與下一第二信息項(I1-1n)以所述讀取順序,被具有與所述第二大小信息對應(yīng)的大小的各自第二隨機數(shù)據(jù)項(RBX,y)分離;經(jīng)受對所述待保護信息的訪問授權(quán)的進一步準(zhǔn)許以:解密所述第二印鑒方案向量,并獲取所述第二相對排列信息和所述第二大小信息;檢查所述獲取的第二相對排列信息和所述數(shù)組(100)中所述第二信息項(I1-1n)的排列之間的對應(yīng)關(guān)系,以及所述獲取的第二大小信息和所述數(shù)組(100)中所述第二隨機數(shù)據(jù)項的大小之間的對應(yīng)關(guān)系。
      4.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,所述第一信息項(I1-1n)包括固定類型數(shù)據(jù)和/或可變類型數(shù)據(jù)。
      5.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,所述第一信息項(I1-1n)的所述第一相對排列信息在所述第一印鑒方案向量(SS)中以隨機順序相互跟隨。
      6.根據(jù)權(quán)利要求5所述的認(rèn)證系統(tǒng),其特征在于,所述第一信息項(I1-1n)的所述第一相對排列信息相互跟隨所采用的隨機順序通過所述第一信息項(I1-1n)的所述第一相對排列信息置換的隨機號獲取。
      7.根據(jù)權(quán)利要求6所述的認(rèn)證系統(tǒng),其特征在于,所述執(zhí)行所述置換包括:(i)將選自所述第一信息項(I1-1n)的一初始信息項的位置與所述第一信息項(I1-1n)中的另一信息項的位置交換;(?)交換選自所述第一信息項(I1-1n)的兩個或兩個以上信息項的位置,這些位置位于,所述數(shù)組(100)中在所述交換操作(i)之前已經(jīng)分配給所述初始信息項的位置之后。
      8.根據(jù)權(quán)利要求7所述的認(rèn)證系統(tǒng),其特征在于,第一信息項(I1-1n)的數(shù)量等于N,且其中,所述交換操作⑴執(zhí)行B次,B在不為N !.(N+1) !除數(shù)的情況下隨機選擇。
      9.根據(jù)權(quán)利要求8所述的認(rèn)證系統(tǒng),其特征在于,所述交換操作⑴和(ii)重復(fù)執(zhí)行M次,其中M為大于N的整數(shù)。
      10.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,所述認(rèn)證系統(tǒng)用于對所述第一印鑒方案向量(SS)的所述第一信息項(I1-1n)的所述第一相對排列信息進行一次或多次置換,以生成所述第二印鑒方案向量。
      11.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,所述認(rèn)證系統(tǒng)進一步用于使用加密算法生成的第一加密密鑰CO對所述數(shù)組(100)進行加密。
      12.根據(jù)權(quán)利要求11所述的認(rèn)證系統(tǒng),其特征在于,所述第一加密密鑰CO存儲在所述存儲器(4)的所述私有存儲區(qū)域(4a)。
      13.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,所述第一及第二印鑒方案向量(SS)通過各自的由加密算法生成的第二加密密鑰(kv)加密。
      14.根據(jù)權(quán)利要求13所述的認(rèn)證系統(tǒng),其特征在于,所述第二加密密鑰CO存儲在所述存儲器(4)的所述私有存儲區(qū)域(4a)。
      15.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,所述認(rèn)證系統(tǒng)進一步用于檢查所述硬件令牌(I)是否與期望的硬件令牌對應(yīng)。
      16.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,所述檢查所述第一相對排列信息和所述數(shù)組(100)中所述第一信息項(I1-1n)的排列之間的對應(yīng)關(guān)系包括,驗證以下至少一個:所述數(shù)組(100)中的所述第一信息項(I1-1n)的值(J1-Jn)與各自期望值的一致性;各自第一信息項(I1-1n)的大小與其期望大小之間的對應(yīng)關(guān)系。
      17.根據(jù)權(quán)利要求1所述的認(rèn)證系統(tǒng),其特征在于,所述認(rèn)證系統(tǒng)進一步用于,通過檢查所述硬件令牌的序列號是否與期望的序列號對應(yīng)來經(jīng)受對所述私有存儲區(qū)域(4a)的訪問。
      18.一種用于對待保護 信息的訪問進行授權(quán)的認(rèn)證方法,其特征在于,包括:獲取數(shù)字、和/或字母加數(shù)字、和/或字母類型的多個第一信息項(I1-1n);生成數(shù)字、和/或字母加數(shù)字、和/或字母類型的多個第一隨機數(shù)據(jù)項(RBX, y),每個所述第一隨機數(shù)據(jù)項具有各自的大小;將所述第一信息項(I1-1n)和所述第一隨機數(shù)據(jù)項(RBX,y)排列在數(shù)組(100)內(nèi),所述數(shù)組具有至少一個讀取順序,且使得每個所述第一信息項(I1-1n)與下一第一信息項(I1-1n)以所述讀取順序被一個所述第一隨機數(shù)據(jù)項(RBX,y)分離;生成加密類型的第一印鑒方案向量(SS),所述第一印鑒方案向量(SS)包含所述數(shù)組(100)中所述第一信息項(I1-1n)的第一相對排列信息,以及每個第一隨機數(shù)項(RBX,y)的第一大小信息,以允許對所述數(shù)組(100)中每個所述第一信息項(I1-1n)進行訪問;經(jīng)受對所述待保護信息的訪問授權(quán)的進一步準(zhǔn)許以:(i)輸入個人識別碼;(ii)解密所述第一印鑒方案向量,并獲取所述第一相對排列信息和所述第一大小信息;以及(iii)檢查所述獲取的第一相對排列信息和所述數(shù)組(100)中所述第一信息項(I1-1n)的排列之間的對應(yīng)關(guān)系,以及所述獲取的第一大小信息和所述數(shù)組(100)中所述第一隨機數(shù)據(jù)項的大小之間的對應(yīng)關(guān)系;當(dāng)所述對應(yīng)關(guān)系檢查結(jié)果為“是”時,準(zhǔn)許所述授權(quán)。
      19.根據(jù)權(quán)利要求18所述的認(rèn)證方法,其特征在于,當(dāng)所述認(rèn)證被拒絕時,還包括:生成加密類型的第二印鑒方案向量,所述第二印鑒方案向量包括所述第一信息項(I1-1n)的第二相對排列信息和所述第二隨機數(shù)據(jù)項(RBX,y)的第二大小信息;基于所述第二相對排列信息,將所述第一數(shù)據(jù)項(I1-1n)排列在所述數(shù)組(100)中,且使得每個所述第一信息項(I1-1n)與下一第一信息項(I1-1n)以所述讀取順序,被具有與所述第二大小信息對應(yīng)的大小的各自第二隨機數(shù)據(jù)項(RBX,y)分離;經(jīng)受對所述待保護信息的訪問授權(quán)的進一步準(zhǔn)許以:解密所述第一印鑒方案向量,并獲取所述第一相對排列信息和所述第一大小信息;檢查所述獲取的第一相對排列信息和所述數(shù)組(100)中所述第一信息項(I1-1n)的排列之間的對應(yīng)關(guān)系,以及所述獲取的第一大小信息和所述數(shù)組(100)中所述第一隨機數(shù)據(jù)項的大小之間的對應(yīng)關(guān)系。
      20.根據(jù)權(quán)利要求18所述的認(rèn)證方法,其特征在于,當(dāng)所述認(rèn)證被拒絕時,還包括:獲取數(shù)字、和/或字母加數(shù)字、和/或字母類型的第二信息項(I1-1n);生成數(shù)字、和/或字母加數(shù)字、和/或字母類型的多個第二隨機數(shù)據(jù)項(RBX, y),每個所述第二隨機數(shù)據(jù)項具有各自的大?。簧杉用茴愋偷牡诙¤b方案向量,所述第二印鑒方案向量(SS)包括所述第二信息項(I1-1n)的第二相對排列信息和所述第二隨機數(shù)據(jù)項(RBX,y)的第二大小信息;基于所述第二相對排列信息,將所述第二數(shù)據(jù)項(I1-1n)排列在所述數(shù)組(100)中,且使得每個所述第二信息項(I1-1n)與下一第二信息項(I1-1n)以所述讀取順序,被具有與所述第二大小信息對應(yīng)的大小的各自第二隨機數(shù)據(jù)項(RBX,y)分離;經(jīng)受對所述待保護信息的訪問授權(quán)的進一步準(zhǔn)許以:解密所述第二印鑒方案向量,并獲取所述第二相對排列信息和所述第二大小信息;檢查所述獲取的第二相對排列信息和所述數(shù)組(100)中所述第二信息項(I1-1n)的排列情況之間的對應(yīng)關(guān)系,以及所述獲取的第二大小信息和所述數(shù)組(100)中所述第二隨機數(shù)據(jù)項的大小之間的對應(yīng)關(guān)系。
      21.根據(jù)權(quán)利要求18所述的認(rèn)證方法,其特征在于,所述獲取所述多個第一信息項(I1-1n)包括:獲取固定類型數(shù)據(jù)和/或可變類型數(shù)據(jù)。
      22.根據(jù)權(quán)利要求18所述的認(rèn)證方法,其特征在于,所述生成所述第一印鑒方案向量(SS)包括:以隨機順序排列所述第一信息項(I1-1n)的所述第一相對排列信息。
      23.根據(jù)權(quán)利要求22所述的認(rèn)證方法,其特征在于,所述以隨機順序排列所述第一信息項(I1-1n)的第一相對排列信息包括:對所述第一信息項(I1-1n)的所述第一相對排列信息執(zhí)行隨機次數(shù)的置換。
      24.根據(jù)權(quán)利要求23所述的認(rèn)證方法,其特征在于,執(zhí)行所述置換包括:(i)交換選自所述第一信息項(I1-1n)的一初始信息項的位置和所述第一信息項(I1-1n)中的另一信息項的位置;(ii)交換選自所述第一信息項(I1-1n)的兩個或兩個以上信息項的位置,這些位置位于,所述數(shù)組(100)中在所述交換步驟(i)之前已經(jīng)分配給所述初始信息項的位置之后。
      25.根據(jù)權(quán)利要求24所述的認(rèn)證方法,其特征在于,第一信息項(I1-1n)的數(shù)量等于N,且其中,所述交換步驟⑴執(zhí)行B次,B在不為N !.(N+1) !除數(shù)的情況下隨機選擇。
      26.根據(jù)權(quán)利要求25所述的認(rèn)證方法,其特征在于,所述交換步驟(i)和(ii)重復(fù)執(zhí)行M次,其中M為大于N的整數(shù)。
      27.根據(jù)權(quán)利要求18所述的認(rèn)證方法,其特征在于,還包括:對所述第一印鑒方案向量(SS)的所述第一信息項(I1-1n)的所述第一相對排列信息進行隨機次數(shù)的置換,以生成所述第一相對排列信息的隨機順序。
      28.根據(jù)權(quán)利要求18所述的認(rèn)證方法,其特征在于,還包括:使用加密算法生成的第一加密密鑰CO對所述數(shù)組(loo)進行加密。
      29.根據(jù)權(quán)利要求18所述的認(rèn)證方法,其特征在于,所述第一印鑒方案向量(SS)通過由加密算法生成的第二加密密鑰CO加密。
      30.根據(jù)權(quán)利要求19所述的認(rèn)證方法,其特征在于,所述第二印鑒方案向量(SS)通過由加密算法生成的第三加密密鑰(kv)加密。
      31.根據(jù)權(quán)利要求18所述的認(rèn)證方法,其特征在于,所述檢查所述獲取的第一相對排列信息和所述數(shù)組(100)中所述第一信息項(I1-1n)的排列之間的對應(yīng)關(guān)系包括,驗證以下至少一個:所述數(shù)組(100)中的所示第一信息項(I1-1n)的值(J1-Jn)與各自期望值的一致性;各自第一信息項(I1-1n)的大小與其期望大小之間的對應(yīng)關(guān)系。
      32.—種計算機程序產(chǎn)品,可加載在處理裝置(1,6)中且設(shè)計為使得,當(dāng)被執(zhí)行時,所述處理裝置用于執(zhí)行根據(jù)權(quán)利要求18所述的方法。
      【文檔編號】G06F21/62GK103559454SQ201310204033
      【公開日】2014年2月5日 申請日期:2013年5月28日 優(yōu)先權(quán)日:2012年5月28日
      【發(fā)明者】亞歷山德羅·巴萊塔 申請人:阿萊尼亞·馬基公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1