JP2021044736A - 署名システム、署名方法及び署名プログラム - Google Patents

署名システム、署名方法及び署名プログラム Download PDF

Info

Publication number
JP2021044736A
JP2021044736A JP2019166328A JP2019166328A JP2021044736A JP 2021044736 A JP2021044736 A JP 2021044736A JP 2019166328 A JP2019166328 A JP 2019166328A JP 2019166328 A JP2019166328 A JP 2019166328A JP 2021044736 A JP2021044736 A JP 2021044736A
Authority
JP
Japan
Prior art keywords
signature
key
hash
value
database
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
Application number
JP2019166328A
Other languages
English (en)
Other versions
JP7075382B2 (ja
Inventor
清本 晋作
Shinsaku Kiyomoto
晋作 清本
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.)
KDDI Corp
Original Assignee
KDDI Corp
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 KDDI Corp filed Critical KDDI Corp
Priority to JP2019166328A priority Critical patent/JP7075382B2/ja
Publication of JP2021044736A publication Critical patent/JP2021044736A/ja
Application granted granted Critical
Publication of JP7075382B2 publication Critical patent/JP7075382B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】軽量かつ安全性の高いグループ署名を実現できる署名システムを提供すること。【解決手段】管理サーバ1は、複数の秘密鍵、及びシード値をリーフノードとする第1ハッシュ木を、グループ署名におけるメンバの数だけ構成し、さらに、複数の第1ハッシュ木のルートノードの値をリーフノードとした第2ハッシュ木を構成する鍵生成部101と、秘密鍵をメンバに対して重複なく、対応する第1ハッシュ木の中間ノード及びルートノードの値と共に配布する鍵配布部102と、第2ハッシュ木におけるルートノードの値を、公開鍵として登録順を保証するデータベースに登録する鍵登録部103と、電子署名としてメッセージ及び秘密鍵を入力としたハッシュ値が算出された後、当該ハッシュ値と共に又は当該ハッシュ値の後に、当該ハッシュ値の算出に用いた秘密鍵をデータベースに登録する署名登録部104と、を備える。【選択図】図1

Description

本発明は、グループ署名を実現するシステム、装置、方法及びプログラムに関する。
従来、データ(メッセージ)の正当性を保証するために電子署名が運用されている。この電子署名システムにおける署名及び検証のプロセスは、安全性を確保するために処理負荷が増大する傾向にある。
そこで、処理が軽量で、かつ、量子コンピュータに対して安全性を有する署名方式が望まれている。非特許文献1では、ハッシュ関数のみから署名及び署名検証のプロセスを構成した署名方式が提案されている。
Chalkias, Konstantinos; Brown, James; Hearn, Mike; Lillehagen, Tommy; Nitto, Igor; Schroeter, Thomas (2018). "Blockchained Post−Quantum Signatures". Proceedings of the IEEE International Conference on Blockchain (Cybermatics−2018): 1196−1203.
しかしながら、従来の方式は、グループに属する複数人のいずれかが署名を行えるグループ署名には対応できていなかった。
本発明は、軽量かつ安全性の高いグループ署名を実現できる署名システム、署名方法及び署名プログラムを提供することを目的とする。
本発明に係る署名システムは、複数の秘密鍵、及びシード値をリーフノードとし、前記秘密鍵及び前記シード値のペアを入力としたハッシュ値を上位ノードとする第1ハッシュ木を、グループ署名におけるメンバの数だけ構成し、さらに、複数の前記第1ハッシュ木のルートノードの値をリーフノードとした第2ハッシュ木を構成する鍵生成部と、前記秘密鍵を前記メンバに対して重複なく、対応する前記第1ハッシュ木の中間ノード及びルートノードの値と共に配布する鍵配布部と、前記第2ハッシュ木におけるルートノードの値を、公開鍵として登録順を保証するデータベースに登録する鍵登録部と、電子署名としてメッセージ及び前記秘密鍵を入力としたハッシュ値が算出された後、当該ハッシュ値と共に又は当該ハッシュ値の後に、当該ハッシュ値の算出に用いた秘密鍵、当該秘密鍵と共に配布された前記中間ノードの値、及び当該秘密鍵が属していない前記第1ハッシュ木のルートノードの値を公開情報として前記データベースに登録する署名登録部と、を備える。
前記登録順は、タイムスタンプにより保証されてもよい。
前記署名登録部は、同一の秘密鍵が登録されていない場合に限り、前記秘密鍵を前記データベースに登録してもよい。
前記鍵配布部は、前記メンバのそれぞれに対して、複数の前記第1ハッシュ木のうち、互いに異なるいずれか一つに含まれる前記秘密鍵を配布してもよい。
前記鍵配布部は、前記メンバのそれぞれに対して、複数の前記第1ハッシュ木のいずれかに含まれる前記秘密鍵をランダムに配布してもよい。
前記メンバのいずれかに配布した未公開の前記秘密鍵を公開情報として前記データベースに登録することにより、当該メンバを失効させてもよい。
前記データベースは、ブロックチェーンにより構成されてもよい。
本発明に係る署名検証装置は、前記署名システムにおいて登録された前記電子署名を検証する署名検証装置であって、前記電子署名及び対応する公開情報としての前記秘密鍵の登録順の正当性を確認する順序確認部と、メッセージ及び対応する公開情報としての前記秘密鍵からハッシュ値を計算し、前記データベースに登録されているハッシュ値と照合する署名照合部と、前記秘密鍵、対応する前記中間ノードの値、及びルートノードの値を用いて、前記第2ハッシュ木のルートノードの値を計算し、前記データベースに登録されている前記公開鍵と照合する鍵照合部と、を備える。
本発明に係る署名方法は、コンピュータシステムにおいて、鍵生成部が、複数の秘密鍵、及びシード値をリーフノードとし、前記秘密鍵及び前記シード値のペアを入力としたハッシュ値を上位ノードとする第1ハッシュ木を、グループ署名におけるメンバの数だけ構成し、さらに、複数の前記第1ハッシュ木のルートノードの値をリーフノードとした第2ハッシュ木を構成する鍵生成ステップと、鍵配布部が、前記秘密鍵を前記メンバに対して重複なく、対応する前記第1ハッシュ木の中間ノード及びルートノードの値と共に配布する鍵配布ステップと、鍵登録部が、前記第2ハッシュ木におけるルートノードの値を、公開鍵として登録順を保証するデータベースに登録する鍵登録ステップと、署名登録部が、電子署名としてメッセージ及び前記秘密鍵を入力としたハッシュ値が算出された後、当該ハッシュ値と共に又は当該ハッシュ値の後に、当該ハッシュ値の算出に用いた秘密鍵、当該秘密鍵と共に配布された前記中間ノードの値、及び当該秘密鍵が属していない前記第1ハッシュ木のルートノードの値を公開情報として前記データベースに登録する署名登録ステップと、を実行する。
本発明に係る署名検証方法は、前記署名方法により登録された前記電子署名をコンピュータが検証する署名検証方法であって、順序確認部が、前記電子署名及び対応する公開情報としての前記秘密鍵の登録順の正当性を確認する順序確認ステップと、署名照合部が、メッセージ及び対応する公開情報としての前記秘密鍵からハッシュ値を計算し、前記データベースに登録されているハッシュ値と照合する署名照合ステップと、鍵照合部が、前記秘密鍵、対応する前記中間ノードの値、及びルートノードの値を用いて、前記第2ハッシュ木のルートノードの値を計算し、前記データベースに登録されている前記公開鍵と照合する鍵照合ステップと、を実行する。
本発明に係る署名プログラムは、前記署名システムとしてコンピュータを機能させるためのものである。
本発明に係る署名検証プログラムは、前記署名検証装置としてコンピュータを機能させるためのものである。
本発明によれば、軽量かつ安全性の高いグループ署名が実現される。
実施形態における管理サーバの構成例を示す図である。 実施形態における第1ハッシュ木の構成を例示する図である。 実施形態における第2ハッシュ木の構成を例示する図である。 実施形態における署名処理を示すフローチャートである。 実施形態における署名検証装置の構成例を示す図である。 実施形態における署名検証処理を示すフローチャートである。 実施形態におけるデータベースとして採用可能なブロックチェーンの構成例を示す図である。
以下、本発明の実施形態の一例について説明する。
本実施形態において、署名システムは、電子署名を管理するサーバが提供する機能群により構成されるものとする。
なお、署名システムの構成は、これには限られず、複数のサーバ群により構成されてもよいし、ユーザの端末群に機能分散されてもよい。
図1は、本実施形態における管理サーバ1の構成例を示す図である。
管理サーバ1(署名システム)は、制御部10及び記憶部11を備え、さらに、各種の入出力及び通信デバイスを備えた情報処理装置である。
制御部10は、記憶部11に格納されたソフトウェア(署名プログラム)を実行することにより、鍵生成部101、鍵配布部102、鍵登録部103、及び署名登録部104、失効処理部105として機能する。
鍵生成部101は、まず、グループ署名におけるグループのメンバM人のそれぞれが署名を行える最大回数を設定し、この最大回数以上の数をメンバ全員に配布できるだけの秘密鍵を複数(M×N個)生成する。次に、鍵生成部101は、N個の秘密鍵、及びシード値をリーフノードとし、秘密鍵及びシード値のペアを入力としたハッシュ値を上位ノードとする第1ハッシュ木を、メンバの数だけ(M個)構成する。
なお、シード値は、ランダムな値、又はシーケンス値であってよい。
さらに、鍵生成部101は、M個の第1ハッシュ木のルートノードの値(ハッシュ値)をリーフノードとした第2ハッシュ木を構成し、最上位のルートノードの値(ハッシュ値)を公開鍵とする。
図2は、本実施形態における第1ハッシュ木の構成を例示する図である。
この例では、一人のユーザに配布する秘密鍵の数Nを4個とし、第1ハッシュ木には、4個の秘密鍵z〜zから構成されている。
各秘密鍵z〜zは、それぞれがシード値、ここではシーケンス番号「1」〜「4」と対応付けられ、2値を入力としたハッシュ関数によりハッシュ値を木構造に積み上げた第1ハッシュ木が生成される。
例えば、リーフノードの「1」及び秘密鍵zを入力としたハッシュ値xが上位ノードとなり、同階層のハッシュ値x及びxを入力としたハッシュ値x1,2が更に上位のノードとなる。そして、ハッシュ値x1,2及びx3,4を入力としたハッシュ値pがルートノードとなる。
図3は、本実施形態における第2ハッシュ木の構成を例示する図である。
第2ハッシュ木は、図2のように構成された第1ハッシュ木T1〜T4それぞれのルートノードの値P1〜P4をリーフノードとし、同様にハッシュ関数によりハッシュ値を木構造に積み上げて構成される。
第2ハッシュ木のルートノードの値Pは、グループ署名における公開鍵となる。
鍵配布部102は、鍵生成部101により生成された秘密鍵を、グループのメンバに対して重複なく、対応する第1ハッシュ木の中間ノード及びルートノードの値と共に配布する。
例えば、第1ハッシュ木T1に含まれる秘密鍵T1Z1〜T1Z4を配布する場合、T1の中間ノード(図2のx〜x、x1,2、x3,4)及びT1〜T4のルートノードの値P1〜P4が秘密鍵と共に配布される。
このとき、鍵配布部102は、メンバのそれぞれに対して、複数の第1ハッシュ木のうち、互いに異なるいずれか一つをランダムに選択し、選択した第1ハッシュ木に含まれる秘密鍵を配布してよい。
あるいは、鍵配布部102は、メンバのそれぞれに対して、複数の第1ハッシュ木のいずれかに固定することなく、秘密鍵全体からランダムに配布してもよい。
鍵登録部103は、第2ハッシュ木におけるルートノードの値Pを、公開鍵として登録順を保証するデータベースに登録し、タイムスタンプ等の登録順を示す情報を取得する。
データベースは、データの登録時刻を保証するためのタイムスタンプを発行するシステムを伴い、タイムスタンプサーバにより管理されるものであってよい。また、登録先はタイムスタンプサーバには限られず、タイムスタンプを含むブロックチェーンにより構成されてもよい。
署名登録部104は、秘密鍵が配布されたグループのメンバの端末において、電子署名の対象であるメッセージ、及び未使用の秘密鍵を入力としたハッシュ値が算出されると、このハッシュ値を電子署名としてデータベースに登録し、鍵登録部103と同様にタイムスタンプ等を取得する。
このとき、署名登録部104は、電子署名としてのハッシュ値と共に又はハッシュ値の登録の後に、このハッシュ値の算出に用いた秘密鍵、秘密鍵と共に配布された中間ノードの値、及び秘密鍵が属していない第1ハッシュ木のルートノードの値を、署名検証時に必要となる公開情報としてデータベースに登録し、タイムスタンプ等を取得する。
例えば、メッセージDと秘密鍵T1Z1のハッシュ値H=h(D,T1Z1)が登録されると、合わせて、秘密鍵T1Z1、中間ノードのハッシュ値x、及び第1ハッシュ木T1以外のルートノードの値P2〜P4が公開される。
この時点で、秘密鍵T1Z1は使用済みとなり、これ以降、署名処理に使用することはできない。
また、署名登録部104は、秘密鍵をデータベースに登録する際に、同一の秘密鍵が登録されていない場合に限り、新規登録してもよい。
なお、このような二重使用のチェックは、タイムスタンプサーバ又はブロックチェーンの機能として提供されてもよい。
失効処理部105は、メンバのいずれかによる署名の権限を失効させる場合、このメンバに配布した未使用の、すなわち未公開の秘密鍵を全て、公開情報としてデータベースに登録し、タイムスタンプ等を取得する。
図4は、本実施形態における署名処理を示すフローチャートである。
ステップS1において、鍵生成部101は、グループに属するメンバの数、及び各メンバの署名の最大実行回数に基づいて必要数の秘密鍵を生成し、複数の第1ハッシュ木と第2ハッシュ木とを生成する。
ステップS2において、鍵配布部102は、各メンバに対して秘密鍵、及び署名検証に必要となる情報を配布する。
ステップS3において、鍵登録部103は、公開鍵である第2ハッシュ木のルートノードの値をデータベースに登録すると共にタイムスタンプを取得する。
ステップS4において、署名登録部104は、メッセージ及び秘密鍵により生成されたハッシュ値をメッセージの電子署名としてデータベースに登録し、さらに、使用した秘密鍵と、署名検証に必要な情報をデータベースに登録すると共にタイムスタンプを取得する。
このようにして生成された電子署名は、メッセージを利用するメンバ又は外部のユーザの端末、すなわち署名検証装置2によって検証される。
図5は、本実施形態における署名検証装置2の構成例を示す図である。
署名検証装置2は、制御部20及び記憶部21を備え、さらに、各種の入出力及び通信デバイスを備えた情報処理装置である。
制御部20は、記憶部21に格納されたソフトウェア(署名検証プログラム)を実行することにより、順序確認部201、署名照合部202、及び鍵照合部203として機能する。
順序確認部201は、タイムスタンプ等により、電子署名及び対応する公開情報としての秘密鍵の登録順の正当性を確認する。すなわち、秘密鍵を用いた電子署名が秘密鍵の公開よりも前(又は同時)に公開されていることにより、電子署名が不正に生成されたものでないことが検証される。
署名照合部202は、メッセージ及び対応する公開情報としての秘密鍵からハッシュ値を計算し、データベースに登録されているハッシュ値と照合する。すなわち、登録されている秘密鍵から電子署名のハッシュ値を再現できることから、メッセージが改竄されていないことが検証される。
鍵照合部203は、秘密鍵、対応する中間ノードの値、及びルートノードの値を用いて、第2ハッシュ木のルートノードの値を、階層を辿って順に計算し、データベースに登録されている公開鍵と照合する。すなわち、第1ハッシュ木及び第2ハッシュ木が再現できることから、秘密鍵が正しいことが検証される。
図6は、本実施形態における署名検証処理を示すフローチャートである。
ステップS11において、順序確認部201は、電子署名及び秘密鍵のタイムスタンプの正当性を確認する。
ステップS12において、署名照合部202は、メッセージと公開された秘密鍵とからハッシュ値を計算し、登録されているハッシュ値と照合し、メッセージの正当性を確認する。
ステップS13において、鍵照合部203は、電子署名と共に登録された情報を用いて、第1ハッシュ木及び第2ハッシュ木のノードの値を上位へ向かって順に計算し、公開鍵と照合することで、秘密鍵の正当性を確認する。
前述のように、電子署名を登録するためのデータベースは、ブロックチェーンにより構成されてよい。ブロックチェーンは、登録データを示すブロックが連続したデータベースであり、各ブロックには、タイムスタンプと前のブロックのハッシュ値とが含まれ、登録済みのデータを改竄することが極めて困難なデータベースである。
図7は、本実施形態におけるデータベースとして採用可能なブロックチェーンの構成例を示す図である。
ブロックチェーンへのデータ登録は、例えば、次の手順で実施される。
(1)まず、上位のブロックチェーンを準備する。上位のブロックチェーンは、時間T1毎にブロックが追加される仕様とする。
(2)上位のブロックチェーンの現在のブロックをAxとするとき、このAxのハッシュ値H_Axをヘッダ情報に含む下位のブロックチェーンをN個構成する。下位のブロックチェーンは、時間T2毎に更新されることとし、T1>T2とする。
(3)時間T1が経過した時点で、N個存在する下位のブロックチェーンの最終ブロック(N個)のハッシュ値H_By,…とH_Axとをヘッダ情報として含むブロックを上位のブロックチェーンに追加する。このとき、下位のブロックチェーンのうち、チェーンの長さ(ブロックの数)がある閾値以下であるブロックチェーンについては、追加されない。なお、閾値はセキュリティ要件によって定められる。
ここで、ブロックチェーンのブロックをproof−of−workによって生成する場合には、上位のブロックチェーンと下位のブロックチェーンとでは、マイニングの計算量を異なるようにする。すなわち、上位のブロックチェーンについてはT1程度の時間で正解を見つけられるマイニング問題とし、下位のブロックチェーンについてはT2程度の時間で正解を見つけられるマイニング問題とする。これに伴い、上位のブロックチェーンにブロックを追加した際の報酬は、下位よりも高額となる。
なお、下位のブロックチェーンのさらに下位にブロックチェーンを配した複数段のブロックチェーンとしてもよい。
本実施形態によれば、署名システムは、グループのメンバ数に応じた数の第1ハッシュ木を構成し、これらを第2ハッシュ木にまとめて公開鍵を生成する。そして、署名システムは、第1ハッシュ木を構成する秘密鍵を重複なくメンバに配布した後、公開鍵を、登録順を保証するデータベースに登録し、タイムスタンプ等を取得する。
その後、署名システムは、配布した秘密鍵により電子署名が計算されると、秘密鍵及び第1ハッシュ木における上位階層の情報と合わせてデータベースに登録し、タイムスタンプ等を取得する。
これにより、署名システムは、複数のメンバに対して署名のための互いに異なる秘密鍵を配布し、かつ、これらの秘密鍵により計算された電子署名を、単一の公開鍵により検証できる。そして、署名システムは、検証用の公開鍵が登録された後、電子署名、使用された秘密鍵の順に登録されたことをタイムスタンプ等により確認できる。
また、署名システムは、ハッシュ関数により署名及び署名検証のプロセスを構成するため、軽量かつ安全性の高いグループ署名を実現できる。
さらに、メンバに配布される秘密鍵は、全て管理サーバ1において選択されるので、誰にどの鍵が配布されたかを知り得ないため、署名者の匿名性が担保される。
このとき、管理サーバ1は、第1ハッシュ木の単位でメンバに配布する秘密鍵を選択することで、処理手順を容易にできると共に、メンバに配布すべきデータを単一の第1ハッシュ木の情報に限定できる。
また、管理サーバ1は、全ての秘密鍵からランダムに選択することで、匿名性を高めることができる。
署名システムは、使用した秘密鍵をデータベースに登録する際に、同一の秘密鍵が登録されていないことを確認するので、秘密鍵の二重使用を抑制し、安全性を高めることができる。
署名システムは、メンバが保持している未使用の秘密鍵を公開情報としてデータベースに登録するすることで、グループからこのメンバを除外、すなわち署名の権限を失効させることができる。
署名システムは、データベースとして、タイムスタンプを含むブロックチェーンを利用することにより、登録データの改竄をより困難にし、グループ署名の安全性を高めることができる。
署名検証装置2は、タイムスタンプ等により、公開鍵、電子署名及び秘密鍵の登録順序を確認すると共に、ハッシュ値の照合、及び公開鍵の照合を行う。
これにより、署名検証装置2は、電子署名、及び使用された秘密鍵を検証し、さらに、情報の登録順を確認できるので、メッセージの正当性をより確実に検証できる。
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述した実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。
本実施形態では、メンバの端末と通信接続された管理サーバ1がデータベースへの各種データ登録の機能を提供する構成としたが、これには限られない。署名登録部104及び失効処理部105をメンバの端末が備え、これにより、各メンバの端末が電子署名を計算すると共に、直接データベースへ登録する構成であってもよい。
また、管理サーバ1の各機能部が複数のサーバに分散配置されてもよい。
管理サーバ1による署名方法、及び署名検証装置2による署名検証方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、情報処理装置(コンピュータ)にインストールされる。また、これらのプログラムは、CD−ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したWebサービスとしてユーザのコンピュータに提供されてもよい。
1 管理サーバ(署名システム)
2 署名検証装置
10 制御部
11 記憶部
20 制御部
21 記憶部
101 鍵生成部
102 鍵配布部
103 鍵登録部
104 署名登録部
105 失効処理部
201 順序確認部
202 署名照合部
203 鍵照合部

Claims (12)

  1. 複数の秘密鍵、及びシード値をリーフノードとし、前記秘密鍵及び前記シード値のペアを入力としたハッシュ値を上位ノードとする第1ハッシュ木を、グループ署名におけるメンバの数だけ構成し、さらに、複数の前記第1ハッシュ木のルートノードの値をリーフノードとした第2ハッシュ木を構成する鍵生成部と、
    前記秘密鍵を前記メンバに対して重複なく、対応する前記第1ハッシュ木の中間ノード及びルートノードの値と共に配布する鍵配布部と、
    前記第2ハッシュ木におけるルートノードの値を、公開鍵として登録順を保証するデータベースに登録する鍵登録部と、
    電子署名としてメッセージ及び前記秘密鍵を入力としたハッシュ値が算出された後、当該ハッシュ値と共に又は当該ハッシュ値の後に、当該ハッシュ値の算出に用いた秘密鍵、当該秘密鍵と共に配布された前記中間ノードの値、及び当該秘密鍵が属していない前記第1ハッシュ木のルートノードの値を公開情報として前記データベースに登録する署名登録部と、を備える署名システム。
  2. 前記登録順は、タイムスタンプにより保証される請求項1に記載の署名システム。
  3. 前記署名登録部は、同一の秘密鍵が登録されていない場合に限り、前記秘密鍵を前記データベースに登録する請求項1又は請求項2に記載の署名システム。
  4. 前記鍵配布部は、前記メンバのそれぞれに対して、複数の前記第1ハッシュ木のうち、互いに異なるいずれか一つに含まれる前記秘密鍵を配布する請求項1から請求項3のいずれかに記載の署名システム。
  5. 前記鍵配布部は、前記メンバのそれぞれに対して、複数の前記第1ハッシュ木のいずれかに含まれる前記秘密鍵をランダムに配布する請求項1から請求項3のいずれかに記載の署名システム。
  6. 前記メンバのいずれかに配布した未公開の前記秘密鍵を公開情報として前記データベースに登録することにより、当該メンバを失効させる失効処理部を備える請求項1から請求項5のいずれかに記載の署名システム。
  7. 前記データベースは、ブロックチェーンにより構成される請求項1から請求項6のいずれかに記載の署名システム。
  8. 請求項1から請求項7のいずれかに記載の署名システムにおいて登録された前記電子署名を検証する署名検証装置であって、
    前記電子署名及び対応する公開情報としての前記秘密鍵の登録順の正当性を確認する順序確認部と、
    メッセージ及び対応する公開情報としての前記秘密鍵からハッシュ値を計算し、前記データベースに登録されているハッシュ値と照合する署名照合部と、
    前記秘密鍵、対応する前記中間ノードの値、及びルートノードの値を用いて、前記第2ハッシュ木のルートノードの値を計算し、前記データベースに登録されている前記公開鍵と照合する鍵照合部と、を備える署名検証装置。
  9. コンピュータシステムにおいて、
    鍵生成部が、複数の秘密鍵、及びシード値をリーフノードとし、前記秘密鍵及び前記シード値のペアを入力としたハッシュ値を上位ノードとする第1ハッシュ木を、グループ署名におけるメンバの数だけ構成し、さらに、複数の前記第1ハッシュ木のルートノードの値をリーフノードとした第2ハッシュ木を構成する鍵生成ステップと、
    鍵配布部が、前記秘密鍵を前記メンバに対して重複なく、対応する前記第1ハッシュ木の中間ノード及びルートノードの値と共に配布する鍵配布ステップと、
    鍵登録部が、前記第2ハッシュ木におけるルートノードの値を、公開鍵として登録順を保証するデータベースに登録する鍵登録ステップと、
    署名登録部が、電子署名としてメッセージ及び前記秘密鍵を入力としたハッシュ値が算出された後、当該ハッシュ値と共に又は当該ハッシュ値の後に、当該ハッシュ値の算出に用いた秘密鍵、当該秘密鍵と共に配布された前記中間ノードの値、及び当該秘密鍵が属していない前記第1ハッシュ木のルートノードの値を公開情報として前記データベースに登録する署名登録ステップと、を実行する署名方法。
  10. 請求項9に記載の署名方法により登録された前記電子署名をコンピュータが検証する署名検証方法であって、
    順序確認部が、前記電子署名及び対応する公開情報としての前記秘密鍵の登録順の正当性を確認する順序確認ステップと、
    署名照合部が、メッセージ及び対応する公開情報としての前記秘密鍵からハッシュ値を計算し、前記データベースに登録されているハッシュ値と照合する署名照合ステップと、
    鍵照合部が、前記秘密鍵、対応する前記中間ノードの値、及びルートノードの値を用いて、前記第2ハッシュ木のルートノードの値を計算し、前記データベースに登録されている前記公開鍵と照合する鍵照合ステップと、を実行する署名検証方法。
  11. 請求項1から請求項7のいずれかに記載の署名システムとしてコンピュータを機能させるための署名プログラム。
  12. 請求項8に記載の署名検証装置としてコンピュータを機能させるための署名検証プログラム。
JP2019166328A 2019-09-12 2019-09-12 署名システム、署名方法及び署名プログラム Active JP7075382B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019166328A JP7075382B2 (ja) 2019-09-12 2019-09-12 署名システム、署名方法及び署名プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019166328A JP7075382B2 (ja) 2019-09-12 2019-09-12 署名システム、署名方法及び署名プログラム

Publications (2)

Publication Number Publication Date
JP2021044736A true JP2021044736A (ja) 2021-03-18
JP7075382B2 JP7075382B2 (ja) 2022-05-25

Family

ID=74862596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019166328A Active JP7075382B2 (ja) 2019-09-12 2019-09-12 署名システム、署名方法及び署名プログラム

Country Status (1)

Country Link
JP (1) JP7075382B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008084200A (ja) * 2006-09-28 2008-04-10 Fuji Xerox Co Ltd 情報処理システム、情報処理装置及びプログラム
JP2009044245A (ja) * 2007-08-06 2009-02-26 Toshiba Corp マルチキャスト通信システム、グループ鍵生成方法、並びに端末装置
US20170163425A1 (en) * 2015-12-04 2017-06-08 Verisign, Inc. Hash-based electronic signatures for data sets such as dnssec
JP2018195907A (ja) * 2017-05-15 2018-12-06 Kddi株式会社 データ管理システム、データ管理方法及びデータ管理プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008084200A (ja) * 2006-09-28 2008-04-10 Fuji Xerox Co Ltd 情報処理システム、情報処理装置及びプログラム
JP2009044245A (ja) * 2007-08-06 2009-02-26 Toshiba Corp マルチキャスト通信システム、グループ鍵生成方法、並びに端末装置
US20170163425A1 (en) * 2015-12-04 2017-06-08 Verisign, Inc. Hash-based electronic signatures for data sets such as dnssec
JP2018195907A (ja) * 2017-05-15 2018-12-06 Kddi株式会社 データ管理システム、データ管理方法及びデータ管理プログラム

Also Published As

Publication number Publication date
JP7075382B2 (ja) 2022-05-25

Similar Documents

Publication Publication Date Title
US11228452B2 (en) Distributed certificate authority
Ling et al. Lattice-based group signatures: achieving full dynamicity with ease
CN112055025B (zh) 一种基于区块链的隐私数据保护方法
CN112187455B (zh) 一种基于可编辑区块链的分布式公钥基础设施构建方法
Sahai et al. Dynamic credentials and ciphertext delegation for attribute-based encryption
CN103227719B (zh) 生成无密钥数字多重签名的系统和方法
JP2005539441A (ja) 公衆ネットワークを介して安全なデータ配信を供給するための方法及びシステム
US20220020008A1 (en) Smart Contract-Based Electronic Contract Preservation System
CN110365488B (zh) 基于非可信环境下的认证方法、装置及系统
CN107332858B (zh) 云数据存储方法
Toorani et al. A decentralized dynamic PKI based on blockchain
CN101374159B (zh) 一种p2p网络可信控制方法及系统
US20220020014A1 (en) Transaction mode-based electronic contract preservation system
Zhao et al. Distributed machine learning oriented data integrity verification scheme in cloud computing environment
WO2021154157A1 (en) Blockchain-based data exchange
US20230006836A1 (en) Multi-party and multi-use quantum resistant signatures and key establishment
Yang et al. Blockchain-based decentralized public key management for named data networking
US20080028224A1 (en) Methods and Systems for Providing Integrity and Trust in Data Management and Data Distribution Processes
CN114930772A (zh) 用于凭证验证的验证需求文件
CN116366239A (zh) 一种匿名数据的云审计方法及系统
Abraham et al. Privacy-preserving eID derivation to self-sovereign identity systems with offline revocation
CN107395609B (zh) 数据加密方法
JP7075382B2 (ja) 署名システム、署名方法及び署名プログラム
JP7066863B2 (ja) 電子署名方法及び装置
Li et al. Certificate-based key-insulated signature in the standard model

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220329

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220513

R150 Certificate of patent or registration of utility model

Ref document number: 7075382

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150