两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

解密條件追加裝置、加密系統(tǒng)和解密條件追加程序的制作方法

文檔序號:12811244閱讀:241來源:國知局
本發(fā)明涉及對密文中設(shè)定的解密條件進(jìn)行限制而不用對密文進(jìn)行解密的技術(shù)。
背景技術(shù)
::函數(shù)型加密和基于屬性的加密是能夠通過組合邏輯或、邏輯與、邏輯非而成的邏輯式,在密文中設(shè)定具有能夠?qū)γ芪倪M(jìn)行解密的權(quán)限的用戶集合的公開密鑰加密方式。即,函數(shù)型加密和基于屬性的加密是能夠通過組合邏輯或、邏輯與、邏輯非而成的邏輯式,在密文中設(shè)定密文的解密條件的公開密鑰加密方式。在專利文獻(xiàn)1中記載有函數(shù)型加密方式。存在能夠使用重加密密鑰對密文中設(shè)定的解密條件進(jìn)行變更而不用對密文進(jìn)行解密的代理人重加密這樣的技術(shù)。在非專利文獻(xiàn)1中記載有函數(shù)型加密中的代理人重加密方式。在非專利文獻(xiàn)2中記載有基于屬性的加密中的代理人重加密方式?,F(xiàn)有技術(shù)文獻(xiàn)專利文獻(xiàn)專利文獻(xiàn)1:國際公開第2011/135895號公報(bào)非專利文獻(xiàn)非專利文獻(xiàn)1:yutakakawaiandkatuyukitakashima,fully-anonymousfunctionalproxy-re-encryption.cryptologyeprintarchive:report2013/318非專利文獻(xiàn)2:junzuolaiandroberth.dengandyanjiangyangandjianweng.“adaptableciphertext-policyattribute-basedencryption”技術(shù)實(shí)現(xiàn)要素:發(fā)明要解決的課題在非專利文獻(xiàn)1、2所述的代理人重加密方式中,在對密文的解密條件進(jìn)行變更的情況下,必定需要重加密密鑰。為了生成重加密密鑰,需要用戶秘密密鑰或主秘密密鑰這樣的必須秘密保持的密鑰。在非專利文獻(xiàn)1、2所述的代理人重加密方式中,每當(dāng)生成重加密密鑰時(shí),都要訪問用戶秘密密鑰或主秘密密鑰,對用戶秘密密鑰或主秘密密鑰的訪問次數(shù)增加。本發(fā)明的目的在于,能夠?qū)υ济芪牡慕饷軛l件進(jìn)行限制而不使用重加密密鑰。用于解決課題的手段本發(fā)明的解密條件追加裝置具有:原始密文取得部,其取得作為規(guī)定了解密條件的信息而設(shè)定有秘密分散矩陣的原始密文;條件取得部,其取得對所述原始密文取得部取得的原始密文的解密條件進(jìn)行限制的限制條件;以及更新密文生成部,其對所述原始密文中設(shè)定的秘密分散矩陣追加與所述條件取得部取得的限制條件對應(yīng)的行和列,生成限制了所述原始密文的解密條件的更新密文。發(fā)明效果在本發(fā)明中,通過對密文中設(shè)定的秘密分散矩陣追加行和列,對原始密文的解密條件進(jìn)行限制。不需要重加密密鑰以對秘密分散矩陣追加行和列。因此,在對原始密文的解密條件進(jìn)行限制的情況下,不需要使用重加密密鑰。附圖說明圖1是函數(shù)型加密中使用的訪問構(gòu)造s的說明圖。圖2是部分矩陣mδ的說明圖。圖3是秘密分散的秘密值s0的說明圖。圖4是秘密分散的分散值s1、...、sl的說明圖。圖5是對密文的解密條件進(jìn)行限制的例子的說明圖。圖6是實(shí)施方式1的加密系統(tǒng)10的結(jié)構(gòu)圖。圖7是實(shí)施方式1的密鑰生成裝置100的結(jié)構(gòu)圖。圖8是實(shí)施方式1的加密裝置200的結(jié)構(gòu)圖。圖9是實(shí)施方式1的解密條件追加裝置300的結(jié)構(gòu)圖。圖10是實(shí)施方式1的解密裝置400的結(jié)構(gòu)圖。圖11是實(shí)施方式1的setup算法的流程圖。圖12是實(shí)施方式1的kg算法的流程圖。圖13是實(shí)施方式1的enc算法的流程圖。圖14是實(shí)施方式1的apdand算法的流程圖。圖15是追加訪問構(gòu)造s+的說明圖。圖16是實(shí)施方式1的dec算法的流程圖。圖17是示出實(shí)施方式1所示的密鑰生成裝置100、加密裝置200、解密條件追加裝置300、解密裝置400的各裝置的硬件結(jié)構(gòu)的例子的圖。具體實(shí)施方式實(shí)施方式1在實(shí)施方式1中,說明針對密文策略型的函數(shù)型加密應(yīng)用對密文的解密條件進(jìn)行限制的技術(shù)的例子。對密文的解密條件進(jìn)行限制是指減少能夠?qū)γ芪倪M(jìn)行解密的密鑰。***記法的說明***對以下說明中的記法進(jìn)行說明。在a是隨機(jī)的值或分布時(shí),數(shù)式101表示根據(jù)a的分布而從a中隨機(jī)選擇y。即,在數(shù)式101中,y是隨機(jī)數(shù)?!緮?shù)式101】在a是集合時(shí),數(shù)式102表示從a中均勻選擇y。即,在數(shù)式102中,y是均勻隨機(jī)數(shù)?!緮?shù)式102】數(shù)式103表示在y中設(shè)定z,用z定義y,或y代入z?!緮?shù)式103】y:=z在a是常數(shù)時(shí),數(shù)104表示機(jī)械(算法)a相對于輸入x而輸出a。【數(shù)式104】a(x)→a例如,a(x)→1數(shù)式105表示位數(shù)q的體?!緮?shù)式105】數(shù)式106表示有限體fq中的向量表現(xiàn)?!緮?shù)式106】表示數(shù)式107表示數(shù)式108所示的2個(gè)向量x→與v→的數(shù)式109所示的內(nèi)積?!緮?shù)式107】【數(shù)式108】【數(shù)式109】xt表示矩陣x的轉(zhuǎn)置矩陣。相對于數(shù)式110所示的基b和基b*,是數(shù)式111?!緮?shù)式110】【數(shù)式111】e→j表示數(shù)式112所示的標(biāo)準(zhǔn)基向量。【數(shù)式112】***概要的說明***在對密文策略型的函數(shù)型加密的基礎(chǔ)進(jìn)行說明后,說明對密文的解密條件進(jìn)行限制的技術(shù)概要。對密文策略型的函數(shù)型加密的基礎(chǔ)進(jìn)行說明。圖1是函數(shù)型加密中使用的訪問構(gòu)造s的說明圖。在函數(shù)型加密中,使用l行r列的秘密分散矩陣m和對秘密分散矩陣m的各行附加的標(biāo)簽ρ的組作為訪問構(gòu)造s。對各行附加的標(biāo)簽ρ對應(yīng)于由變量的集合{p1、...、pn}給出的肯定系的字面量{p1、...、pn}和否定系的字面量{¬p1、...、¬pn}中的任意一個(gè)字面量。針對輸入列δ=δi∈{0、1}(i=1、...、n),定義秘密分散矩陣m的部分矩陣mδ。部分矩陣mδ由通過輸入列δ將值“1”與標(biāo)簽ρ對應(yīng)起來的秘密分散矩陣m的行構(gòu)成。即,部分矩陣mδ由秘密分散矩陣m的與δi=1這樣的pi對應(yīng)的行和秘密分散矩陣m的與δi=0這樣的¬pi對應(yīng)的行構(gòu)成。圖2是部分矩陣mδ的說明圖。在圖2中,設(shè)n=7、l=6、r=5。即,變量的集合是{p1、...、p7},矩陣m是6行5列。并且,在圖2中,設(shè)標(biāo)簽ρ將ρ1與¬p2對應(yīng)起來,將ρ2與p1對應(yīng)起來,將ρ3與p4對應(yīng)起來,將ρ4與¬p5對應(yīng)起來,將ρ5與¬p3對應(yīng)起來,將ρ6與p5對應(yīng)起來。這里,設(shè)輸入列δ為δ1=1、δ2=0、δ3=1、δ4=0、δ5=0、δ6=1、δ7=1。該情況下,部分矩陣mδ由與圖2中用虛線包圍的字面量(p1、p3、p6、p7、¬p2、¬p4、¬p5)對應(yīng)的秘密分散矩陣m的行構(gòu)成。即,部分矩陣mδ由秘密分散矩陣m的第1行(m1)、第2行(m2)、第4行(m4)構(gòu)成。設(shè)在[ρ(j)=pi]∧[δi=1]或[ρ(j)=¬pi]∧[δi=0]的情況下,映射γ(j)=1,在其它情況下,映射γ(j)=0。該情況下,能夠表示為mδ:=(mj)γ(j)=1。這里,mj是矩陣m的第j行。在函數(shù)型加密中,訪問構(gòu)造s中的變量的集合的各變量p由標(biāo)識符t與向量v→i的組(t、v→i)定義。在訪問構(gòu)造s中給出了標(biāo)識符t與向量x→t的組(t、x→t)即屬性集合γ的情況下,映射γ(i)定義為,針對i=1、...、l的各整數(shù)i,在[ρ(i)=(t、v→i)]∧[(t、x→t)∈γ]∧[v→i·x→t=0]或[ρ(i)=¬(t、v→i)]∧[(t、x→t)∈γ]∧[v→i·x→t≠0]的情況下,γ(j)=1,在其它情況下,γ(j)=0。即,在函數(shù)型加密中,根據(jù)向量v→i與向量x→t的內(nèi)積計(jì)算映射γ(i)。然后,如上所述,根據(jù)映射γ(i),決定在部分矩陣mδ中包含秘密分散矩陣m的哪個(gè)行。訪問構(gòu)造s僅在對部分矩陣mδ的行進(jìn)行線性耦合而得到1→的情況下受理屬性集合γ。這里,1→是全部元素為1的行向量。例如,如果是圖2的例子,則僅在對由秘密分散矩陣m的第1、2、4行構(gòu)成的部分矩陣mδ的各行進(jìn)行線性耦合而得到1→的情況下,訪問構(gòu)造s受理屬性集合γ。即,在存在成為α1(m1)+α2(m2)+α4(m4)=1→的系數(shù)α1、α2、α4的情況下,訪問構(gòu)造s受理屬性集合γ。即,當(dāng)設(shè)部分矩陣mδ中包含的秘密分散矩陣的行編號的集合為i時(shí),在存在成為σi∈iαimi=1→的系數(shù)αi的情況下,訪問構(gòu)造s受理屬性集合γ。在密文策略型的函數(shù)型加密中,針對表示用戶的屬性的屬性集合γ中包含的標(biāo)識符t,生成設(shè)定有向量x→t的密鑰元素k*t。然后,生成包含與屬性集合γ中包含的標(biāo)識符t和t=0的各標(biāo)識符t有關(guān)的密鑰元素k*t的用戶秘密密鑰skγ。另外,標(biāo)識符t對應(yīng)于屬性類別,在向量x→t中設(shè)定與標(biāo)識符t對應(yīng)的屬性類別的屬性。屬性類別是所屬部門、性別、年齡等屬性的分類。例如,在標(biāo)識符t對應(yīng)于所屬部門的情況下,在向量x→t中設(shè)定表示用戶秘密密鑰skγ的用戶的所屬部門的值。在密文策略型的函數(shù)型加密中,針對i=1、...、l的各整數(shù)i,對訪問構(gòu)造s的秘密分散矩陣m中的第i行分配秘密分散的分散值si。而且,針對秘密分散矩陣m的第i行,生成設(shè)定有分配的分散值si和向量v→i的加密元素ci。并且,生成設(shè)定有根據(jù)滿足條件的分散值si的集合計(jì)算出的秘密值s0的加密元素c0。并且,生成使用會話密鑰k對消息m進(jìn)行加密而成的加密元素cd+1。而且,生成包含與i=0、...l、d+1的各整數(shù)i有關(guān)的加密元素ci和訪問構(gòu)造s的原始密文cts。在密文策略型的函數(shù)型加密中,對與屬性集合γ中包含的標(biāo)識符t有關(guān)的密鑰元素k*t和由具有標(biāo)識符t的標(biāo)簽ρ(i)確定的加密元素ci進(jìn)行配對運(yùn)算。通過進(jìn)行配對運(yùn)算,計(jì)算向量v→i與向量x→t的內(nèi)積,計(jì)算映射γ(i)。然后,決定在部分矩陣mδ中包含秘密分散矩陣m的哪個(gè)行。然后,在訪問構(gòu)造s受理屬性集合γ的情況下,取出滿足條件的分散值si的集合,計(jì)算秘密值s0。根據(jù)密鑰元素k*0、加密元素c0、秘密值s0,生成會話密鑰k。通過會話密鑰k計(jì)算消息m。圖3是秘密分散的秘密值s0的說明圖。秘密值s0是r個(gè)元素全部為1的行向量與具有r個(gè)元素f1、...、fr的列向量f之積的各元素的和。這里,列向量f的各元素是均勻隨機(jī)數(shù)。圖4是秘密分散的分散值s1、...、sl的說明圖。分散值s1、...、sl是秘密分散矩陣m與列向量f之積。列向量s→t是將分散值s1、...、sl作為元素的向量。如上所述,在訪問構(gòu)造s受理了屬性集合γ的情況下,存在成為σi∈iαimi=1→的系數(shù)αi。能夠利用秘密分散矩陣m的尺寸下的多項(xiàng)式時(shí)間計(jì)算系數(shù)αi。而且,如果使用系數(shù)αi,則根據(jù)秘密值s0和分散值s1、...、sl的定義,成為σi∈iαisi=s0。說明對密文的解密條件進(jìn)行限制的技術(shù)概要。如上所述,在原始密文cts中包含設(shè)定有秘密值s0的加密元素c0、設(shè)定有分散值si和向量v→i的與i=1、...、l的各整數(shù)i有關(guān)的加密元素ci、對消息m進(jìn)行加密而成的加密元素cd+1、訪問構(gòu)造s。而且,通過訪問構(gòu)造s中包含的秘密分散矩陣m和對秘密分散矩陣m的各行設(shè)定的加密元素ci,規(guī)定原始密文cts的解密條件。因此,在實(shí)施方式1中,對原始密文cts中包含的秘密分散矩陣m追加行和列,追加與追加行對應(yīng)的加密元素ci,對原始密文cts的解密條件進(jìn)行限制。圖5是對密文的解密條件進(jìn)行限制的例子的說明圖。在原始密文cts中,設(shè)定(部=總務(wù)部)and(課=人事課)作為解密條件。此時(shí),秘密分散矩陣m是2行2列,第1行對應(yīng)于部,第2行對應(yīng)于課。而且,第1行的標(biāo)簽ρ(1)對應(yīng)于肯定系的組(部:=t1、總務(wù)部:=v→1),第2行的標(biāo)簽ρ(2)對應(yīng)于肯定系的組(課:=t2、人事課:=v→2)。并且,在與秘密分散矩陣m的第1行對應(yīng)的加密元素c1中設(shè)定分散值s1和總務(wù)部:=v→1,在與第2行對應(yīng)的加密元素c2中設(shè)定分散值s2和人事課:=v→2。這里,例如設(shè)希望使id=1001的用戶的用戶秘密密鑰skγ失效。該情況下,根據(jù)解密條件,去除id=1001即可。這能夠通過在原始密文cts的解密條件中利用and條件增加not(id=1001)來實(shí)現(xiàn)。即,設(shè)解密條件為(部=總務(wù)部)and(課=人事課)and(not(id=1001))即可。因此,在對原始密文cts進(jìn)行更新后的更新密文cts’中,對秘密分散矩陣m追加第3行和第3列,第3行對應(yīng)于用戶的id。而且,第3行的標(biāo)簽ρ(3)對應(yīng)于否定形的組(id:=t3、1001:=v→3)。并且,在與秘密分散矩陣m的第3行對應(yīng)的加密元素c3中設(shè)定有分散值s3和否定形的1001:=v→3。由此,能夠設(shè)解密條件為(部=總務(wù)部)and(課=人事課)and(not(id=1001))。***結(jié)構(gòu)的說明***圖6是實(shí)施方式1的加密系統(tǒng)10的結(jié)構(gòu)圖。加密系統(tǒng)10具有密鑰生成裝置100、加密裝置200、解密條件追加裝置300、解密裝置400。密鑰生成裝置100將屬性的格式n→和安全參數(shù)λ作為輸入,執(zhí)行setup算法,生成公開密鑰pk和主秘密密鑰msk。并且,密鑰生成裝置100將公開密鑰pk、主秘密密鑰msk、用戶的屬性集合γ作為輸入,執(zhí)行kg算法,生成用戶秘密密鑰skγ。然后,密鑰生成裝置100對公開密鑰pk進(jìn)行公開。并且,密鑰生成裝置100將用戶秘密密鑰skγ秘密地輸出到解密裝置400。加密裝置200將公開密鑰pk、訪問構(gòu)造s、消息m作為輸入,執(zhí)行enc算法,設(shè)定秘密分散矩陣m作為規(guī)定了解密條件的信息,生成對消息m進(jìn)行加密而成的原始密文cts。加密裝置200將原始密文cts輸出到解密條件追加裝置300。解密條件追加裝置300將公開密鑰pk、原始密文cts、追加訪問構(gòu)造s+作為輸入,執(zhí)行apdand算法,生成限制了原始密文cts的解密條件的更新密文cts’。解密條件追加裝置300在生成了更新密文cts’的情況下,將更新密文cts’輸出到解密裝置400,在未生成更新密文cts’的情況下,將原始密文cts輸出到解密裝置400。具體而言,解密條件追加裝置300取得對加密裝置200生成的原始密文cts的解密條件進(jìn)行限制的限制條件即追加訪問構(gòu)造s+,對原始密文cts中設(shè)定的秘密分散矩陣m追加與限制條件對應(yīng)的行和列,生成限制了原始密文cts的解密條件的更新密文cts’。解密裝置400將公開密鑰pk、用戶秘密密鑰skγ、加密裝置200生成的原始密文cts或解密條件追加裝置300生成的更新密文cts’作為輸入,執(zhí)行dec算法,對加密裝置200生成的原始密文cts或解密條件追加裝置300生成的更新密文cts’進(jìn)行解密。解密裝置400輸出消息m或表示解密失敗的記號⊥。圖7是實(shí)施方式1的密鑰生成裝置100的結(jié)構(gòu)圖。密鑰生成裝置100具有信息取得部110、主密鑰生成部120、用戶秘密密鑰生成部130、密鑰輸出部140。信息取得部110取得由加密系統(tǒng)10的管理者輸入的屬性的格式n→、安全參數(shù)λ、屬性集合γ。主密鑰生成部120根據(jù)信息取得部110取得的屬性的格式n→和安全參數(shù)λ,生成主秘密密鑰msk和公開密鑰pk。用戶秘密密鑰生成部130根據(jù)信息取得部110取得的屬性集合γ、主密鑰生成部120生成的主秘密密鑰msk和公開密鑰pk,生成用戶秘密密鑰skγ。密鑰輸出部140將公開密鑰pk輸出到公開用的服務(wù)器等,對公開密鑰pk進(jìn)行公開,并且,將用戶秘密密鑰skγ秘密地輸出到用戶使用的解密裝置400。秘密地輸出例如是指通過現(xiàn)有的加密方式進(jìn)行加密后發(fā)送。圖8是實(shí)施方式1的加密裝置200的結(jié)構(gòu)圖。加密裝置200具有信息取得部210、密文生成部220、密文輸出部230。信息取得部210取得密鑰生成裝置100生成的公開密鑰pk、由加密裝置200的用戶輸入的訪問構(gòu)造s和消息m。密文生成部220根據(jù)信息取得部210取得的公開密鑰pk、訪問構(gòu)造s、消息m,生成對消息m進(jìn)行加密而成的原始密文cts。密文輸出部230將密文生成部220生成的原始密文cts輸出到解密條件追加裝置300。圖9是實(shí)施方式1的解密條件追加裝置300的結(jié)構(gòu)圖。解密條件追加裝置300具有信息取得部310、更新密文生成部320、密文存儲部330、密文輸出部340。信息取得部310具有公開密鑰取得部311、原始密文取得部312、條件取得部313。公開密鑰取得部311取得密鑰生成裝置100生成的公開密鑰pk。原始密文取得部312取得加密裝置200生成的原始密文cts。條件取得部313取得對原始密文cts的解密條件進(jìn)行限制的限制條件即追加訪問構(gòu)造s+。更新密文生成部320根據(jù)公開密鑰取得部311取得的公開密鑰pk,利用條件取得部313取得的追加訪問構(gòu)造s+對原始密文取得部312取得的原始密文cts的解密條件進(jìn)行限制,生成更新密文cts’。更新密文生成部320具有訪問構(gòu)造更新部321、分散值生成部322、追加加密元素生成部323、加密元素更新部324。密文存儲部330是存儲原始密文取得部312取得的原始密文cts的存儲裝置。在更新密文生成部320根據(jù)原始密文cts生成了更新密文cts’的情況下,密文存儲部330刪除原始密文cts,存儲更新密文cts’。密文輸出部340在有來自解密裝置400的請求的情況下,將密文存儲部330中存儲的原始密文cts或更新密文cts’輸出到解密裝置400。圖10是實(shí)施方式1的解密裝置400的結(jié)構(gòu)圖。解密裝置400具有信息取得部410、密文判定部420、解密部430、結(jié)果輸出部440。信息取得部410取得密鑰生成裝置100生成的公開密鑰pk和用戶秘密密鑰skγ、加密裝置200生成的原始密文cts或解密條件追加裝置300生成的更新密文cts’中的任意密文。密文判定部420判定是否能夠利用用戶秘密密鑰skγ對信息取得部410取得的密文進(jìn)行解密。解密部430根據(jù)公開密鑰pk,在密文判定部420判定為能夠解密的情況下,利用用戶秘密密鑰skγ對信息取得部410取得的密文進(jìn)行解密。在密文判定部420判定為能夠解密的情況下,結(jié)果輸出部440輸出解密部430進(jìn)行解密的結(jié)果,在密文判定部420判定為不能解密的情況下,結(jié)果輸出部440輸出表示解密失敗的記號⊥。***動作的說明***圖11是實(shí)施方式1的setup算法的流程圖。setup算法由密鑰生成裝置100來執(zhí)行。(s101:信息取得處理)信息取得部110取得由加密系統(tǒng)10的管理者等通過輸入裝置輸入的屬性的格式n→:=(d;n1、...、nd)和安全參數(shù)λ。(s102:基生成處理)主密鑰生成部120將s101中取得的屬性的格式n→和安全參數(shù)λ作為輸入,計(jì)算數(shù)式113,生成對偶配對向量空間的參數(shù)paramn、與t=0、...、d的各整數(shù)t有關(guān)的基bt和基b*t、值gt?!緮?shù)式113】n0:=5,nt:=3nt+1,fort=0,...,d,另外,在數(shù)式113中,gbpg是生成雙線性配對組的函數(shù),gdpvs是生成對偶配對向量空間的函數(shù)。(s103:公開密鑰生成處理)主密鑰生成部120如數(shù)式114所示生成s102中生成的基b0的部分基b^0和與t=1、...、d的各整數(shù)t有關(guān)的部分基b^t。【數(shù)式114】主密鑰生成部120合并部分基b^0和部分基b^t、s101中輸入的安全參數(shù)λ、s101中生成的paramn,作為公開密鑰pk。(s104:主秘密密鑰生成處理)主密鑰生成部120如數(shù)式115所示生成s102中生成的基b*0的部分基b^*0和與t=1、...、d的各整數(shù)t有關(guān)的部分基b^*t?!緮?shù)式115】主密鑰生成部120將部分基b^*0和部分基b^*t作為主秘密密鑰msk。(s105:密鑰輸出處理)密鑰輸出部140將s103中生成的公開密鑰pk輸出到公開用的服務(wù)器等,對公開密鑰pk進(jìn)行公開。圖12是實(shí)施方式1的kg算法的流程圖。kg算法由密鑰生成裝置100來執(zhí)行。(s201:信息取得處理)信息取得部110取得由加密系統(tǒng)10的管理者等通過輸入裝置輸入的用戶的屬性集合γ。屬性集合γ是標(biāo)識符t與向量x→t的組(t、x→t)。標(biāo)識符t對應(yīng)于屬性類別,在向量x→t中設(shè)定與標(biāo)識符t對應(yīng)的屬性類別的屬性。(s202:隨機(jī)數(shù)生成處理)用戶秘密密鑰生成部130如數(shù)式116所示生成隨機(jī)數(shù)?!緮?shù)式116】(s203:密鑰元素生成處理)用戶秘密密鑰生成部130根據(jù)s201中取得的屬性集合γ、s202中生成的隨機(jī)數(shù),如數(shù)式117所示,生成密鑰元素k*0和屬性集合γ中包含的每個(gè)標(biāo)識符t的密鑰元素k*t?!緮?shù)式117】如數(shù)式117所示,在每個(gè)標(biāo)識符t的密鑰元素k*t中設(shè)定有表示與標(biāo)識符t對應(yīng)的屬性類別的屬性的向量x→。(s204:密鑰輸出處理)密鑰輸出部140將包含s201中取得的屬性集合γ、s203中生成的密鑰元素k*0和屬性集合γ中包含的每個(gè)標(biāo)識符t的密鑰元素k*t的用戶秘密密鑰skγ秘密地輸出到用戶秘密密鑰skγ的用戶使用的解密裝置400。圖13是實(shí)施方式1的enc算法的流程圖。enc算法由加密裝置200來執(zhí)行。(s301:信息取得處理)信息取得部210取得密鑰生成裝置100生成的公開密鑰pk、由加密裝置200的用戶通過輸入裝置輸入的訪問構(gòu)造s:=(m、ρ)和消息m。訪問構(gòu)造s通過秘密分散矩陣m和標(biāo)簽ρ設(shè)定有原始密文cts的解密條件。(s302:分散值生成處理)密文生成部220如數(shù)式118所示生成秘密值s0和分散值s→t?!緮?shù)式118】(s303:隨機(jī)數(shù)生成處理)密文生成部220如數(shù)式119所示生成隨機(jī)數(shù)?!緮?shù)式119】(s304:加密元素生成處理)密文生成部220如數(shù)式120所示生成與i=0、...、l、d+1的各整數(shù)i有關(guān)的加密元素ci?!緮?shù)式120】fori=1,...,l,如數(shù)式120所示,在加密元素c0中設(shè)定有秘密值s0。并且,在與i=1、...、l的各整數(shù)i有關(guān)的加密元素ci中設(shè)定有分散值si、向量v→i。另外,關(guān)于加密元素ci,根據(jù)標(biāo)簽ρ(i)對應(yīng)于肯定系的(t、v→i)還是對應(yīng)于否定形的¬(t、v→i),值的設(shè)定方法不同。并且,關(guān)于加密元素cd+1,通過會話密鑰k對消息m進(jìn)行加密。(s305:密文輸出處理)密文輸出部230將包含s301中取得的訪問構(gòu)造s和s304中生成的與i=0、...、l、d+1的各整數(shù)i有關(guān)的加密元素ci的原始密文cts輸出到解密條件追加裝置300。圖14是實(shí)施方式1的apdand算法的流程圖。apdand算法由解密條件追加裝置300來執(zhí)行。(s401:公開密鑰取得處理)公開密鑰取得部311取得密鑰生成裝置100生成的公開密鑰pk。(s402:原始密文取得處理)原始密文取得部312取得加密裝置200生成的原始密文cts。如上所述,原始密文cts設(shè)定有包含秘密分散矩陣m和標(biāo)簽ρ的訪問構(gòu)造s,作為規(guī)定了解密條件的信息。并且,作為規(guī)定了解密條件的信息,除了包含秘密分散矩陣m和標(biāo)簽ρ的訪問構(gòu)造s以外,原始密文cts還按照秘密分散矩陣m的每行設(shè)定有表示屬性的加密元素ci。取得的原始密文cts存儲在密文存儲部330中。(s403:條件取得處理)條件取得部313取得對原始密文取得部312取得的原始密文cts的解密條件進(jìn)行限制的限制條件即追加訪問構(gòu)造s+。追加訪問構(gòu)造s+包含僅在對訪問構(gòu)造s中包含的秘密分散矩陣m追加的行和列的元素中設(shè)定有值的追加矩陣m+、和對追加的行附加的標(biāo)簽ρ(l+i)。圖15是追加訪問構(gòu)造s+的說明圖。在圖15中,示出追加第l+1行~第l+p行和第r+1列~第r+p列的情況。追加矩陣m+針對i=1、...、p的各整數(shù)i,第l+i行第r+i列的元素為1,其它元素為0。并且,針對i=1、...、p的各整數(shù)i,對行l(wèi)+i附加標(biāo)簽ρ(l+i)。標(biāo)簽ρ(l+i)對應(yīng)于((t、v→l+i)、(t’、v→l+i)、...、¬(t、v→l+i)、¬(t’、v→l+i)、...)中的任意字面量。即,各標(biāo)簽ρ(l+i)對應(yīng)于表示屬性類別的標(biāo)識符t和表示該標(biāo)識符t所示的屬性類別中的屬性的向量v→l+i的組。另外,這里,對如下情況進(jìn)行說明:更新密文生成部320針對一個(gè)限制條件追加一個(gè)行和列,將追加行的元素中的追加列的元素以外的元素設(shè)為0,將追加列的元素中的追加行的元素以外的元素設(shè)為0。特別地,對如下情況進(jìn)行說明:如圖15所示,更新密文生成部320針對正整數(shù)l、r、p,在追加了第l+1行~第l+p行的行和第r+1列~第r+p列的列的情況下,在追加行和追加列的元素中,針對i=1、...、p的各整數(shù)i,將l+i行r+i列的元素設(shè)為1,將其它元素設(shè)為0。但是,根據(jù)訪問構(gòu)造的設(shè)計(jì)來設(shè)定追加行數(shù)和追加列數(shù),針對一個(gè)限制條件,也可以不是一個(gè)行一個(gè)列。同樣,根據(jù)訪問構(gòu)造的設(shè)計(jì)來設(shè)定對追加行和追加列的元素分配的值,根據(jù)訪問構(gòu)造的設(shè)計(jì)任意決定即可。并且,也可以在追加訪問構(gòu)造s+中的追加矩陣m+中,僅設(shè)定要追加的行和列的數(shù)量p,而不設(shè)定要追加的行和列的元素的值。這是因?yàn)?,針對i=1、...、p的各整數(shù)i,將l+i行r+i列的元素設(shè)為1,將其它元素設(shè)為0,因此,只要知道要追加的行和列的數(shù)量p即可。(s404:訪問構(gòu)造更新處理)訪問構(gòu)造更新部321對s402中取得的原始密文cts中包含的訪問構(gòu)造s的秘密分散矩陣m,追加s403中取得的追加訪問構(gòu)造s+的追加矩陣m+所示的與i=1、...、p的各整數(shù)i有關(guān)的l+i行和r+i列,生成秘密分散矩陣m’。并且,訪問構(gòu)造更新部321對秘密分散矩陣m’的追加的與i=1、...、p的各整數(shù)i有關(guān)的l+i行,附加追加訪問構(gòu)造s+的標(biāo)簽ρ(l+i)。由此,訪問構(gòu)造更新部321將訪問構(gòu)造s:=(m、ρ)更新成訪問構(gòu)造s’:=(m’、ρ’)。(s405:分散值生成處理)分散值生成部322如數(shù)式121所示,針對i=l+1、...、l+p的各整數(shù)i,生成分散值si?!緮?shù)式121】(s406:追加加密元素生成處理)追加加密元素生成部323根據(jù)s401中取得的公開密鑰pk和s405中生成的分散值sl+i,如數(shù)式122所示生成與i=l+1、...、l+p的各整數(shù)i有關(guān)的追加加密元素ci?!緮?shù)式122】fori=l+1,...,l+p,(s407:加密元素更新處理)加密元素更新部324根據(jù)s401中取得的公開密鑰pk和s403中取得的追加訪問構(gòu)造s+的分散值sl+i,如數(shù)式123所示,對s402中取得的原始密文cts中包含的加密元素c0進(jìn)行更新。【數(shù)式123】如數(shù)式123所示,通過對加密元素c0進(jìn)行更新,利用追加的分散值sl+i對秘密值s0進(jìn)行更新。另外,這里,對秘密值s0加上與i=1、...、p的各整數(shù)i有關(guān)的分散值sl+i。但是,秘密值s0的更新方法基于秘密分散矩陣m’的結(jié)構(gòu)。這里,在追加矩陣m+中,針對i=1、...、p的各整數(shù)i,第l+i行第r+i列的元素為1,其它元素為0,因此,通過對秘密值s0加上與i=1、...、p的各整數(shù)i有關(guān)的分散值sl+i,取得匹配性。(s408:密文更新處理)密文存儲部330將包含s404中更新的訪問構(gòu)造s’、s402中取得的原始密文cts中包含的與i=1、...、l的各整數(shù)i有關(guān)的加密元素ci、s406中生成的與i=1、...、p的各整數(shù)i有關(guān)的追加加密元素cl+i、s407中更新的加密元素c0的更新密文cts’覆蓋在原始密文cts上進(jìn)行存儲。密文輸出部340在有來自解密裝置400的請求的情況下,將密文存儲部330存儲的原始密文cts或更新密文cts’輸出到解密裝置400。另外,將s404~s408的處理總稱作更新密文生成處理。在更新密文生成處理中,更新密文生成部320對在原始密文取得處理中取得的原始密文cts中設(shè)定的秘密分散矩陣m,追加與在條件取得處理中取得的限制條件對應(yīng)的行和列。然后,更新密文生成部320按照追加的每行,追加設(shè)定與屬性類別對應(yīng)的設(shè)定了該屬性類別中的屬性的加密元素ci,生成限制了原始密文cts的解密條件的更新密文cts’。圖16是實(shí)施方式1的dec算法的流程圖。dec算法由解密裝置400來執(zhí)行。(s501:信息取得處理)信息取得部410取得密鑰生成裝置100生成的公開密鑰pk和用戶秘密密鑰skγ。并且,信息取得部410對解密條件追加裝置300輸出請求,從解密條件追加裝置300取得密文cts^。密文cts^是原始密文cts或更新密文cts’。這里,設(shè)密文cts^包含訪問構(gòu)造s^和與i=1、...、l’、d+1的各整數(shù)i有關(guān)的加密元素ci。(s502:密文判定處理)密文判定部420判定s501中取得的密文cts^中包含的訪問構(gòu)造s^是否受理s501中取得的用戶秘密密鑰skγ中包含的屬性集合γ。密文判定部420在判定為受理的情況下,使處理進(jìn)入s503,在判定為不受理的情況下,使處理進(jìn)入s506。(s503:插值系數(shù)計(jì)算處理)解密部430計(jì)算成為數(shù)式124的行編號的集合i和補(bǔ)充系數(shù){αi}i∈i。【數(shù)式124】wheremiisthei-throwofm,(s504:會話密鑰計(jì)算處理)解密部430根據(jù)s501中取得的密文cts^和用戶秘密密鑰skγ、s503中計(jì)算出的集合i和補(bǔ)充系數(shù){αi}i∈i,計(jì)算數(shù)式125,計(jì)算會話密鑰k?!緮?shù)式125】(s505:消息計(jì)算處理)解密部430根據(jù)s504中計(jì)算出的會話密鑰k,去除密文cts^中包含的加密元素cd+1,計(jì)算消息m。(s506:結(jié)果輸出處理)結(jié)果輸出部440在s502中判定為受理的情況下,輸出s505中計(jì)算出的消息m,在s502中判定為不受理的情況下,輸出表示解密失敗的記號⊥。***效果的說明***如上所述,在實(shí)施方式1的加密系統(tǒng)10中,對原始密文cts中包含的訪問構(gòu)造s追加信息,并且追加加密元素ci,由此能夠?qū)饷軛l件進(jìn)行限制。如果存在密文cts和公開密鑰pk,則能夠?qū)υL問構(gòu)造s追加信息,并且追加加密元素ci,不需要重加密密鑰那樣的特殊密鑰。因此,在對原始密文cts的解密條件進(jìn)行限制的情況下,不需要使用重加密密鑰。在使特定的用戶秘密密鑰失效的情況下等,需要迅速地對解密條件進(jìn)行限制。在實(shí)施方式1的加密系統(tǒng)10中,能夠?qū)饷軛l件進(jìn)行限制而不用生成重加密密鑰,因此,能夠迅速地對解密條件進(jìn)行限制。另外,在上述說明中,說明了在apdand算法中對原始密文cts的解密條件進(jìn)行限制。但是,在apdand算法中,還能夠進(jìn)一步對更新密文cts’的解密條件進(jìn)行限制。該情況下,在s402中,代替原始密文cts而取得更新密文cts’即可。并且,在上述說明中,說明了針對密文策略型的函數(shù)型加密應(yīng)用對密文的解密條件進(jìn)行限制的技術(shù)的例子。在密文策略型的基于屬性的加密中,也使用秘密分散矩陣。因此,針對密文策略型的基于屬性的加密,也能夠應(yīng)用上述對秘密分散矩陣追加行和列,對密文的解密條件進(jìn)行限制的技術(shù)。圖17是示出實(shí)施方式1所示的密鑰生成裝置100、加密裝置200、解密條件追加裝置300、解密裝置400的各裝置的硬件結(jié)構(gòu)的例子的圖。各裝置是計(jì)算機(jī)。利用程序?qū)崿F(xiàn)各裝置的各元素,能夠構(gòu)成數(shù)據(jù)顯示程序。作為各裝置的硬件結(jié)構(gòu),在總線上連接有運(yùn)算裝置901、外部存儲裝置902、主存儲裝置903、通信裝置904、輸入輸出裝置905。運(yùn)算裝置901是執(zhí)行程序的cpu(centralprocessingunit:中央處理單元)等。外部存儲裝置902例如是rom(readonlymemory:只讀存儲器)、閃存、硬盤裝置等。主存儲裝置903例如是ram(randomaccessmemory:隨機(jī)存取存儲器)等。通信裝置904例如是通信板等。輸入輸出裝置905例如是鼠標(biāo)、鍵盤、顯示裝置等。程序通常存儲在外部存儲裝置902中,在加載到主存儲裝置903中的狀態(tài)下,依次讀入到運(yùn)算裝置901中來執(zhí)行。程序是實(shí)現(xiàn)作為“~部”說明的功能的程序。進(jìn)而,在外部存儲裝置902中還存儲有操作系統(tǒng)(os),os的至少一部分加載到主存儲裝置903中,運(yùn)算裝置901在執(zhí)行os的同時(shí)執(zhí)行上述程序。并且,在實(shí)施方式1的說明中,說明為“~部”取得、生成、輸出等的信息等,作為文件存儲在主存儲裝置903中。標(biāo)號說明10:加密系統(tǒng);100:密鑰生成裝置;110:信息取得部;120:主密鑰生成部;130:用戶秘密密鑰生成部;140:密鑰輸出部;200:加密裝置;210:信息取得部;220:密文生成部;230:密文輸出部;300:解密條件追加裝置;310:信息取得部;311:公開密鑰取得部;312:原始密文取得部;313:條件取得部;320:更新密文生成部;321:訪問構(gòu)造更新部;322:分散值生成部;323:追加加密元素生成部;324:加密元素更新部;330:密文存儲部;340:密文輸出部;400:解密裝置;410:信息取得部;420:密文判定部;430:解密部;440:結(jié)果輸出部;a:標(biāo)準(zhǔn)基;b、b*:基;b^、b*^:部分基;msk:主秘密密鑰;pk:公開密鑰;γ:屬性集合;m:秘密分散矩陣;ρ:標(biāo)簽;s、s’:訪問構(gòu)造;s+:追加訪問構(gòu)造;m:消息;skγ:用戶秘密密鑰;cts:原始密文;cts’:更新密文;t:標(biāo)識符;k*t:密鑰元素;ci:加密元素;s:分散值。當(dāng)前第1頁12當(dāng)前第1頁12
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
河东区| 上犹县| 浙江省| 无极县| 宣武区| 永德县| 上犹县| 河池市| 武宁县| 岗巴县| 宁城县| 东城区| 汨罗市| 华宁县| 洪雅县| 定兴县| 奉节县| 济宁市| 汕头市| 郯城县| 喀喇沁旗| 晋江市| 乐平市| 平塘县| 宜兰县| 江油市| 大足县| 甘泉县| 芦溪县| 九龙坡区| 吉林市| 岢岚县| 泰和县| 潜山县| 许昌县| 盱眙县| 荥阳市| 南川市| 库尔勒市| 潍坊市| 涞源县|