加密數(shù)據(jù)管理裝置、加密數(shù)據(jù)管理方法以及加密數(shù)據(jù)管理程序的制作方法
【專利摘要】實現(xiàn)即使在函數(shù)型密碼方式中也能夠利用的秘密密鑰的失效方式。使用在加密數(shù)據(jù)中設(shè)定了的屬性信息以及密鑰信息、和在秘密密鑰中設(shè)定了的屬性信息以及密鑰信息未對應(yīng)的情況下無法用秘密密鑰對加密數(shù)據(jù)進行解密的加密方式的密碼處理系統(tǒng)(10)中,設(shè)置進行實施數(shù)據(jù)的加密以及解密的用戶終端(100)、與存儲加密數(shù)據(jù)的加密數(shù)據(jù)存儲裝置(300)之間的中繼的加密數(shù)據(jù)管理裝置(200)。加密數(shù)據(jù)管理裝置(200)判定在具有從加密數(shù)據(jù)存儲裝置(300)取得了的加密數(shù)據(jù)中設(shè)定了的屬性信息的用戶中,是否包括秘密密鑰失效了的用戶,根據(jù)判定結(jié)果,將不同的值作為密鑰信息設(shè)定到加密數(shù)據(jù)中。然后,加密數(shù)據(jù)管理裝置(200)將設(shè)定了密鑰信息的加密數(shù)據(jù)發(fā)送到用戶終端(100)。
【專利說明】加密數(shù)據(jù)管理裝置、加密數(shù)據(jù)管理方法以及加密數(shù)據(jù)管理程序
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及實現(xiàn)秘密密鑰的失效的加密數(shù)據(jù)的管理技術(shù)。
【背景技術(shù)】
[0002]關(guān)于在1976年Diffie和Hellman開發(fā)了的公開密鑰密碼方式,進行了各種改良和功能擴展。在2001年,由Bonne和Franklin,開發(fā)了基于配對運算的被稱為基于ID的密碼的公開密鑰密碼方式。近年來,與基于配對運算的方式有關(guān)的研究得到了蓬勃發(fā)展。
[0003]作為使用了配對的高性能的公開密鑰密碼方式,有在非專利文獻1、2中記載了的具有高的安全性的密碼方式(以下稱為函數(shù)型密碼方式)。函數(shù)型密碼方式與以往的密碼不同,能夠用I個公開密鑰,進行指定了多個能夠解密的用戶(秘密密鑰)的加密。
[0004]在將公開密鑰密碼方式應(yīng)用于一般的用戶利用的系統(tǒng)的情況下,有用戶丟失秘密密鑰的擔心。在該情況下,為了防止丟失了的秘密密鑰被濫用,需要使丟失了的秘密密鑰失效。
[0005]作為使秘密密鑰失效的失效方式,有在專利文獻1、2中記載了的方式。
[0006]在專利文獻I中,記載了如下失效方式:在輸入了使特定的用戶的秘密密鑰成為無效的指令的情況下,使該用戶的秘密密鑰成為無效,在輸入了再發(fā)行秘密密鑰的指令的情況下,生成新的密碼 密鑰以及秘密密鑰的密鑰對。
[0007]在專利文獻2中,記載了如下失效方式:在接收了訪問要求和訪問標識符時,確認成為無效的標識符的列表中記載了的標識符和訪問標識符是否一致,在一致的情況下,使訪問結(jié)束。
[0008]【專利文獻I】日本特開2005-51614號公報
[0009]【專利文獻2】日本特表2003-506782號公報
[0010]【非專利文獻1】T.0kamoto, K.Takashima,“A geometric approach on pairings andhierarchical predicate encryption,,,In:Poster session, EUR0CRYPT2009.[0011]【非專利文獻2】Τ.0kamoto,K.Takashima,“Fully Secure Functional EncryptionWith General Relations from the Decisional Linear Assumption”,CRYPT02010, LectureNotes In Computer Science, 2010, Volume6223/2010.
【發(fā)明內(nèi)容】
[0012]函數(shù)型密碼方式是與以往大幅不同的密碼方式,所以無法應(yīng)用在以往的密碼方式中應(yīng)用了的秘密密鑰的失效方式。另外,函數(shù)型密碼方式與以往的密碼方式同樣地,在算法自身中未考慮失效。因此,函數(shù)型密碼方式無法應(yīng)對在一般的用戶利用的系統(tǒng)中應(yīng)用了的情況下發(fā)生的可能性高的秘密密鑰的丟失。
[0013]在專利文獻I中記載了的失效方式中,在秘密密鑰失效了的情況下重新再發(fā)行密鑰對。因此,如果將該失效方式應(yīng)用于函數(shù)型密碼方式,則必須對以能夠用失效了的秘密密鑰進行解密的方式加密了的全部數(shù)據(jù)進行再加密。因此,存在需要對過去加密了的大量數(shù)據(jù)進行再加密的擔心,存在花費龐大的成本的擔心。
[0014]在將在專利文獻2中記載了的失效方式應(yīng)用于函數(shù)型密碼方式的情況下,也同樣地,必須對以能夠用失效了的秘密密鑰進行解密的方式加密了的數(shù)據(jù)進行再加密。
[0015]本發(fā)明的主要目的在于,實現(xiàn)即使在函數(shù)型密碼方式中也能夠利用的秘密密鑰的失效方式。
[0016]本發(fā)明的加密數(shù)據(jù)管理裝置在加密數(shù)據(jù)中設(shè)定了的屬性信息以及密鑰信息、和在秘密密鑰中設(shè)定了的屬性信息以及密鑰信息未對應(yīng)的情況下,無法用所述秘密密鑰對所述加密數(shù)據(jù)進行解密的加密方式中,管理所述加密數(shù)據(jù),該加密數(shù)據(jù)管理裝置的特征在于,具備:
[0017]數(shù)據(jù)取得部,從存儲裝置取得設(shè)定了屬性信息的加密數(shù)據(jù);
[0018]失效判定部,判定在具有所述數(shù)據(jù)取得部所取得的所述加密數(shù)據(jù)中設(shè)定了的所述屬性信息的用戶中是否包括秘密密鑰失效了的用戶;
[0019]密鑰信息設(shè)定部,根據(jù)是否由所述失效判定部判定為包括秘密密鑰失效了的用戶,將不同的值作為所述密鑰信息設(shè)定到所述加密數(shù)據(jù)中;以及
[0020]數(shù)據(jù)發(fā)送部,將所述密鑰信息設(shè)定部設(shè)定了密鑰信息的加密數(shù)據(jù)發(fā)送到用戶終端。
[0021]本發(fā)明的加密數(shù)據(jù)管理裝置根據(jù)在能夠?qū)用軘?shù)據(jù)進行解密的用戶中是否包括秘密密鑰失效了的用戶,將不同的值設(shè)定為密鑰信息之后,發(fā)送到用戶。由此,能夠防止用失效了的秘密密鑰對加密數(shù)據(jù)進行解密。
【專利附圖】
【附圖說明】
[0022]圖1是實施方式I的密碼處理系統(tǒng)10的結(jié)構(gòu)圖。
[0023]圖2是實施方式I的用戶終端100的結(jié)構(gòu)圖。
[0024]圖3是實施方式I的加密數(shù)據(jù)管理裝置200的結(jié)構(gòu)圖。
[0025]圖4是實施方式I的加密數(shù)據(jù)存儲裝置300的結(jié)構(gòu)圖。
[0026]圖5是實施方式I的密鑰生成裝置400的結(jié)構(gòu)圖。
[0027]圖6是示出實施方式I的加密數(shù)據(jù)登記處理的流程的流程圖。
[0028]圖7是示出實施方式I的加密數(shù)據(jù)取得處理的流程的流程圖。
[0029]圖8是實施方式3的加密數(shù)據(jù)管理裝置200的結(jié)構(gòu)圖。
[0030]圖9是實施方式3的加密數(shù)據(jù)存儲裝置300的結(jié)構(gòu)圖。
[0031]圖10是示出實施方式3的加密數(shù)據(jù)登記處理的流程的流程圖。
[0032]圖11是示出實施方式3的加密數(shù)據(jù)取得處理的流程的流程圖。
[0033]圖12是示出用戶終端100、加密數(shù)據(jù)管理裝置200、加密數(shù)據(jù)存儲裝置300、密鑰生成裝置400的硬件結(jié)構(gòu)的一個例子的圖。
[0034](附圖標記說明)
[0035]10:密碼處理系統(tǒng);100:用戶終端;110:加密數(shù)據(jù)生成部;120:數(shù)據(jù)發(fā)送部;130:數(shù)據(jù)接收部;140:解密部;150:密鑰管理部;200:加密數(shù)據(jù)管理裝置;210:數(shù)據(jù)接收部;220:失效判定部;230:密鑰信息設(shè)定部;240:數(shù)據(jù)發(fā)送部;250:失效信息管理部;260:密鑰管理部;270:認證處理部;300:加密數(shù)據(jù)存儲裝置;310:數(shù)據(jù)接收部;320:數(shù)據(jù)操作部;330:數(shù)據(jù)發(fā)送部;340:加密數(shù)據(jù)管理部;350:認證處理部;400:密鑰生成裝置;410:指示接收部;420:密鑰生成部;430:密鑰發(fā)送部;440:主密鑰存儲部。
【具體實施方式】
[0036]實施方式1.[0037]在實施方式I中,說明在非專利文獻I中記載了的函數(shù)型密碼方式中,實現(xiàn)秘密密鑰的失效方式的方法。
[0038]首先,關(guān)于在非專利文獻I中記載了的函數(shù)型密碼方式,簡化為僅該實施方式的說明所需的部分而說明。
[0039 ]在非專利文獻I中記載了的函數(shù)型密碼方式中,有Setup算法、KeyGen算法、Enc算法、Dec算法。
[0040]Setup算法是生成公開參數(shù)pk和主秘密密鑰sk的算法。
[0041]在Setup算法中,生成對偶配對矢量空間的參數(shù)param、和作為通過配對運算關(guān)聯(lián)起來了的對偶標準正交基底(dual orthonormal base)的基底B以及基底B'另外,參數(shù)param和基底B成為公開參數(shù)pk,基底B*成為主秘密密鑰sk。
[0042]另外,基底B具有基底矢量b1;b2,...,bn+2,基底B*具有基底矢量bVK,...,b\+2。即,基底B,B*具有各自的n+2個(η是I以上的整數(shù))基底矢量。
[0043]KeyGen算法是生成用戶秘密密鑰k*的算法。
[0044]在KeyGen算法中,如式I所示,使用在主秘密密鑰sk中包含的基底¥,生成用戶秘密密鑰k'
[0045]〈式1>
[0046]k*: = σ (V1I^1+...+vnb*n) +b*n+1
[0047]此處,σ是隨機值。V1,...,Vn是被提供用戶秘密密鑰k*的用戶的屬性信息等。
[0048]Enc算法是生成加密數(shù)據(jù)c的算法。
[0049]在Enc算法中,如式2所示,使用在公開參數(shù)pk中包含的基底B,生成加密數(shù)據(jù)c的要素q。
[0050]〈式2>
[0051 ] C1:= ω (X1Id1+...+xnbn) + ζ bn+1+ φbn+2
[0052]此處,ω,ζ,φ是隨機值。Xl,...,χη是能夠?qū)用軘?shù)據(jù)c進行解密的用戶的屬性信息等。
[0053]另外,在Enc算法中,如式3所示,使用在公開參數(shù)pk中包含的參數(shù)param,生成加密數(shù)據(jù)c的要素C2。
[0054]〈式3>
[0055]C2: = e(g, g) ζ.m
[0056]此處,g是在參數(shù)param中包含的信息,是構(gòu)成對偶配對矢量空間的群G的要素。m是消息。e(g,g)是關(guān)于要素g和要素g的配對運算。
[0057]Dec算法是通過用戶秘密密鑰k*對加密數(shù)據(jù)c進行解密的算法。
[0058]在Dec算法中,執(zhí)行式4所示的計算,通過用戶秘密密鑰k*對加密數(shù)據(jù)c進行解密,抽出m’。
[0059]〈式4>
[0060]m,: = C2/e (C1, k*)
[0061]此處,e(Cl,k*)是關(guān)于要素C1和用戶秘密密鑰k*的配對運算。
[0062]在Dec算法中,在用戶秘密密鑰k*中的基底矢量1^,...,b*n中設(shè)定了的屬性信息等(V1,..., vn)、和要素C1中的基底矢量bp..., bn中設(shè)定了的屬性/[目息等(X1,...,xn)對應(yīng)的情況下,成為抽出了的m’ =m。
[0063]屬性信息等(Vl,...,Vn)和屬性信息等(Xl,...,xn)對應(yīng)是指,成為Σ i = ^vi.Xi=O。
[0064]是配對運算e (Sg, tg) = e(g, g)st。因此,成為 e (C1, k*) = e(g, g)Y。此處,是 Y=ω σ (X1.V1+...χη.νη) + ζ ο 因此,如果是 Σ j = JnVi.Xi = O,則是 Y = ζ ,是 e (c1; k*)
=e(g, g) ζ ο
[0065]如式3所示,是C2: = e(g, g) ?.m,所以如果執(zhí)行式4的計算,貝U在Σ i = ^vi.Xi=O的情況下,成為m’ = m。 [0066]在以下的說明中,為了簡化說明,設(shè)為η = 4而進行說明。
[0067]圖1是實施方式I的密碼處理系統(tǒng)10的結(jié)構(gòu)圖。
[0068]密碼處理系統(tǒng)10實現(xiàn)基于在非專利文獻1、2等中記載了的函數(shù)型密碼方式的密碼處理。密碼處理系統(tǒng)10具備多個用戶終端100、加密數(shù)據(jù)管理裝置200、加密數(shù)據(jù)存儲裝置300、密鑰生成裝置400。各用戶終端100、加密數(shù)據(jù)管理裝置200、加密數(shù)據(jù)存儲裝置300、密鑰生成裝置400分別經(jīng)由因特網(wǎng)等網(wǎng)絡(luò)500連接。
[0069]圖2是實施方式I的用戶終端100的結(jié)構(gòu)圖。
[0070]用戶終端100是用戶使用的終端,進行數(shù)據(jù)的加密、解密。用戶終端100具備加密數(shù)據(jù)生成部110、數(shù)據(jù)發(fā)送部120、數(shù)據(jù)接收部130、解密部140、密鑰管理部150。
[0071]圖3是實施方式I的加密數(shù)據(jù)管理裝置200的結(jié)構(gòu)圖。
[0072]加密數(shù)據(jù)管理裝置200在用戶終端100與加密數(shù)據(jù)存儲裝置300之間進行加密數(shù)據(jù)的管理。加密數(shù)據(jù)管理裝置200具備數(shù)據(jù)接收部210 (數(shù)據(jù)取得部)、失效判定部220、密鑰信息設(shè)定部230、數(shù)據(jù)發(fā)送部240、失效信息管理部250、密鑰管理部260。
[0073]圖4是實施方式I的加密數(shù)據(jù)存儲裝置300的結(jié)構(gòu)圖。
[0074]加密數(shù)據(jù)存儲裝置300存儲加密數(shù)據(jù)。加密數(shù)據(jù)存儲裝置300具備數(shù)據(jù)接收部310、數(shù)據(jù)操作部320、數(shù)據(jù)發(fā)送部330、加密數(shù)據(jù)管理部340。
[0075]圖5是實施方式I的密鑰生成裝置400的結(jié)構(gòu)圖。
[0076]密鑰生成裝置400生成用戶秘密密鑰k*、主秘密密鑰sk、公開參數(shù)pk。密鑰生成裝置400具備指示接收部410、密鑰生成部420、密鑰發(fā)送部430、主密鑰存儲部440。
[0077]在密碼處理系統(tǒng)10的主要的處理中,有加密數(shù)據(jù)登記處理、和加密數(shù)據(jù)取得處理。加密數(shù)據(jù)登記處理是用戶終端100將加密數(shù)據(jù)登記到加密數(shù)據(jù)存儲裝置300中的處理。加密數(shù)據(jù)取得處理是用戶終端100從加密數(shù)據(jù)存儲裝置300取得加密數(shù)據(jù)的處理。
[0078]另外,在加密數(shù)據(jù)登記處理和加密數(shù)據(jù)取得處理中,有3個前提條件。
[0079]因此,在說明了 3個前提條件之后,說明加密數(shù)據(jù)登記處理、和加密數(shù)據(jù)取得處理。[0080]<前提條件1>
[0081]用戶終端100需要取得函數(shù)型密碼方式中的用戶秘密密鑰k'
[0082]密鑰生成裝置400的指示接收部410從用戶終端100等接收密鑰的生成指示。于是,密鑰生成裝置400的密鑰生成部420通過處理裝置,執(zhí)行Setup算法,生成公開參數(shù)pk和主秘密密鑰sk,存儲到主密鑰存儲部440中。另外,密鑰生成部420通過處理裝置,執(zhí)行KeyGen算法,使用在主秘密密鑰sk中包含的基底生成用戶秘密密鑰k'
[0083]然后,密鑰發(fā)送部430將公開參數(shù)pk和用戶秘密密鑰k*發(fā)送到用戶終端100。用戶終端100的數(shù)據(jù)接收部130接收公開參數(shù)Pk和用戶秘密密鑰k%存儲到密鑰管理部150中。另外,密鑰發(fā)送部430將公開參數(shù)pk發(fā)送到加密數(shù)據(jù)管理裝置200。加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210接收公開參數(shù)pk,存儲到密鑰管理部260中。
[0084]另外,Setup算法只要執(zhí)行一次即可,無需每當生成用戶秘密密鑰k*時執(zhí)行。
[0085]另外,在密鑰發(fā)送部430將用戶秘密密鑰k*發(fā)送到用戶終端100的情況下,進行用戶認證,確認是合法的用戶的終端。另外,在密鑰發(fā)送部430將用戶秘密密鑰k*發(fā)送到用戶終端100的情況下,為了防止竊取和篡改,使用利用了 SSL (Secure Socket Layer)等的安全的通信路。即,使得不被有惡意的第三人非法地利用用戶秘密密鑰k'
[0086]此處,密鑰生成部420如式5所示,生成用戶秘密密鑰k'
[0087]〈式5>
[0088]k* = σ j (V1I^1+v2b*2) + σ 2 (v3b*3+v4b*4) +b*5
[0089]此處,O1, σ2是隨機值。V1, V2是密鑰信息。此處,作為密鑰信息,使用每當發(fā)行新的密鑰時值被遞增的世代(generation)編號。v3,V4是被提供用戶秘密密鑰k*的用戶的屬性信息。
[0090]在將世代編號的值設(shè)為P,將屬性信息的值設(shè)為α的情況下,此處,如式6所示,生成用戶秘密密鑰k'
[0091]〈式6>
[0092]k* = O+ 0 2(ah\+h\)+h%
[0093]SP,是 V1: = P , V2: = I, V3: = a,V4: = I。 [0094]密鑰生成部420在針對某個用戶,最初生成用戶秘密密鑰k*的情況下,將世代編號的值設(shè)為I。在該用戶丟失用戶秘密密鑰k%而再次生成用戶秘密密鑰k*的情況下,使世代編號的值遞增而設(shè)為2。以后,在丟失用戶秘密密鑰k*而再生成的情況下,使用遞增了的世代編號的值。
[0095]<前提條件2>
[0096]用戶終端100需要取得域(domain)公開密鑰dpk。
[0097]域公開密鑰dpk是與加密數(shù)據(jù)管理裝置200的秘密密鑰(域秘密密鑰dsk)對應(yīng)的公開密鑰。另外,域秘密密鑰dsk和域公開密鑰dpk的密鑰對也可以并非函數(shù)型密碼方式中的密鑰對,而是其他公開密鑰密碼方式中的密鑰對。
[0098]密鑰生成部420生成域秘密密鑰dsk和域公開密鑰dpk的密鑰對,密鑰發(fā)送部430將域公開密鑰dpk發(fā)送到用戶終端100,將域秘密密鑰dsk發(fā)送到加密數(shù)據(jù)管理裝置200。用戶終端100的數(shù)據(jù)接收部130接收域公開密鑰dpk,存儲到密鑰管理部150中。另外,加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210接收域公開密鑰dpk,存儲到密鑰管理部260中。[0099]在密鑰發(fā)送部430將域秘密密鑰dsk發(fā)送到加密數(shù)據(jù)管理裝置200的情況下,為了防止竊取和篡改,使用利用了 SSL等的安全的通信路。
[0100]〈前提條件3>
[0101]加密數(shù)據(jù)管理裝置200需要取得失效信息。
[0102]失效信息是指,表示丟失了用戶秘密密鑰k*的用戶的識別信息、和丟失了的用戶秘密密鑰k*的世代編號的信息。 [0103]在用戶丟失了用戶秘密密鑰k*的情況下,用戶終端100的數(shù)據(jù)發(fā)送部120將丟失了用戶秘密密鑰k*的用戶的識別信息、和丟失了的用戶秘密密鑰k*的世代編號作為失效信息而發(fā)送到加密數(shù)據(jù)管理裝置200。加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210接收失效信息,存儲到失效信息管理部250中。
[0104]另外,數(shù)據(jù)接收部210在接收失效信息的情況下,進行用戶認證,確認報告了失效的用戶是本人。
[0105]〈加密數(shù)據(jù)登記處理〉
[0106]圖6是示出實施方式I的加密數(shù)據(jù)登記處理的流程的流程圖。
[0107](Sll:加密處理)
[0108]用戶終端100的加密數(shù)據(jù)生成部110執(zhí)行Enc算法來生成加密數(shù)據(jù)C。
[0109]此處,加密數(shù)據(jù)生成部110通過處理裝置,如式7所示,使用在密鑰管理部150中存儲了的公開參數(shù)pk中包含的基底B,生成加密數(shù)據(jù)c的要素Cl。
[0110]〈式7>
[0111]C1:= ω i+ ω 2 (x3b3+x4b4) + ζ b5+Φ b6
[0112]此處,ω17 ω2, T1, r2, ζ , Φ是隨機值。x3,X4被設(shè)定能夠?qū)用軘?shù)據(jù)c進行解密的用戶的屬性信息。
[0113]在將屬性信息的值設(shè)為α的情況下,此處,如式8所示,生成加密數(shù)據(jù)C。
[0114]〈式8>
[0115]C1:= ω i+ ω 2 (b3_ a b4) + ζ b5+Φ b6
[0116]即,是X3: = I, X4: = - α。
[0117]另外,加密數(shù)據(jù)生成部110通過處理裝置,如式9所示,使用在密鑰管理部150中存儲了的公開參數(shù)pk中包含的參數(shù)param,生成加密數(shù)據(jù)c的要素c2。
[0118]〈式9>
[0119]C2: = e(g, g) ζ.m
[0120]另外,加密數(shù)據(jù)生成部110通過處理裝置,生成用在密鑰管理部150中存儲了的域公開密鑰dpk對ω。進行了加密的E(C^r1)、和對ω 1;r2進行了加密的E(ω 1;r2)。
[0121]另外,加密數(shù)據(jù)生成部110生成在要素C1中設(shè)定了的屬性信息所表示的用戶的識別信息作為用戶列表ul。
[0122](S12:第I數(shù)據(jù)發(fā)送處理)
[0123]用戶終端100的數(shù)據(jù)發(fā)送部120通過通信裝置,將包括加密數(shù)據(jù)生成部110生成了的要素Cl、c2、E (ω ι)、E (ω Λ)、ul的加密數(shù)據(jù)c發(fā)送到加密數(shù)據(jù)管理裝置200。
[0124](S13:第2數(shù)據(jù)發(fā)送處理)
[0125]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210通過通信裝置,從用戶終端100接收加密數(shù)據(jù)C。加密數(shù)據(jù)管理裝置200的數(shù)據(jù)發(fā)送部240對加密數(shù)據(jù)C添加關(guān)聯(lián)信息r,并發(fā)送到加密數(shù)據(jù)存儲裝置300。另外,關(guān)聯(lián)信息r是指,加密數(shù)據(jù)c的制作者、加密數(shù)據(jù)c的接收日期時間等,是在之后檢索加密數(shù)據(jù)c時利用的信息。
[0126](S14:數(shù)據(jù)存儲處理)
[0127]加密數(shù)據(jù)存儲裝置300的數(shù)據(jù)接收部310通過通信裝置,從加密數(shù)據(jù)管理裝置200接收加密數(shù)據(jù)c和關(guān)聯(lián)信息r。加密數(shù)據(jù)存儲裝置300的數(shù)據(jù)操作部320將加密數(shù)據(jù)c和關(guān)聯(lián)信息r關(guān)聯(lián)起來,存儲到加密數(shù)據(jù)管理部340中。
[0128](S15:結(jié)果發(fā)送處理)
[0129]加密數(shù)據(jù)存儲裝置300的數(shù)據(jù)發(fā)送部330通過通信裝置,將表示加密數(shù)據(jù)c的存儲是否成功的結(jié)果信息發(fā)送到加密數(shù)據(jù)管理裝置200。
[0130](S16:結(jié)果轉(zhuǎn)送處理)
[0131 ] 加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210通過通信裝置,從加密數(shù)據(jù)存儲裝置300接收結(jié)果信息。加密數(shù)據(jù)管理裝置200的數(shù)據(jù)發(fā)送部240通過通信裝置,將結(jié)果信息發(fā)送到用戶終端100。
[0132](S17:結(jié)果接收處理)
[0133]用戶終端100的數(shù)據(jù)接收部130通過通信裝置,從加密數(shù)據(jù)管理裝置200接收結(jié)果息。
[0134]〈加密數(shù)據(jù)取得處理〉
[0135]圖7是示出實施方式I的加密數(shù)據(jù)取得處理的流程的流程圖。
[0136](S21:關(guān)鍵字發(fā)送處理)
[0137]用戶終端100的數(shù)據(jù)發(fā)送部120通過通信裝置,將能夠確定加密數(shù)據(jù)c的關(guān)鍵字發(fā)送到加密數(shù)據(jù)管理裝置200。
[0138](S22:關(guān)鍵字轉(zhuǎn)送處理)
[0139]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210通過通信裝置,從用戶終端100接收關(guān)鍵字。加密數(shù)據(jù)管理裝置200的數(shù)據(jù)發(fā)送部240通過通信裝置,將關(guān)鍵字發(fā)送到加密數(shù)據(jù)存儲裝置300。
[0140](S23:數(shù)據(jù)檢索處理)
[0141 ] 加密數(shù)據(jù)存儲裝置300的數(shù)據(jù)接收部310通過通信裝置,從加密數(shù)據(jù)管理裝置200接收關(guān)鍵字。加密數(shù)據(jù)存儲裝置300的數(shù)據(jù)操作部320通過處理裝置,從加密數(shù)據(jù)管理部340抽出具有與關(guān)鍵字一致的關(guān)聯(lián)信息r的加密數(shù)據(jù)C。
[0142](S24:第I數(shù)據(jù)發(fā)送處理)
[0143]加密數(shù)據(jù)存儲裝置300的數(shù)據(jù)發(fā)送部330通過通信裝置,將抽出了的加密數(shù)據(jù)c發(fā)送到加密數(shù)據(jù)管理裝置200。
[0144](S25:世代編號更換(re-assignment)處理)
[0145]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210通過通信裝置,從加密數(shù)據(jù)存儲裝置300接收加密數(shù)據(jù)C。
[0146]加密數(shù)據(jù)管理裝置200的失效判定部220通過處理裝置,判定在加密數(shù)據(jù)c的用戶列表ul中包含的用戶的識別信息是否包含于失效信息管理部250存儲的失效信息中。密鑰信息設(shè)定部230通過處理裝置,將加密數(shù)據(jù)c的要素C1中的隨機值r1; r2,根據(jù)失效判定部220的判定結(jié)果,重新設(shè)定為不同的值,生成要素c/。
[0147]具體而言,密鑰信息設(shè)定部230如以下那樣重新設(shè)定隨機值ri,r2。另外,此處,表示重新設(shè)定了式8所示的要素C1中的隨機值r1; r2的要素C1 ’。
[0148]在用戶列表ul中包含的用戶的識別信息未包含于失效信息管理部250存儲的失效信息中的情況下,密鑰信息設(shè)定部230如式10所示,生成要素c/。
[0149]〈式10>
[0150]c/:= ω i (b「b2) + ω2 (b3_ a b4) + ζ b5+Φb6
[0151]即,將A重新設(shè)定為I,將r2重新設(shè)定為-1。重新設(shè)定了 r2的-1是-1X世代編號的初始值。
[0152]另外,通過進行式11所示的計算,能夠從式8所示的要素C1得到式10所示的要素c/。
[0153]〈式11>
[0154]C1,: = C1- ( ωω !^b2) + ( ω ^1- ω ^2)
[0155]此處,ωι ι, ω1;τ2是針對加密數(shù)據(jù)c的要素E(C^r1) , Ε(ω1;τ2),用在密鑰管理部260中存儲了的域秘密密鑰dsk進行解密而得到的。另外,b1; b2是從在公開參數(shù)pk中包含的基底B得到的。
[0156]在用戶列表ul中包含的用戶的識別信息包含于失效信息管理部250存儲的失效信息中的情況下,密鑰信息設(shè)定部230如式12所示,生成要素c/。
[0157]〈式12>
[0158]c/:= ω j ^1- P ^2) + ω 2 (b3~ a b4) + ζ b5+ Φ b6
[0159]即,將A重新設(shè)定為1,將1*2重新設(shè)定為-P 10重新設(shè)定了 r2的-ρ 1是_1父(失效了的用戶秘密密鑰k*的世代編號的值+1)。即,在用戶列表Ul中包括用戶A,作為失效了的用戶A的用戶秘密密鑰k*的世代編號,在失效列表中包括I的情況下,-P i成為-1X (1+1)=_2。
[0160]另外,通過進行式13所示的計算,能夠從式8所示的要素C1得到式12所示的要素c/。
[0161]〈式13>
[0162]C1,: = C1- ( ωω !^b2) + ( ω ^1- ω j ρ ^2)
[0163](S26:第2數(shù)據(jù)發(fā)送處理)
[0164]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)發(fā)送部240通過通信裝置,將把加密數(shù)據(jù)c的要素C1置換為要素c/的加密數(shù)據(jù)c’發(fā)送到用戶終端100。
[0165](S27:解密處理)
[0166]用戶終端100的加密數(shù)據(jù)生成部110通過通信裝置,從加密數(shù)據(jù)管理裝置200接收加密數(shù)據(jù)C,。用戶終端100的解密部140通過執(zhí)行Dec算法,用用戶秘密密鑰k*對加密數(shù)據(jù)c’進行解密。
[0167]此處,解密部140通過處理裝置,執(zhí)行式14所示的計算,從而用用戶秘密密鑰k*對加密數(shù)據(jù)c’進行解密,抽出消息m’。
[0168]〈式14>
[0169]m,: = C2/e (C1, k*)[0170]如上所述,在用戶秘密密鑰k*中的基底矢量bV...,b\中設(shè)定了的屬性信息等(V1,.…,Vn)、和要素C1中的基底矢量bp...,bn中設(shè)定了的屬性信息等(X1,...,Xn)對應(yīng)的情況下,成為抽出了的m’ = m。另外,此處,屬性信息等(Vl,...,vn)和屬性信息等(Xl,...,Xn)對應(yīng)是指,成為Si = ^Vi.Xi = O。
[0171]設(shè)為用戶終端100具有最初生成并作為世代編號的值賦予了 I的用戶秘密密鑰k'即,設(shè)為用戶終端100具有在式6的P中設(shè)定了 I的、式15所示的用戶秘密密鑰k'
[0172]〈式15>
[0173]k* =。iOA+bV + oJab^+O+b^
[0174]另外,在Sll中,設(shè)為如式16(=式8)所示,生成了加密數(shù)據(jù)c的要素Cl。
[0175]〈式16>
[0176]C1:= ω j (xlbl+r2b2) + ω 2 (b3~ a b4) + ζ b5+ Φ b6
[0177]在用戶列表ul中包含的用戶的識別信息未包含于失效信息中的情況下,如式17 (=式10)所示,生成要素c/ ο
[0178]〈式17>
[0179]c/:= ω i (Id1-1d2) + ω2 (b3_ a b4) + ζ b5+Φb6
[0180]在該情況下,是 V1 = 1,V2 = I,v3 = α , V4 = I,且是 X1 = 1,X2 = -1,X3 = I,X4=-α,所以成為2i = 14Vi.Xi = 1-1+α-α =0。因此,在S26中抽出了的消息m’等于在Sll中在加密數(shù)據(jù)c的要素C2中設(shè)定了的消息m。
[0181]即,能夠用用戶秘密密鑰k%對加密數(shù)據(jù)c進行解密。
[0182]另一方面,在用戶列表Ul中包含的用戶的識別信息包含于失效信息中的情況下,如式18所示,生成要素c/。此處,設(shè)為世代編號的值為I的用戶秘密密鑰k*失效。
[0183]〈式18>
[0184]c/: = ω i (b「2b2) + ω 2 (b3_ a b4) + ζ b5+Φ b6
[0185]在該情況下,在用戶秘密密鑰k*中,在基底矢量ΙΛ,..., b*4的系數(shù)中設(shè)定了的V1,...,V4 是 vI = I,v2 = I,v3 = α,V4 = I。另外,在要素 c/ 中,在基底矢量 Id1,..., b4的系數(shù)中設(shè)定了的X1,…,X4是X1 = 1,X2 = -2, X3 = I, X4 = - α ,所以成為SiI14Vi.Xi=1-2+α - α古O。因此,在S26中抽出了的消息m’不等于在Sll中在加密數(shù)據(jù)c的要素C2中設(shè)定了的消息m。
[0186]即,用失效了的用戶秘密密鑰法對加密數(shù)據(jù)c進行解密。
[0187]但是,設(shè)為用戶終端100通過由密鑰生成裝置400再生成用戶秘密密鑰k%取得作為世代編號的值賦予了 2的用戶秘密密鑰k'即,設(shè)為用戶終端100取得了在式6的P中設(shè)定了 2的、式19所示的用戶秘密密鑰k'
[0188]〈式19>
[0189]k* = σ ^2^^) + 03(0^3+^4)+^5
[0190]在該情況下,是V1 = 2, V2 = I, V3 = α , V4 = I,且是 X1 = I, X2 = -2, X3 = I, X4=-α,所以成為\ =.Xi = 2-2+α-α =0。因此,在S26中抽出了的消息m’等于在Sll中在加密數(shù)據(jù)c的要素C2中設(shè)定了的消息m。
[0191]即,在丟失了用戶秘密密鑰k*的情況下,通過用戶秘密密鑰k*的再生成,能夠?qū)崿F(xiàn)加密數(shù)據(jù)c的解密。[0192]另外,還考慮用戶終端100不經(jīng)由加密數(shù)據(jù)管理裝置200,而從加密數(shù)據(jù)存儲裝置300取得加密數(shù)據(jù)c的情況。但是,在該情況下,加密數(shù)據(jù)c的要素C1如式20 (=式8)所
/Jn ο
[0193]〈式20>
[0194]C1:= ω j (xlbl+r2b2) + ω 2 (b3~ a b4) + ζ b5+ Φ b6
[0195]在該情況下,使用了隨機值r1; r2,所以不論在用戶秘密密鑰k*中設(shè)定了的世代編號的值是多少,都成為2i = 14Vi.Xi幸0,無法解密。
[0196]如以上那樣,在實施方式I的密碼處理系統(tǒng)10中,在丟失了用戶秘密密鑰k*的情況下,能夠設(shè)為無法用丟失了的用戶秘密密鑰k*對加密數(shù)據(jù)c進行解密的狀態(tài),并設(shè)為能夠用再生成了的用戶秘密密鑰k*對加密數(shù)據(jù)c進行解密的狀態(tài)。特別,此時,無需針對已經(jīng)在加密數(shù)據(jù)存儲裝置300中存儲了的加密數(shù)據(jù)C,進行再加密等處理。
[0197]另外,在實施方式I的密碼處理系統(tǒng)10中,在假設(shè)用戶終端100不經(jīng)由加密數(shù)據(jù)管理裝置200而從加密數(shù)據(jù)存儲裝置300取得了加密數(shù)據(jù)c的情況下,也無法對加密數(shù)據(jù)c進行解密。
[0198]因此,在實施方式I的密碼處理系統(tǒng)10中,即使在對第三人委托加密數(shù)據(jù)存儲裝置300,而存在加密數(shù)據(jù)c從加密數(shù)據(jù)存儲裝置300泄露的可能性的情況下,也能夠確保安全性。
[0199]S卩,在實施方式I的密碼處理系統(tǒng)10中,在用戶秘密密鑰k*中,設(shè)定有用戶的屬性信息、和該密鑰的世代編號。另外,在加密數(shù)據(jù)c中,作為可解密的條件,通過AND條件設(shè)定有可解密的用戶的屬性信息的條件、和可解密的密鑰的世代編號的條件。
[0200]另外,在實施方式I的密碼處理系統(tǒng)10中,設(shè)置對用戶終端100與加密數(shù)據(jù)存儲裝置300之間的處理進行中繼的加密數(shù)據(jù)管理裝置200。另外,在用戶終端100取得加密數(shù)據(jù)c的情況下,加密數(shù)據(jù)管理裝置200從加密數(shù)據(jù)存儲裝置300取得加密數(shù)據(jù)C,發(fā)送到用戶終端100。此時,加密數(shù)據(jù)管理裝置200根據(jù)在能夠?qū)用軘?shù)據(jù)c進行解密的用戶中是否包括用戶秘密密鑰k*失效了的用戶,將加密數(shù)據(jù)c的世代編號重新設(shè)定為不同的值。具體而言,在不包括失效了的用戶的情況下,在世代編號的值中設(shè)定初始值,在包括失效了的用戶的情況下,在世代編號的值中設(shè)定未失效的世代編號的值。
[0201]由此,實施方式I的密碼處理系統(tǒng)10無需進行加密數(shù)據(jù)c的再加密,而設(shè)為無法用丟失了的用戶秘密密鑰k*對加密數(shù)據(jù)c進行解密,并能夠用再生成了的用戶秘密密鑰k*對加密數(shù)據(jù)C進行解密的狀態(tài)。
[0202]另外,在上述說明中,設(shè)為如式5所示,生成用戶秘密密鑰k'即,對密鑰信息和屬性信息,乘以不同的隨機值O1, O20但是,也可以如式21所示,對密鑰信息和屬性信息乘以同一隨機值σ,來生成用戶秘密密鑰k'
[0203]〈式21>
[0204]k* = σ (v1b*1+v2b*2+v3b*3+v4b*4) +b*5
[0205]另外,在上述說明中,設(shè)為如式7所示,生成加密數(shù)據(jù)c的要素Cl。即,對密鑰信息和屬性信息,乘以不同的隨機值Q1, ω2。但是,也可以如式22所示,對密鑰信息和屬性信息乘以同一隨機值ω,來生成要素Cl。
[0206]< 式 22>[0207]C1:= ω (r1b1+r2b2+x3b3+x4b4) + ζ b5+ φb6
[0208]另外,也可以如式23所示,不使用隨機值O1,而生成要素Cl。其原因為,ri,r2自身是隨機值,也可以不再乘以隨機值。
[0209]< 式 23>
[0210]C1: = r1h1+r2h2+ ω 2 (x3b3+x4b4) + ζ b5+ φ b6
[0211]另外,也可以如式24所示,將設(shè)定密鑰信息的一部分的基底矢量(在式24中bj的系數(shù)設(shè)為0,來生成要素Cl。其原因為,關(guān)于基底矢量b1; b2,通過加密數(shù)據(jù)管理裝置200重新賦值,所以在某I個基底矢量的系數(shù)中設(shè)定有隨機值即可。
[0212]〈式24>
[0213]C1: = r2b2+ ω 2 (x3b3+x4b4) + ζ b5+ φ b6
[0214]另外,也可以如式25所示,不在設(shè)定密鑰信息的基底矢量中設(shè)定隨機值,用域公開密鑰對其他部分進行加密,來生成要素Cl。其原因為,通過在設(shè)定密鑰信息的基底矢量中設(shè)定隨機值,在用戶終端100從加密數(shù)據(jù)存儲裝置300直接取得了加密數(shù)據(jù)C的情況下,成為無法解密的狀態(tài),但是,通過用域公開密鑰對其他部分進行加密,得到同樣的效果。
[0215]〈式25>
[0216]C1: = E ( ω 2 (x3b3+x4 b4) + ζ b5+ φ b6)
[0217]另外,在上述說明中,為了簡化說明,使用α被設(shè)定為屬性信息的值的用戶秘密密鑰k*和加密數(shù)據(jù)c進行了說明。
[0218]但是,實際上,有時使用表不用戶U所屬的A公司的值Ct1、表不B部的值α2、表不C科的值Ci3、表示用戶U的Ci4被設(shè)定為屬性信息的值的用戶秘密密鑰P。例如,有時使用式26所示的用戶秘密密鑰k'另外,此處,作為世代編號的值,設(shè)定了 I。另外,在該情況下,是η = 10。
[0219]〈式26>
[0220]k* = O1 (bVb*2) + σ2(α 1b*3+b*4+ a 2b*5+b*6+ α 3b*7+b*8+ α 4b*9+b*10) +b*n
[0221]另外,有時使用以只要是屬于A公司的B部的用戶則誰都能夠解密的方式將表示A公司的值Ci1、表示B部的值Ci2設(shè)定為屬性信息的值的加密數(shù)據(jù)C。例如,有時使用式27所示的加密數(shù)據(jù)C。
[0222]< 式 27>
[0223]C1:= ω j+ ω 2 (b3~ a ib4+b5- α 2b6) + ζ bn+ Φ b12
[0224]在用戶列表ul中包含的用戶的識別信息包含于失效信息中的情況下,如式28所示,生成要素C/。
[0225]< 式 28>
[0226]C1: = W1 (b「b2) + ω 2 (b3_ a 1b4+b5_ a 2b6) + ζ bn+ Φ b12
[0227]在該情況下,是 V1 = 1,V2 = I,ν3 = α I? V4 = I, V5 = a 2, v6 = I, V7 = α 3, V8 =I,V9 = α 4,vIO = I,且是 Xi = 1,X2 = -1,X3 = 1,X4 = - α 1,X5 = I, X6 = - α 2, X7 = O, X8=0,X9 = 0,X10 = 0,所以成為 Σ j = J10Vi.Xi = σ ^^1-1) + 0 2ω2(α:-α:+α 2-α 2+0+0+0+0) =0。因此,在S26中抽出了的消息m’等于在Sll中在加密數(shù)據(jù)C的要素C2中設(shè)定了的消息m。
[0228]另一方面,在用戶列表Ul中包含的用戶的識別信息包含于失效信息中的情況下,如式29所示,生成要素Cl’。此處,設(shè)為世代編號的值為I的用戶秘密密鑰k*失效。
[0229]< 式 29>
[0230]C1: = W1 (b「2b2) + ω 2 (b3_ a 1b4+b5— a 2b6) + ζ bn+ Φ b12
[0231]另外,如果屬于B部的I名用戶U1丟失了用戶秘密密鑰k%則即使在屬于B部的其他用戶U2取得加密數(shù)據(jù)c的情況下,要素C1也并非式28所示的要素c/,而被變換為式29所示的要素c/。因此,不僅是用戶U1,用戶U2等屬于B部的其他用戶也是如果沒有再制作用戶秘密密鑰k%則無法對加密數(shù)據(jù)c進行解密。
[0232]實施方式2.[0233]在實施方式2中,說明在非專利文獻2中記載了的函數(shù)型密碼方式中,實現(xiàn)秘密密鑰的失效方式的方法。
[0234]首先,關(guān)于在非專利文獻2中記載了的函數(shù)型密碼方式,簡化為僅該實施方式的說明所需的部分而說明。特別,關(guān)于在非專利文獻2中記載了的函數(shù)型密碼方式中使用的跨度(span)程序、秘密分散等,省略或者簡化而說明。
[0235]在非專利文獻2中記載了的函數(shù)型密碼方式中,與在非專利文獻I中記載了的函數(shù)型密碼方式同樣地,有Setup算法、KeyGen算法、Enc算法、Dec算法。
[0236]Setup算法是生成公開參數(shù)pk和主秘密密鑰sk的算法。
[0237]在Setup算法中,生成對偶配對矢量空間的參數(shù)param、和作為關(guān)于t = O,...,d(d是I以上的整數(shù))的各t的標準正交基底的基底Bt以及基底另外,參數(shù)param和基底Bt成為公開參數(shù)pk, 基底B'成為主秘密密鑰sk。
[0238]另外,基底Btl具有基底矢量V1, b0j2, , b0j5,基底Bici具有基底矢量b^,b*0,2,...,b\5。即,基底Btl, 分別具有5個基底矢量。另外,關(guān)于t = l,...,d的各t的基底Bt具有基底矢量buju,...,bt,3nt+1,基底B'具有基底矢量b'Yb'』,...,b',3nt+1。即,基底Bt,B*t分別具有3nt+l個(nt是I以上的整數(shù))的基底矢量。
[0239]但是,嚴密而言,作為系數(shù)一定被分配O的基底矢量無需包含于公開參數(shù)pk、主秘密密鑰Sk中。因此,也可以設(shè)為在公開參數(shù)Pk中包含的基底Btl僅具有基底矢量b^bu,bQ,5,在主秘密密鑰sk中包含的基底旳僅具有基底矢量心…匕# b\4。另外,也可以設(shè)為關(guān)于t = 1,...,d的各t,在公開參數(shù)pk中包含的基底Bt僅具有基底矢量bt,1;,...,bt,nt,bt,3nt+1,在主秘密密鑰sk中包含的基底B'僅具有基底矢量ΙΑ,” , b*tjnt+1, b*tj2nt+1, ,
b t,3nt。
[0240]KeyGen算法是生成用戶秘密密鑰k*的算法。
[0241]在KeyGen算法中,如式30所示,使用在主秘密密鑰sk中包含的基底B',生成具有要素K、和關(guān)于t = 1,...,d的各t的要素k*t的用戶秘密密鑰k'
[0242]< 式 30>
[0243]k*0:= (δ,0,1,Φ0,0)Β*0
[0244]k*t:= (δ v —t,0nt,Φ — t,0)B*t
[0245]此處,δ,φ。,φ—t:= φχΛ,..., (J)t,nt 是隨機值。ν —t:= vta,..., Vtjnt 是被提供用戶秘密密鑰k*的用戶的屬性信息等。
[0246]另外,是(Z1,..., zN)B*t: = Σ j =iD 匡口,是 k*0: = ( δ,0,1, Φ0,0)Β*0:=Sb*0a+b*0,3+cKb*0,4。另外,是 k*t:= (δν —t,0nt,φ-t,0)B*t:= Σ^^δν,,^,,+ Σ^nt I I *
I $ t,iD t,2nt+i °
[0247]Enc算法是生成加密數(shù)據(jù)c的算法。
[0248]在Enc算法中,如式31所示,使用在公開參數(shù)pk中包含的基底B,生成加密數(shù)據(jù)c的要素Ctl、和關(guān)于t = 1,...,L(L是d以下的整數(shù))的各t的要素ct。
[0249]〈式31>
[0250]C0:= (-S0, O, ζ ,0, n0) B0
[0251]ct:= (ste t,i+ ^ tx t,0nt,0nt, rIt)Bt
[0252]此處,e — u是具有nt個要素、開頭要素為I且剩余的要素為0的矢量。另外,是S0= Σ1 = 1%0 ζ , et, n0, IIt是隨機值。xt,1;...,xt,nt是能夠?qū)用軘?shù)據(jù)c進行解密的用戶的屬性信息等。
[0253]另外,是(Z1,...,zN)Bt:= Xi = 1NZibtjio SP,是 C0:= (-s0,0, ζ ,0, η0)Β0:= _s0b0,1+( b0,3+n0b0,5。另外,是 ct:= (ste —ta+Θ tx-t,0nt,0nt,nt)Bt:= Σ i =廣(ste — ta+Θ A,
i) bt, i+ rI tb3nt+l。
[0254]另外,在Enc算法中,如式32所示,使用在公開參數(shù)pk中包含的參數(shù)param,生成加密數(shù)據(jù)c的要素cd+1。
[0255]< 式 32>
[0256]cd+1: = e(g, g) ζ.m
[0257]此處,g是在參數(shù)param中包含的信息,是構(gòu)成對偶配對矢量空間的群G的要素。m是消息。e(g,g)是關(guān)于要素g和要素g的配對運算。
[0258]Dec算法是用用戶秘密密鑰k*對加密數(shù)據(jù)c進行解密的算法。
[0259]在Dec算法中,執(zhí)行式33所示的計算,用用戶秘密密鑰k*對加密數(shù)據(jù)c進行解密,抽出m ’。
[0260]< 式 33>
[0261]m,:= cd+1/(e(c0, k*0).nt = 1Le(ct, k*t))
[0262]此處,e (c0, k*0)是關(guān)于要素cQ和用戶秘密密鑰k*Q的配對運算,e (ct, k*t)是關(guān)于要素Ct和用戶秘密密鑰k*t的配對運算。
[0263]在Dec算法中,在關(guān)于t = 1,...,L的各t,在用戶秘密密鑰k*中的要素k*t中設(shè)定了的屬性信息等(V')、和在加密數(shù)據(jù)C中的要素Ct中設(shè)定了的屬性信息等OTt)對應(yīng)的情況下,成為抽出了的m’ =m。
[0264]屬性信息等(V —t)和屬性信息等OTt)對應(yīng)是指,成為V'.X' = 2i = 1ntvt,i.xt’i = O。
[0265]是配對運算e(sg,tg) =e(g,g)st。因此,成為 e (cQ, k*。)=e(g,g)Y1。此處,是 Yl=-S0+ ζ ο 另外,成為 nt = ^e(CtIt) = (g,g)Y2。此處,是 Y2= 2i = 1L(Si+v —t.χ —t)=Si = 1L (Si)+ Si = ^v'.X^iO 因此,如果是 Σ? = 1Ντ —i.x —i = O,則是 Y2 = Σ j = J1(Si)。
[0266]然后,成為e(c0, k*0).rit = 1Le(ct, k*t) = e(g, g)Y3,如果是 =.x —! = 0,則是Y3 =-sQ+ζ + Σ i = , (Si)。然后,如上所述,是sQ = Σ i = ^si,所以是Y3 = ζ。SP,是e (c0, k*0).nt = 1Le (ct, k*t) = e(g, g) ζ ?
[0267]如式32所示,是cd+1: = e(g,g) ζ.m,所以如果執(zhí)行式33的計算,則在Si =1LV ^ i * X ^ i = O的情況下,成為m’ = m。[0268]在以下的說明中,為了簡化說明,設(shè)為d = 2, L = 2,設(shè)為nl = 2, n2 = 2而進行說明。
[0269]實施方式2的密碼處理系統(tǒng)10的結(jié)構(gòu)與圖1所示的實施方式I的密碼處理系統(tǒng)10的結(jié)構(gòu)相同。實施方式2的用戶終端100、加密數(shù)據(jù)管理裝置200、加密數(shù)據(jù)存儲裝置300、密鑰生成裝置400的結(jié)構(gòu)與圖2-5所示的實施方式I的用戶終端100、加密數(shù)據(jù)管理裝置200、加密數(shù)據(jù)存儲裝置300、密鑰生成裝置400的結(jié)構(gòu)相同。
[0270]在實施方式2的密碼處理系統(tǒng)10的主要的處理中,與實施方式I的密碼處理系統(tǒng)10同樣地,有加密數(shù)據(jù)登記處理、和加密數(shù)據(jù)取得處理,在加密數(shù)據(jù)登記處理和加密數(shù)據(jù)取得處理中,有3個前提條件。
[0271]3個前提條件是除了在前提條件I中生成的用戶秘密密鑰k*的結(jié)構(gòu)以外,與實施方式I相同。
[0272]此處,密鑰生成部420如式34所示,生成用戶秘密密鑰k'
[0273]< 式 34>
[0274]k*0:= (δ,0,1,Φ0,0)Β*0
[0275]k*!:= (δ ν^1;0η1, Φ ^!,0)6*!
[0276]k*2:= (δν —2,0η2,φ—2,0)Β*2
[0277]此處,δ,φ。,φ —ρ φ —2是隨機值。ν —1:= V1VVli2是密鑰信息。此處,與實施方式I同樣地,作為密鑰信息,使用每當發(fā)行新的密鑰時值被遞增的世代編號。V弋:=V2,
V2,2是被提供用戶秘密密鑰k*的用戶的屬性信息等。
[0278]在將世代編號的值設(shè)為P,將屬性信息的值設(shè)為α的情況下,此處,如式35所示,生成用戶秘密密鑰k'
[0279]< 式 35>
[0280]k*0:= (δ ,0,1, Φ0,0)Β*0
[0281]k*!:= ( δ (ρ,1),0η1,Φ ^!,0)6*!
[0282]k*2:= ( δ (α,I) ,O"2,Φ —2,0)Β*2
[0283]SP,是 Via:= P , Vlj2: = I, V2a:= α,ν2>2: = I。
[0284]<加密數(shù)據(jù)登記處理>
[0285]使用圖6,以與實施方式I的加密數(shù)據(jù)登記處理不同的部分為中心,說明實施方式2的加密數(shù)據(jù)登記處理。
[0286](Sll:加密處理)
[0287]用戶終端100的加密數(shù)據(jù)生成部110執(zhí)行Enc算法來生成加密數(shù)據(jù)C。
[0288]此處,加密數(shù)據(jù)生成部110通過處理裝置,如式36所示,使用在密鑰管理部150中存儲了的公開參數(shù)pk中包含的基底B,生成加密數(shù)據(jù)c的要素C(l,C1, c2。
[0289]< 式 36>
[0290]C0:= (-S0, O, ζ ,0, n0) B0
[0291]C1:= (Sle —ia+0 Α?,!.),。111,。111,Il1)B1
[0292]c2:= (s2e —2a+θ 2χ —2,0n2,0n2,n2)B2
[0293]Ma^Stl = SAS2t5 ζ , Q1, θ 2,η0, r^,n2,r 是隨機值。x2a, x2,2 是能夠?qū)用軘?shù)據(jù)c進行解密的用戶的屬性信息等。[0294]在將屬性信息的值設(shè)為α的情況下,此處,如式37所示,生成加密數(shù)據(jù)C。
[0295]< 式 37>
[0296]C0:= (-S0,O, ζ ,0, η0)Β0
[0297]C1:= (sp — u+e JLrXOnl, n ^B1
[0298]c2:= (s2e —2a+θ 2(1,-α ),0η2,0η2,η2)B2
[0299]SP,是 X2a:= I, χ2,2:= _α。
[0300]另外,加密數(shù)據(jù)生成部110通過處理裝置,如式38所示,使用在密鑰管理部150中存儲了的公開參數(shù)pk中包含的參數(shù)param,生成加密數(shù)據(jù)c的要素cd+1。
[0301]〈式38>
[0302]cd+1: = e(g, g) ζ.m
[0303]另外,加密數(shù)據(jù)生成部110通過處理裝置,生成用在密鑰管理部150中存儲了的域公開密鑰dpk對r進行了加密的E (r)、和對Θ:進行了加密的E ( Θ J。
[0304]另外,加密數(shù)據(jù)生成部110生成在要素C1中設(shè)定了的屬性信息表示的用戶的識別信息作為用戶列表ul。
[0305](S12:第I數(shù)據(jù)發(fā) 送處理)
[0306]數(shù)據(jù)發(fā)送部120通過通信裝置,將包括加密數(shù)據(jù)生成部110生成了的要素C(l,C1,c2, cd+1,E(r),E(r),ul的加密數(shù)據(jù)c發(fā)送到加密數(shù)據(jù)管理裝置200。
[0307]S13至S17的處理與實施方式I相同。
[0308]<加密數(shù)據(jù)取得處理>
[0309]使用圖7,以與實施方式I的加密數(shù)據(jù)取得處理不同的部分為中心,說明實施方式2的加密數(shù)據(jù)取得處理。
[0310]S21至S24的處理與實施方式I相同。
[0311](S25:世代編號更換處理)
[0312]S25也原則上與實施方式I相同。但是,重新設(shè)定加密數(shù)據(jù)c的要素C1中的隨機值r的方法不同。
[0313]具體而言,密鑰信息設(shè)定部230如以下那樣重新設(shè)定隨機值r。另外,此處,表示重新設(shè)定了式37所示的要素C1中的隨機值r的要素c/。
[0314]在用戶列表ul中包含的用戶的識別信息未包含于失效信息管理部250存儲的失效信息中的情況下,密鑰信息設(shè)定部230如式39所示,生成要素c/。
[0315]〈式39>
[0316]c/:= (Sie^ei(L-1)jOnSOn1, n ^B1
[0317]即,將r重新設(shè)定為-1。重新設(shè)定了 r的-1是-1 X世代編號的初始值。
[0318]另外,通過進行式40所示的計算,能夠從式37所示的要素C1得到式39所示的要素c/。
[0319]〈式40>
[0320]c/:= C1- Θ ^blj2- Θ ^lj2
[0321]此處,r,Θ i是通過在密鑰管理部260中存儲了的域秘密密鑰dsk對加密數(shù)據(jù)c的要素E(r),E(Q1)進行解密而得到的。另外,bia, b1>2是從在公開參數(shù)pk中包含的基底B得到的。[0322]在用戶列表ul中包含的用戶的識別信息包含于失效信息管理部250存儲的失效信息中的情況下,密鑰信息設(shè)定部230如式41所示,生成要素c/。
[0323]〈式41>
[0324]c/:= (Sle^ia+Θ^Ι,-ρ ^,Onl7Onl, n ^B1
[0325]SMfr重新設(shè)定為- P lt)重新設(shè)定了 r的- P i是-1X (失效了的用戶秘密密鑰k*的世代編號的值+1)。即,在用戶列表ul中包括用戶A,作為失效了的用戶A的用戶秘密密鑰k*的世代編號,在失效列表中包括I的情況下,- P i成為-1X (1+1) = _2。
[0326]另外,通過進行式42所示的計算,能夠從式37所示的要素C1得到式41所示的要素c/。
[0327]< 式 42>
[0328]c/:= C1- Θ ^blj2- Θ I ρ ^lj2
[0329]S26與實施方式I相同。 [0330]S27也原則上與實施方式I相同。但是,解密的方法不同。
[0331]此處,解密部140通過處理裝置,執(zhí)行式43所示的計算,從而用用戶秘密密鑰k*對加密數(shù)據(jù)c’進行解密,抽出消息m’。
[0332]< 式 43>
[0333]m,:= cd+1/(e(c0, k*0).nt = 1Le(ct, k*t))
[0334]如上所述,在關(guān)于t = 1,...,L的各t,在用戶秘密密鑰k*中的要素k*t中設(shè)定了的屬性信息等(V')、和在加密數(shù)據(jù)C中的要素Ct中設(shè)定了的屬性信息等OTt)對應(yīng)的情況下,成為抽出了的m’ =m。另外,此處,屬性信息等(V')和屬性信息等OTt)對應(yīng)是指,成為 V —t.x —t==
[0335]設(shè)為用戶終端100具有最初生成并作為世代編號的值賦予了 I的用戶秘密密鑰k'即,設(shè)為用戶終端100具有在式35的P中設(shè)定了 I的、式44所示的用戶秘密密鑰k'
[0336]< 式 44>
[0337]k*0:= (δ,0,1,Φ0,0)Β*0
[0338]k*!:= ( δ (1,1),0η1,Φ ^!,0)6*!
[0339]k*2:= ( δ (α,I) ,O"2,Φ —2,0)Β*2
[0340]另外,在Sll中,設(shè)為如式45(=式37)所示,生成加密數(shù)據(jù)c的要素Cl。
[0341]〈式45>
[0342]C0: = (—S0, O, ζ,0,Π ο) B0
[0343]C1:= (sje υ+Θ^Ι,),。,O,Π i) B1
[0344]C2:= (s2e —2a+θ 2(1,-α ),0n2,0n2, n2)B2
[0345]在用戶列表ul中包含的用戶的識別信息未包含于失效信息中的情況下,如式46 (=式39)所示,生成要素c/ ο
[0346]< 式 46>
[0347]c/:= (Sie^ei(L-1)jOnSOn1, n ^B1
[0348]在該情況下,用戶秘密密鑰k*中,在基底Bi1的基底矢量?Λ,ρ b*^的系數(shù)中設(shè)定了的Vu,Vlj2^vljl = 1,Vlj2 = I。另外,在要素c/中,在基底B1的基底矢量bul,blj2的系數(shù)中設(shè)定了的 X1, P Xij2 是 Xi, I = I,Xi,2 = -1。因此,成為 V —i.X—i = 2i = 12Vlj i.X1, i=1-1 = 0。另外,在用戶秘密密鑰k*中,在基底Bi2的基底矢量bH2,2的系數(shù)中設(shè)定了的=a ,V2j2 = 10另外,在要素c/中,在基底民的基底矢量b2,1;b2,2的系數(shù)中設(shè)定了的 X2,I,X2j2 是 X2,l = I,X2,2 = -α。因此,成為 V —2.X —2 = Σ? = I2V2ji.X2ji =α-α =0。因此,在S26中抽出了的消息m’等于在Sll中在加密數(shù)據(jù)c的要素cd+1中設(shè)定了的消息m。
[0349]即,能夠用用戶秘密密鑰k%對加密數(shù)據(jù)c進行解密。
[0350]另一方面,在用戶列表Ul中包含的用戶的識別信息包含于失效信息中的情況下,如式47所示,生成要素c/。此處,設(shè)為世代編號的值為I的用戶秘密密鑰k*已失效。
[0351]〈式47>
[0352]c/:= (Sie^e1(Li)JnSon1, n^B1
[0353]在該情況下,是via = I, Vlj2 = I,是 xia = I, Xlj2 = -2,所以成為 V —丨.χ —丨=Si = ^vui.Xlji = 1-2幸O。因此,在S26中抽出了的消息m’不等于在Sll中在加密數(shù)據(jù)c的要素cd+1中設(shè)定了的消息m。
[0354]即,用失效了的用戶秘密密鑰法對加密數(shù)據(jù)c進行解密。
[0355]但是,設(shè)為用戶終端100通過由密鑰生成裝置400再生成用戶秘密密鑰k%取得了作為世代編號的值賦予了 2的用戶秘密密鑰P。即,設(shè)為用戶終端100取得了在式35的P中設(shè)定了 2的、式48所示的用戶秘密密鑰k'
[0356]< 式 48>
[0357]k*0:= (δ,0,1,Φ0,0)Β*0
[0358]k*1:= ( δ (2,1),0η1,Φ ^!,0)6*!
[0359]k*2:= ( δ (α,I) ,O"2,Φ —2,0)Β*2
[0360]在該情況下,是via = 2, vlj2 = I,是 xia = I, X1,2 = -2,所以成為 V —丨.x —丨=Σ J = J2Vlj i * Xlj i = 2-2 = Oo 另外,是 V —2.X —2 = Σ J = J2V2j i.X2j i = α - α =0。因此,在S26中抽出了的消息m’等于在Sll中在加密數(shù)據(jù)C的要素cd+1中設(shè)定了的消息m。
[0361]即,在丟失了用戶秘密密鑰k*的情況下,通過用戶秘密密鑰k*的再生成,能夠?qū)崿F(xiàn)加密數(shù)據(jù)c的解密。
[0362]另外,還考慮用戶終端100不經(jīng)由加密數(shù)據(jù)管理裝置200,從加密數(shù)據(jù)存儲裝置300取得加密數(shù)據(jù)c的情況。但是,在該情況下,加密數(shù)據(jù)c的要素C1如式49(=式37)所
/Jn ο
[0363]< 式 49>
[0364]C1:= (sje,0 ,Π j) B1
[0365]在該情況下,使用了隨機值r,所以不論在用戶秘密密鑰k*中設(shè)定了的世代編號的值是多少,都成為SiI12V^ * Xlji ^ O,無法解密。
[0366]如以上那樣,在實施方式2的密碼處理系統(tǒng)10中,能夠得到與實施方式I的密碼處理系統(tǒng)10同樣的效果。
[0367]另外,在上述說明中,設(shè)為如式36所示,生成加密數(shù)據(jù)c的要素Cl。但是,也可以如式50所示,不使用隨機值Q1,而生成要素Cl。其原因為,r自身是隨機值,也可以不再乘以隨機值。
[0368]< 式 50>[0369]C1:= (Sie^lj !+(Lr), Onl, Onl, n ^B1
[0370]另外,也可以如式51所示,在設(shè)定密鑰信息的基底矢量中不設(shè)定隨機值,用域公開密鑰對要素C1整體進行加密,生成要素Cl。其原因為,通過在設(shè)定密鑰信息的基底矢量中設(shè)定隨機值,在用戶終端100從加密數(shù)據(jù)存儲裝置300直接取得了加密數(shù)據(jù)c的情況下,成為無法解密的狀態(tài),但是,通過用域公開密鑰對其他部分進行加密,得到同樣的效果。
[0371]〈式51>
[0372]C1:= E(Sle —ia,0nl,0n1,n ^B1
[0373]實施方式3.[0374]在實施方式I中,通過在設(shè)定加密數(shù)據(jù)c的要素C1中的密鑰信息的基底矢量中設(shè)定隨機值等,確保了用戶終端100直接從加密數(shù)據(jù)存儲裝置300取得了加密數(shù)據(jù)c的情況的安全性。同樣地,在實施方式2中,通過在設(shè)定加密數(shù)據(jù)c的要素C1中的密鑰信息的基底中設(shè)定隨機值r等,確保了用戶終端100直接從加密數(shù)據(jù)存儲裝置300取得了加密數(shù)據(jù)c的情況的安全性。
[0375]在實施方式3中,說明通過在簡化加密數(shù)據(jù)c的設(shè)定的同時,進行向加密數(shù)據(jù)存儲裝置300的訪問控制,確保用戶終端100想要直接從加密數(shù)據(jù)存儲裝置300取得加密數(shù)據(jù)c的情況的安全性的方法。
[0376]在實施方式3中,說明應(yīng)用了實施方式I的處理的情況,但針對應(yīng)用了實施方式2的處理的情況也能夠同樣地實現(xiàn)。
[0377]密碼處理系統(tǒng)10的結(jié)構(gòu)與圖1所示的實施方式I的密碼處理系統(tǒng)10的結(jié)構(gòu)相同。用戶終端100、密鑰生成裝置400的結(jié)構(gòu)與圖2、5所示的實施方式I的用戶終端100、密鑰生成裝置400的結(jié)構(gòu)相同。
[0378]圖8是實施方式3的加密數(shù)據(jù)管理裝置200的結(jié)構(gòu)圖。
[0379]實施方式3的加密數(shù)據(jù)管理裝置200除了圖3所示的實施方式I的加密數(shù)據(jù)管理裝置200的功能以外,還具備認證處理部270。
[0380]圖9是實施方式3的加密數(shù)據(jù)存儲裝置300的結(jié)構(gòu)圖。
[0381]實施方式3的加密數(shù)據(jù)存儲裝置300除了圖4所示的實施方式I的加密數(shù)據(jù)存儲裝置300的功能以外,還具備認證處理部350。
[0382]關(guān)于3個前提條件,原則上與實施方式I相同。
[0383]但是,關(guān)于在實施方式I中在公開參數(shù)pk中包含的基底B的基底矢量b1;b2,從公開參數(shù)Pk去掉,從密鑰生成裝置400僅發(fā)送到加密數(shù)據(jù)管理裝置200。另外,此時,為了防止竊取和篡改,使用利用了 SSL等的安全的通信路。
[0384]<加密數(shù)據(jù)登記處理>
[0385]圖10是示出實施方式3的加密數(shù)據(jù)登記處理的流程的流程圖。
[0386](S31:加密處理)
[0387]用戶終端100的加密數(shù)據(jù)生成部110與圖6的Sll同樣地,執(zhí)行Enc算法來生成加密數(shù)據(jù)C。
[0388]此處,加密數(shù)據(jù)生成部110通過處理裝置,如式52所示,生成加密數(shù)據(jù)c的要素q。
[0389]< 式 52>
[0390]C1:= ω (x3b3+x4b4) + ζ b5+ φb6[0391]此處,ω,ζ,φ是隨機值。χ3,X4被設(shè)定能夠?qū)用軘?shù)據(jù)c進行解密的用戶的屬性信息。
[0392]在將屬性信息的值設(shè)為α的情況下,此處,如式53所示,生成加密數(shù)據(jù)C。
[0393]< 式 53>
[0394]C1:= ω (b3_ a b4) + ζ b5+ φb6
[0395]即,是X3: = I, X4: = _ α。
[0396]加密數(shù)據(jù)生成部110針對要素c2,Ε(ωιι), E (ω ^2),ul,也與圖6的Sll同樣地生成。
[0397](S32:第I認證信息發(fā)送處理)
[0398]用戶終端100的數(shù)據(jù)發(fā)送部120通過通信裝置,作為認證信息,將用戶的識別信息和口令發(fā)送到加密數(shù)據(jù)管理裝置200。
[0399](S33:第I認證處理)
[0400]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210通過通信裝置,從用戶終端100接收用戶的識別信息和口令。
[0401]于是,加密數(shù) 據(jù)管理裝置200的認證處理部270根據(jù)用戶的識別信息和口令,進行用戶的認證。例如,認證處理部270針對每個用戶預(yù)先存儲識別信息和口令,根據(jù)接收了的識別信息以及口令、和存儲了的識別信息以及口令是否一致來進行認證。認證處理部270在認證成功了的情況下,使處理進入到S34,在認證失敗了的情況下,結(jié)束處理。
[0402](S34:第I數(shù)據(jù)發(fā)送處理)
[0403]用戶終端100的數(shù)據(jù)發(fā)送部120與圖6的S12同樣地,將加密數(shù)據(jù)c發(fā)送到加密數(shù)據(jù)管理裝置200。
[0404](S35:第2認證信息發(fā)送處理)
[0405]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210通過通信裝置,從用戶終端100接收加密數(shù)據(jù)C。于是,在數(shù)據(jù)發(fā)送部240中,作為認證信息,將加密數(shù)據(jù)管理裝置200的識別信息和口令發(fā)送到加密數(shù)據(jù)存儲裝置300。
[0406](S36:第2認證處理)
[0407]加密數(shù)據(jù)存儲裝置300的數(shù)據(jù)接收部310通過通信裝置,從用戶終端100接收加密數(shù)據(jù)管理裝置200的識別信息和口令。
[0408]于是,加密數(shù)據(jù)存儲裝置300的認證處理部350根據(jù)加密數(shù)據(jù)管理裝置200的識別信息和口令,進行認證處理。例如,認證處理部350預(yù)先存儲加密數(shù)據(jù)管理裝置200的識別信息和口令,根據(jù)接收了的識別信息以及口令、和存儲了的識別信息以及口令是否一致來進行認證。認證處理部350在認證成功了的情況下,使處理進入到S37,在認證失敗了的情況下,結(jié)束處理。
[0409](S37:第2數(shù)據(jù)發(fā)送處理)
[0410]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)發(fā)送部240對加密數(shù)據(jù)c添加關(guān)聯(lián)信息r,發(fā)送到加密數(shù)據(jù)存儲裝置300。
[0411]S38至S41的處理與圖6所示的S14至S17的處理相同。
[0412]〈加密數(shù)據(jù)取得處理〉
[0413]圖11是示出實施方式3的加密數(shù)據(jù)取得處理的流程的流程圖。[0414](S51:第I認證信息發(fā)送處理)
[0415]用戶終端100的數(shù)據(jù)發(fā)送部120通過通信裝置,作為認證信息,將用戶的識別信息和口令發(fā)送到加密數(shù)據(jù)管理裝置200。
[0416](SM:第I認證處理)
[0417]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210通過通信裝置,從用戶終端100接收用戶的識別信息和口令。
[0418]于是,加密數(shù)據(jù)管理裝置200的認證處理部270根據(jù)用戶的識別信息和口令,進行用戶的認證。例如,認證處理部270通過與S33相同的方法進行認證。認證處理部270在認證成功了的情況下,使處理進入到S53,在認證失敗了的情況下,結(jié)束處理。
[0419](S53:關(guān)鍵字發(fā)送處理)
[0420]用戶終端100的數(shù)據(jù)發(fā)送部120通過通信裝置,將能夠確定加密數(shù)據(jù)c的關(guān)鍵字發(fā)送到加密數(shù)據(jù)管理裝置200。
[0421 ] (S54:第2認證信息發(fā)送處理)
[0422]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210通過通信裝置,從用戶終端100接收關(guān)鍵字。于是,在數(shù)據(jù)發(fā)送部240中,作為認證信息,將加密數(shù)據(jù)管理裝置200的識別信息和口令發(fā)送到加密數(shù)據(jù)存儲裝置300。
[0423](S55:第2認證處理)
[0424]加密數(shù)據(jù)存儲裝置300的數(shù)據(jù)接收部310通過通信裝置,從用戶終端100接收加密數(shù)據(jù)管理裝置200的識別信息和口令。
[0425]于是,加密數(shù)據(jù)存儲裝置300的認證處理部350根據(jù)加密數(shù)據(jù)管理裝置200的識別信息和口令進行認證處理。例如,認證處理部350通過與S36相同的方法進行認證。認證處理部350在認證成功了的情況下,使處理進入到S56,在認證失敗了的情況下,結(jié)束處理。
[0426](S56:關(guān)鍵字轉(zhuǎn)送處理)
[0427]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)發(fā)送部240通過通信裝置,將關(guān)鍵字發(fā)送到加密數(shù)據(jù)存儲裝置300。
[0428]S57至S58的處理與圖7所示的S23至S24的處理相同。
[0429](S59:權(quán)限判定處理)
[0430]加密數(shù)據(jù)管理裝置200的數(shù)據(jù)接收部210通過通信裝置,從加密數(shù)據(jù)存儲裝置300接收加密數(shù)據(jù)C。
[0431]于是,加密數(shù)據(jù)管理裝置200的認證處理部270通過處理裝置,判定在S52中接收了的用戶的識別信息是否包含于加密數(shù)據(jù)c的用戶列表ul中。認證處理部270在包含的情況下,使處理進入到S60,在未包含的情況下,結(jié)束處理。
[0432](S60:世代編號更換處理)
[0433]加密數(shù)據(jù)管理裝置200的失效判定部220通過處理裝置,判定在加密數(shù)據(jù)c的用戶列表ul中包含的用戶的識別信息是否包含于失效信息管理部250存儲的失效信息中。密鑰信息設(shè)定部230通過處理裝置,在加密數(shù)據(jù)c的要素C1中,根據(jù)失效判定部220的判定結(jié)果,設(shè)定為不同的值,生成要素c/。
[0434]具體而言,密鑰信息設(shè)定部230如以下那樣在要素C1中設(shè)定值。另外,此處,示出在式53所示的要素C1中設(shè)定了值的要素c/。
[0435]在用戶列表ul中包含的用戶的識別信息未包含于失效信息管理部250存儲的失效信息中的情況下,密鑰信息設(shè)定部230如式54 (=式10)所示,生成要素c/。
[0436]< 式 54>
[0437]c/: = ω i (b「b2) + ω 2 (b3_ ct b4) + ζ b5+Φ b6
[0438]即,在基底矢量Id1的系數(shù)中設(shè)定1,在基底矢量b2的系數(shù)中設(shè)定-1。在基底矢量b2的系數(shù)中重新設(shè)定了的-1是-1 X世代編號的初始值。
[0439]另外,通過進行式55所示的計算,能夠從式53所示的要素C1得到式54所示的要素c/。
[0440]< 式 55>
[0441]c/:= C1+( ω ^1-ω ^2)
[0442]在用戶列表Ul中包含的用戶的識別信息包含于失效信息管理部250存儲的失效信息中的情況下,密鑰信息設(shè)定部230如式56 (=式12)所示,生成要素Cl’。
[0443]< 式 56>
[0444]c/:= ω j ^1- P ^2) + ω 2 (b3~ a b4) + ζ b5+ Φ b6 [0445]即,在基底矢量Id1的系數(shù)中設(shè)定1,在基底矢量b2的系數(shù)中設(shè)定-P115在基底矢量匕的系數(shù)中設(shè)定了的- P i是-1X (失效了的用戶秘密密鑰k*的世代編號的值+1)。
[0446]另外,通過進行式57所示的計算,能夠從式53所示的要素C1得到式56所示的要素c/。
[0447]< 式 57>
[0448]c/:= ο1+(ω^1-ω1 p ^2)
[0449]S61至S62的處理與圖7所示的S26至S27的處理相同。
[0450]如以上那樣,實施方式3的密碼處理系統(tǒng)10在加密數(shù)據(jù)管理裝置200和加密數(shù)據(jù)存儲裝置300中分別進行認證。由此,能夠防止通過用戶終端100直接從加密數(shù)據(jù)存儲裝置300取得加密數(shù)據(jù)C。因此,能夠在加密數(shù)據(jù)c中不設(shè)定隨機值等,而確保安全性。
[0451]另外,實施方式3的密碼處理系統(tǒng)10能夠防止在加密數(shù)據(jù)登記處理中,將非法的數(shù)據(jù)登記到加密數(shù)據(jù)存儲裝置300中。
[0452]另外,在上述說明中,在加密數(shù)據(jù)管理裝置200和加密數(shù)據(jù)存儲裝置300中分別進行了認證。但是,也可以在加密數(shù)據(jù)管理裝置200中不進行認證,而僅加密數(shù)據(jù)存儲裝置300進行認證。通過至少加密數(shù)據(jù)存儲裝置300進行認證,能夠防止通過用戶終端100直接從加密數(shù)據(jù)存儲裝置300取得加密數(shù)據(jù)C、將非法的數(shù)據(jù)登記到加密數(shù)據(jù)存儲裝置300中。
[0453]另外,在上述說明中,說明了應(yīng)用了實施方式I的處理的情況。在應(yīng)用了實施方式2的處理的情況下,處理的流程與應(yīng)用了實施方式I的處理的情況相同。但是,在S31中生成的要素C1、和在S60中生成的要素c/與應(yīng)用了實施方式I的處理的情況不同。
[0454]在應(yīng)用了實施方式2的處理的情況下,在S31中生成的要素C1成為如式58所示。
[0455]< 式 58>
[0456]C1:= (sje 1,1,O,0,Π j) B1
[0457]另外,在應(yīng)用了實施方式2的處理的情況下,在S60中生成的要素C1 ’成為如式39、式41所示。[0458]另外,關(guān)于在實施方式2中在公開參數(shù)pk中包含的基底B1,從公開參數(shù)pk去掉,從密鑰生成裝置400僅發(fā)送到加密數(shù)據(jù)管理裝置200。另外,此時,為了防止竊取和篡改,使用利用了 SSL等的安全的通信路。
[0459]此處,上述實施方式中的向用戶秘密密鑰k*和加密數(shù)據(jù)c的密鑰信息、屬性信息的分配方法是一個例子,也可以是其他方法。
[0460]例如,在實施方式I中,如果屬性信息是α,則針對用戶秘密密鑰k%作為基底矢量b*3的系數(shù)設(shè)定了 α、作為基底矢量b*4的系數(shù)設(shè)定了 I。另外,針對加密數(shù)據(jù)c的要素C1,作為基底矢量匕的系數(shù),設(shè)定了 1,作為基底矢量b4的系數(shù),設(shè)定了-α。但是,例如,也可以針對用戶秘密密鑰k%作為基底矢量b*3的系數(shù),設(shè)定I,作為基底矢量b*4的系數(shù),設(shè)定α,針對加密數(shù)據(jù)c的要素C1,作為基底矢量b3的系數(shù),設(shè)定-α,作為基底矢量b4的系數(shù),設(shè)定I。
[0461]另外,也可以并非這樣單純地變更設(shè)定值的基底矢量,而通過完全不同的方法分配密鑰信息、屬性信息。不論是什么樣的分配方法,都能夠應(yīng)用上述實施方式的失效方式。
[0462]另外,在上述實施方式中,說明了將密鑰的失效方式應(yīng)用于在非專利文獻1、2中記載了的函數(shù)型密碼方式的方法。
[0463]但是,上述實施方式的密鑰的失效方式不限于非專利文獻1、2中記載了的函數(shù)型密碼方式,還能夠適用于應(yīng)用了在非專利文獻1、2中記載了的函數(shù)型密碼方式的函數(shù)型密碼方式。
[0464]另外,上述實施方式的密鑰的失效方式不限于函數(shù)型密碼方式,還能夠應(yīng)用于其他密碼方式。
[0465]另外,在上述實施方式中,說明了使用函數(shù)型密碼方式,發(fā)送消息m的情況。
[0466]在使用了公開密鑰密碼方式的加密中,通常,使用在用共用密鑰對數(shù)據(jù)進行了加密之后,用用戶的公開密鑰對該共用密鑰進行加密的所謂混合密碼方式的情況較多。在混合密碼方式中,在加密了的數(shù)據(jù)中添加用用戶的公開密鑰加密了的共用密鑰。
[0467]在混合密碼方式中,通過從加密數(shù)據(jù)刪除加密了的共用密鑰,無法對用共用密鑰加密了的數(shù)據(jù)進行解密。但是,在函數(shù)型密碼方式中,用I個公開密鑰對能夠用多個秘密密鑰解密的數(shù)據(jù)進行加密。因此,在假設(shè)通過相同的構(gòu)造添加共用密鑰的情況下,針對多個秘密密鑰僅賦予I個加密了的共用密鑰。即,如果I名用戶失效,則如果用以往的方式應(yīng)對,則除了再加密以外沒有其他方法。
[0468]但是,如果使用上述實施方式的密鑰的失效方式,則即使在使用了函數(shù)型密碼方式的混合密碼方式的情況下,也能夠?qū)崿F(xiàn)密鑰的失效。另外,在混合密碼方式的情況下,設(shè)定用于作為消息m對內(nèi)容進行加密的共用密鑰(或者共用密鑰的生成源數(shù)據(jù))。
[0469]圖12是示出用戶終端100、加密數(shù)據(jù)管理裝置200、加密數(shù)據(jù)存儲裝置300、密鑰生成裝置400的硬件結(jié)構(gòu)的一個例子的圖。
[0470]如圖12所示,用戶終端100、加密數(shù)據(jù)管理裝置200、加密數(shù)據(jù)存儲裝置300、密鑰生成裝置400具備執(zhí)行程序的CPU911 (Central.Processing.Unit、還稱為中央處理裝置、處理裝置、運算裝置、微處理器、微型計算機、處理器)。CPU911經(jīng)由總線912與R0M913、RAM914、LCD901 (Liquid Crystal Display)、鍵盤902 (K/B)、通信板(communicationboard) 915、磁盤裝置920連接,控制這些硬件設(shè)備。也可以代替磁盤裝置920 (固定盤裝置),而使用光盤裝置、存儲卡讀寫裝置等存儲裝置。磁盤裝置920經(jīng)由規(guī)定的固定盤接口連接。
[0471]R0M913、磁盤裝置920是非易失性存儲器的一個例子。RAM914是易失性存儲器的一個例子。R0M913、RAM914、以及磁盤裝置920是存儲裝置(存儲器)的一個例子。另外,鍵盤902、通信板915是輸入裝置的一個例子。另外,通信板915是通信裝置的一個例子。進而,IXD901是顯示裝置的一個例子。
[0472]在磁盤裝置920或者R0M913等中,存儲了操作系統(tǒng)921 (OS)、視窗系統(tǒng)922、程序群923、文件群924。程序群923的程序由CPU911、操作系統(tǒng)921、視窗系統(tǒng)922執(zhí)行。
[0473]在程序群923中,存儲了執(zhí)行在上述說明中說明為“加密數(shù)據(jù)生成部110”、“數(shù)據(jù)發(fā)送部120”、“數(shù)據(jù)接收部130”、“解密部140”、“數(shù)據(jù)接收部210”、“失效判定部220”、“密鑰信息設(shè)定部230”、“數(shù)據(jù)發(fā)送部240”、“認證處理部270”、“數(shù)據(jù)接收部310”、“數(shù)據(jù)操作部320”、“數(shù)據(jù)發(fā)送部330”、“指示接收部410”、“密鑰生成部420”、“密鑰發(fā)送部430”等的功能的軟件、程序、其他程序。程序由CPU911讀出并執(zhí)行。
[0474]在文件群924中,在上述說明中在“密鑰管理部150”、“失效信息管理部250”、“密鑰管理部260”、“加密數(shù)據(jù)管理部340”、“主密鑰存儲部440”等中存儲的信息、數(shù)據(jù)、信號值、變量值、參數(shù)被存儲為“文件”、“數(shù)據(jù)庫”的各項目?!拔募?、“數(shù)據(jù)庫”存儲于盤、存儲器等記錄介質(zhì)中。關(guān)于在盤、存儲器等存儲介質(zhì)中存儲了的信息、數(shù)據(jù)、信號值、變量值、參數(shù),經(jīng)由讀寫電路,通過CPU911,讀出到主存儲器、高速緩存存儲器,用于抽出?檢索?參照.比較.運算.計算.處理.輸出.印刷.顯示等CPU911的動作。在抽出.檢索.參照.比較?運算?計算.處理.輸出.印刷.顯示的CPU911的動作的期間,信息、數(shù)據(jù)、信號值、變量值、參數(shù)暫時存儲到主存儲器、高速緩存存儲器、緩沖存儲器中。 [0475]另外,上述說明中的流程圖的箭頭的部分主要表示數(shù)據(jù)、信號的輸入輸出,數(shù)據(jù)、信號值記錄于RAM914的存儲器、其他光盤等記錄介質(zhì)、IC芯片中。另外,通過總線912、信號線、電纜、其他傳送介質(zhì)、電波,聯(lián)機傳送數(shù)據(jù)、信號。
[0476]另外,在上述說明中說明為“~部”的部分既可以是“~電路”、“~裝置”、“~設(shè)備”、“~單元”、“~功能”,并且,也可以是“~步驟”、“~階段”、“~處理”。另外,說明為“~裝置”的部分既可以是“~電路”、“~設(shè)備”、“~單元”、“~功能”,并且,也可以是“~步驟”、“~階段”、“~處理”。進而,說明為“~處理”的部分也可以是“~步驟”。即,說明為“~部”的部分也可以通過在R0M913中存儲了的固件來實現(xiàn)?;蛘?,也可以僅通過軟件、或者、僅通過元件.器件.基板.布線等硬件、或者、通過軟件和硬件的組合、進而通過與固件的組合來實施。將固件和軟件作為程序,存儲到R0M913等記錄介質(zhì)中。程序由CPU911讀出并由CPU911執(zhí)行。即,程序使計算機等作為上述“~部”發(fā)揮功能。或者,使計算機等執(zhí)行上述“~部”的階段、方法。
【權(quán)利要求】
1.一種加密數(shù)據(jù)管理裝置,在加密數(shù)據(jù)中設(shè)定了的屬性信息以及密鑰信息、和在秘密密鑰中設(shè)定了的屬性信息以及密鑰信息未對應(yīng)的情況下,無法用所述秘密密鑰對所述加密數(shù)據(jù)進行解密的加密方式中,管理所述加密數(shù)據(jù),該加密數(shù)據(jù)管理裝置的特征在于,具備: 數(shù)據(jù)取得部,從存儲裝置取得設(shè)定了屬性信息的加密數(shù)據(jù); 失效判定部,判定在具有所述數(shù)據(jù)取得部所取得的所述加密數(shù)據(jù)中設(shè)定了的所述屬性信息的用戶中是否包括秘密密鑰失效了的用戶; 密鑰信息設(shè)定部,根據(jù)是否由所述失效判定部判定為包括秘密密鑰失效了的用戶,將不同的值作為所述密鑰信息設(shè)定到所述加密數(shù)據(jù)中;以及 數(shù)據(jù)發(fā)送部,將所述密鑰信息設(shè)定部設(shè)定了密鑰信息的加密數(shù)據(jù)發(fā)送到用戶終端。
2.根據(jù)權(quán)利要求1所述的加密數(shù)據(jù)管理裝置,其特征在于, 所述數(shù)據(jù)取得部取得作為所述密鑰信息設(shè)定了隨機值的加密數(shù)據(jù), 所述密鑰信息設(shè)定部將所述數(shù)據(jù)取得部所取得的加密數(shù)據(jù)中設(shè)定了的密鑰信息重新設(shè)定為所述不同的值。
3.根據(jù)權(quán)利要求1所述的加密數(shù)據(jù)管理裝置,其特征在于, 所述加密數(shù)據(jù)管理裝置還具備管理失效了的秘密密鑰的世代編號的失效信息管理部, 所述密鑰信息設(shè)定部在判定為不包括秘密密鑰失效了的用戶的情況下,將所述世代編號的初始值設(shè)定為所述密鑰信息,在判定為包括秘密密鑰失效了的用戶的情況下,將與所述失效信息管理部管理的世代編號不同的值設(shè)定為所述密鑰信息。
4.根據(jù)權(quán)利要求1所述的加密數(shù)據(jù)管理裝置,其特征在于, 所述數(shù)據(jù)取得部取得在基底矢量A的系數(shù)中設(shè)定了所述屬性信息的加密矢量,作為所述加密數(shù)據(jù),其中,所述基底矢量A是規(guī)定的基底B中的一部分基底矢量, 所述密鑰信息設(shè)定部在基底矢量K的系數(shù)中設(shè)定所述不同的值,其中,所述基底矢量K是所述基底B中的與所述基底矢量A不同的基底矢量。
5.根據(jù)權(quán)利要求4所述的加密數(shù)據(jù)管理裝置,其特征在于, 所述數(shù)據(jù)取得部取得包括在所述基底矢量K的系數(shù)中設(shè)定了隨機值的所述加密矢量、和對所述隨機值進行加密而得到的加密隨機值的加密數(shù)據(jù), 所述密鑰信息設(shè)定部對所述加密隨機值進行解密來得到所述隨機值,從所述加密矢量減去在所述基底矢量K的系數(shù)中設(shè)定了所述隨機值的矢量,將在所述基底矢量K的系數(shù)中設(shè)定了所述不同的值的矢量與所述加密矢量相加。
6.根據(jù)權(quán)利要求4所述的加密數(shù)據(jù)管理裝置,其特征在于, 所述數(shù)據(jù)取得部取得在所述基底矢量K的系數(shù)中設(shè)定了 O的所述加密矢量,作為所述加密數(shù)據(jù), 所述密鑰信息設(shè)定部將在所述基底矢量K的系數(shù)中設(shè)定了所述不同的值的矢量與所述加密矢量相加。
7.根據(jù)權(quán)利要求1所述的加密數(shù)據(jù)管理裝置,其特征在于, 所述數(shù)據(jù)取得部取得包括在屬性基底的基底矢量的系數(shù)中設(shè)定了所述屬性信息的屬性矢量和密鑰信息基底的密鑰信息矢量的加密矢量,作為所述加密數(shù)據(jù),其中,所述屬性基底是關(guān)于t = I,...,η的各t的基底Bm的一部分基底,所述密鑰信息基底是所述基底B[t]中的與所述屬性基底不同的基底,η是2以上的整數(shù),所述密鑰信息設(shè)定部對在所述密鑰信息基底的基底矢量的系數(shù)中設(shè)定了所述不同的值的矢量進行所述密鑰信息矢量。
8.根據(jù)權(quán)利要求7所述的加密數(shù)據(jù)管理裝置,其特征在于, 所述數(shù)據(jù)取得部取得包括所述加密矢量和加密隨機值的加密數(shù)據(jù),其中,所述加密矢量包括在所述密鑰信息基底的基底矢量中的規(guī)定的基底矢量K的系數(shù)中設(shè)定了隨機值的矢量而作為所述密鑰信息矢量,所述加密隨機值是對所述隨機值進行加密而得到的, 所述密鑰信息設(shè)定部對所述加密隨機值進行解密來得到所述隨機值,從所述密鑰信息矢量減去在所述基底矢量K的系數(shù)中設(shè)定了所述隨機值的矢量,將在所述基底矢量K的系數(shù)中設(shè)定了所述不同的值的矢量與所述密鑰信息矢量相加。
9.根據(jù)權(quán)利要求7所述的加密數(shù)據(jù)管理裝置,其特征在于, 所述數(shù)據(jù)取得部取得在所述密鑰信息基底的基底矢量中的規(guī)定的所述基底矢量K的系數(shù)中設(shè)定了 O的所述加密矢量,作為所述加密數(shù)據(jù), 所述密鑰信息設(shè)定部將在所述基底矢量K的系數(shù)中設(shè)定了所述不同的值的矢量與所述密鑰信息矢量相加。
10.一種加密數(shù)據(jù)管理方法,在加密數(shù)據(jù)中設(shè)定了的屬性信息以及密鑰信息、和在秘密密鑰中設(shè)定了的屬性信息以及密鑰信息未對應(yīng)的情況下,無法用所述秘密密鑰對所述加密數(shù)據(jù)進行解密的加密方式中,管理所述加密數(shù)據(jù),該加密數(shù)據(jù)管理方法的特征在于,具備: 數(shù)據(jù)取得步驟,通信 裝置從存儲裝置取得設(shè)定了屬性信息的加密數(shù)據(jù); 失效判定步驟,處理裝置判定在具有通過所述數(shù)據(jù)取得步驟所取得的所述加密數(shù)據(jù)中設(shè)定了的所述屬性信息的用戶中是否包括秘密密鑰失效了的用戶; 密鑰信息設(shè)定步驟,處理裝置根據(jù)是否在所述失效判定步驟中判定為包括秘密密鑰失效了的用戶,將不同的值作為所述密鑰信息設(shè)定到所述加密數(shù)據(jù)中;以及 數(shù)據(jù)發(fā)送步驟,通信裝置將在所述密鑰信息設(shè)定步驟中設(shè)定了密鑰信息的加密數(shù)據(jù)發(fā)送到用戶終端。
11.一種加密數(shù)據(jù)管理程序,在加密數(shù)據(jù)中設(shè)定了的屬性信息以及密鑰信息、和在秘密密鑰中設(shè)定了的屬性信息以及密鑰信息未對應(yīng)的情況下,無法用所述秘密密鑰對所述加密數(shù)據(jù)進行解密的加密方式中,管理所述加密數(shù)據(jù),該加密數(shù)據(jù)管理程序的特征在于,使計算機執(zhí)行如下處理: 數(shù)據(jù)取得處理,從存儲裝置取得設(shè)定了屬性信息的加密數(shù)據(jù); 失效判定處理,判定在具有通過所述數(shù)據(jù)取得處理所取得的所述加密數(shù)據(jù)中設(shè)定了的所述屬性信息的用戶中是否包括秘密密鑰失效了的用戶; 密鑰信息設(shè)定處理,根據(jù)是否在所述失效判定處理中判定為包括秘密密鑰失效了的用戶,將不同的值作為所述密鑰信息設(shè)定到所述加密數(shù)據(jù)中;以及 數(shù)據(jù)發(fā)送處理,將在所述密鑰信息設(shè)定處理中設(shè)定了密鑰信息的加密數(shù)據(jù)發(fā)送到用戶終端。
【文檔編號】H04L9/08GK104012028SQ201180075670
【公開日】2014年8月27日 申請日期:2011年12月20日 優(yōu)先權(quán)日:2011年12月20日
【發(fā)明者】市川幸宏, 松田規(guī), 山中忠和, 高島克幸 申請人:三菱電機株式會社