JP2019057827A - 分散認証システムおよびプログラム - Google Patents

分散認証システムおよびプログラム Download PDF

Info

Publication number
JP2019057827A
JP2019057827A JP2017181179A JP2017181179A JP2019057827A JP 2019057827 A JP2019057827 A JP 2019057827A JP 2017181179 A JP2017181179 A JP 2017181179A JP 2017181179 A JP2017181179 A JP 2017181179A JP 2019057827 A JP2019057827 A JP 2019057827A
Authority
JP
Japan
Prior art keywords
authentication
hash value
encrypted
devices
public 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
Application number
JP2017181179A
Other languages
English (en)
Other versions
JP6939313B2 (ja
Inventor
布施 透
Toru Fuse
透 布施
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2017181179A priority Critical patent/JP6939313B2/ja
Publication of JP2019057827A publication Critical patent/JP2019057827A/ja
Application granted granted Critical
Publication of JP6939313B2 publication Critical patent/JP6939313B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】判定対象情報の真正性を検証する認証処理を行う際に、中央管理機能を必要とすることなく、ブロックチェーン技術を用いた場合と比較して演算処理の処理負荷を少なくする。【解決手段】認証装置30は1つ以上の秘密鍵を格納し、複数の制御装置20はこの秘密鍵に対応した公開鍵を格納する。制御装置20は、他の制御装置20から文書データと暗号化されたハッシュ値が送信されてきた場合、その文書データのハッシュ値を算出して自装置内に格納している公開鍵により暗号化する。そして、制御装置20は、他の制御装置20からの暗号化されたハッシュ値および自装置内で暗号化したハッシュ値を含む認証要求をいずれかの認証装置30に送信する。認証装置30は、自装置または他の認証装置30内に記憶されている秘密鍵により2つのハッシュ値を復号し、復号した2つのハッシュ値が一致した場合、文書データは真正なものである旨の認証結果を返信する。【選択図】図1

Description

本発明は、分散認証システムおよびプログラムに関する。
特許文献1には、分散認証サーバを構成する装置を含む通信システムにおいて、認証されることを求める証明者側装置が、分散認証サーバの各装置に、証明者及び認証者の識別子を含む認証要求メッセージを送信し、分散認証サーバの各装置が共同して、認証要求メッセージに基づいて、認証者に関する秘密鍵で暗号化された認証子を生成し、認証子を証明者に関する秘密鍵で暗号化して認証メッセージを生成し、分散認証サーバの各装置が、認証メッセージを証明者側装置に送信し、認証メッセージを受信した証明者側装置が、認証メッセージを復号し、得られた認証子を認証者側装置に送信し、認証子を受信した認証者側装置が、認証子を復号して証明者を認証するようにした認証方法が開示されている。
特許第3610106号公報
生成された情報を複数の装置間で更新しながら順次次の宛先に配信するようなシステムでは、途中で改ざんされていないことを確認するために認証システムが必要となる。一般的には1つの認証サーバ等において配信内容を一元的に管理して認証処理を行う中央管理機能を備えた認証システムが用いられている。
しかし、このような中央管理機能を備えた認証システムでは、認証処理が1つの認証サーバに集中するため、処理能力が高い装置が必要となる。
このような処理負荷の集中を分散するため、いわゆるブロックチェーン技術(分散型台帳技術)と呼ばれる技術が提案されている。このブロックチェーン技術とは、トランザクションの結果を一方向性関数を利用して検証する仕組みにより情報の改ざんを防止している。しかし、このブロックチェーン技術による検証には計算負荷の大きな演算処理が必要なため、検証環境を備えることが容易ではない。
本発明の目的は、判定対象情報の真正性を検証する認証処理を行う際に、中央管理機能を必要とすることなく、ブロックチェーン技術を用いた場合と比較して、演算処理の処理負荷を少なくすることが可能な分散認証システムおよびプログラムを提供することである。
[分散認証システム]
請求項1に係る本発明は、それぞれ少なくとも1つ以上の秘密鍵を格納する第1の格納手段を有する複数の認証装置と、
前記複数の認証装置のいずれかにおいて記憶されている秘密鍵に対応した公開鍵を格納する第2の格納手段を有し、他の制御装置から判定対象情報と暗号化されたハッシュ値が送信されてきた場合、当該判定対象情報のハッシュ値を算出して、算出されたハッシュ値を前記第2の格納手段に格納されている公開鍵により暗号化し、他の制御装置から送信されてきた暗号化されたハッシュ値および自装置内で暗号化したハッシュ値を含む認証要求を前記複数の認証装置のうちの通信可能ないずれかの認証装置に送信する複数の制御装置とを備え、
前記複数の認証装置は、それぞれ、前記複数の制御装置のいずれかの制御装置から暗号化された2つのハッシュ値を含む認証要求を受信した場合、自装置内の前記第1の格納手段に記憶されている秘密鍵または他の認証装置内の前記第1の格納手段に記憶されている秘密鍵のいずれかにより復号した2つのハッシュ値が一致した場合に、判定対象情報は真正なものである旨を前記認証要求に対して返信する分散認証システムである。
請求項2に係る本発明は、前記複数の認証装置が、それぞれ、前記複数の制御装置のいずれかの制御装置から暗号化された2つのハッシュ値を含む認証要求を受信した場合、自装置内の前記第1の格納手段に記憶されている秘密鍵により復号可能であれば当該秘密鍵により暗号化されたハッシュ値を復号し、復号不可能の場合には、暗号化されたハッシュ値を含む復号要求を他の認証装置に転送することにより、暗号化された2つのハッシュ値の復号を行う請求項1記載の分散認証システムである。
請求項3に係る本発明は、前記複数の認証装置が、それぞれ、お互いに対応した公開鍵、秘密鍵を格納する第3の格納手段を有し、他の認証装置に復号要求を転送する際には、前記第3の格納手段に格納されている自装置の公開鍵を前記復号要求に含め、
暗号化されたハッシュ値を復号した認証装置は、復号したハッシュ値を、復号要求を行った認証装置の公開鍵で暗号化して返信する請求項2記載の分散認証システムである。
請求項4に係る本発明は、前記複数の制御装置が、それぞれ、
判定対象情報のハッシュ値を算出する算出手段と、
前記算出手段により算出されたハッシュ値を前記第2の格納手段に格納されている公開鍵により暗号化する暗号化手段とをさらに有し、
他の制御装置から判定対象情報と暗号化されたハッシュ値が送信されてきた場合、前記算出手段により当該判定対象情報のハッシュ値を算出して、算出されたハッシュ値を前記暗号化手段において公開鍵により暗号化する請求項1から3のいずれか記載の分散認証システムである。
請求項5に係る本発明は、前記複数の制御装置が、それぞれ、前記第2の格納手段に格納されている公開鍵に対応する秘密鍵を保有する認証装置を特定するための情報を有していない請求項4記載の分散認証システムである。
請求項6に係る本発明は、前記複数の認証装置が、閉じられたネットワークにより相互に接続されている請求項1から5のいずれか記載の分散認証システムである。
[プログラム]
請求項7に係る本発明は、他の制御装置から判定対象情報と暗号化されたハッシュ値が送信されてきた場合、当該判定対象情報のハッシュ値を算出するステップと、
算出されたハッシュ値を、複数の認証装置のいずれかにおいて記憶されている秘密鍵に対応した公開鍵により暗号化するステップと、
他の制御装置から送信されてきた暗号化されたハッシュ値および自装置内で暗号化したハッシュ値を含む認証要求を複数の認証装置のうちの通信可能ないずれかの認証装置に送信するステップとをコンピュータに実行させるためのプログラムである。
請求項8に係る本発明は、複数の制御装置のいずれかの制御装置から暗号化された2つのハッシュ値を含む認証要求を受信した場合、自装置内に記憶されている秘密鍵または他の認証装置に格納されている秘密鍵のいずれかにより復号するステップと、
復号された2つのハッシュ値を比較するステップと、
比較した2つのハッシュ値が一致した場合に、判定対象情報は真正なものである旨を前記認証要求に対して返信するステップとをコンピュータに実行させるためのプログラムである。
請求項1に係る本発明によれば、判定対象情報の真正性を検証する認証処理を行う際に、中央管理機能を必要とすることなく、ブロックチェーン技術を用いた場合と比較して、演算処理の処理負荷を少なくすることが可能な分散認証システムを提供することができる。
請求項2に係る本発明によれば、判定対象情報の真正性を検証する認証処理を行う際に、中央管理機能を必要とすることなく、ブロックチェーン技術を用いた場合と比較して、演算処理の処理負荷を少なくすることが可能な分散認証システムを提供することができる。
請求項3に係る本発明によれば、暗号化されていないハッシュ値が、複数の認証装置間で送受信されるのを防ぐことが可能な分散認証システムを提供することができる。
請求項4に係る本発明によれば、判定対象情報の真正性を検証する認証処理を行う際に、中央管理機能を必要とすることなく、ブロックチェーン技術を用いた場合と比較して、演算処理の処理負荷を少なくすることが可能な分散認証システムを提供することができる。
請求項5に係る本発明によれば、複数の制御装置は、それぞれ、複数の認証装置のうちのいずれの認証装置に、自装置を格納している公開鍵に対応した秘密鍵を保有しているかの情報を管理する必要をなくすことが可能な分散認証システムを提供することができる。
請求項6に係る本発明によれば、複数の認証装置が開かれたネットワークにより相互に接続されている場合と比較して、認証処理の正確性を向上させることが可能な分散認証システムを提供することができる。
請求項7に係る本発明によれば、判定対象情報の真正性を検証する認証処理を行う際に、中央管理機能を必要とすることなく、ブロックチェーン技術を用いた場合と比較して、演算処理の処理負荷を少なくすることが可能なプログラムを提供することができる。
請求項8に係る本発明によれば、判定対象情報の真正性を検証する認証処理を行う際に、中央管理機能を必要とすることなく、ブロックチェーン技術を用いた場合と比較して、演算処理の処理負荷を少なくすることが可能なプログラムを提供することができる。
本発明の一実施形態の分散認証システムのシステム構成を示す図である。 本発明の一実施形態の分散認証システムのシステム構成を示す他の図である。 本発明の一実施形態における制御装置20のハードウェア構成を示すブロック図である。 本発明の一実施形態における制御装置20の機能構成を示すブロック図である。 本発明の一実施形態における認証装置30のハードウェア構成を示すブロック図である。 本発明の一実施形態における認証装置30の機能構成を示すブロック図である。 制御装置20Bが制御装置20Aからの文書データを受信した際に、この文書データが制御装置20Aからのものであるという真正性を確認する際の認証処理を行う様子を説明するための図である。 制御装置20A、20Bおよび認証ネットワーク40内の認証装置30における公開鍵と秘密鍵の対応関係を説明するための図である。 制御装置20Bにおいて文書データの真正性を確認する処理が行われる前の制御装置20Aにおける処理を説明するためのフローチャートである。 制御装置20Bにおける認証要求処理を説明するためのフローチャートである。 制御装置20Aにおける処理と制御装置20Bにおける処理の流れを図示した図である。 制御装置20Bからの認証要求を受けた認証装置30Bにおける認証処理の動作を説明するためのフローチャートである。 認証装置30Bから、暗号化されたハッシュ値A、Bおよび認証装置30Bの公開鍵PKを含む復号要求が送信される様子を示す図である。 認証装置30Bから送信された認証要求を、認証装置30B以外の認証装置30が受信して復号処理を行う際の動作を説明するためのフローチャートである。 図14において説明する復号処理の様子を示す図である。 暗号化されたハッシュ値A、Bが返信されてきた認証装置30Bにおける動作を説明するための図である。
次に、本発明の実施の形態について図面を参照して詳細に説明する。
図1は本発明の一実施形態の分散認証システムのシステム構成を示す図である。
本発明の一実施形態の分散認証システムは、図1に示されるように、文書データに対する更新処理を順次行う複数の制御装置(データフロー制御装置)20A〜20Cと、認証ネットワーク40を構成する複数の認証装置30A〜30Cとから構成されている。
なお、図1では、3台の制御装置20A〜20Cと、3台の認証装置30A〜30Cとが示されているが、それぞれ、実際には3台以上存在する。
また、以降の説明においては、複数の制御装置20A〜20Cうちの1つの装置を特定せずに共通して説明する場合には制御装置20として示し、複数の認証装置30A〜30Cうちの1つの装置を特定せずに共通して説明する場合には認証装置30として示す。
複数の制御装置20は、文書データに対する更新処理を順次行うデータフロー制御装置であり、具体的には可搬式あるいは据え置き型の各種のパーソナルコンピュータに専用のソフトウェアをインストールすることにより実現することができる。なお、スマートフォンやタブレット端末を制御装置20として用いることも可能である。
この複数の制御装置20は、例えば同一のフロア、同一のビル、同一の法人内等の限定された範囲で、利用可能なネットワーク10により相互に接続されており、文書データの送受信やインターネットに接続して各種の情報を取得することが可能となっている。
また、複数の認証装置30は、例えば、お互いに無線接続されており、この複数の認証装置30により認証ネットワーク40が構成されている。
この認証ネットワーク40は閉じられたネットワークであり、複数の認証装置30は、この閉じられたネットワークである認証ネットワーク40により相互に接続されている。
なお、本実施形態では、認証ネットワーク40はメッシュネットワークである場合を用いて説明するが、本発明はこのようなネットワーク構成に限定されるものではない。認証ネットワーク40におけるネットワークトポロジーの種類が本発明を制約するものではないため、認証ネットワーク40を、ツリーネットワーク、スターネットワーク、リングネットワーク、あるいはバスネットワークにより構成するようにしても良い。
さらに、認証装置30は、具体的な構成として、通信機能を有する小型の計算機(温度や湿度等を計測して通信機能によってその測定値を任意の他の計算機へ送信できる計算機や、スマートフォン等の高機能な小型計算機を含む)とそのリソース上で動作するソフトウェアで構成できる。また、認証ネットワーク40は閉通信網(閉ネットワーク)である場合を用いて説明するが、認証ネットワーク40を移動体通信網で構成することも可能である。
そして、本実施形態の分散認証システムでは、制御装置20A〜20Bは、それぞれ順序が前の他の制御装置20から更新済みの文書データを受信して、自装置内で新たなに文書の削除・追加・変更等の各種処理を行うことにより更新して、順序が次の制御装置20に送信するような処理が実行される。
その際に、受信した文書データが、本当に順序が前の制御装置20からのものであるのか否か、つまり悪意のある第三者が他のユーザになりすましてすり替えたものではないか否かを確認する認証処理が行われる。
例えば、ユーザAが制御装置20Aにおいて文書データを更新してユーザBの制御装置20Bに渡し、ユーザBが受け取った文書データを更新してユーザCの制御装置20Cに渡し、ユーザCが受け取った文書データを更新して次のユーザの制御装置20に渡すような場合を用いて説明する。
このような場合、ユーザBがユーザAから受け取った文書データが、本当にユーザAからの文書データであるのか否かを確認するために、ユーザBは、制御装置20Bから認証ネットワーク40に対して認証要求を行う。そして、制御装置20Bが、認証ネットワーク40からユーザAの文書データである、つまり真正な文書データである旨の認証結果が得られた場合、その文書データをユーザAからのものとして処理を行う。
なお、実際には認証ネットワーク40は、図2に示すように、数多くの認証装置30A〜30Iにより構成されているが、各制御装置20は認証ネットワーク40内の全ての認証装置30と通信可能なわけではなく、それぞれの制御装置20が通信可能な認証装置30が決まっている。例えば、図1、図2に示した分散認証システムでは、制御装置20A〜20Cは、それぞれ、認証装置30A〜30Cとのみ通信可能となっている。
そして、制御装置20A〜20Cは、他の制御装置20から文書データを受信すると、受信した文書データが真正な文書データであるか否かを、それぞれ通信可能な認証装置30A〜30Cに対して確認する認証要求を行い、真正である旨の認証結果を受信することによりその文書データを真正なものとして扱うような構成となっている。
次に、本実施形態の分散認証システムにおける制御装置20と認証装置30の構成についてそれぞれ順次説明する。
先ず、本実施形態の分散認証システムにおける制御装置20Aのハードウェア構成を図3に示す。なお、ここでは制御装置20Aの構成について説明するが、制御装置20B、20Cも同様な構成であるためその説明は省略する。
制御装置20Aは、図3に示されるように、CPU11、メモリ12、ハードディスクドライブ(HDD)等の記憶装置13、ネットワーク10を介して外部の装置等との間でデータの送信及び受信を行い、また認証ネットワーク40を介して認証装置30Aとの間でデータの送受信を行う通信インタフェース(IF)14、タッチパネル又は液晶ディスプレイ並びにキーボードを含むユーザインタフェース(UI)装置15を有する。これらの構成要素は、制御バス16を介して互いに接続されている。
CPU11は、メモリ12または記憶装置13に格納された制御プログラムに基づいて所定の処理を実行して、制御装置20Aの動作を制御する。なお、本実施形態では、CPU11は、メモリ12または記憶装置13内に格納された制御プログラムを読み出して実行するものとして説明したが、当該プログラムをUSBメモリやCD−ROM等の記憶媒体に格納してCPU11に提供することも可能である。
図4は、上記の制御プログラムが実行されることにより実現される制御装置20Aの機能構成を示すブロック図である。
本実施形態の制御装置20Aは、図4に示されるように、制御部21と、ハッシュ値算出部22と、暗号化部23と、公開鍵格納部24と、通信部25とを備えている。
公開鍵格納部24は、複数の認証装置30のいずれかにおいて記憶されている秘密鍵に対応した公開鍵を格納する。なお、図4では、制御装置20A内に格納されている公開鍵をPK(A)として示している。同様に以降の説明においては、制御装置20B内に格納されている公開鍵をPK(B)として説明する。
ハッシュ値算出部22は、判定対象情報である文書データのハッシュ値(要約値)を算出する。なお、ハッシュ値を算出するためのアルゴリズム(算出方式)としては様々なアルゴリズムが存在するが、本実施形態では、例えばSHA(Secure Hash Algorithm)−2という規格のハッシュ関数を用いたハッシュ値算出アルゴリズムを用いてハッシュ値の算出が行われる。このSHA−2規格に含まれる1つの方式であるSHA−256というアルゴリズムでは、ハッシュ長が256ビットのハッシュ値が算出される。
暗号化部23は、ハッシュ値算出部22により算出されたハッシュ値を公開鍵格納部24に格納されている公開鍵PK(A)により暗号化する。
通信部25は、対応する認証装置30Aとの間のデータ送受信や、ネットワーク10を介して他の制御装置20B、20Cとの間のデータ送受信を行う。
制御部21は、他の制御装置20から判定対象情報である文書データと暗号化されたハッシュ値が送信されてきた場合、その文書データのハッシュ値をハッシュ値算出部22により算出して、算出されたハッシュ値を公開鍵格納部24に格納されている公開鍵PK(A)により暗号化する。そして、制御部21は、他の制御装置20から送信されてきた暗号化されたハッシュ値および自装置内で暗号化したハッシュ値を含む認証要求を複数の認証装置30のうちの通信可能ないずれかの認証装置に送信する。ここでは、制御装置20Aが通信可能なのは認証装置30Aであるため、制御部21は、認証要求を認証装置30Aに対して行う。
また、制御部21は、他の制御装置20から文書データと暗号化されたハッシュ値が送信されてきた場合、ハッシュ値算出部22によりその文書データのハッシュ値を算出して、算出されたハッシュ値を暗号化部23において公開鍵PK(A)により暗号化する。
そして、制御部21は、暗号化したハッシュ値および他の制御装置20から送信されてきた暗号化済みのハッシュ値と、文書データを送信してきた制御装置20および自装置の識別子とを含めた認証要求を対応する認証装置30Aに送信して、他の制御装置20からの文書データが真正なものであるのか否かを確認する。
ここで、複数の制御装置20は、それぞれ、公開鍵格納部24に格納されている公開鍵PK(A)、PK(B)、・・・に対応する秘密鍵SK(A)、SK(B)、・・・を保有する認証装置30を特定するための情報を有していない。つまり、制御装置20Aは、自装置内に格納されている公開鍵PK(A)に対応する秘密鍵SK(A)を、認証装置30A〜30Iのうちのいずれの認証装置が保有しているかを特定するための情報を有していない。
次に、本実施形態の分散認証システムにおける認証装置30のハードウェア構成を図5に示す。
認証装置30は、図5に示されるように、CPU41、メモリ42、ハードディスクドライブ(HDD)等の記憶装置43、認証ネットワーク40を介して外部の装置等との間でデータの送信及び受信を行う通信インタフェース(IF)44を有する。また、認証装置30はタッチパネル又は液晶ディスプレイ並びにキーボードを含むユーザインタフェース(UI)装置45を有してもよい。これらの構成要素は、制御バス46を介して互いに接続されている。
CPU41は、メモリ42または記憶装置43に格納された制御プログラムに基づいて所定の処理を実行して、認証装置30の動作を制御する。なお、本実施形態では、CPU41は、メモリ42または記憶装置43内に格納された制御プログラムを読み出して実行するものとして説明したが、当該プログラムをUSBメモリ等の記憶媒体に格納してCPU41に提供することも可能である。
図6は、上記の制御プログラムが実行されることにより実現される認証装置30の機能構成を示すブロック図である。
本実施形態の認証装置30は、図6に示されるように、制御部31と、暗号化/復号部32と、鍵ペア格納部33と、秘密鍵格納部34と、通信部35とを備えている。
暗号化/復号部32は、秘密鍵格納部34に格納されている秘密鍵SK(N)により、制御装置20から送信されてきたハッシュ値の復号を行ったり、復号されたハッシュ値を、他の認証装置30からの復号要求に含まれる公開鍵PKにより暗号化する処理を行う。
秘密鍵格納部34は、制御装置20において格納されている公開鍵PK(N)に対応する少なくとも1つ以上の秘密鍵SK(N)を格納する。なお、公開鍵PK(N)と秘密鍵(N)とは、公開鍵暗号方式において用いられる鍵ペアとして対応関係にあることを示すため、「N」として示している。例えば、公開鍵PK(A)に対応するのは秘密鍵SK(A)であり、公開鍵PK(B)に対応するのは秘密鍵SK(B)であある。
なお、本実施形態では、公開鍵暗号方式としてRSA暗号方式を用いた場合について説明するが、RSA暗号方式以外の公開鍵暗号方式を用いる場合でも本発明は同様に適用可能である。
通信部35は、対応する制御装置20との間のデータ送受信や、認証ネットワーク40内の他の認証装置30の間のデータ送受信を行う。
制御部31は、複数の制御装置20のいずれかの制御装置から暗号化された2つのハッシュ値を含む認証要求を受信した場合、自装置内の秘密鍵格納部34に記憶されている秘密鍵SK(N)または他の認証装置30内の秘密鍵格納部34に記憶されている秘密鍵SK(N)のいずれかにより復号した2つのハッシュ値が一致した場合に、判定対象の文書データは真正なものである旨を認証要求に対して返信する。
具体的には、制御部31は、複数の制御装置20のいずれかの制御装置から暗号化された2つのハッシュ値を含む認証要求を受信した場合、自装置内の秘密鍵格納部34に記憶されている秘密鍵SK(N)により復号可能であればその秘密鍵SK(N)により暗号化されたハッシュ値を復号する。そして、制御部31は、自装置内の秘密鍵格納部34に記憶されている秘密鍵SK(N)では復号が不可能な場合には、暗号化されたハッシュ値を含む復号要求を他の認証装置30に転送することにより、暗号化された2つのハッシュ値の復号を行う。
鍵ペア格納部33は、お互いに対応した公開鍵PK、秘密鍵SKを格納する。つまり、認証装置30では、各装置毎にそれぞれ異なる対応する鍵ペアである公開鍵PK、秘密鍵SKを保有している。
そして、制御部31は、他の認証装置30に復号要求を転送する際には、鍵ペア格部33に格納されている自装置の公開鍵PKを復号要求に含める。
また、制御部31は、他の認証装置30からの復号要求を通信部35を介して受信して、自装置の秘密鍵格納部34内の秘密鍵SK(N)で復号できた場合には、復号したハッシュ値を、復号要求を行った認証装置の公開鍵PKで暗号化して返信する。
つまり、他の認証装置30からの復号要求に基づいて暗号化されたハッシュ値を復号した認証装置30は、復号したハッシュ値を、復号要求を行った認証装置30の公開鍵で暗号化して返信する。
次に、本実施形態の分散認証システムの動作を図面を参照して詳細に説明する。
先ず、以下の説明においては、図7に示すように、制御装置20Bが制御装置20Aからの文書データを受信した際に、この文書データが制御装置20A(つまりユーザA)からのものであるという真正性を確認する際の認証処理が行われる場合を用いて説明する。
つまり、制御装置20BのユーザBが、受信した文書データが本当にユーザAからものであるのか、つまり真正であるのか、あるいは途中で悪意のある第三者により何らかの改ざんが加えられたものであるのか、つまり不正なものであるのかを確認するための認証処理を実行する場合を用いて説明する。
ここで、制御装置20Bが通信可能な認証装置は認証装置30Bのみであるため、制御装置20Bは認証装置30Bに対して認証要求を行い、認証装置30Bからの認証結果を受信することにより文書データの真正性を確認する。
先ず、以降の説明をする前に、制御装置20A、20Bおよび認証ネットワーク40内の認証装置30における公開鍵と秘密鍵の対応関係を図8を参照して説明する。
先ず、制御装置20A内には公開鍵PK(A)が格納され、制御装置20B内には公開鍵PK(B)が格納されている。そして、公開鍵PK(A)に対応する秘密鍵SK(A)は認証装置30H内に格納され、公開鍵PK(B)に対応する秘密鍵SK(B)は認証装置30G内に格納されているものとして説明する。
また、それぞれの認証装置30内には対応する鍵ペアが格納されているが、ここでは認証装置30B内に格納されている鍵ペアを公開鍵PK、秘密鍵SKとして示す。
次に、制御装置20Bにおいて文書データの真正性を確認する処理が行われる前の制御装置20Aにおける処理を図9のフローチャートを参照して説明し、制御装置20Bにおける認証要求処理を図10のフローチャートを参照して説明する。また、この制御装置20Aにおける処理と制御装置20Bにおける処理の流れを図11に図示する。
先ず、図9のフローチャートを参照して説明すると、制御装置20Aでは、制御装置20Bに送信しようとする文書データのハッシュ値(ハッシュ値A)を算出する(ステップS101)。なお、この制御装置20A内のハッシュ値算出部22により算出されるハッシュ値をハッシュ値Aとして表現する。
そして、制御装置20Aでは、このハッシュ値Aは暗号化部23により、公開鍵格納部24に格納されている公開鍵PK(A)により暗号化(RSA暗号化)される(ステップS102)。
そして、制御装置20Aでは、暗号化されたハッシュ値Aと、文書データおよび自装置の識別子(ID)の情報を制御装置20Bに送信する(ステップS103)。
このようにして、図11に示されるように、制御装置20Aから制御装置20Bに対して、文書データとともにこの文書データのハッシュ値を、制御装置20A内に格納されている公開鍵PK(A)により暗号化された情報が送信される。
次に、図10のフローチャートを参照して説明すると、制御装置20Bは、制御装置20Aから暗号化されたハッシュ値A、制御装置20Aの識別子、および文書データを受信すると(ステップS201)、受信した文書データのハッシュ値(ハッシュ値B)を算出する(ステップS202)。なお、この制御装置20B内のハッシュ値算出部22により算出されるハッシュ値をハッシュ値Bとして表現する。
そして、制御装置20Bでは、このハッシュ値Bは暗号化部23により、公開鍵格納部24に格納されている公開鍵PK(B)により暗号化(RSA暗号化)される(ステップS203)。
そして、制御装置20Bは、暗号化されたハッシュ値A、Bと、制御装置20A、20Bの識別子(ID)の情報を含む認証要求を、通信可能な認証装置30Bに送信する(ステップS204)。
ここで、制御装置20Bは、認証装置30Bから返信されてきた認証結果を受信して、この認証結果が文書データは真正である旨であった場合(ステップS205においてyes)、受信した文書データはユーザAからの真正なものであると判定する(ステップS206)。
また、制御装置20Bは、認証装置30Bから返信されてきた認証結果を受信して、この認証結果が文書データは真正ではない旨であった場合(ステップS205においてno)、受信した文書データはユーザAからのものではない不正なものであると判定する(ステップS207)。
次に、制御装置20Bからの認証要求を受けた認証装置30Bにおける認証処理の動作を図12のフローチャートを参照して説明する。
先ず、認証装置30Bは、制御装置20Bから、制御装置20A、20Bの識別子、暗号化されたハッシュ値A、Bを含む認証要求を受信する(ステップS301)。
ここで、認証装置30Bは、自装置内の秘密鍵格納部34に、ハッシュ値A、Bのいずれかを復号可能な秘密鍵、つまり秘密鍵SK(A)、SK(B)のいずれかを保有している場合(ステップS302においてYes)、暗号化されたハッシュ値A、Bのいずれかを自装置内の秘密鍵で復号する(ステップS303)。
そして、認証装置30Bは、復号できなかったハッシュ値Aまたはハッシュ値B、制御装置20A、20Bの識別子に加えて自装置の公開鍵PKを含む復号要求を他の認証装置30に送信する(ステップS304)。
なお、ここでは、認証装置30Bには、秘密鍵SK(A)、SK(B)のいずれかも保有されていないため(ステップS302においてno)、認証装置30Bは、暗号化されたハッシュ値A、B、制御装置20A、20Bの識別子に加えて自装置の公開鍵PKを含む復号要求を他の認証装置30に送信する(ステップS305)。
このようにして認証装置30Bから、暗号化されたハッシュ値A、Bおよび認証装置30Bの公開鍵PKを含む復号要求が送信される様子を図13に示す。
そして、認証装置30Bでは、他の認証装置30から暗号化されたハッシュ値(ハッシュ値A、Bのいずれか又は両方)を受信すると(ステップS306)、受信したハッシュ値を自装置の秘密鍵SKで復号する処理が行われる(ステップS307)。
そして、認証装置30Bでは、復号された2つのハッシュ値A、Bが比較され、この2つのハッシュ値が一致する場合(ステップS308においてyes)、認証装置30Bは、受信した認証要求に対して、判定対象の文書データは真正である旨の認証結果を制御装置20Bに返信する(ステップS309)。
なお、この2つのハッシュ値A、Bが一致しない場合(ステップS308においてno)、認証装置30Bは、受信した認証要求に対して、判定対象の文書データは真正でない旨、つまり不正である旨の認証結果を制御装置20Bに返信する(ステップS310)。
次に、このようにして送信された復号要求を、認証装置30B以外の認証装置30が受信して復号処理を行う際の動作を図14のフローチャートを参照して説明する。また、この図14において説明する復号処理の様子を図15に図示する。
認証装置30Bは、認証ネットワーク40内の認証装置30B以外の他の認証装置30に対して、上記で説明した復号要求を一斉送信する。
そのため、認証装置30B以外の認証装置30では、制御装置20A、20Bの識別子、暗号化されたハッシュ値A、B及び認証装置30Bの公開鍵PKを含む復号要求がそれぞれ受信される(ステップS401)。
ここで、自装置内にハッシュ値A、Bのいずれかを復号可能な秘密鍵SK(A)、SK(B)を保有していない認証装置30がこのような復号要求を受信した場合にはいずれの処理も実行されない(ステップS402においてno)。
そして、自装置内にハッシュ値A、Bのいずれかを復号可能な秘密鍵SK(A)、SK(B)を保有している認証装置30、つまり本実施形態では認証装置30G、30Hがこのような復号要求を受信した場合(ステップS402においてyes)、暗号化されたハッシュ値A、Bは、認証装置30G、30H内に格納されている、制御装置20A、20Bが暗号化に用いた公開鍵PK(A)、PK(B)と対応する秘密鍵SK(A)、またはSK(B)により復号される(ステップS403)。
つまり、図15に示されるように、認証装置30Gでは、公開鍵PK(B)により暗号化されていたハッシュ値Bは、秘密鍵SK(B)により復号される。また、認証装置30Hでは、公開鍵PK(A)により暗号化されていたハッシュ値Aは、秘密鍵SK(A)により復号される。
そして、認証装置30G、Hのいずれにおいても、復号したハッシュ値A、Bは、復号要求を送信してきた認証装置30Bの公開鍵PKで暗号化される(ステップS404)。
そして、このようにして暗号化されたハッシュ値A、Bは、認証装置30Bに返信される(ステップS405)。
次に、暗号化されたハッシュ値A、Bが返信されてきた認証装置30Bにおける動作について図16を参照して説明する。
このようにして認証装置30Bに返信されてきたハッシュ値A、Bは、いずれも認証装置30Bの公開鍵PKにより暗号化されているため、図16に示すように、認証装置30B内に格納されている秘密鍵SKにより復号される。
そして、認証装置30Bでは、復号された2つのハッシュ値A、Bが比較されて、その比較結果に基づいた認証結果が制御装置20Bに送信される。つまり、ユーザBがユーザAから受信した文書データが真正なものである場合、ハッシュ値Aとハッシュ値Bとは同じ値となっているため、比較した2つのハッシュ値A、Bが一致した場合には、その判定対象の文書データは、ユーザAからの真正なものである旨の認証結果が返信される。また、比較した2つのハッシュ値A、Bが一致しなかった場合には、その判定対象の文書データは、ユーザAからのものではなく、途中で改ざんされた可能性がある不正なものである旨の認証結果が返信される。
本実施形態の分散認証システムでは、認証装置30内においては判定対象情報である文書データを扱わずにハッシュ値のみを扱って認証処理が行われる。そのため、認証装置30に対する処理負荷が軽く、大容量のリソースを有する装置を認証装置30とする必要がない。
[変形例]
上記実施形態では、複数の制御装置間で文書データの送受信を行う場合を用いて説明したが、本発明はこれに限定されるものではなく、電子マネーのトランザクション、利用履歴等の文書データ以外の判定対象情報を複数の制御装置間で送受信するような場合でも同様に本発明を適用することができるものである。
10 ネットワーク
11 CPU
12 メモリ
13 記憶装置
14 通信インタフェース(IF)
15 ユーザインタフェース(UI)装置
16 制御バス
20、20A〜20C 制御装置(データフロー制御装置)
21 制御部
22 ハッシュ値算出部
23 暗号化部
24 公開鍵格納部
25 通信部
30、30A〜30I 認証装置
31 制御部
32 暗号化/復号部
33 鍵ペア格納部
34 秘密鍵格納部
35 通信部
40 認証ネットワーク
41 CPU
42 メモリ
43 記憶装置
44 通信インタフェース(IF)
45 ユーザインタフェース(UI)装置
46 制御バス

Claims (8)

  1. それぞれ少なくとも1つ以上の秘密鍵を格納する第1の格納手段を有する複数の認証装置と、
    前記複数の認証装置のいずれかにおいて記憶されている秘密鍵に対応した公開鍵を格納する第2の格納手段を有し、他の制御装置から判定対象情報と暗号化されたハッシュ値が送信されてきた場合、当該判定対象情報のハッシュ値を算出して、算出されたハッシュ値を前記第2の格納手段に格納されている公開鍵により暗号化し、他の制御装置から送信されてきた暗号化されたハッシュ値および自装置内で暗号化したハッシュ値を含む認証要求を前記複数の認証装置のうちの通信可能ないずれかの認証装置に送信する複数の制御装置とを備え、
    前記複数の認証装置は、それぞれ、前記複数の制御装置のいずれかの制御装置から暗号化された2つのハッシュ値を含む認証要求を受信した場合、自装置内の前記第1の格納手段に記憶されている秘密鍵または他の認証装置内の前記第1の格納手段に記憶されている秘密鍵のいずれかにより復号した2つのハッシュ値が一致した場合に、判定対象情報は真正なものである旨を前記認証要求に対して返信する
    分散認証システム。
  2. 前記複数の認証装置は、それぞれ、前記複数の制御装置のいずれかの制御装置から暗号化された2つのハッシュ値を含む認証要求を受信した場合、自装置内の前記第1の格納手段に記憶されている秘密鍵により復号可能であれば当該秘密鍵により暗号化されたハッシュ値を復号し、復号不可能の場合には、暗号化されたハッシュ値を含む復号要求を他の認証装置に転送することにより、暗号化された2つのハッシュ値の復号を行う請求項1記載の分散認証システム。
  3. 前記複数の認証装置は、それぞれ、お互いに対応した公開鍵、秘密鍵を格納する第3の格納手段を有し、他の認証装置に復号要求を転送する際には、前記第3の格納手段に格納されている自装置の公開鍵を前記復号要求に含め、
    暗号化されたハッシュ値を復号した認証装置は、復号したハッシュ値を、復号要求を行った認証装置の公開鍵で暗号化して返信する請求項2記載の分散認証システム。
  4. 前記複数の制御装置は、それぞれ、
    判定対象情報のハッシュ値を算出する算出手段と、
    前記算出手段により算出されたハッシュ値を前記第2の格納手段に格納されている公開鍵により暗号化する暗号化手段とをさらに有し、
    他の制御装置から判定対象情報と暗号化されたハッシュ値が送信されてきた場合、前記算出手段により当該判定対象情報のハッシュ値を算出して、算出されたハッシュ値を前記暗号化手段において公開鍵により暗号化する請求項1から3のいずれか記載の分散認証システム。
  5. 前記複数の制御装置は、それぞれ、前記第2の格納手段に格納されている公開鍵に対応する秘密鍵を保有する認証装置を特定するための情報を有していない請求項4記載の分散認証システム。
  6. 前記複数の認証装置は、閉じられたネットワークにより相互に接続されている請求項1から5のいずれか記載の分散認証システム。
  7. 他の制御装置から判定対象情報と暗号化されたハッシュ値が送信されてきた場合、当該判定対象情報のハッシュ値を算出するステップと、
    算出されたハッシュ値を、複数の認証装置のいずれかにおいて記憶されている秘密鍵に対応した公開鍵により暗号化するステップと、
    他の制御装置から送信されてきた暗号化されたハッシュ値および自装置内で暗号化したハッシュ値を含む認証要求を複数の認証装置のうちの通信可能ないずれかの認証装置に送信するステップと、
    をコンピュータに実行させるためのプログラム。
  8. 複数の制御装置のいずれかの制御装置から暗号化された2つのハッシュ値を含む認証要求を受信した場合、自装置内に記憶されている秘密鍵または他の認証装置に格納されている秘密鍵のいずれかにより復号するステップと、
    復号された2つのハッシュ値を比較するステップと、
    比較した2つのハッシュ値が一致した場合に、判定対象情報は真正なものである旨を前記認証要求に対して返信するステップと、
    をコンピュータに実行させるためのプログラム。
JP2017181179A 2017-09-21 2017-09-21 分散認証システム Active JP6939313B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017181179A JP6939313B2 (ja) 2017-09-21 2017-09-21 分散認証システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017181179A JP6939313B2 (ja) 2017-09-21 2017-09-21 分散認証システム

Publications (2)

Publication Number Publication Date
JP2019057827A true JP2019057827A (ja) 2019-04-11
JP6939313B2 JP6939313B2 (ja) 2021-09-22

Family

ID=66106563

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017181179A Active JP6939313B2 (ja) 2017-09-21 2017-09-21 分散認証システム

Country Status (1)

Country Link
JP (1) JP6939313B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102094705B1 (ko) * 2020-01-17 2020-03-30 주식회사 에프엔에스벨류 블록 체인을 기반으로 한 다중 노드 인증 방법 및 이를 위한 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111835520B (zh) * 2019-04-19 2023-04-07 株式会社理光 设备认证的方法、服务接入控制的方法、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005341201A (ja) * 2004-05-27 2005-12-08 Hitachi Ltd 情報処理装置、サーバ装置及び電子データ入手先保全方法
JP2007028014A (ja) * 2005-07-13 2007-02-01 Fuji Xerox Co Ltd デジタル署名プログラム、デジタル署名システム、デジタル署名方法、署名検証方法
JP2007316741A (ja) * 2006-05-23 2007-12-06 Konica Minolta Holdings Inc 通信方法、情報処理装置、およびコンピュータプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005341201A (ja) * 2004-05-27 2005-12-08 Hitachi Ltd 情報処理装置、サーバ装置及び電子データ入手先保全方法
JP2007028014A (ja) * 2005-07-13 2007-02-01 Fuji Xerox Co Ltd デジタル署名プログラム、デジタル署名システム、デジタル署名方法、署名検証方法
JP2007316741A (ja) * 2006-05-23 2007-12-06 Konica Minolta Holdings Inc 通信方法、情報処理装置、およびコンピュータプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102094705B1 (ko) * 2020-01-17 2020-03-30 주식회사 에프엔에스벨류 블록 체인을 기반으로 한 다중 노드 인증 방법 및 이를 위한 장치
US10904252B1 (en) 2020-01-17 2021-01-26 FNS Value Co., Ltd. Multi-node authentication method and apparatus based on block chain
WO2021145555A1 (ko) * 2020-01-17 2021-07-22 주식회사 에프엔에스벨류 블록 체인을 기반으로 한 다중 노드 인증 방법 및 이를 위한 장치
US11075909B1 (en) 2020-01-17 2021-07-27 FNS Value Co., Ltd. Multi-node authentication method and apparatus based on block chain

Also Published As

Publication number Publication date
JP6939313B2 (ja) 2021-09-22

Similar Documents

Publication Publication Date Title
JP6811339B2 (ja) 高可用な高信頼実行環境を使用したブロックチェーンネットワークのためのパブリックデータの読み出し
EP4120114A1 (en) Data processing method and apparatus, smart device and storage medium
US11223485B2 (en) Verifiable encryption based on trusted execution environment
US20200396217A1 (en) Key Attestation Statement Generation Providing Device Anonymity
CN110537346B (zh) 安全去中心化域名系统
CN109074466B (zh) 用于服务器的平台证明和注册
JP2020528224A (ja) 信頼できる実行環境におけるスマート契約動作のセキュアな実行
JP6731491B2 (ja) データ転送方法、非一過性のコンピュータ読み取り可能な記憶媒体、暗号デバイス、およびデータ使用のコントロール方法
US10601590B1 (en) Secure secrets in hardware security module for use by protected function in trusted execution environment
US20170288866A1 (en) Systems and methods of creating a distributed ring of trust
JP7300529B2 (ja) 匿名デバイス認証
WO2021019248A1 (en) Secure media delivery
CN108923925B (zh) 应用于区块链的数据存储方法和装置
CN112291179B (zh) 一种实现设备认证的方法、系统及装置
EP4096147A1 (en) Secure enclave implementation of proxied cryptographic keys
JP2014006691A (ja) デバイス認証方法及びシステム
EP4145763A1 (en) Exporting remote cryptographic keys
EP4096160A1 (en) Shared secret implementation of proxied cryptographic keys
WO2021098152A1 (zh) 基于区块链的数据处理方法、装置及计算机设备
CN111314066B (zh) 基于区块链的数据转移方法、终端及计算机可读存储介质
JP6976405B2 (ja) アクセス管理システム、及びそのプログラム
JP6939313B2 (ja) 分散認証システム
US20240187221A1 (en) Agile cryptographic deployment service
WO2022227799A1 (zh) 设备注册方法及装置、计算机设备、存储介质
CN109697603A (zh) 电子印章的保护方法、装置、设备及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200831

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20201102

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210524

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210716

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210816

R150 Certificate of patent or registration of utility model

Ref document number: 6939313

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150