JP7377495B2 - 暗号システム及び方法 - Google Patents

暗号システム及び方法 Download PDF

Info

Publication number
JP7377495B2
JP7377495B2 JP2020101199A JP2020101199A JP7377495B2 JP 7377495 B2 JP7377495 B2 JP 7377495B2 JP 2020101199 A JP2020101199 A JP 2020101199A JP 2020101199 A JP2020101199 A JP 2020101199A JP 7377495 B2 JP7377495 B2 JP 7377495B2
Authority
JP
Japan
Prior art keywords
user
encryption
user terminal
public key
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.)
Active
Application number
JP2020101199A
Other languages
English (en)
Other versions
JP2021196428A (ja
Inventor
裕樹 岡野
鉄太郎 小林
啓造 村上
美郷 中林
一樹 米山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Ibaraki University NUC
Original Assignee
Nippon Telegraph and Telephone Corp
Ibaraki University NUC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, Ibaraki University NUC filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2020101199A priority Critical patent/JP7377495B2/ja
Publication of JP2021196428A publication Critical patent/JP2021196428A/ja
Application granted granted Critical
Publication of JP7377495B2 publication Critical patent/JP7377495B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

特許法第30条第2項適用 2020年1月28日~2020年1月31日(公知日:2020年1月21日)開催の2020年暗号と情報セキュリティシンポジウム(SCIS2020)にて公開
本発明は、暗号システム及びに関する。

暗号化ファイルの復号権限を他のユーザに委任することが可能な暗号方式としてプロキシ再暗号化方式が知られている。この暗号方式を利用することで、例えば、ユーザAの公開鍵で暗号化されたファイルがファイルサーバに保存されている場合に、ユーザAは自身の秘密鍵と別のユーザBの鍵とを使用して再暗号化鍵を生成してファイルサーバに渡すことで、ファイルサーバにファイルの中身を知られることなく、ユーザAのみが復号できる暗号化ファイルをユーザBのみが復号できる暗号化ファイルに変換することが可能となる。
また、プロキシ再暗号化方式に加えて暗号化ファイルとその暗号化を行ったユーザとの紐づけを復号者に検証できるようにした暗号方式としてプロキシ再暗号化付きサインクリプションが知られている。この暗号方式を利用することで、復号権限の委任が可能になりながらも、メッセージの秘匿性と完全性を実現することができる。
プロキシ再暗号化方式は公開鍵暗号方式の一種であるため、一般に、公開鍵とユーザとの紐づけを行う公開鍵基盤(PKI:Public Key Infrastructure)等が必要となる。PKIでは証明書の失効や証明書そのものの検証等が必須であるため、公開鍵暗号方式には、そのための通信や計算処理を各ユーザで実行する必要があるという問題点がある。この問題点を解消する暗号方式として、任意の文字列(例えば、ユーザID等)を公開鍵のように利用することが可能なIDベース暗号方式が知られている。しかしながら、IDベース暗号方式には、鍵生成センタ(KGC:Key Generation Center)による鍵エスクロー問題が存在する。
公開鍵暗号方式とIDベース暗号方式それぞれのデメリットを補う暗号方式として証明書不要暗号方式が知られており、例えば、非特許文献1ではプロキシ再暗号化付き証明書不要サインクリプション方式(Certificateless Signcryption with proxy re-encryption)が提案されている。
Emmanuel Ahene, Junfeng Dai, Hao Feng, Fagen Li, "A certificateless signcryption with proxy re-encryption for practical access control in cloud-based reliable smart grid", Telecommunication Systems: Modelling, Analysis, Design and Management, Springer, vol. 70(4), pages 491-510, April.
しかしながら、従来のプロキシ再暗号化付き証明書不要サインクリプション方式では公開鍵の検証が不十分なため、公開鍵の不正な入れ替えによるなりすましが発生する可能性がある。
また、従来のプロキシ再暗号化付き証明書不要サインクリプション方式では不正な再暗号化リクエストがプロキシ側に流れてきても、当該再暗号化リクエストの検証は行われない。このため、例えば、IDベース暗号方式を利用した多者間鍵交換技術の1つである非同期型ID-MKD(Identity-Based Dynamic Multi-Cast Key Distribution)に対して従来のプロキシ再暗号化付き証明書不要サインクリプション方式を適用した場合、鍵交換確立時に、攻撃者によって不要なパケットが大量にユーザに流れて、ユーザ端末に多大な処理負荷が掛かる恐れがある。すなわち、DoS(Denial of Services attack)攻撃が発生する可能性がある。
本発明の一実施形態は、上記の点に鑑みてなされたもので、安全なプロキシ再暗号化付き証明書不要サインクリプション方式を実現することを目的とする。
上記目的を達成するため、一実施形態に係る暗号システムは、複数のユーザ端末と、鍵生成センタとが含まれる暗号システムであって、前記複数のユーザ端末の各々は、前記鍵生成センタで生成された部分公開鍵を用いて、自身の署名が含まれるユーザ公開鍵を生成する公開鍵生成手段と、前記鍵生成センタで生成された部分秘密鍵を用いて、ユーザ秘密鍵を生成する秘密鍵生成手段と、他のユーザ端末のユーザ公開鍵に含まれる署名の検証を行い、前記検証に成功した場合、前記他のユーザ端末のユーザ公開鍵と自身のユーザ秘密鍵とを用いて、メッセージを暗号化し、前記他のユーザ端末が復号権限を持つ暗号文を生成する暗号化手段と、を有することを特徴とする。
安全なプロキシ再暗号化付き証明書不要サインクリプション方式を実現することができる。
本実施形態に係る暗号システムの全体構成の一例を示す図である。 コンピュータのハードウェア構成の一例を示す図である。 本実施形態に係る暗号システムの機能構成の一例を示す図である。 セットアップ処理及び鍵生成処理の一例を示すフローチャートである。 サインクリプション処理の一例を示すシーケンス図である。 再サインクリプション処理の一例を示すシーケンス図である。 デサインクリプション処理の一例を示すシーケンス図である。
以下、本発明の一実施形態について説明する。本実施形態では、安全なプロキシ再暗号化付き証明書不要サインクリプション方式を実現する暗号システム1について説明する。なお、本実施形態では、一例として、プロキシ再暗号化付き証明書不要サインクリプション方式を非同期型ID-MKDに対して適用する場合を想定して説明する。ただし、これは一例であって、本実施形態に係る暗号システム1によって実現されるプロキシ再暗号化付き証明書不要サインクリプション方式は、非同期型ID-MKDに対して適用する場合に限定されず、種々の多者間鍵交換技術又は多者間鍵交換プロトコルに対して適用可能である。
<全体構成>
まず、本実施形態に係る暗号システム1の全体構成について、図1を参照しながら説明する。図1は、本実施形態に係る暗号システム1の全体構成の一例を示す図である。
図1に示すように、本実施形態に係る暗号システム1には、複数のユーザ端末10と、サーバ20と、KGC30とが含まれる。各ユーザ端末10、サーバ20及びKGC30は、例えば、インターネット等の通信ネットワーク40を介して通信可能に接続される。
ユーザ端末10は、ユーザ(例えば、多者間鍵交換プロトコルによって鍵交換を行うユーザ等)が利用する各種端末である。ユーザ端末10としては、例えば、PC(パーソナルコンピュータ)やスマートフォン、タブレット端末、携帯電話機等を用いることが可能である。ただし、これらに限られず、ユーザ端末10としては、通信可能な任意の端末を用いることが可能である。
なお、本実施形態では、一例として、暗号システム1には3台のユーザ端末10が含まれるものとして、それぞれユーザ端末10A、ユーザ端末10B及びユーザ端末10Cとする。また、ユーザ端末10Aを利用するユーザを「ユーザA」として、IDベース暗号方式に利用されるIDを「IDA」又は単に「A」と表す。同様に、ユーザ端末10Bを利用するユーザを「ユーザB」として、そのIDを「IDB」又は単に「B」と表す。同様に、ユーザ端末10Cを利用するユーザを「ユーザB」として、そのIDを「IDC」又は単に「C」と表す。一方で、任意のIDは「ID」等と表す。
IDベース暗号方式に利用されるIDとしては任意の識別情報を使用することができるが、例えば、ユーザのメールアドレス、SNS(Social Networking Service)のユーザID、電話番号、住所、氏名、マイナンバー、DNA等の生体情報、IP(Internet Protocol)アドレス、MAC(Media Access Control)アドレス、URL(Uniform Resource Locator)、クレジットカード番号、機器や装置の製造固有番号等を使用することが可能である。
サーバ20は、再サインクリプション鍵を用いて、サインクリプションを再サインクリプションする装置又はシステムである。すなわち、サーバ20は、プロキシ再暗号化付き証明書不要サインクリプション方式におけるプロキシとして機能する装置又はシステムである。なお、非同期型の多者間鍵交換プロトコルに適用される場合、サーバ20は、鍵交換に関する補助的な処理を実行するサーバ(いわゆる鍵交換補助サーバ)であってもよい。
KGC30は、公開パラメータやマスター秘密鍵を生成したり、IDベース暗号方式に利用されるIDに対応する部分公開鍵や部分秘密鍵を生成したりする装置又はシステムである。すなわち、KGC30は、鍵生成センタとして機能する装置又はシステムである。
なお、図1に示す暗号システム1の構成は一例であって、他の構成であってもよい。例えば、サーバ20とKGC30とは別体である必要はなく、サーバ20とKGC30とが一体で構成されていてもよい。
<ハードウェア構成>
次に、本実施形態に係る暗号システム1に含まれるユーザ端末10、サーバ20及びKGC30のハードウェア構成について説明する。ユーザ端末10、サーバ20及びKGC30は一般的なコンピュータ(情報処理装置)のハードウェア構成により実現可能であり、例えば、図2に示すコンピュータ500のハードウェア構成により実現可能である。図2は、コンピュータ500のハードウェア構成の一例を示す図である。
図2に示すコンピュータ500は、ハードウェアとして、入力装置501と、表示装置502と、外部I/F503と、通信I/F504と、プロセッサ505と、メモリ装置506とを有する。これら各ハードウェアは、それぞれがバス507を介して通信可能に接続されている。
入力装置501は、例えば、キーボードやマウス、タッチパネル等である。表示装置502は、例えば、ディスプレイ等である。なお、コンピュータ500は、入力装置501及び表示装置502のうちの少なくとも一方を有していなくてもよい。
外部I/F503は、外部装置とのインタフェースである。外部装置には、記録媒体503a等がある。なお、記録媒体503aとしては、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等が挙げられる。
通信I/F504は、通信ネットワーク40に接続するためのインタフェースである。プロセッサ505は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等の各種演算装置である。メモリ装置506は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ等の各種記憶装置である。
本実施形態に係る暗号システム1に含まれるユーザ端末10、サーバ20及びKGC30は、例えば、図2に示すコンピュータ500のハードウェア構成を有することにより、後述する各種処理を実現することができる。なお、図2に示すコンピュータ500のハードウェア構成は一例であって、コンピュータ500は、他のハードウェア構成であってもよい。例えば、コンピュータ500は、複数のプロセッサ505を有していてもよいし、複数のメモリ装置506を有していてもよい。
また、本実施形態に係る暗号システム1に含まれるユーザ端末10、サーバ20及びKGC30は、例えば、複数のコンピュータ500のハードウェア構成により実現されていてもよい。
<プロキシ再暗号化付き証明書不要サインクリプション方式の構成>
本実施形態では、プロキシ再暗号化付き証明書不要サインクリプション方式をCPRS(Certificateless Proxy Re-Signcryption)と表すものとする。CPRSは、一般に、以下の10個のアルゴリズム(CPRS.Setup, CPRS.PKeyExt, CPRS.SetSV, CPRS.SetSK, CPRS.SetPK, CPRS.RKGen, CPRS.Signcrypt, CPRS.ReSigncrypt, CPRS.DeSigncrypt1, CPRS.DeSigncrypt2)で構成される。なお、以降では、一例として、復号権限を持つユーザをユーザBとしてユーザAがメッセージ(平文)を暗号化し、ユーザBがその復号をユーザCに委任するものとする。例えば、多者間鍵交換プロトコルではユーザAはイニシエータ(又はグループオーナー等)、ユーザB及びCはレスポンダに相当する。
・CPRS.Setup(1κ)→(params, msk):セキュリティパラメータ1κを入力として、公開パラメータparamsとマスター秘密鍵mskとを出力する確率的アルゴリズム。
・CPRS.PKeyExt(params, msk, ID)→(ppkID, pskID):公開パラメータparamsとマスター秘密鍵mskとID IDとを入力として、部分公開鍵ppkIDと部分秘密鍵pskIDとを出力する確率的アルゴリズム。
・CPRS.SetSV(params, ID)→svID:公開パラメータparamsとID IDとを入力として、秘密値svIDを出力する確率的アルゴリズム。
・CPRS.SetSK(params, pskID, svID)→skID:公開パラメータparamsと部分秘密鍵pskIDと秘密値svIDとを入力として、秘密鍵skIDを出力する確率的アルゴリズム。
・CPRS.SetPK(params, ppkID, svID)→pkID:公開パラメータparamsと部分公開鍵ppkIDと秘密値svIDとを入力として、公開鍵pkIDを出力する確率的アルゴリズム。
・CPRS.RKGen(params, IDB, skB, pkB, IDC, pkC)→rkB→C:公開パラメータparamsと復号権限を委任する委任者(delegator)であるユーザBのID IDBとユーザBの秘密鍵skBとユーザBの公開鍵pkBと復号権限を持つことになる受任者(delegatee)であるユーザCのID IDCとユーザCの公開鍵pkCとを入力として、再サインクリプション鍵rkB→Cを出力する確率的アルゴリズム。
・CPRS.Signcrypt(params, IDA, skA, pkA, IDB, pkB, m)→σA,B:公開パラメータparamsと暗号化を行うユーザAのID IDAとユーザAの秘密鍵skAとユーザAの公開鍵pkAと復号権限を持つことになるユーザBのID IDBとユーザBの公開鍵pkBと平文mとを入力として、サインクリプションσA,Bを出力する確率的アルゴリズム。
・CPRS.ReSigncrypt(params, rkB→C, σA,B)→σ'A,C:公開パラメータparamsと再サインクリプション鍵rkB→CとサインクリプションσA,Bとを入力として、再サインクリプションσ'A,Cを出力する確率的アルゴリズム。なお、再サインクリプションは単に「サインクリプション」と称されてもよい。
・CPRS.DeSigncrypt1(params, IDA, pkA, skB, σA,B)→m/⊥:公開パラメータparamsと暗号化を行ったユーザAのID IDAとユーザAの公開鍵pkAと復号権限を持つユーザBの秘密鍵skBとサインクリプションσA,Bとを入力として、平文m又は失敗を示す⊥のいずれかを出力する確定的アルゴリズム。
・CPRS.DeSigncrypt2(params, IDA, pkA, skC, σ'A,C)→m/⊥:公開パラメータparamsと暗号化を行ったユーザAのID IDAとユーザAの公開鍵pkAと復号権限を持つユーザCの秘密鍵skCと再サインクリプションσ'A,Cとを入力として、平文m又は失敗を示す⊥のいずれかを出力する確定的アルゴリズム。
ここで、プロキシ再暗号化付き証明書不要サインクリプション方式は、正当性として以下の2つの条件を満たす。
条件1:任意の公開パラメータparamsと任意のID IDと当該ID IDに対応する任意の秘密鍵skID及び公開鍵pkIDと任意のID ID'と当該ID ID'に対応する任意の秘密鍵skID'及び公開鍵pkID'と任意の平文mとに対して、
CPRS.DeSigncrypt1(params, ID, pkID, skID', CPRS.Signcrypt(params, ID, skID, pkID, ID', pkID', m))=m
が成り立つ。
条件2:任意の公開パラメータparamsと任意のID IDと当該ID IDに対応する任意の秘密鍵skID及び公開鍵pkIDと任意の2つのID ID'及びID"とこれらのIDにそれぞれ対応する任意の秘密鍵skID'及びskID"並びに公開鍵pkID'及びpkID"と任意の再サインクリプション鍵rkID'→ID"と任意の平文mとに対して、
CPRS.DeSigncrypt2(params, ID, pkID, skID", CPRS.ReSigncrypt(params, rkID'→ID", CPRS.Signcrypt(params, ID, skID, pkID, ID', pkID', m)))=m
が成り立つ。
本実施形態では、(1)ユーザの公開鍵にmodified Schnorr署名を取り入れ、サインクリプション時やデサインクリプション時(つまり、メッセージを暗号化する時や復号する時)に他のユーザが公開鍵の検証を行えるようにプロキシ再暗号化付き証明書不要サインクリプション方式を構成すると共に、(2)サインクリプションそのものは復号権限を持つユーザにしか送信元ユーザの認証ができないため、署名に似た検証要素をサインクリプションの要素に追加し、プロキシ側でも暗号文のフォーマットの正しさを検証できるようにプロキシ再暗号化付き証明書不要サインクリプション方式を構成する。上記の(1)により、正当なユーザによって暗号化された暗号文であること又は暗号文の宛先ユーザ(つまり、復号権限を持つユーザ)の公開鍵が正しいことを保証し、攻撃者によるなりすましを防止することができる。また、上記の(2)により、例えば、非同期型ID-MKDシステムの外にいる攻撃者がでたらめな暗号文を送り付けるDoS攻撃によってユーザ端末10の処理負荷が増大してしまう事態を防止することができる。
具体的には、本実施形態では、プロキシ再暗号化付き証明書不要サインクリプション方式の各アルゴリズムを以下の実施例1又は実施例2のように構成する。なお、実施例2は実施例1をより効率的に改良した方式である。以降では、Zを整数環として、この整数環の元q∈Zによる剰余環をZqと表す。また、その単数群をZq *と表す。
≪プロキシ再暗号化付き証明書不要サインクリプション方式の構成(実施例1)≫
・CPRS.Setup(1κ)→(params, msk)
qをκビットの素数として、Gを位数qの乗法群とする。また、g∈Gを生成元とする。x∈Zq *を一様ランダムにとり、y:=gxとする。Gの元をビット表現した際のサイズ(ビット列の長さ)をLとし、平文空間を{0, 1}κとする。このとき、ハッシュ関数を以下のように定める。
H : G → Zq *
H1 : {0, 1}*×G → Zq *
H2 : {0, 1}*×G4 → Zq *
H3 : G → {0, 1}κ+L
H4 : {0, 1}κ+L → Zq *
H5 : G2×{0, 1}κ+L×Zq * → Zq *
H6 : {0, 1}*×G2 → Zq *
H7 : {0, 1}*×{0, 1}κ×{0, 1}κ+L → Zq *
そして、params:=(q, G, g, y, L, H, H1, H2, H3, H4, H5, H6, H7)及びmsk:=xと設定する。
・CPRS.PKeyExt(params, msk, ID)→(ppkID, pskID)
一例として、ID=IDA, ppkID=ppkA, pskID=pskAである場合について説明する。まず、sA,1, sA,2, sA,3, sA,4∈Zq *を一様ランダムにとり、
Figure 0007377495000001
とする。次に、SA,i:=sA,i+xH1(IDA, QA,i) (i=1, 2, 3)とSA,4:=sA,4+xH2(IDA, QA,1, QA,2, QA,3, QA,4)とを計算し、ppkA:=(QA,1, QA,2, QA,3, QA,4, SA,4)及びpskA:=(SA,1, SA,2, SA,3)と設定する。
・CPRS.SetSV(params, ID)→svID
一例として、ID=IDA, svID=svAである場合について説明する。zA,1, zA,2, zA,3∈Zq *を一様ランダムにとり、svA:=(zA,1, zA,2, zA,3)と設定する。
・CPRS.SetSK(params, pskID, svID)→skID
一例として、pskID=pskA, svID=svA, skID=skAである場合について説明する。skA:=(zA,1, zA,2, zA,3, SA,1, SA,2, SA,3)と設定する。
・CPRS.SetPK(params, ppkID, svID)→pkID
一例として、ppkID=ppkA, svID=svA, pkID=pkAである場合について説明する。まず、
Figure 0007377495000002
を計算する。次に、tA,1, tA,2, tA,3∈Zq *を一様ランダムにとり、
Figure 0007377495000003
とμA,i:=tA,i+SA,iH6(IDA, PA,i, TA,i) (i=1, 2, 3)を計算する。そして、pkA:=(PA,1, PA,2, PA,3, QA,1, QA,2, QA,3, QA,4, SA,4, TA,1, TA,2, TA,3, μA,1, μA,2, μA,3)と設定する。このように、本実施形態に係るプロキシ再暗号化付き証明書不要サインクリプション方式では、攻撃者によるなりすましを防止するために、公開鍵に対してmodified Schnorr署名を取り入れる。
・CPRS.RKGen(params, IDB, skB, pkB, IDC, pkC)→rkB→C
まず、CPRS.PKVerify(params, IDC, pkC)を実行し、1が出力されることを確認する。ここで、CPRS.PKVerifyは公開鍵の署名検証を行うためのアルゴリズムであり、検証に成功した場合は1、そうでなければ0を出力する。実施例1におけるCPRS.PKVerifyの詳細については後述する。
次に、CPRS.PKVerifyで1が出力された場合は、
Figure 0007377495000004
を計算する。次に、h∈Zq *とπ∈{0, 1}Lとを一様ランダムにとり、v:=H4(h, π)を計算する。続いて、
Figure 0007377495000005
を計算する。そして、rkB→C:=(rk, V, W)と設定する。
・CPRS.Signcrypt(params, IDA, skA, pkA, IDB, pkB, m)→σA,B
まず、CPRS.PKVerify(params, IDB, pkB)を実行し、1が出力されることを確認する。次に、CPRS.PKVerifyで1が出力された場合は、
Figure 0007377495000006
を計算する。次に、u∈Zq *を一様ランダムにとり、U:=guとr:=H4(m, U)とを計算する。続いて、
Figure 0007377495000007
を計算する。そして、σA,B:=(D, E, F, s, t)と設定する。
・CPRS.ReSigncrypt(params, rkB→C, σA,B)→σ'A,C
まず、
Figure 0007377495000008
が成り立つことを検証する。そして、この検証に成功した場合は、E':=Erkを計算し、σ'A,C:=(E', F, V, W, t)と設定する。このように、本実施形態に係るプロキシ再暗号化付き証明書不要サインクリプション方式では、例えば攻撃者によるDos攻撃を防止するために、再サインクリプションを行うプロキシ側でも検証を行う。
・CPRS.DeSigncrypt1(params, IDA, pkA, skB, σA,B)→m/⊥
まず、CPRS.PKVerify(params, IDA, pkA)を実行し、1が出力されることを確認する。次に、CPRS.PKVerifyで1が出力された場合は、
Figure 0007377495000009
が成り立つことを検証する。次に、この検証に成功した場合は、K:=zB,1+zB,2H(PB,1)+(SB,1+SB,2・H(RB,1))H(X)を計算する。続いて、
Figure 0007377495000010
を計算する。そして、
Figure 0007377495000011
が成り立てばmを出力し、そうでなければ⊥を出力する。
・CPRS.DeSigncrypt2(params, IDA, pkA, skC, σ'A,C)→m/⊥
まず、CPRS.PKVerify(params, IDA, pkA)を実行し、1が出力されることを確認する。次に、CPRS.PKVerifyで1が出力された場合は、K':=zC,1+SC,1・H(PC,1)を計算する。次に、
Figure 0007377495000012
を計算する。そして、
Figure 0007377495000013
が成り立てばmを出力し、そうでなければ⊥を出力する。
ここで、公開鍵の署名検証を行うためのアルゴリズムCPRS.PKVerifyについて説明する。このアルゴリズムは、CPRS.PKVerify(params, ID, pkID)→1/0であり、公開パラメータparamsと任意のユーザのID IDと当該IDに対応する公開鍵pkIDとを入力として、検証成功を示す1又は検証失敗を示す0のいずれかを出力する確定的アルゴリズムである。一例として、ID=IDA, pkID=pkAである場合の具体的構成について説明する。まず、
Figure 0007377495000014
を計算する。そして、
Figure 0007377495000015
かつ
Figure 0007377495000016
が成り立てば1を出力し、そうでなければ0を出力する。
≪プロキシ再暗号化付き証明書不要サインクリプション方式の構成(実施例2)≫
・CPRS.Setup(1κ)→(params, msk)
qをκビットの素数として、Gを位数qの乗法群とする。また、g∈Gを生成元とする。x∈Zq *を一様ランダムにとり、y:=gxとする。Gの元をビット表現した際のサイズ(ビット列の長さ)をLとし、平文空間を{0, 1}κとする。このとき、実施例2では、ハッシュ関数を以下のように定める。
H : G → Zq *
H1 : {0, 1}*×G4 → Zq *
H2 : {0, 1}*×G2 → Zq *
H3 : G → {0, 1}2κ+L
H4 : {0, 1}2κ+L → Zq *
H5 : G2×{0, 1}2κ+L → Zq *
H6 : {0, 1}*×{0, 1}κ×G → Zq *
そして、params:=(q, G, g, y, L, H, H1, H2, H3, H4, H5, H6)及びmsk:=xと設定する。
・CPRS.PKeyExt(params, msk, ID)→(ppkID, pskID)
一例として、ID=IDA, ppkID=ppkA, pskID=pskAである場合について説明する。まず、SA,1, SA,2, SA,3, sA,4∈Zq *を一様ランダムにとり、
Figure 0007377495000017
を計算し、ppkA:=(RA,1, RA,2, RA,3, QA,4, SA,4)及びpskA:=(SA,1, SA,2, SA,3)と設定する。
・CPRS.SetSV(params, ID)→svID
一例として、ID=IDA, svID=svAである場合について説明する。実施例1と同様に、zA,1, zA,2, zA,3∈Zq *を一様ランダムにとり、svA:=(zA,1, zA,2, zA,3)と設定する。
・CPRS.SetSK(params, pskID, svID)→skID
一例として、pskID=pskA, svID=svA, skID=skAである場合について説明する。実施例1と同様に、skA:=(zA,1, zA,2, zA,3, SA,1, SA,2, SA,3)と設定する。
・CPRS.SetPK(params, ppkID, svID)→pkID
一例として、ppkID=ppkA, svID=svA, pkID=pkAである場合について説明する。まず、実施例1と同様に、PA,i, tA,i, TA,i, μA,iを計算する。そして、pkA:=(PA,1, PA,2, PA,3, RA,1, RA,2, RA,3, QA,4, SA,4, TA,1, TA,2, TA,3, μA,1, μA,2, μA,3)と設定する。
・CPRS.RKGen(params, IDB, skB, pkB, IDC, pkC)→rkB→C
まず、CPRS.PKVerify(params, IDC, pkC)を実行し、1が出力されることを確認する。CPRS.PKVerifyは公開鍵の署名検証を行うためのアルゴリズムであり、検証に成功した場合は1、そうでなければ0を出力する。実施例2におけるCPRS.PKVerifyの詳細については後述する。
次に、CPRS.PKVerifyで1が出力された場合は、
Figure 0007377495000018
を計算する。次に、h∈Zq *とπ∈{0, 1}κ+Lとを一様ランダムにとり、v:=H4(h, π)を計算する。続いて、
Figure 0007377495000019
を計算する。そして、rkB→C:=(rk, V, W)と設定する。
・CPRS.Signcrypt(params, IDA, skA, pkA, IDB, pkB, m)→σA,B
まず、CPRS.PKVerify(params, IDB, pkB)を実行し、1が出力されることを確認する。次に、CPRS.PKVerifyで1が出力された場合は、
Figure 0007377495000020
を計算する。次に、u∈Zq *を一様ランダムにとり、U:=guとt:=u+(zA,3+SA,3)H6(IDA, m, U)とr:=H4(m, U, t)とを計算する。続いて、
Figure 0007377495000021
を計算する。そして、σA,B:=(D, E, F, s)と設定する。
・CPRS.ReSigncrypt(params, rkB→C, σA,B)→σ'A,C
まず、
Figure 0007377495000022
が成り立つことを検証する。そして、この検証に成功した場合は、E':=Erkを計算し、σ'A,C:=(E', F, V, W,)と設定する。
・CPRS.DeSigncrypt1(params, IDA, pkA, skB, σA,B)→m/⊥
まず、CPRS.PKVerify(params, IDA, pkA)を実行し、1が出力されることを確認する。次に、CPRS.PKVerifyで1が出力された場合は、
Figure 0007377495000023
が成り立つことを検証する。次に、この検証に成功した場合は、KB:=zB,1+zB,2H(PB,1)+(SB,1+SB,2H(RB,1))H(XB)を計算する。続いて、
Figure 0007377495000024
を計算する。そして、
Figure 0007377495000025
が成り立てばmを出力し、そうでなければ⊥を出力する。
・CPRS.DeSigncrypt2(params, IDA, pkA, skC, σ'A,C)→m/⊥
まず、CPRS.PKVerify(params, IDA, pkA)を実行し、1が出力されることを確認する。次に、CPRS.PKVerifyで1が出力された場合は、KC':=zC,1+SC,1H(PC,1)を計算する。次に、
Figure 0007377495000026
を計算する。そして、
Figure 0007377495000027
が成り立てばmを出力し、そうでなければ⊥を出力する。
ここで、公開鍵の署名検証を行うためのアルゴリズムCPRS.PKVerifyについて説明する。実施例1と同様に、このアルゴリズムは、CPRS.PKVerify(params, ID, pkID)→1/0であり、公開パラメータparamsと任意のユーザのID IDと当該IDに対応する公開鍵pkIDとを入力として、検証成功を示す1又は検証失敗を示す0のいずれかを出力する確定的アルゴリズムである。一例として、ID=IDA, pkID=pkAである場合の具体的構成について説明する。実施例2では、
Figure 0007377495000028
かつ
Figure 0007377495000029
が成り立てば1を出力し、そうでなければ0を出力する。
<機能構成>
次に、本実施形態に係る暗号システム1に含まれるユーザ端末10、サーバ20及びKGC30の機能構成について、図3を参照しながら説明する。図3は、本実施形態に係る暗号システム1の機能構成の一例を示す図である。
≪ユーザ端末10≫
図3に示すように、ユーザ端末10は、鍵設定部111と、再サインクリプション鍵生成部112と、サインクリプション部113と、デサインクリプション部114とを有する。これら各部は、例えば、ユーザ端末10にインストールされた1以上のプログラムがプロセッサに実行させる処理により実現される。
また、ユーザ端末10は、記憶部121を有する。記憶部121は、例えば、ユーザ端末10のメモリ装置等を用いて実現可能である。
記憶部121には、各種情報(例えば、秘密鍵や公開鍵等)が記憶される。鍵設定部111は、CPRS.SetSVアルゴリズムを実行して秘密値を生成した上で、CPRS.SetSKアルゴリズムを実行して秘密鍵を生成及び設定すると共に、CPRS.SetPKアルゴリズムを実行して公開鍵を生成及び設定する。再サインクリプション鍵生成部112は、CPRS.RKGenアルゴリズムを実行して再サインクリプション鍵を生成する。サインクリプション部113は、CPRS.Signcryptアルゴリズムを実行して暗号文(サインクリプション)を生成する。デサインクリプション部114は、CPRS.DeSigncrypt1アルゴリズム又はCPRS.DeSigncrypt2アルゴリズムを実行して暗号文(サインクリプション)を復号する。
≪サーバ20≫
図3に示すように、サーバ20は、再サインクリプション部211を有する。再サインクリプション部211は、例えば、サーバ20にインストールされた1以上のプログラムがプロセッサに実行させる処理により実現される。
また、サーバ20は、記憶部221を有する。記憶部221は、例えば、サーバ20のメモリ装置等を用いて実現可能である。
記憶部221には、各種情報(例えば、再サインクリプション鍵等)が記憶される。再サインクリプション部211は、CPRS.ReSigncryptアルゴリズムを実行して再サインクリプションを生成する。
≪KGC30≫
図3に示すように、KGC30は、セットアップ部311と、鍵生成部312とを有する。これら各部は、例えば、KGC30にインストールされた1以上のプログラムがプロセッサに実行させる処理により実現される。
また、KGC30は、記憶部321を有する。記憶部321は、例えば、KGC30のメモリ装置等を用いて実現可能である。
記憶部321には、各種情報(例えば、マスター秘密鍵等)が記憶される。セットアップ部311は、CPRS.Setupアルゴリズムを実行して公開パラメータ及びマスター秘密鍵を生成する。鍵生成部312は、CPRS.PKeyExtアルゴリズムを実行して各ユーザの部分公開鍵及び部分秘密鍵を生成する。
<処理の流れ>
以降では、本実施形態に係る暗号システム1に含まれるユーザ端末10、サーバ20及びKGC30が実行する各種処理の流れについて説明する。
≪セットアップ処理及び鍵生成処理≫
まず、セットアップ処理及び鍵生成処理の流れについて、図4を参照しながら説明する。図4は、セットアップ処理及び鍵生成処理の一例を示すフローチャートである。
ステップS101:まず、KGC30のセットアップ部311は、セキュリティパラメータ1κを用いてCPRS.Setupアルゴリズムを実行し、公開パラメータparams及びマスター秘密鍵mskを生成する。なお、公開パラメータparamsは記憶部321に保存されると共に公開される。一方で、マスター秘密鍵mskは記憶部321に保存される。
ステップS102:次に、KGC30の鍵生成部312は、公開パラメータparamsとマスター秘密鍵mskと各ユーザ(非同期型の多者間鍵交換プロトコルに適用される場合には、いわゆる鍵交換補助サーバも含む)それぞれのID IDとを用いてCPRS.PKeyExtアルゴリズムを実行し、部分公開鍵ppkID及び部分秘密鍵pskIDを生成する。なお、部分公開鍵ppkIDは記憶部321に保存されると共に公開される。一方で、部分秘密鍵pskIDは、この部分秘密鍵pskIDの生成に用いたIDに対応するユーザ端末10等に対してセキュアな方法で送信される。
ステップS103:各ユーザ端末10の鍵設定部111は、公開パラメータparamsと自身のID IDとを用いてCPRS.SetSVアルゴリズムを実行し、このID IDに対応する秘密値svIDを生成する。
ステップS104:次に、各ユーザ端末10の鍵設定部111は、公開パラメータparamsと自身のIDに対応する部分秘密鍵pskID及び秘密値svIDとを用いてCPRS.SetSKアルゴリズムを実行し、このIDに対応する秘密鍵skIDを生成及び設定する。なお、秘密鍵skIDは記憶部121に保存される。
ステップS105:次に、各ユーザ端末10の鍵設定部111は、公開パラメータparamsと自身のIDに対応する部分公開鍵ppkID及び秘密値svIDとを用いてCPRS.SetPKアルゴリズムを実行し、このIDに対応する公開鍵pkIDを生成及び設定する。なお、公開鍵pkIDは記憶部121に保存されると共に公開される。
≪サインクリプション処理≫
次に、サインクリプション処理の流れについて、図5を参照しながら説明する。図5は、サインクリプション処理の一例を示すシーケンス図である。以降では、一例として、復号権限をユーザBとする暗号文(サインクリプション)をユーザAが生成し、この暗号文をサーバ20に保存する場合について説明する。
ステップS201:まず、ユーザ端末10Aのサインクリプション部113は、公開パラメータparamsと自身のID IDAと自身のIDに対応する秘密鍵skAと自身のIDに対応する公開鍵pkAとユーザBのID IDBとユーザBのIDに対応する公開鍵pkBとを用いてCPRS.Signcryptアルゴリズムを実行し、暗号化対象の平文mを暗号化したサインクリプションσA,Bを生成する。
ステップS202:次に、ユーザ端末10Aは、サインクリプションσA,Bをサーバ20に送信する。
ステップS203:そして、サーバ20は、ユーザ端末10Aから受信したサインクリプションσA,Bを記憶部221に保存する。
≪再サインクリプション処理≫
次に、再サインクリプション処理の流れについて、図6を参照しながら説明する。図6は、再サインクリプション処理の一例を示すシーケンス図である。以降では、一例として、図5のステップS201で生成されたサインクリプションσA,Bの復号権限をユーザCに委任する場合について説明する。
ステップS301:まず、ユーザ端末10Bの再サインクリプション鍵生成部112は、公開パラメータparamsと自身のID IDBと自身のIDに対応する秘密鍵skBと自身のIDに対応する公開鍵pkBとユーザCのID IDCとユーザCのIDに対応する公開鍵pkCとを用いてCPRS.RKGenアルゴリズムを実行し、再サインクリプション鍵rkB→Cを生成する。
ステップS302:次に、ユーザ端末10Bは、再サインクリプション鍵rkB→Cをサーバ20に送信する。
ステップS303:サーバ20の再サインクリプション部211は、公開パラメータparamsとユーザ端末10Bから受信した再サインクリプション鍵rkB→CとサインクリプションσA,Bとを用いてCPRS.ReSigncryptアルゴリズムを実行し、再サインクリプションσ'A,Cを生成する。なお、再サインクリプションσ'A,Cは記憶部221に保存される。
≪デサインクリプション処理≫
次に、デサインクリプション処理の流れについて、図7を参照しながら説明する。図7は、デサインクリプション処理の一例を示すシーケンス図である。以降では、一例として、ユーザBがサインクリプションσA,Bを復号する場合又はユーザCが再サインクリプションσ'A,Cを復号する場合について説明する。
ステップS401:まず、サーバ20は、サインクリプションσA,Bをユーザ端末10Bに送信する、又は、再サインクリプションσ'A,Cをユーザ端末10Cに送信する。
ステップS402:ユーザ端末10Bのデサインクリプション部114は、公開パラメータparamsとユーザAのID IDAとユーザAの公開鍵pkAと自身のIDに対応する秘密鍵skBとを用いてCPRS.DeSigncrypt1アルゴリズムを実行し、サインクリプションσA,Bを復号する。又は、ユーザ端末10Cのデサインクリプション部114は、公開パラメータparamsとユーザAのID IDAとユーザAの公開鍵pkAと自身のIDに対応する秘密鍵skCとを用いてCPRS.DeSigncrypt2アルゴリズムを実行し、再サインクリプションσ'A,Cを復号する。
<まとめ>
以上のように、本実施形態に係る暗号システム1は、ユーザの公開鍵にmodified Schnorr署名を取り入れ、サインクリプション時やデサインクリプション時にその検証を行うと共に、プロキシ側(つまり、サーバ20)でも暗号文のフォーマットの正しさを検証するプロキシ再暗号化付き証明書不要サインクリプション方式を実現する。このため、正当なユーザによって暗号化された暗号文であること又は復号権限を持つユーザの公開鍵が正しいことを保証し、攻撃者によるなりすましを防止することができると共に、例えば、非同期型ID-MKDによる多者間鍵交換プロトコルに適用した場合に、システムの外にいる攻撃者がでたらめな暗号文を送り付けるDoS攻撃によってユーザ端末10の処理負荷が増大してしまう事態を防止することができる。
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。
1 暗号システム
10 ユーザ端末
20 サーバ
30 KGC
40 通信ネットワーク
111 鍵設定部
112 再サインクリプション鍵生成部
113 サインクリプション部
114 デサインクリプション部
121 記憶部
211 再サインクリプション部
221 記憶部
311 セットアップ部
312 鍵生成部
321 記憶部

Claims (4)

  1. 複数のユーザ端末と、鍵生成センタと、サーバとが含まれ、プロキシ再暗号化付き証明書不要サインクリプション方式を実現する暗号システムであって、
    前記複数のユーザ端末の各々は、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式のユーザ公開鍵生成アルゴリズムにより、前記鍵生成センタで生成された部分公開鍵を用いて、自身の署名が含まれるユーザ公開鍵を生成する公開鍵生成手段と、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式の部分秘密鍵生成アルゴリズムにより、前記鍵生成センタで生成された部分秘密鍵を用いて、ユーザ秘密鍵を生成する秘密鍵生成手段と、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式の暗号化アルゴリズムにより、他のユーザ端末のユーザ公開鍵に含まれる署名の検証を行い、前記検証に成功した場合、前記他のユーザ端末のユーザ公開鍵と自身のユーザ秘密鍵とを用いて、メッセージを暗号化し、前記他のユーザ端末が復号権限を持つ暗号文を生成する暗号化手段と、
    を有し、
    前記サーバは、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式の再暗号化アルゴリズムにより、第1のユーザ端末が復号権限を持つ暗号文の復号権限を第2のユーザ端末に委任するための再暗号化鍵と、前記第1のユーザ端末が復号権限を持つ暗号文とを用いて、前記第1のユーザ端末が復号権限を持つ暗号文のフォーマットの正しさの検証を行い、前記検証に成功した場合、復号権限が前記第2のユーザ端末となるように、前記第1のユーザ端末が復号権限を持つ暗号文を再暗号化する再暗号化手段、
    を有し、
    前記復号権限は、前記プロキシ再暗号化付き証明書不要サインクリプション方式の復号アルゴリズムによって復号可能であることを表す権限であり、
    前記公開鍵生成手段は、
    modified Schnorr署名により、前記ユーザ公開鍵に対する前記署名を生成する、ことを特徴とする暗号システム。
  2. 記複数のユーザ端末の各々は、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式の再サインクリプション鍵生成アルゴリズムにより、復号権限の委任先となる他のユーザ端末のユーザ公開鍵に含まれる署名の検証を行い、前記検証に成功した場合、自身のユーザ公開鍵と自身のユーザ秘密鍵と前記他のユーザ端末のユーザ公開鍵とを用いて、自身が復号権限を持つ暗号文の復号権限を前記他のユーザ端末に委任するための再暗号化鍵を生成する再暗号化鍵生成手段を有する、ことを特徴とする請求項1に記載の暗号システム。
  3. 前記複数のユーザ端末の各々は、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式の復号アルゴリズムにより、暗号化を行った他のユーザ端末のユーザ公開鍵に含まれる署名の検証を行い、前記検証に成功した場合、前記他のユーザ端末のユーザ公開鍵と、自身のユーザ秘密鍵とを用いて、前記他のユーザ端末が暗号化を行った暗号文であって、かつ、自身が復号権限を持つ暗号文を復号する復号手段を有する、ことを特徴とする請求項1又は2に記載の暗号システム。
  4. 複数のユーザ端末と、鍵生成センタと、サーバとが含まれ、プロキシ再暗号化付き証明書不要サインクリプション方式を実現する暗号システムに用いられる方法であって、
    前記複数のユーザ端末の各々が、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式のユーザ公開鍵生成アルゴリズムにより、前記鍵生成センタで生成された部分公開鍵を用いて、自身の署名が含まれるユーザ公開鍵を生成する公開鍵生成手順と、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式の部分秘密鍵生成アルゴリズムにより、前記鍵生成センタで生成された部分秘密鍵を用いて、ユーザ秘密鍵を生成する秘密鍵生成手順と、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式の暗号化アルゴリズムにより、他のユーザ端末のユーザ公開鍵に含まれる署名の検証を行い、前記検証に成功した場合、前記他のユーザ端末のユーザ公開鍵と自身のユーザ秘密鍵とを用いて、メッセージを暗号化し、前記他のユーザ端末が復号権限を持つ暗号文を生成する暗号化手順と、
    を実行し、
    前記サーバが、
    前記プロキシ再暗号化付き証明書不要サインクリプション方式の再暗号化アルゴリズムにより、第1のユーザ端末が復号権限を持つ暗号文の復号権限を第2のユーザ端末に委任するための再暗号化鍵と、前記第1のユーザ端末が復号権限を持つ暗号文とを用いて、前記第1のユーザ端末が復号権限を持つ暗号文のフォーマットの正しさの検証を行い、前記検証に成功した場合、復号権限が前記第2のユーザ端末となるように、前記第1のユーザ端末が復号権限を持つ暗号文を再暗号化する再暗号化手順、
    を実行し、
    前記復号権限は、前記プロキシ再暗号化付き証明書不要サインクリプション方式の復号アルゴリズムによって復号可能であることを表す権限であり、
    前記公開鍵生成手順は、
    modified Schnorr署名により、前記ユーザ公開鍵に対する前記署名を生成する、ことを特徴とする方法。
JP2020101199A 2020-06-10 2020-06-10 暗号システム及び方法 Active JP7377495B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020101199A JP7377495B2 (ja) 2020-06-10 2020-06-10 暗号システム及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020101199A JP7377495B2 (ja) 2020-06-10 2020-06-10 暗号システム及び方法

Publications (2)

Publication Number Publication Date
JP2021196428A JP2021196428A (ja) 2021-12-27
JP7377495B2 true JP7377495B2 (ja) 2023-11-10

Family

ID=79197820

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020101199A Active JP7377495B2 (ja) 2020-06-10 2020-06-10 暗号システム及び方法

Country Status (1)

Country Link
JP (1) JP7377495B2 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006208967A (ja) 2005-01-31 2006-08-10 Hitachi Ltd Idベース暗号通信方法および装置
JP2012150378A (ja) 2011-01-21 2012-08-09 Nippon Telegr & Teleph Corp <Ntt> プロキシ再暗号化システム、鍵生成装置、再暗号化装置、プロキシ再暗号化方法、プログラム
JP2012249054A (ja) 2011-05-27 2012-12-13 Nippon Telegr & Teleph Corp <Ntt> 情報共有システム、方法、装置及びプログラム
CN103634788A (zh) 2013-12-16 2014-03-12 重庆邮电大学 前向安全的无证书多代理签密方法
CN103905189A (zh) 2012-12-24 2014-07-02 航天信息股份有限公司 无证书且无配对的基于身份的代理签密方法和系统
JP2014225770A (ja) 2013-05-16 2014-12-04 日本電信電話株式会社 鍵交換装置、鍵生成装置、鍵交換システム、鍵交換方法、およびプログラム
JP2019029751A (ja) 2017-07-27 2019-02-21 富士通株式会社 暗号処理装置、暗号化通信システム、暗号処理方法、および暗号処理プログラム
JP2019102970A (ja) 2017-12-01 2019-06-24 日本電信電話株式会社 データ共有サーバ装置、鍵生成サーバ装置、通信端末、プログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006208967A (ja) 2005-01-31 2006-08-10 Hitachi Ltd Idベース暗号通信方法および装置
JP2012150378A (ja) 2011-01-21 2012-08-09 Nippon Telegr & Teleph Corp <Ntt> プロキシ再暗号化システム、鍵生成装置、再暗号化装置、プロキシ再暗号化方法、プログラム
JP2012249054A (ja) 2011-05-27 2012-12-13 Nippon Telegr & Teleph Corp <Ntt> 情報共有システム、方法、装置及びプログラム
CN103905189A (zh) 2012-12-24 2014-07-02 航天信息股份有限公司 无证书且无配对的基于身份的代理签密方法和系统
JP2014225770A (ja) 2013-05-16 2014-12-04 日本電信電話株式会社 鍵交換装置、鍵生成装置、鍵交換システム、鍵交換方法、およびプログラム
CN103634788A (zh) 2013-12-16 2014-03-12 重庆邮电大学 前向安全的无证书多代理签密方法
JP2019029751A (ja) 2017-07-27 2019-02-21 富士通株式会社 暗号処理装置、暗号化通信システム、暗号処理方法、および暗号処理プログラム
JP2019102970A (ja) 2017-12-01 2019-06-24 日本電信電話株式会社 データ共有サーバ装置、鍵生成サーバ装置、通信端末、プログラム

Also Published As

Publication number Publication date
JP2021196428A (ja) 2021-12-27

Similar Documents

Publication Publication Date Title
Gamage et al. An efficient scheme for secure message transmission using proxy-signcryption
KR100827650B1 (ko) 그룹에 참여하도록 초대된 잠재적 회원을 인증하는 방법
US8670563B2 (en) System and method for designing secure client-server communication protocols based on certificateless public key infrastructure
CN110771089A (zh) 提供前向保密性的安全通信
AU2016287732A1 (en) Mutual authentication of confidential communication
CN109274502B (zh) 公钥加密及密钥签名的创建方法、设备及可读存储介质
US11870891B2 (en) Certificateless public key encryption using pairings
JPWO2008146667A1 (ja) 匿名認証システムおよび匿名認証方法
JP2013077900A (ja) セキュリティ処理代行システム、通信装置、代行装置、通信プログラム及びセキュリティ処理代行プログラム
CN110535626B (zh) 基于身份的量子通信服务站保密通信方法和系统
CN111953479A (zh) 数据处理的方法及装置
KR101382626B1 (ko) Id 기반의 강한 지정된 검증자 서명 시스템 및 방법
WO2019230291A1 (ja) 鍵共有システム、情報処理装置、機器、鍵共有方法及びプログラム
JP7377495B2 (ja) 暗号システム及び方法
WO2021010444A1 (ja) 鍵交換システム、通信装置、鍵交換方法及びプログラム
WO2020240741A1 (ja) 鍵交換システム、通信装置、鍵交換方法及びプログラム
JP5643251B2 (ja) 秘密情報通知システム、秘密情報通知方法、プログラム
JP2010113181A (ja) 鍵管理方法、鍵生成方法、暗号処理方法、復号処理方法、アクセス管理方法、通信ネットワークシステム
JP2010272899A (ja) 鍵生成システム及び鍵生成方法及びブラインドサーバ装置及びプログラム
Baalghusun et al. Authenticated key agreement protocols: A comparative study
JP2008152737A (ja) サービス提供サーバ、認証サーバ、および認証システム
KR100718687B1 (ko) 겹선형 쌍 함수를 이용한 아이디 기반의 문턱 서명 방법
Omono et al. Implicit Certificate Based Signcryption for a Secure Data Sharing in Clouds
KR101652846B1 (ko) 무인증서 공개키 암호 기반 웹서버 인증 방법
Surya et al. Single sign on mechanism using attribute based encryption in distributed computer networks

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20200611

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20200611

A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20200630

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220812

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230927

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: 20231010

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231020

R150 Certificate of patent or registration of utility model

Ref document number: 7377495

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150