JP2019049641A - 難読化回路生成装置、難読化回路計算装置、難読化回路生成方法、難読化回路計算方法、プログラム - Google Patents
難読化回路生成装置、難読化回路計算装置、難読化回路生成方法、難読化回路計算方法、プログラム Download PDFInfo
- Publication number
- JP2019049641A JP2019049641A JP2017173690A JP2017173690A JP2019049641A JP 2019049641 A JP2019049641 A JP 2019049641A JP 2017173690 A JP2017173690 A JP 2017173690A JP 2017173690 A JP2017173690 A JP 2017173690A JP 2019049641 A JP2019049641 A JP 2019049641A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- obfuscation
- encryption
- input
- secret key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
まず、記法や基礎的概念について説明する。
(標準的な)秘密鍵暗号アルゴリズムをSKE=(Enc, Dec)とする。暗号化アルゴリズムEncは、秘密鍵K∈{0,1}λと平文m∈M(ただし、MはSKEの平文空間である)を入力とし、暗号文cを出力する。復号アルゴリズムDecは、秘密鍵Kと暗号文cを入力とし、平文m~∈{⊥}∪M(ただし、⊥はエラーを表す)を出力する。暗号化アルゴリズムEnc、復号アルゴリズムDecはいずれも確率的多項式時間アルゴリズム(PPT)である。
PRF:={FK:{0,1}m_1→{0,1}m_2|K∈{0,1}λ}を擬似ランダム関数(PRF)の族とする(ただし、m1,m2はλの多項式である)。なお、KをPRF鍵という。
{Cn}n∈N(ただし、Nは自然数の集合)を回路集合Cnの族とする(ただし、回路集合Cnの要素である回路はnビットを入力とする回路である)。秘匿化スキームをGC=(Grbl,Eval)とする。秘匿化回路生成アルゴリズムGrblは、セキュリティパラメータ1λと回路C∈Cnを入力とし、秘匿化回路C~と2n個のワイヤーキー(ラベルともいう){wi,α}i∈[n]、α∈{0,1}を出力する。秘匿化回路評価アルゴリズムEvalは、秘匿化回路C~とn個のワイヤーキー{wi,x_i}i∈[n](ただし、xi∈{0,1})を入力とし、yを出力する。ここで、y=C(x1,…,xn)である。
cを1以上の整数とする。関数f:{0,1}n→{0,1}mに対するc局所分解可能ランダムエンコーディングをRE=(RE.E,RE.D)とする。エンコーディングアルゴリズムRE.Eは、セキュリティパラメータ1λと関数fと関数fへの入力xを入力とし、乱数rを用いて、エンコーディングf^(x;r)を出力する(ただし、f^:{0,1}n×{0,1}ρ→{0,1}μ)。デコーディングアルゴリズムRE.Dは、エンコーディングf^(x;r)を入力とし、関数値f(x)を出力する。ここで、μをREの分解エンコード数、{0,1}ρ(ただし、ρをλの多項式とする)をREの乱数空間という。
M:={Mλ}λ∈Nをメッセージ空間、Y:={Yλ}λ∈Nを値域、I:={Iλ}λ∈Nをインデックス空間、F:={Fλ}λ∈Nを関数空間とする(ただし、f∈Fは、定義域をM、値域をYとする関数である)。秘密鍵関数型暗号をSKFE=(Setup, KG, Enc, Dec)とする。セットアップアルゴリズムSetupは、セキュリティパラメータ1λを入力とし、マスター秘密鍵MSKを出力する。関数復号鍵生成アルゴリズムKGは、マスター秘密鍵MSKと関数f∈Fとインデックスi∈Iを入力とし、関数fの秘密鍵skfを出力する(以下、秘密鍵skfを関数復号鍵という)。暗号化アルゴリズムEncは、マスター秘密鍵MSKと平文x∈Mを入力とし、暗号文CTを出力する。復号アルゴリズムDecは、関数f∈Fに対する関数復号鍵skfと暗号文CTを入力とし、y∈Yまたは⊥を出力する。ここで、y=f(x)である。
難読化器とは、回路を異なる回路に変換する技術である。変換後の回路の機能は変換前の回路の機能と完全に同一である。また、変換後の回路は変換前の回路に関する情報を漏らさない。
(機能性)任意のセキュリティパラメータλ∈N、任意の回路C∈Cλ、任意の入力xに対して、
(定理)結託耐性秘密鍵関数型暗号が存在するならば、任意の定数γ<1に対して、γ-圧縮SXIOが存在する。
次に、穴あけ可能秘密鍵関数型暗号について説明する。なお、これは、非特許文献12で導入された穴あけ可能秘密鍵関数型暗号の定義を緩和したものである。
最初に、秘密鍵関数型暗号OneKey、CollSuc、WeakSucについて説明する。これらの3つの秘密鍵関数型暗号は、CollSucがOneKeyから構成され、WeakSucがCollSucから構成されるという関係にある。そして、最後に秘密鍵関数型暗号WeakSucを用いて、識別不可能性難読化器iOを構成する方法について説明する。
ここでは、一方向性関数から穴あけ可能秘密鍵関数型暗号OneKeyを構成する。穴あけ可能秘密鍵関数型暗号OneKeyは、関数復号鍵を1つだけ発行することができ、簡素性は持たない。以下、関数復号鍵を1つだけ発行することができる関数型暗号をシングルキー関数型暗号ともいう。
(1)すべてのj∈[s]、α∈{0,1}に対して、Sj,α←r{0,1}λを生成する。
(2)マスター秘密鍵MSK←{Sj,α}j∈[s]、α∈{0,1}を出力する。
(1)入力であるマスター秘密鍵MSKと関数fを{Sj,α}j∈[s]、α∈{0,1}←MSK、(f[1], …, f[s])←fとパースする。
(2)関数復号鍵skf←(f,{Sj,f[j]}j∈[s])を出力する。
(1)入力であるマスター秘密鍵MSKを{Sj,α}j∈[s]、α∈{0,1}←MSKとパースする。
(2)(U~, {Lj,α}j∈[s]、α∈{0,1})←Grbl(1λ, U(・, m))を計算する。なお、Lj,α∈{0,1}m_2({0,1}m_2は穴あけ可能擬似ランダム関数PPRFの値域)である。
(3)すべてのj∈[s]、α∈{0,1}に対して、Rj,αとcj,αを次式により計算する。
(1)入力である関数復号鍵skfと暗号文CTを(f, { Sj,f[j]}j∈[s])←skf、(U~, {cj,α}j∈[s]、α∈{0,1})←CTとパースする。
(2)すべてのj∈[s]に対して、RjとLjを次式により計算する。
(3)y←Eval(U~, {Lj}j∈[s])を出力する。
(1)入力であるマスター秘密鍵MSKを{Sj,α}j∈[s]、α∈{0,1}←MSKとパースする。
(2)すべてのj∈[s]、α∈{0,1}に対して、S* j,α{tag}←PuncF(Sj,α, tag)を計算する。
(3)穴あき鍵MSK*{tag}←{S* j,α{tag}}j∈[s]、α∈{0,1}を出力する。
(1)入力である穴あき鍵MSK*を{Sj,α}j∈[s]、α∈{0,1}←MSK*とパースする。
(2)(U~, {Lj,α}j∈[s]、α∈{0,1})←Grbl(1λ, U(・, m))を計算する。
(3)すべてのj∈[s]、α∈{0,1}に対して、Rj,αとcj,αを次式により計算する。
(定理1)GCを安全な秘匿化スキーム、PPRFを安全な穴あけ可能擬似ランダム関数とする。このとき、OneKeyは、発行可能な関数復号鍵が1つである、安全な穴あけ可能秘密鍵関数型暗号となる。
OneKey=(1Key.Setup, 1Key.KG, 1Key.Enc, 1Key.Dec, 1Key.Punc, 1Key.PEnc)を(定理1)の穴あけ可能秘密鍵関数型暗号とする。また、sxiOをγ-圧縮SXIO、PPRF=(F, PuncF)を穴あけ可能擬似ランダム関数とする。OneKeyとsxiOとPPRFを用いて、穴あけ可能秘密鍵関数型暗号CollSuc=(CS.Setup, CS.KG, CS.Enc, CS.Dec, CS.Punc, CS.PEnc)を構成する。なお、ここで用いるPPRFは、OneKeyを構成する際に用いたPPRFとは異なるものである。具体的には、ここで用いるPPRFとOneKeyを構成する際に用いたPPRFは、定義域及び値域が異なる。
(1)S←r{0,1}λを選択する。
(2)マスター秘密鍵MSK←Sを出力する。
(1)入力であるマスター秘密鍵MSKをS←MSKとパースする。
(2)ri Setup←FS(i)、MSKi←1Key.Setup(1λ;ri Setup)を計算する。
(3)1Key.skf←1Key.KG(MSKi,f)を計算する。
(4)関数復号鍵skf←(i, 1Key.skf)を出力する。
(1)入力であるマスター秘密鍵MSKをS←MSKとパースする。
(2)SEnc←r{0,1}λを選択する。
(3)暗号文CT←sxiO(E1Key[S, SEnc, tag, m])を出力する。なお、暗号化回路E1Key[S, SEnc, tag, m](i)は、以下の通りである。
<暗号化回路E1Key[S, SEnc, tag, m](i)>
回路に直接書き込まれている値:穴あけ可能PRF鍵SとSEnc、タグtag、平文m
入力:インデックスi∈[q]
手順:
1)ri Setup←FS(i)、rEnc←FS_Enc(i)を計算する。
2)MSKi←1Key.Setup(1λ;ri Setup)を計算する。
3)暗号文CTi←1Key.Enc(MSKi, tag, m; rEnc)を出力する。
(1)入力である関数復号鍵skfを(i, 1Key.skf)←skfとパースする。
(2)CTi←CT(i)を計算する。ここで、CT(i)は、暗号化回路E1Key[S, SEnc, tag, m]を難読化した暗号化文CTにインデックスiを入力して計算した値である。
(3)y←1Key.Dec(1Key.skf, tag, CTi)を出力する。
(1)入力であるマスター秘密鍵MSKをS←MSKとパースする。
(2)SPunc←r{0,1}λを選択する。
(3)P~←sxiO(P1Key[S, SPunc, tag])を計算する。なお、穴あき鍵生成回路P1Key[S, SPunc, tag](i)は、以下の通りである。
<穴あき鍵生成回路P1Key[S, SPunc, tag](i)>
回路に直接書き込まれている値:穴あけ可能PRF鍵SとSPunc、タグtag
入力:インデックスi∈[q]
手順:
1)ri Setup←FS(i)、rPunc←FS_Punc(i)を計算する。
2)MSKi←1Key.Setup(1λ;ri Setup)を計算する。
3)穴あき鍵MSK* i{tag}←1Key.Punc(MSKi, tag; rPunc)を出力する。
(4)穴あき鍵MSK*{tag}←P~を出力する。
(1)入力である穴あき鍵MSK*をP~←MSK*とパースする。
(2)SEnc←r{0,1}λを選択する。
(3)暗号文CT←sxiO(PE1Key[P~, SEnc, tag′, m])を出力する。なお、穴あき暗号化回路PE1Key[P~, SEnc, tag, m](i)は、以下の通りである。
<穴あき暗号化回路PE1Key[P~, SEnc, tag, m](i)>
回路に直接書き込まれている値:回路P~、穴あけ可能PRF鍵SEnc、タグtag、平文m
入力:インデックスi∈[q]
パディング:この回路のサイズは、分析により決定されるpadE:=padE(λ,n,s)にパディングされる。
手順:
1)MSK* i←P~(i)、rEnc←FS_Enc(i)を計算する。
2)CTi←1Key.PEnc(MSK* i, tag, m; rEnc)を出力する。
(定理2)OneKeyを(定理1)の穴あけ可能秘密鍵関数型暗号、sxiOを安全なγ-圧縮SXIO、PPRFを安全な穴あけ可能擬似ランダム関数とする。このとき、CollSucは、発行可能な関数復号鍵の数がqである、安全な穴あけ可能秘密鍵関数型暗号である。また、CollSucは、結託簡素性を備える。
CollSuc=(CS.Setup, CS.KG, CS.Enc, CS.Dec, CS.Punc, CS.PEnc)を(定理2)の結託簡素性を備える穴あけ可能秘密鍵関数型暗号とする。ただし、μをλの多項式とし、CollSucのインデックス空間、タグ空間はそれぞれ[μ]、Tであるものとする(タグ空間Tは、OneKeyのタグ空間と同一である)。
(1)マスター秘密鍵MSK←CS.Setup(1λ)を出力する。
(1)K←r{0,1}λ、t←r{0,1}λを選択する。
(2)入力である関数fに対して、分解可能ランダムエンコーディングREのエンコーディングアルゴリズムRE.Eを用いて、エンコーディングf^(x;r)=(f^1(x;rR_1),…, f^μ(x;rR_μ))を集合(R1,…, Rμ)とともに生成する。ここで、すべてのi∈[μ]に対して、Ri⊆[ρ]、|Ri|=cとなる。
(3)すべてのi∈[μ]に対して、CTi ske←E(K,0|f^_i(・,・)|)を生成し、skEn_i←CS.KG(MSK, Endre[f^i, Ri,t, CTi ske],i)を計算する。ここで、|f^_i(・,・)|は、エンコーディングf^_iのサイズを表す。なお、分解可能ランダムエンコーディング計算回路Endre[f^i, Ri,t, CTi ske](m,Sencd,K)は、以下の通りである。
<分解可能ランダムエンコーディング計算回路Endre[f^i, Ri,t, CTi ske](m,Sencd,K)>
回路に直接書き込まれている値:エンコーディングf^i、集合Ri、文字列t、暗号文CTi ske
入力:平文m、PRF鍵Sencd、秘密鍵暗号SKEの秘密鍵K
手順:
1)m=⊥の場合、ei←D(K, CTi ske)を出力する。
2)それ以外の場合、以下の処理を行う。
2-1)すべてのj∈Riに対して、rj←PRF(Sencd,t||j)を計算して、rR_i←{rj}j∈R_iとする。
2-2)ei←f^i(m;rR_i)を出力する。
(4)関数復号鍵skf←(skEn_1,…, skEn_μ)を出力する。
(1)Sencd←r{0,1}λを選択する。
(2)暗号文CT←CS.Enc(MSK,tag,(m, Sencd ,⊥))を出力する。
(1)入力である関数復号鍵skfを(skEn_1,…, skEn_μ)←skfとパースする。
(2)すべてのi∈[μ]に対して、ei←CS.Dec(skEn_i, tag, CT)を計算する。
(3)分解可能ランダムエンコーディングREのデコーディングアルゴリズムRE.Dを用いて、(e1, …, eμ)からyを計算する。
(4)yを出力する。
(1)穴あき鍵MSK*{tag}←CS.Punc(MSK, tag)を出力する。
(1)Sencd←r{0,1}λを選択する。
(2)暗号文CT←CS.PEnc(MSK*, tag′, (m, Sencd ,⊥))を出力する。
(定理3)μをλの多項式とし、CollSucを発行可能な関数復号鍵の数がμであり、結託簡易性を備える(定理2)の穴あけ可能秘密鍵関数型暗号、REを安全なc局所分解可能ランダムエンコーディング、SKEを安全な秘密鍵暗号、PRFを安全な擬似ランダム関数とする。このとき、WeakSucは、発行可能な関数復号鍵の数が1つである、安全な穴あけ可能秘密鍵関数型暗号である。また、WeakSucは、弱簡素性を備える。
WeakSuc=(WS.Setup, WS.KG, WS.Enc, WS.Dec, WS.Punc, WS.PEnc)を(定理3)の弱簡素性を備える穴あけ可能秘密鍵関数型暗号とする。SKE=(E, D)を秘密鍵暗号とする。PPRF=(F, PuncF)を穴あけ可能擬似ランダム関数とする。Uをユニバーサル回路とする。なお、ここで用いるPPRFは、OneKeyを構成する際に用いたPPRFやCollSucを構成する際に用いたPPRFとは異なるものである。具体的には、ここで用いるPPRFとOneKeyを構成する際に用いたPPRF・CollSucを構成する際に用いたPPRFは、定義域及び値域が異なる。
(1)i=1の場合、C~1←(C1(0),C1(1))を出力する。
(2)i>1の場合、以下の処理を実行する。
(2-1)Ki,0,Ki,1←r{0,1}λ~を選択し、CTi,0 ske←E(Ki,0, Ci)、CTi,1 ske←E(Ki,1, Ci)を生成する。
(2-2)MSKi←WS.Setup(1λ~)を生成し、skEv_i←WS.KG(MSKi, Evi[CTi,0 ske,CTi,1 ske])を生成する。なお、回路計算回路Evi[CTi,0 ske,CTi,1 ske](x(i),K,α)は、以下の通りである(ただし、2≦i≦n)。
<回路計算回路Evi[CTi,0 ske,CTi,1 ske](x(i),K,α)>
回路に直接書き込まれている値:暗号文CTi,0 skeとCTi,1 ske、ユニバーサル回路U(・,・)
入力:文字列x(i)∈{0,1}i、秘密鍵暗号SKEの秘密鍵K、ビットα∈{0,1}
手順:
1)Ci←D(K, CTi,α ske)を計算する。
2)U(Ci, x(i))を出力する。
(2-3)Si←r{0,1}λ~を選択し、E~i-1←riO(1λ~, i-1, Ei-1,0[MSKi,Ki,0,Si])を生成する。なお、暗号化回路Ei-1,α[MSKi,Ki,Si](x(i-1))は、以下の通りである(ただし、3≦i≦n、α∈{0,1})。
<暗号化回路Ei-1,α[MSKi,Ki,Si](x(i-1))>
回路に直接書き込まれている値:マスター秘密鍵MSKi、秘密鍵暗号SKEの秘密鍵Ki、穴あけ可能PRF鍵Si
入力:文字列x(i-1)∈{0,1}i-1
手順:
1)xi∈{0,1}に対して、以下の処理を実行する。
1-1)rx_(i-1)||x_i Enc←FS_i(x(i-1)||xi)を計算する。
1-2)CTi,x_i←WS.Enc(MSKi,x(i-1),(x(i-1)||xi, Ki, α); rx_(i-1)||x_i Enc)を計算する。
2)(CTi,0, CTi,1)を出力する。
(2-4)C~i←(skEv_i, E~i-1)を出力する。
(1)i=1の場合、(CT1,0,CT1,1)←C~1とパースし、y1←CT1,x_(1)を出力する。
(2)i>1の場合の場合、以下の処理を実行する。
(2-1)(skEv_i, E~i-1) ←C~i、x(i-1)||xi←x(i)とパースする。
(2-2)(CTi,0, CTi,i) ←rEval(i-1, E~i-1, x(i-1))を計算する。
(2-3)yi←WS.Dec(skEv_i, x(i-1), CTi,x_i) を出力する。
(定理4)発行可能な関数復号鍵の数が1つであり、攻撃者の攻撃成功確率が2-λ^ε(ただし、ε<1は定数)で抑えられるほど安全な多項式サイズ回路に対する弱簡素性穴あけ可能秘密鍵関数型暗号が存在するならば、任意の多項式サイズ回路に対する識別不可能性難読化器を構成することができる。
<<秘密鍵関数型暗号OneKey処理システム>>
ここでは、秘密鍵関数型暗号OneKey処理システムについて説明する。このシステムは、<技術的背景>で説明した秘密鍵関数型暗号OneKeyを実行するシステムである。
図1を参照して、秘密鍵関数型暗号OneKey処理システム100について説明する。図1は、秘密鍵関数型暗号OneKey処理システム100の構成の一例を示すブロック図である。秘密鍵関数型暗号OneKey処理システム100は、システムパラメータ生成装置110、暗号化装置120、復号装置130、穴あき鍵生成装置140、穴あき暗号化装置150を含む。システムパラメータ生成装置110、暗号化装置120、復号装置130、穴あき鍵生成装置140、穴あき暗号化装置150は、インターネットなどのネットワーク800に接続し、相互に通信可能である。
以下、システムパラメータ生成装置110、暗号化装置120、復号装置130、穴あき鍵生成装置140、穴あき暗号化装置150の各装置における処理について説明する。
システムパラメータ生成装置110のセットアップ部111は、セットアップアルゴリズム1Key.Setupを用いて、セキュリティパラメータ1λからマスター秘密鍵MSKを生成し、出力する(S111)。システムパラメータ生成装置110は、マスター秘密鍵MSKを記録部119に記録する。システムパラメータ生成装置110の送受信部118は、マスター秘密鍵MSKを暗号化装置120と穴あき鍵生成装置140に送信する。なお、暗号化装置120と穴あき鍵生成装置140は、システムパラメータ生成装置110の送受信部118から受信したマスター秘密鍵MSKをそれぞれ記録部129と記録部149に記録する。
暗号化装置120の暗号化部121は、暗号化アルゴリズム1Key.Encを用いて、マスター秘密鍵MSKとタグtagと平文mから暗号文CTを生成し、出力する(S121)。ここで、暗号化アルゴリズム1Key.Encでは、秘匿化スキームGCの秘匿化回路生成アルゴリズムGrblとユニバーサル回路U(・,・)と穴あけ可能擬似ランダム関数PPRFのFが用いられる。また、平文mは、例えば、暗号化装置120のユーザが入力したテキストであり、タグtagは、システムで決まった長さを持つビット列であり、暗号化装置120のユーザが任意に選ぶことができる。暗号化装置120の送受信部128は、暗号文CTを復号装置130に送信する。なお、復号装置130は、暗号化装置120の送受信部128から受信した暗号文CTを記録部139に記録する。
復号装置130の復号部131は、復号アルゴリズム1Key.Decを用いて、関数復号鍵skfとタグtagと暗号文CTから復号結果yを生成し、出力する(S131)。ここで、復号アルゴリズム1Key.Decでは、穴あけ可能擬似ランダム関数PPRFのFと秘匿化スキームGCの秘匿化回路評価アルゴリズムEvalが用いられる。なお、関数復号鍵skf、暗号文CTが記録部139に記録されているものであり、タグtagが暗号文CT生成時に用いたものである場合、復号装置130の復号部131は、復号アルゴリズム1Key.Decを用いて、復号結果yとしてf(m)を得る。
穴あき鍵生成装置140の穴あき鍵生成部141は、穴あき鍵生成アルゴリズム1Key.Puncを用いて、マスター秘密鍵MSKとタグtagから穴あき鍵MSK*{tag}を生成し、出力する(S141)。ここで、穴あき鍵生成アルゴリズム1Key.Puncでは、穴あけ可能擬似ランダム関数PPRFのPuncFが用いられる。穴あき鍵生成装置140の送受信部148は、穴あき鍵MSK*{tag}を穴あき暗号化装置150に送信する。なお、穴あき暗号化装置150は、穴あき鍵生成装置140の送受信部148から受信した穴あき鍵MSK*{tag}を記録部149に記録する。
穴あき暗号化装置150の穴あき暗号化部151は、穴あき暗号化アルゴリズム1Key.PEncを用いて、穴あき鍵MSK*とタグtag′から暗号文CTを生成し、出力する(S141)。ここで、穴あき暗号化アルゴリズム1Key.PEncでは、秘匿化スキームGCの秘匿化回路生成アルゴリズムGrblとユニバーサル回路U(・,・)と穴あけ可能擬似ランダム関数PPRFのFが用いられる。
ここでは、秘密鍵関数型暗号CollSuc処理システムについて説明する。このシステムは、<技術的背景>で説明した秘密鍵関数型暗号CollSucを実行するシステムである。
秘密鍵関数型暗号CollSuc処理システム200は、秘密鍵関数型暗号OneKey処理システム100と同様の構成を有する。そこで、ここでは図を参照することなく、秘密鍵関数型暗号CollSuc処理システム200について説明する。
以下、システムパラメータ生成装置210、暗号化装置220、復号装置230、穴あき鍵生成装置240、穴あき暗号化装置250の各装置における処理について説明する。
システムパラメータ生成装置210のセットアップ部211は、セットアップアルゴリズムCS.Setupを用いて、セキュリティパラメータ1λからマスター秘密鍵MSKを生成し、出力する(S211)。システムパラメータ生成装置210は、マスター秘密鍵MSKを記録部219に記録する。システムパラメータ生成装置210の送受信部218は、マスター秘密鍵MSKを暗号化装置220と穴あき鍵生成装置240に送信する。なお、暗号化装置220と穴あき鍵生成装置240は、システムパラメータ生成装置210の送受信部218から受信したマスター秘密鍵MSKをそれぞれ記録部229と記録部249に記録する。
暗号化装置220の暗号化部221は、暗号化アルゴリズムCS.Encを用いて、マスター秘密鍵MSKとタグtagと平文mから暗号文CTを生成し、出力する(S221)。ここで、暗号化アルゴリズムCS.Encでは、γ-圧縮SXIO sxiOと暗号化回路E1Keyが用いられる。なお、暗号化回路E1Keyはインデックスi(iは1≦i≦qを満たす)を入力として、秘密鍵関数型暗号OneKeyのセットアップアルゴリズム1Key.Setupと暗号化アルゴリズム1Key.Encを用いて、暗号文CTiを出力する回路である。また、平文mは、例えば、暗号化装置220のユーザが入力したテキストであり、タグtagは、システムで決まった長さを持つビット列であり、暗号化装置220のユーザが任意に選ぶことができる。暗号化装置220の送受信部228は、暗号文CTを復号装置230に送信する。なお、復号装置230は、暗号化装置220の送受信部228から受信した暗号文CTを記録部239に記録する。
復号装置230の復号部231は、復号アルゴリズムCS.Decを用いて、関数復号鍵skfとタグtagと暗号文CTから復号結果yを生成し、出力する(S231)。ここで、復号アルゴリズムCS.Decでは、秘密鍵関数型暗号OneKeyの復号アルゴリズム1Key.Decが用いられる。なお、関数復号鍵skf、暗号文CTが記録部239に記録されているものであり、タグtagが暗号文CT生成時に用いたものである場合、復号装置230の復号部231は、復号アルゴリズムCS.Decを用いて、復号結果yとしてf(m)を得る。
穴あき鍵生成装置240の穴あき鍵生成部241は、穴あき鍵生成アルゴリズムCS.Puncを用いて、マスター秘密鍵MSKとタグtagから穴あき鍵MSK*{tag}を生成し、出力する(S241)。ここで、穴あき鍵生成アルゴリズムCS.Puncでは、γ-圧縮SXIO sxiOと穴あき鍵生成回路P1Keyが用いられる。なお、穴あき鍵生成回路P1Keyはインデックスi(iは1≦i≦qを満たす)を入力として、秘密鍵関数型暗号OneKeyのセットアップアルゴリズム1Key.Setupと穴あき鍵生成アルゴリズム1Key.Puncを用いて、穴あき鍵MSK* i{tag}を出力する回路である。穴あき鍵生成装置240の送受信部248は、穴あき鍵MSK*{tag}を穴あき暗号化装置250に送信する。なお、穴あき暗号化装置250は、穴あき鍵生成装置240の送受信部248から受信した穴あき鍵MSK*{tag}を記録部249に記録する。
穴あき暗号化装置250の穴あき暗号化部251は、穴あき暗号化アルゴリズムCS.PEncを用いて、穴あき鍵MSK*とタグtag′から暗号文CTを生成し、出力する(S251)。ここで、穴あき暗号化アルゴリズムCS.PEncでは、γ-圧縮SXIO sxiOと穴あき暗号化回路PE1Keyが用いられる。なお、穴あき暗号化回路PE1Keyはインデックスi(iは1≦i≦qを満たす)を入力として、秘密鍵関数型暗号OneKeyの穴あき暗号化アルゴリズム1Key.PEncを用いて、暗号文CTiを出力する回路である。
ここでは、秘密鍵関数型暗号WeakSuc処理システムについて説明する。このシステムは、<技術的背景>で説明した秘密鍵関数型暗号WeakSucを実行するシステムである。
秘密鍵関数型暗号WeakSuc処理システム300は、秘密鍵関数型暗号OneKey処理システム100と同様の構成を有する。そこで、ここでは図を参照することなく、秘密鍵関数型暗号WeakSuc処理システム300について説明する。
以下、システムパラメータ生成装置310、暗号化装置320、復号装置330、穴あき鍵生成装置340、穴あき暗号化装置350の各装置における処理について説明する。
システムパラメータ生成装置310のセットアップ部311は、セットアップアルゴリズムWS.Setupを用いて、セキュリティパラメータ1λからマスター秘密鍵MSKを生成し、出力する(S311)。ここで、セットアップアルゴリズムWS.Setupでは、秘密鍵関数型暗号CollsucのセットアップアルゴリズムCS.Setupが用いられる。システムパラメータ生成装置310は、マスター秘密鍵MSKを記録部319に記録する。システムパラメータ生成装置310の送受信部318は、マスター秘密鍵MSKを暗号化装置320と穴あき鍵生成装置340に送信する。なお、暗号化装置320と穴あき鍵生成装置340は、システムパラメータ生成装置310の送受信部318から受信したマスター秘密鍵MSKをそれぞれ記録部329と記録部349に記録する。
暗号化装置320の暗号化部321は、暗号化アルゴリズムWS.Encを用いて、マスター秘密鍵MSKとタグtagと平文mから暗号文CTを生成し、出力する(S321)。ここで、暗号化アルゴリズムWS.Encでは、秘密鍵関数型暗号Collsucの暗号化アルゴリズムCS.Encが用いられる。また、平文mは、例えば、暗号化装置320のユーザが入力したテキストであり、タグtagは、システムで決まった長さを持つビット列であり、暗号化装置320のユーザが任意に選ぶことができる。暗号化装置320の送受信部328は、暗号文CTを復号装置330に送信する。なお、復号装置330は、暗号化装置320の送受信部328から受信した暗号文CTを記録部339に記録する。
復号装置330の復号部331は、復号アルゴリズムWS.Decを用いて、関数復号鍵skfとタグtagと暗号文CTから復号結果yを生成し、出力する(S331)。ここで、復号アルゴリズムWS.Decでは、秘密鍵関数型暗号Collsucの復号アルゴリズムCS.Decと分解可能ランダムエンコーディングREのデコーディングアルゴリズムRE.Dが用いられる。なお、関数復号鍵skf、暗号文CTが記録部339に記録されているものであり、タグtagが暗号文CT生成時に用いたものである場合、復号装置330の復号部331は、復号アルゴリズムWS.Decを用いて、復号結果yとしてf(m)を得る。
穴あき鍵生成装置340の穴あき鍵生成部341は、穴あき鍵生成アルゴリズムWS.Puncを用いて、マスター秘密鍵MSKとタグtagから穴あき鍵MSK*{tag}を生成し、出力する(S341)。ここで、穴あき鍵生成アルゴリズムWS.Puncでは、秘密鍵関数型暗号Collsucの穴あき鍵生成アルゴリズムCS.Puncが用いられる。穴あき鍵生成装置340の送受信部348は、穴あき鍵MSK*{tag}を穴あき暗号化装置350に送信する。なお、穴あき暗号化装置350は、穴あき鍵生成装置340の送受信部348から受信した穴あき鍵MSK*{tag}を記録部349に記録する。
穴あき暗号化装置350の穴あき暗号化部351は、穴あき暗号化アルゴリズムWS.PEncを用いて、穴あき鍵MSK*とタグtag′から暗号文CTを生成し、出力する(S351)。ここで、穴あき暗号化アルゴリズムWS.PEncでは、秘密鍵関数型暗号Collsucの穴あき暗号化アルゴリズムCS.PEncが用いられる。
ここでは、難読化処理システムについて説明する。このシステムは、<技術的背景>で説明した識別不可能性難読化器iOに対応するシステムである。
図7を参照して、難読化処理システム400について説明する。図7は、難読化処理システム400の構成の一例を示すブロック図である。難読化処理システム400は、難読化回路生成装置410、難読化回路計算装置420を含む。難読化回路生成装置410、難読化回路計算装置420は、インターネットなどのネットワーク800に接続し、相互に通信可能である。
以下、難読化回路生成装置410、難読化回路計算装置420の各装置における処理について説明する。
難読化回路生成装置410には、セキュリティパラメータλ、難読化対象回路C:{0,1}n→{0,1}m(ただし、n,mは1以上の整数)、回路Cの入力サイズnが入力される。
難読化回路計算装置420には、回路Cの難読化回路C~、難読化回路C~の入力サイズn、難読化回路C~に対する入力値x(n)∈{0,1}nが入力される。
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい)、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD−ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
Claims (5)
- λ~をセキュリティパラメータ、Cを入力サイズがn(ただし、nは1以上の整数)である難読化対象回路とし、
前記セキュリティパラメータλ~と前記回路Cの入力サイズnと前記回路Cから難読化回路C~を生成する難読化回路生成部と
を含む難読化回路生成装置であって、
前記難読化回路生成部は、
WeakSuc=(WS.Setup, WS.KG, WS.Enc, WS.Dec, WS.Punc, WS.PEnc)を穴あけ可能秘密鍵関数型暗号、SKE=(E, D)を秘密鍵暗号、PPRF=(F, PuncF)を穴あけ可能擬似ランダム関数、Uをユニバーサル回路とし、
Ciを入力サイズがi(ただし、iは1以上n以下の整数)である難読化対象回路とし、
C~n生成部と、C~n-1生成部と、…、C~1生成部とを含み、
前記C~i生成部(i>1)は、
セキュリティパラメータと回路の入力サイズと回路の組(1λ~, i, Ci)を入力とし、
(1)Ki,0,Ki,1←r{0,1}λ~を選択し、CTi,0 ske←E(Ki,0, Ci)、CTi,1 ske←E(Ki,1, Ci)を生成し、
(2)MSKi←WS.Setup(1λ~)を生成し、skEv_i←WS.KG(MSKi, Evi[CTi,0 ske,CTi,1 ske])を生成し(ただし、2≦i≦nに対して、回路計算回路Evi[CTi,0 ske,CTi,1 ske](x(i),K,α)は、暗号文CTi,0 skeとCTi,1 ske、ユニバーサル回路U(・,・)を回路に直接書き込まれている値、文字列x(i)∈{0,1}i、秘密鍵暗号SKEの秘密鍵K、ビットα∈{0,1}を入力とし、1)Ci←D(K, CTi,α ske)を計算し、2)U(Ci, x(i))を出力する回路)、
(3)Si←r{0,1}λ~を選択し、前記C~i-1生成部を用いて、セキュリティパラメータと回路の入力サイズと回路の組(1λ~, i-1, Ei-1,0[MSKi,Ki,0,Si])からE~i-1を生成し(ただし、3≦i≦n、α∈{0,1}に対して、暗号化回路Ei-1,α[MSKi,Ki,Si](x(i-1))は、マスター秘密鍵MSKi、秘密鍵暗号SKEの秘密鍵Ki、穴あけ可能PRF鍵Siを回路に直接書き込まれている値、文字列x(i-1)∈{0,1}i-1を入力とし、1)xi∈{0,1}に対して、rx_(i-1)||x_i Enc←FS_i(x(i-1)||xi)を計算し、CTi,x_i←WS.Enc(MSKi,x(i-1),(x(i-1)||xi, Ki, α); rx_(i-1)||x_i Enc)を計算し、2)(CTi,0, CTi,1)を出力する回路)、
(4)C~i←(skEv_i, E~i-1)を生成し、
前記C~1生成部は、
セキュリティパラメータと回路の入力サイズと回路の組(1λ~, 1, C1)を入力とし、
C~1←(C1(0),C1(1))を生成する
難読化回路生成装置。 - λ~をセキュリティパラメータ、Cを入力サイズがn(ただし、nは1以上の整数)である難読化対象回路、C~を請求項1に記載の難読化回路生成装置により前記回路Cを難読化した難読化回路、x(n)∈{0,1}nを前記難読化回路C~に対する入力値とし、
前記難読化回路C~の入力サイズnと前記難読化回路C~と前記入力値x(n)から、前記回路Cの出力値C(x(n))を計算する難読化回路計算部と
を含む難読化回路計算装置であって、
前記難読化回路計算部は、
WeakSuc=(WS.Setup, WS.KG, WS.Enc, WS.Dec, WS.Punc, WS.PEnc)を穴あけ可能秘密鍵関数型暗号、SKE=(E, D)を秘密鍵暗号、PPRF=(F, PuncF)を穴あけ可能擬似ランダム関数、Uをユニバーサル回路とし、
Ciを入力サイズがi(ただし、iは1以上の整数)である難読化対象回路、C~iを請求項1に記載の難読化回路生成装置により前記回路Ciを難読化した難読化回路とし、
yn計算部と、yn-1計算部と、…、y1計算部とを含み、
前記yi計算部(i>1)は、
回路の入力サイズと回路と回路への入力値の組(i, C~i, x(i))を入力とし、
(1)(skEv_i, E~i-1) ←C~i、x(i-1)||xi←x(i)とパースし、
(2)前記yi-1計算部を用いて、回路の入力サイズと回路と回路への入力値の組(i-1, E~i-1, x(i-1))から(CTi,0, CTi,i)を計算し、
(3)yi←WS.Dec(skEv_i, x(i-1), CTi,x_i)を計算し、
前記y1計算部は、
回路の入力サイズと回路と回路への入力値の組(1, C~1, x(1))を入力とし、
(CT1,0,CT1,1)←C~1とパースし、y1←CT1,x_(1)を計算する
難読化回路計算装置。 - λ~をセキュリティパラメータ、Cを入力サイズがn(ただし、nは1以上の整数)である難読化対象回路とし、
難読化回路生成装置が、前記セキュリティパラメータλ~と前記回路Cの入力サイズnと前記回路Cから難読化回路C~を生成する難読化回路生成ステップと
を含む難読化回路生成方法であって、
前記難読化回路生成ステップは、
WeakSuc=(WS.Setup, WS.KG, WS.Enc, WS.Dec, WS.Punc, WS.PEnc)を穴あけ可能秘密鍵関数型暗号、SKE=(E, D)を秘密鍵暗号、PPRF=(F, PuncF)を穴あけ可能擬似ランダム関数、Uをユニバーサル回路とし、
Ciを入力サイズがi(ただし、iは1以上n以下の整数)である難読化対象回路とし、
C~n生成ステップと、C~n-1生成ステップと、…、C~1生成ステップとを含み、
前記C~i生成ステップ(i>1)は、
セキュリティパラメータと回路の入力サイズと回路の組(1λ~, i, Ci)を入力とし、
(1)Ki,0,Ki,1←r{0,1}λ~を選択し、CTi,0 ske←E(Ki,0, Ci)、CTi,1 ske←E(Ki,1, Ci)を生成し、
(2)MSKi←WS.Setup(1λ~)を生成し、skEv_i←WS.KG(MSKi, Evi[CTi,0 ske,CTi,1 ske])を生成し(ただし、2≦i≦nに対して、回路計算回路Evi[CTi,0 ske,CTi,1 ske](x(i),K,α)は、暗号文CTi,0 skeとCTi,1 ske、ユニバーサル回路U(・,・)を回路に直接書き込まれている値、文字列x(i)∈{0,1}i、秘密鍵暗号SKEの秘密鍵K、ビットα∈{0,1}を入力とし、1)Ci←D(K, CTi,α ske)を計算し、2)U(Ci, x(i))を出力する回路)、
(3)Si←r{0,1}λ~を選択し、前記C~i-1生成部を用いて、セキュリティパラメータと回路の入力サイズと回路の組(1λ~, i-1, Ei-1,0[MSKi,Ki,0,Si])からE~i-1を生成し(ただし、3≦i≦n、α∈{0,1}に対して、暗号化回路Ei-1,α[MSKi,Ki,Si](x(i-1))は、マスター秘密鍵MSKi、秘密鍵暗号SKEの秘密鍵Ki、穴あけ可能PRF鍵Siを回路に直接書き込まれている値、文字列x(i-1)∈{0,1}i-1を入力とし、1)xi∈{0,1}に対して、rx_(i-1)||x_i Enc←FS_i(x(i-1)||xi)を計算し、CTi,x_i←WS.Enc(MSKi,x(i-1),(x(i-1)||xi, Ki, α); rx_(i-1)||x_i Enc)を計算し、2)(CTi,0, CTi,1)を出力する回路)、
(4)C~i←(skEv_i, E~i-1)を生成し、
前記C~1生成ステップは、
セキュリティパラメータと回路の入力サイズと回路の組(1λ~, 1, C1)を入力とし、
C~1←(C1(0),C1(1))を生成する
難読化回路生成方法。 - λ~をセキュリティパラメータ、Cを入力サイズがn(ただし、nは1以上の整数)である難読化対象回路、C~を請求項1に記載の難読化回路生成装置により前記回路Cを難読化した難読化回路、x(n)∈{0,1}nを前記難読化回路C~に対する入力値とし、
難読化回路計算装置が、前記難読化回路C~の入力サイズnと前記難読化回路C~と前記入力値x(n)から、前記回路Cの出力値C(x(n))を計算する難読化回路計算ステップと
を含む難読化回路計算方法であって、
前記難読化回路計算ステップは、
WeakSuc=(WS.Setup, WS.KG, WS.Enc, WS.Dec, WS.Punc, WS.PEnc)を穴あけ可能秘密鍵関数型暗号、SKE=(E, D)を秘密鍵暗号、PPRF=(F, PuncF)を穴あけ可能擬似ランダム関数、Uをユニバーサル回路とし、
Ciを入力サイズがi(ただし、iは1以上の整数)である難読化対象回路、C~iを請求項1に記載の難読化回路生成装置により前記回路Ciを難読化した難読化回路とし、
yn計算ステップと、yn-1計算ステップと、…、y1計算ステップとを含み、
前記yi計算ステップ(i>1)は、
回路の入力サイズと回路と回路への入力値の組(i, C~i, x(i))を入力とし、
(1)(skEv_i, E~i-1) ←C~i、x(i-1)||xi←x(i)とパースし、
(2)前記yi-1計算部を用いて、回路の入力サイズと回路と回路への入力値の組(i-1, E~i-1, x(i-1))から(CTi,0, CTi,i)を計算し、
(3)yi←WS.Dec(skEv_i, x(i-1), CTi,x_i)を計算し、
前記y1計算ステップは、
回路の入力サイズと回路と回路への入力値の組(1, C~1, x(1))を入力とし、
(CT1,0,CT1,1)←C~1とパースし、y1←CT1,x_(1)を計算する
難読化回路計算方法。 - 請求項1に記載の難読化回路生成装置または請求項2に記載の難読化回路計算装置のいずれかの装置としてコンピュータを機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017173690A JP6759168B2 (ja) | 2017-09-11 | 2017-09-11 | 難読化回路生成装置、難読化回路計算装置、難読化回路生成方法、難読化回路計算方法、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017173690A JP6759168B2 (ja) | 2017-09-11 | 2017-09-11 | 難読化回路生成装置、難読化回路計算装置、難読化回路生成方法、難読化回路計算方法、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019049641A true JP2019049641A (ja) | 2019-03-28 |
JP6759168B2 JP6759168B2 (ja) | 2020-09-23 |
Family
ID=65906032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017173690A Active JP6759168B2 (ja) | 2017-09-11 | 2017-09-11 | 難読化回路生成装置、難読化回路計算装置、難読化回路生成方法、難読化回路計算方法、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6759168B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113452649A (zh) * | 2020-03-24 | 2021-09-28 | 阿里巴巴集团控股有限公司 | 一种安全多方计算方法、设备、系统及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110138184A1 (en) * | 2009-12-04 | 2011-06-09 | Vladimir Kolesnikov | Efficient Techniques for Achieving Security Against Cheating Tamper-Resistant Tokens |
US9209974B1 (en) * | 2015-05-03 | 2015-12-08 | Zeutro, Llc | Functional encryption key management |
US20160004874A1 (en) * | 2013-03-04 | 2016-01-07 | Thomson Licensing | A method and system for privacy preserving matrix factorization |
JP2016510912A (ja) * | 2013-08-09 | 2016-04-11 | トムソン ライセンシングThomson Licensing | プライバシーを保護する行列因子分解のための方法及びシステム |
US20170104588A1 (en) * | 2015-10-07 | 2017-04-13 | International Business Machines Corporation | Refresh of shared cryptographic keys |
JP2018112613A (ja) * | 2017-01-10 | 2018-07-19 | 日本電信電話株式会社 | 暗号システム、鍵生成装置、暗号化装置、復号装置、難読化装置、実行装置、およびプログラム |
-
2017
- 2017-09-11 JP JP2017173690A patent/JP6759168B2/ja active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110138184A1 (en) * | 2009-12-04 | 2011-06-09 | Vladimir Kolesnikov | Efficient Techniques for Achieving Security Against Cheating Tamper-Resistant Tokens |
JP2013513302A (ja) * | 2009-12-04 | 2013-04-18 | アルカテル−ルーセント | 埋め込みsfe:ハードウェアトークンを使用したサーバおよびネットワークの負荷軽減 |
US20160004874A1 (en) * | 2013-03-04 | 2016-01-07 | Thomson Licensing | A method and system for privacy preserving matrix factorization |
JP2016510912A (ja) * | 2013-08-09 | 2016-04-11 | トムソン ライセンシングThomson Licensing | プライバシーを保護する行列因子分解のための方法及びシステム |
US9209974B1 (en) * | 2015-05-03 | 2015-12-08 | Zeutro, Llc | Functional encryption key management |
US20170104588A1 (en) * | 2015-10-07 | 2017-04-13 | International Business Machines Corporation | Refresh of shared cryptographic keys |
JP2018112613A (ja) * | 2017-01-10 | 2018-07-19 | 日本電信電話株式会社 | 暗号システム、鍵生成装置、暗号化装置、復号装置、難読化装置、実行装置、およびプログラム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113452649A (zh) * | 2020-03-24 | 2021-09-28 | 阿里巴巴集团控股有限公司 | 一种安全多方计算方法、设备、系统及存储介质 |
CN113452649B (zh) * | 2020-03-24 | 2023-09-12 | 阿里巴巴集团控股有限公司 | 一种安全多方计算方法、设备、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP6759168B2 (ja) | 2020-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2936731B1 (en) | Managed secure computations on encrypted data | |
Thakur et al. | DES, AES and Blowfish: Symmetric key cryptography algorithms simulation based performance analysis | |
JP6019453B2 (ja) | 暗号化装置、復号化装置、及びプログラム | |
Sarkar et al. | Role of cryptography in network security | |
US9391770B2 (en) | Method of cryption | |
WO2018043049A1 (ja) | 暗号システム、暗号方法及び暗号プログラム | |
US10355856B2 (en) | Key exchange method, key exchange system, key distribution device, communication device, and program | |
US11271743B2 (en) | Plaintext equivalence proof techniques in communication systems | |
Lee et al. | Conditional Re‐encoding Method for Cryptanalysis‐Resistant White‐Box AES | |
JP6649289B2 (ja) | 暗号システム、鍵生成装置、暗号化装置、復号装置、およびプログラム | |
JP7119605B2 (ja) | 暗号文変換システム、暗号文変換方法、及びプログラム | |
JP6759168B2 (ja) | 難読化回路生成装置、難読化回路計算装置、難読化回路生成方法、難読化回路計算方法、プログラム | |
Wang et al. | Garbled computation in cloud | |
JP2001282103A (ja) | 暗号化方法 | |
JP5489115B2 (ja) | 原本性保証装置、原本性保証プログラム、及びこのプログラムを記録する記録媒体 | |
Pandey et al. | Data security using various cryptography Techniques: A Recent Survey | |
Cheltha | An innovative encryption method for images using RSA, honey encryption and inaccuracy tolerant system using Hamming codes | |
JP6649288B2 (ja) | 暗号システム、セットアップ装置、鍵生成装置、暗号化装置、復号装置、およびプログラム | |
Al-Bayati | Enhancing Performance of Hybrid AES, RSA and Quantum Encryption Algorithm | |
Elisha et al. | Novel Approaches to Short Message Encryption using Trigonometric Functions | |
WO2023238230A1 (ja) | 暗号システム | |
JP6885325B2 (ja) | 暗号化装置、復号装置、暗号化方法、復号方法、プログラム | |
Bin-Faisal et al. | Dual layer encryption for iot based vehicle systems over 5g communication | |
Alibrahemi | Block RADG Cipher Automata in Cloud Computing Networks | |
Sharma et al. | TEXCEL: text encryption with elliptic curve cryptography for enhanced security |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20170927 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190819 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200812 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200901 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200902 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6759168 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |