JP4700388B2 - 原本保証方法および原本保証システム - Google Patents

原本保証方法および原本保証システム Download PDF

Info

Publication number
JP4700388B2
JP4700388B2 JP2005098515A JP2005098515A JP4700388B2 JP 4700388 B2 JP4700388 B2 JP 4700388B2 JP 2005098515 A JP2005098515 A JP 2005098515A JP 2005098515 A JP2005098515 A JP 2005098515A JP 4700388 B2 JP4700388 B2 JP 4700388B2
Authority
JP
Japan
Prior art keywords
signature
signature data
data
information
public
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
JP2005098515A
Other languages
English (en)
Other versions
JP2006279761A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2005098515A priority Critical patent/JP4700388B2/ja
Publication of JP2006279761A publication Critical patent/JP2006279761A/ja
Application granted granted Critical
Publication of JP4700388B2 publication Critical patent/JP4700388B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、文書データが改ざんされていないことを検証するために、その文書データに対して電子署名を行った結果である署名データの原本性を保証する原本保証方法および原本保証システムに関する。
文書データに対する電子署名(以下、署名という)のデータを生成したときに、その署名データを履歴として記録しておき、新たな署名データを生成するときには、その時点における最新の署名データを新たな署名データに反映させることにより、署名データ間に論理的な連鎖関係(以下、署名チェーンという)を構築する技術(以下、ヒステリシス署名という)がある。記録された履歴の中に、確実に改ざんされていないことが保証されている署名データ(以下、公開署名データという)を定期的に作成し、公開することにより、各署名データの有効期限が切れた後でも文書データの原本性を確保することができる(特許文献1参照)。なお、複数の署名チェーンに属する公開署名データをまとめて信頼ポイントという。
特開2001−331104号公報(段落0036〜0040、図4)
しかしながら、署名チェーン上において、何らかの原因で所定の署名データAが消失したり、破壊されたりした場合、「署名データAから過去に遡って最も近い署名データ」(署名データAより1つ古い署名データ)からの、「署名データAから過去に遡って最も近い公開署名データ」より1つ新しい署名データまでの各署名データの信頼性を確保できなくなるという問題がある。
また、ヒステリシス署名を生成するクライアント(以下、署名生成クライアントという)と、署名履歴を管理するサーバ(以下、履歴管理サーバという)とは、同一筐体であった。これは、署名データの生成と同時に署名履歴を格納することにより、署名チェーンに矛盾を生じさせないためである。署名生成クライアントや履歴管理サーバを複数の筐体に分けると、署名履歴の管理が煩雑になるため、複数の署名履歴を一括して管理する履歴管理サーバが必要となる。
そこで、署名チェーンに矛盾を生じさせず、署名データの生成と署名履歴の管理とを別の筐体で実現する場合、署名生成クライアントにおいて、署名データを生成するときに履歴管理サーバから前の署名データを取得し、その前の署名データと対象文書とから署名データを生成し、その署名データを即時に履歴管理サーバに送信しなければならないという問題がある。この場合、署名生成クライアントと履歴管理サーバとの間にオンラインによる通信手段を用意しなければならなかった。
本発明は、前記問題に鑑み、ヒステリシス署名において、署名データの消失や破壊が発生しても、その署名データに連鎖する他の署名データの信頼性を確保する手段を提供することを課題とする。また、署名データの生成と署名履歴の管理とを別の筐体で実現する場合、筐体間の通信を削減する手段を提供することを課題とする。
前記課題を解決する本発明は、文書データに対する電子署名を行う際に、その文書データをもとに算出したハッシュ値である第1の情報および前回の電子署名の結果である署名データをもとに算出したハッシュ値である第2の情報を含む情報から電子署名の署名値を算出し、前記第1の情報、前記第2の情報、前記署名値およびその署名値に関する証明書を含む情報を、新たな電子署名の結果である署名データとして第1の記憶部に追加記憶し、それによって前記署名データ間の論理的な連鎖関係を示す署名チェーン情報を生成する1以上の署名生成クライアントと、前記署名生成クライアントが生成した署名チェーン情報を入力し、その署名チェーン情報を第2の記憶部に記憶し、その記憶した署名チェーン情報が示す論理的な連鎖関係を有してつながる複数の署名データのなかから、改ざんされていないことを保証すべき署名データを公開署名データとして取得し、その取得した公開署名データからハッシュ値を算出し、前記公開署名データに固有の署名ID、および、前記ハッシュ値を算出したアルゴリズムに固有のオブジェクトIDを前記第2の記憶部に記憶し、前記公開署名データに固有の署名ID、前記オブジェクトIDおよび前記ハッシュ値を、当該署名IDに対応する公開署名データが改ざんされていないことを保証する信頼ポイント情報として外部に公開する履歴管理サーバとを含んで構成される原本保証システムにおいて、所定の署名データの原本性を保証する原本保証方法であって、前記履歴管理サーバの処理部前記署名チェーン情報から公開署名データを取得する場合に、最新の署名データから前回公開した公開署名データまでに対して、前後する2個の署名データのうち、新しい署名データに含まれる前記第2の情報と、古い署名データから新たに求めた第の情報とを比較することによって、前後する署名データ間の整合性を順次検証するステップと、前記比較の結果、新しい署名データに含まれる前記第2の情報と古い署名データから新たに求めた第2の情報とが一致して整合性が継続すると判定されたときに、前記複数の署名データのなかから、前記最新の署名データを公開署名データと特定して取得するステップと、前記比較の結果、新しい署名データに含まれる前記第2の情報と古い署名データから新たに求めた第2の情報とが一致せず整合性が途切れたと判定されたときに、前記複数の署名データのなかから、その整合性が連続する2以上の署名データのうちの最新の署名データ、および、前後が途切れた1の署名データを公開署名データと特定して取得するステップとを含んで実行することを主な特徴とする。なお、本発明は、原本保証システムを含む。
本発明によれば、ヒステリシス署名において、署名データの消失や破壊が発生しても、その署名データに連鎖する他の署名データの信頼性を確保することができる。また、署名データの生成と署名履歴の管理とを別の筐体で実現する場合、筐体間の通信を削減することができる。
以下、本発明を実施するための最良の形態について図面を参照して詳細に説明する。
≪システム(ハードウェア)の構成と概要≫
図1は、本発明の実施の形態に係る原本保証システムの構成を示す図である。図1を参照して、原本保証システム1のハードウェア構成について説明する。
原本保証システム1は、署名生成クライアント2および履歴管理サーバ3が、ネットワーク4を介して接続されて構成される。署名生成クライアント2は、文書データを入力し、記憶するとともに、その文書データに対する署名を生成し、その署名データを記憶する。ここでは、特に、1つ前の署名データを含めた署名を行うヒステリシス署名を適用する。署名生成クライアント2は、PC(Personal Computer)などによって実現される。一方、履歴管理サーバ3は、署名生成クライアント2から署名履歴を受信し、その署名履歴から信頼ポイント情報を作成し、公開する。そして、外部から署名データの検証依頼を受けて、その署名データの検証を行うことによって、その署名データに対応する文書データの原本性の検証を可能とする。履歴管理サーバ3は、サーバ用コンピュータによって実現される。ネットワーク4は、署名生成クライアント2および履歴管理サーバ3を接続するネットワークであり、例えば、社内LAN(Local Area Network)などによって実現される。なお、署名生成クライアント2および履歴管理サーバ3の間は、必ずしもネットワーク接続に限られることはなく、例えば、CD−R(Compact Disc Recordable)などの媒体を利用して署名履歴などのデータの移行を行ってもよい。
署名生成クライアント2は、処理部21、入力部22、記憶部23および通信部24を含んで構成される。処理部21は、入力部22、記憶部23および通信部24に接続され、署名生成クライアント2全体を制御する。処理部21は、CPU(Central Processing Unit)が所定のメモリに格納されたプログラムを実行することによって実現される。入力部22は、署名の対象となる文書データを入力し、その文書データを処理部21に渡す。入力部22は、画像データを入力するスキャナ、テキストデータを入力するキーボード、画像データを入力してテキストデータに変換するOCR(Optical Character Reader)などによって実現される。また、文書データの情報源としては、記憶媒体やインタネットなどが考えられる。記憶部23は、署名データ、署名生成や署名検証に使用されるハッシュ化アルゴリズムなどを記憶する。記憶部23は、フラッシュメモリやハードディスク装置などの不揮発性記憶装置によって実現される。通信部24は、ネットワーク4に接続され、ネットワーク4を介して履歴管理サーバ3との通信を行う。通信部24は、ネットワーク接続機器などによって実現される。
履歴管理サーバ3は、処理部31、記憶部32および通信部33を含んで構成される。処理部31は、記憶部32および通信部33に接続され、履歴管理サーバ3全体を制御する。処理部31は、CPUが所定のメモリに格納されたプログラムを実行することによって実現される。記憶部32は、署名データ、署名検証に使用されるハッシュ化アルゴリズムなどを記憶する。記憶部32は、フラッシュメモリやハードディスク装置などの不揮発性記憶装置によって実現される。通信部33は、ネットワーク4に接続され、ネットワーク4を介して署名生成クライアント2との通信を行う。通信部33は、ネットワーク接続機器などによって実現される。
≪処理部(プログラム)の構成と概要≫
図2は、本発明の実施の形態に係る処理部の構成を示す図である。図2を参照して、処理部21および処理部31のプログラム構成について説明する。図2(a)に示すように、署名生成クライアント2の処理部21のプログラムは、クライアント用アプリケーションプログラム部(以下、クライアントAP部という)211、署名生成処理部212、署名検証処理部213および暗号化処理部214を含んで構成される。クライアントAP部211は、文書データの入力、その文書に対する署名データの生成、その署名データの検証などの一連の業務処理を行うアプリケーションプログラムである。署名生成処理部212は、クライアントAP部211からコールされて起動され、クライアントAP部211から入力した文書データなどから署名データを生成し、その署名データを出力するプログラムである。署名検証処理部213は、クライアントAP部211からコールされて起動され、クライアントAP部211から入力した文書データや署名値などについて単体検証を行い、その単体検証の結果を出力するプログラムである。
暗号化処理部214は、署名生成処理部212および署名検証処理部213からコールされて起動され、入力した文書データや署名データをハッシュ化し、そのハッシュ値を出力するプログラムである。また、署名生成処理部212から入力した署名データのハッシュ値を秘密鍵によって暗号化し、その暗号化後の署名値を出力するプログラムである。なお、署名生成処理部212および署名検証処理部213は、クライアントAP部211に対してAPI(Application Program Interface)によって提供される。また、暗号化処理部214は、署名生成処理部212および署名検証処理部213に対してAPIによって提供される。
次に、図2(b)に示すように、履歴管理サーバ3の処理部31のプログラムは、サーバ用アプリケーションプログラム部(以下、サーバAP部という)311、署名検証処理部312、暗号化処理部313およびDB(Data Base)アクセス処理部314を含んで構成される。サーバAP部311は、信頼ポイント情報の作成、記憶、公開や署名データの検証などの一連の業務処理を行うアプリケーションプログラムである。署名検証処理部312は、サーバAP部311からコールされて起動され、サーバAP部311から入力した文書データや署名データなどについて単体検証またはヒステリシス検証を行い、その検証結果を出力するプログラムである。暗号化処理部313は、署名検証処理部312からコールされて起動され、署名検証処理部312から入力した署名データをハッシュ化し、そのハッシュ値を出力するプログラムである。
DBアクセス処理部314は、サーバAP部311からコールされて起動され、記憶部32に構築されたDBにアクセスして、サーバAP部311から入力したデータを格納したり、格納されたデータをサーバAP部311に出力したりするプログラムである。DBアクセス処理部314は、データベースアクセス用のAPIであるODBC(Open Data Base Connectivity)およびデータベース管理システム(DBMS、Data Base Management System)を介してDBにアクセスする。なお、署名検証処理部312およびDBアクセス処理部314は、サーバAP部311に対してAPIによって提供される。また、暗号化処理部313は、署名検証処理部312に対してAPIによって提供される。
≪データの構成と概要≫
図3は、本発明の実施の形態に係る署名生成クライアントが生成するデータの構成を示す図である。ここで説明するデータは、署名情報5、署名データ6およびチェーン情報7であり、それぞれが記憶部23に記憶される。署名情報5は、署名生成クライアント2の入力部22が文書データを入力したときに、処理部21がその文書データに対応して生成するものである。図3(a)に示すように、署名情報5は、署名ID51および署名データ6を含んで構成される。署名ID51は、署名情報5および署名データ6に固有の番号であり、さらに詳述すると、署名生成クライアント2に固有の番号および署名ごとにインクリメントされて付与される番号からなる。これは、署名ID51が署名生成クライアント2において固有であるとともに、署名情報5を受信する履歴管理サーバ3においても固有である必要があるためである。署名データ6は、入力された文書データの原本性を将来に亘って保証するために、処理部21が生成するものである。以上によると、署名情報5は、署名ID51と署名データ6との対応関係を示すものであり、署名ID51によって対応する署名データ6を特定することができる。
図3(b)に示すように、署名データ6は、署名対象データ61、署名対象外データ62、証明書63および署名値64を含んで構成される。署名対象データ61は、文字通り、署名の対象となるデータであり、そのデータ全体のハッシュ値を算出し、そのハッシュ値を秘密鍵によって暗号化したものが署名値64となる。
署名対象データ61は、オブジェクトID611、文書データのハッシュ値612、ヒステリシス署名のバージョン613、署名ID614、前署名ID615、前署名データのハッシュ値616および署名データの生成時刻617を含んで構成される。オブジェクトID611は、文書データのハッシュ値612を算出するハッシュ化アルゴリズムに固有の番号(ハッシュ化アルゴリズムの種類を示す番号)であり、RFC(Request For Comments)に規定されている情報である。なお、RFCとは、インタネットの技術開発組織であるIETF(Internet Engineering Task Force)が公開している技術提案やコメントの文書のことである。文書データのハッシュ値612は、文書データから所定のハッシュ化アルゴリズムによって算出される。そのハッシュ化アルゴリズムは、プログラムとして記憶部23に記憶されており、必要に応じて所定のメモリにロードされ、CPUによって実行される。
ヒステリシス署名のバージョン613は、署名データ6全体のデータ形式を示す。署名ID614は、署名ID51と同様であるが、署名データ6の内部に記述されるデータとして、署名データ6の外部に付加される署名ID51とは区別するために、符号を別にしている。前署名ID615は、署名チェーンにおいて署名データ6の1つ前(過去方向)につながっている署名データ(以下、前署名データという)の署名IDである。前署名データのハッシュ値616は、前署名データから所定のハッシュ化アルゴリズムによって算出される。署名データの生成時刻617は、文字通り、署名データ6が生成された時刻を示す。なお、前署名ID615および前署名データのハッシュ値616は、記憶部23に記憶された前署名データから求めるものとする。これらの過去の情報が署名対象データ61に含まれるが故に、ヒステリシス署名と呼ばれるのである。
署名対象外データ62は、文字通り、署名の対象とならないデータである。証明書63は、暗号化に用いられた秘密鍵が署名者本人のものであり、かつ、その秘密鍵が改ざんされていないこと(換言すれば、公開鍵を用いることによって署名値64が正しく復号できること)を証明するものである。証明書63は、有効期限631および公開鍵632を含んで構成される。有効期限631は、証明書63の有効期限であり、それが経過すると、公開鍵が秘密鍵に対応するものであることが保証されなくなる。公開鍵632は、署名値64を復号して署名対象データ61のハッシュ値にするときに使用される。署名値64は、先に説明したように、署名対象データ61のハッシュ値を算出し、そのハッシュ値を暗号化したものである。なお、本実施の形態では、ハッシュ化アルゴリズムは、署名生成クライアント2の暗号化処理部214および履歴管理サーバ3の暗号化処理部313がAPIによって提供するものとする。
チェーン情報7は、署名生成クライアント2における署名チェーンに関する情報である。チェーン情報7は、図3(c)に示すように、チェーンID71および最新署名ID72を含んで構成される。チェーンID71は、署名チェーンに固有の番号であり、詳述すると、署名生成クライアント2が1つの署名チェーンを持つので、署名生成クライアント2に固有の番号となる。これは、チェーン情報7を受信する履歴管理サーバ3において固有である必要があるためである。最新署名ID72は、署名チェーンにおける最新の署名データの署名IDである。処理部21のクライアントAP部211は、文書データから署名データ6を生成するときに、最新署名ID72を前署名ID615として用いるとともに、最新署名ID72を1つインクリメントした値を署名ID614として用いる。そして、新たな署名データ6を生成した後に、最新署名ID72自体の値を1つインクリメントする。
図4は、本発明の実施の形態に係る信頼ポイント情報の構成を示す図である。信頼ポイント情報は、履歴管理サーバ3が、署名生成クライアント2から受信した署名情報5およびチェーン情報7から公開すべき署名データ(以下、公開署名データという)を特定し、その公開署名データに関する情報をまとめたものである。信頼ポイント情報には、内部信頼ポイント情報8および公開信頼ポイント情報9の2つの形式がある。
内部信頼ポイント情報8は、記憶部32に記憶される信頼ポイント情報の形式を示す。図4(a)に示すように、内部信頼ポイント情報8は、信頼ポイントID81、公開署名ID82、オブジェクトID83およびハッシュ化手順84を含んで構成される。信頼ポイントID81は、内部信頼ポイント情報8に固有の番号である。公開署名ID82は、公開署名データの署名IDである。オブジェクトID83は、信頼ポイント情報として公開するハッシュ値(以下、公開ハッシュ値という)を算出するハッシュ化アルゴリズムに固有の番号である。
ハッシュ化手順84は、公開署名データから公開ハッシュ値91(図4(b)参照)を算出する手順を示すものである。例えば、公開署名データA、BおよびCから公開ハッシュ値91を算出する場合には、公開署名データA、BおよびCを一体化して、その一体化したデータをハッシュ化する方法や、公開署名データA、BおよびCをそれぞれハッシュ化し、その結果である3つのハッシュ値をまとめてさらにハッシュ化する方法などがある。また、ハッシュ化する公開署名データの順序は、必ずしもA、B、Cの順である必要はなく、異なる順序であってよい。このように、同じ公開署名データをハッシュ化するにも様々な手順が考えられるので、その手順を特定するのがハッシュ化手順84である。ハッシュ化手順84は、処理部31のサーバAP部311がヒステリシス検証を行う場合に、公開ハッシュ値91と比較照合するために、公開署名データから改めてハッシュ値を算出するときに用いられる。なお、内部信頼ポイント情報8は、信頼ポイントを追加した日時や公開先の情報を含んでもよい。
公開信頼ポイント情報9は、新聞やインタネットなどで公開される信頼ポイント情報の形式を示す。図4(b)に示すように、公開信頼ポイント情報9は、信頼ポイントID81、公開署名ID82、オブジェクトID83および公開ハッシュ値91を含んで構成される。信頼ポイントID81、公開署名ID82およびオブジェクトID83は、内部信頼ポイント情報8からコピーされる情報であり、その説明は割愛する。公開ハッシュ値91は、オブジェクトID83に対応するハッシュ化アルゴリズムが、公開署名ID82によって特定される1以上の署名データから内部信頼ポイント情報8のハッシュ化手順84に従って算出したハッシュ値である。なお、本実施の形態では、ハッシュ化アルゴリズムは、履歴管理サーバ3の暗号化処理部313がAPIによって提供するものとする。
≪システムの処理≫
続いて、図5ないし図8を参照して、本発明の実施の形態に係る原本保証システムの処理について説明する。原本保証システム1では、署名生成クライアント2において、文書データを入力、記憶した場合に、その文書データに対して署名データを生成し、登録する。そして、署名データ単体の有効期限が経過する前に、署名データの履歴を署名生成クライアント2から履歴管理サーバ3に送信する。履歴管理サーバ3において、受信した署名データの履歴から信頼ポイント情報を生成し、公開する。この場合、署名データの履歴(署名チェーン)が虫食いや矛盾により途切れていても、エラーになっていない署名データの原本性を保証することができるように信頼ポイント情報を生成する。その後、外部から履歴管理サーバ3に署名データの検証依頼が行われ、履歴管理サーバ3は、その署名データの原本性を検証し、その検証結果を外部に送信する。
まず、図5を参照して、署名生成クライアント2におけるヒステリシス署名生成処理について説明する(適宜図1、図2、図3および図9参照)。この処理は、署名生成クライアント2においてテキストデータや画像データが文書データとして入力された場合に行われる。なお、図5はヒステリシス署名生成処理を示すPAD(Problem Analysis Diagram)であり、図9はヒステリシス署名生成処理におけるデータの流れを示すデータフロー図である。
最初に、処理部21のクライアントAP部211は、入力部22から文書データ92(図9参照)を入力し、その文書データ92を記憶部23に記憶する(ステップS501)。次に、クライアントAP部211は、前署名データ95が取得可能であるか否かをチェックする(ステップS502)。具体的には、記憶部23に記憶されているチェーン情報7から最新署名ID72を読み出し、その最新署名ID72を署名ID51とする署名データ6をさらに記憶部23の署名情報5から読み出す。そのとき、その署名データ6の読み出しができるか否かを確認する。
前署名データ95が取得可能であれば(ステップS502のYes)、クライアントAP部211は、署名検証処理部213をコールすることによって前署名データ95の単体検証を行う(ステップS503)。ここで、図3(b)を参照しつつ、署名検証処理部213による単体検証の具体的な内容について説明する。最初に、証明書63の検証を行う。有効期限631が経過していないか否かを確認し、証明書失効リストを確認し、さらに証明書の改ざん有無を確認する。この証明書63の検証は、ネットワーク4に接続された外部の認証局に依頼してもよい。次に、文書データのハッシュ値を検証する。署名対象外データ62に記載されているオブジェクトIDに対応するハッシュ化アルゴリズムを持つ暗号化処理部214によって、文書データからハッシュ値を算出する。そして、その文書データのハッシュ値と、署名対象データ61の文書データのハッシュ値612とを比較照合する。なお、文書データは、ステップS501で入力したものである。さらに、署名値64の検証を行う。暗号化処理部214によって、署名対象データ61から第1のハッシュ値を算出する。一方、公開鍵632を用いて、署名値64から第2のハッシュ値に復号する。そして、第1のハッシュ値と第2のハッシュ値とを比較照合する。
前署名データの単体検証がOKであれば(ステップS503のYes)、まず、最新署名ID72の値を前署名ID97とし、前署名ID97をインクリメントする(ステップS505)。そのインクリメントした後の値が、署名IDとして署名生成処理部212に入力される。次に、前署名データのハッシュ値96を取得する(ステップS506)。具体的には、暗号化処理部214によって、前署名データ95から前署名データのハッシュ値96を算出する。そして、署名データ6を生成する(ステップS507)。具体的には、クライアントAP部211が署名生成処理部212をコールすることによって、署名生成処理部212が行う。図9に示すように、署名生成処理部212に入力される情報には、文書データ92、署名対象情報93、署名対象外情報94、前署名データのハッシュ値96および前署名ID97がある。
暗号化処理部214のハッシュ化アルゴリズムのオブジェクトIDが署名データ6のオブジェクトID611に設定される。また、暗号化処理部214によって文書データ92から算出されたハッシュ値が文書データのハッシュ値612に設定される。署名対象情報93には、ヒステリシス署名のバージョン、署名IDおよび現在の時刻情報がある。現在の時刻情報は、署名生成クライアント2の内部時計による。これらの情報は、それぞれヒステリシス署名のバージョン613、署名ID614および署名データの生成時刻617に設定される。署名対象外情報94には、署名の対象とならないデータおよび証明書がある。これらの情報は、それぞれ署名対象外データ62および証明書63に設定される。前署名データのハッシュ値96は、そのまま前署名データのハッシュ値616に設定される。前署名ID97は、そのまま前署名ID615に設定される。
さらに、署名生成処理部212は、暗号化処理部214によって署名対象データ61全体からハッシュ値を算出し、そのハッシュ値を入力情報としてさらに暗号化処理部214をコールする。暗号化処理部214は、そのハッシュ値を秘密鍵によって暗号化し、その値を署名生成処理部212に出力する。署名生成処理部212は、暗号化処理部214から受けた値を署名データ6の署名値64に設定する。
ステップS502で前署名データが取得できなかった場合(ステップS502のNo)、新規の署名データを生成する(ステップS504)。また、ステップS503で前署名データの単体検証がOKでなかった場合(ステップS503のNo)、新規の署名データを生成する(ステップS508)。ステップS504およびステップS508で行われる新規の署名データの生成は、過去の署名データを使わないものであり、ステップS507に示した処理から前署名データのハッシュ値96および前署名ID97の入力を除いた処理となる。この場合、最新署名ID72の値をインクリメントした値を署名対象情報93の署名IDとして、署名生成処理部212の入力情報に設定する。そして、生成した署名データ6を登録する(ステップS509)。具体的には、署名ID51および署名データ6を新たな署名情報5として記憶部23に記憶する。そして、チェーン情報7の最新署名ID72をインクリメントする。これによって、署名生成クライアント2において署名履歴が1つ追加されたことになる。
次に、図6および図7を参照して、履歴管理サーバ3における信頼ポイント追加処理について説明する(適宜図1、図2、図3、図4および図10参照)。この処理は、署名データ6の証明書が失効する前にその署名データ6の原本性を保証するために、その署名データ6を含む署名履歴が各署名生成クライアント2から履歴管理サーバ3に送信された場合に行われる。換言すれば、署名データの生成と署名履歴の管理とを別の筐体で実現する場合に、署名データ6を生成するたびに情報の送受信を行う必要がないので、筐体間の通信を削減することができる。
署名生成クライアント2から履歴管理サーバ3に送信される署名履歴には、署名情報5およびチェーン情報7がある。履歴管理サーバ3において、処理部31のサーバAP部311は、通信部33経由でそれらの情報を受信し、その受信した情報をDBアクセス処理部314経由で記憶部32のDBに格納する。なお、図6は信頼ポイント追加処理を示すPADであり、図7はチェーン検証処理を示すPADであり、図10は信頼ポイント追加処理において公開署名IDを特定する処理を説明する図である。
図6に示すように、まず、処理部31のサーバAP部311は、信頼ポイントIDを採番する(ステップS601)。具体的には、記憶部32に記憶されている最新の内部信頼ポイント情報8から信頼ポイントID81を読み出し、その信頼ポイントID81の値をインクリメントしたものを新たな信頼ポイントIDとする。次に、サーバAP部311は、記憶部32のDBに格納された情報を読み出し、その情報から形成される各チェーン(署名チェーン)の先頭から、以前に作成した公開署名データまでのチェーン検証を行う(ステップS602)。具体的には、各チェーンについて、Nをチェーンの先頭に位置する署名データの署名IDとし、Mをそのチェーンにおいて以前に作成した公開署名データの署名IDとする入力情報により、図7に示すチェーン検証処理をコールする。ここで、先頭に位置する署名データの署名ID:Nは、チェーン情報7の最新署名ID72とする。以前に作成した公開署名データの署名ID:Mは、最新の内部信頼ポイント情報8から読み出した1以上の公開署名ID82を最新署名ID72と比較した場合に、署名IDに含まれる署名生成クライアント2に固有の番号(チェーンID71に対応する値)が一致した公開署名ID82とする。これは、同じ署名チェーンに属する公開署名ID82を特定するためである。
ここで、図7を参照して、チェーン検証処理について説明する。チェーン検証処理は、Nを始点となる署名IDとし、Mを終点となる署名IDとして、前後の署名IDに対応する署名データのハッシュ値同士を比較することによって、前後する署名データ間の整合性を順次検証する処理である。図7に示すように、最初に、Nを署名IDとする署名データ6を取得する(ステップS701)。具体的には、サーバAP部311が、DBアクセス処理部314をコールして所望の署名IDを持つ署名データ6を入力する(以下同様)。そして、変数iをNからM+1まで1ずつ減算(デクリメント)しながら、各変数iについてステップS702ないしステップS706の一連の処理を行うように制御する(ステップS702)。
一連の処理では、まず、i−1を署名IDとする署名データ6を取得する(ステップS703)。次に、iを署名IDとする署名データ6に含まれる前署名データのハッシュ値616と、i−1を署名IDとする署名データ6から算出したハッシュ値とを比較する(ステップS704)。2つのハッシュ値が一致すれば(ステップS705のYes)、iおよびi−1を署名IDとする署名データの組合せに対して「正常」を設定する(ステップS706)。一致しなければ(ステップS705のNo)、その署名データの組合せに対して「エラー」を設定する(ステップS707)。なお、ステップS701およびステップS703において、所望の署名データ6が取得できなかった場合には、署名データの組合せに対して「エラー」を設定することになる。
図6に戻って、チェーン検証処理の結果から、各チェーンの末端署名IDおよび虫食いチェーンの末端署名IDを取得する(ステップS603)。チェーンの末端署名IDは、原則的には先頭に位置する署名データの署名IDであるが、それが読み出せなければ、先頭に最も近い、読み出し可能な署名データの署名IDということになる。虫食いチェーンの末端署名IDは、途中の署名データが読み出せなかったり、署名データ間に矛盾があったりした場合に、読み出しエラーや矛盾の原因となった署名データを除外することによってチェーンが不連続になるが、そのときに残ったチェーンの末端に位置する(最新の)署名データの署名IDである。これらの末端署名IDが、公開署名ID82となる。そして、それらをまとめて信頼ポイントという。
具体的には、まず、先頭に最も近い、読み出し可能な署名データの署名IDをチェーンの末端署名IDとする。そして、過去に遡りながら、読み出し可能な署名データの中でも、連続するチェーンを形成する署名データのうち、最新の署名データの署名IDを虫食いチェーンの末端署名IDとする。ここで、連続するチェーンを形成するとは、前後の署名データのハッシュ値の比較結果が「正常」であると設定された組合せが連続することによって、チェーンが途切れないことをいう。なお、2以上の署名データが連続するチェーンではなく、前後が途切れた1つの署名データであっても、末端署名データとなりうる。
図10は、署名チェーンに対して末端署名データを取得する処理を説明する図である。図10(a)、(b)ともに、チェーンごとに、P0を署名IDとする署名データなど(以下、署名データP0などという)がつながっている様子を示している。そして、署名データP0、Q0、R0が前回の公開署名データであり、それらがまとまって前回の信頼ポイントとなっている。図10(a)に示すように署名チェーンが正常であれば、正に各チェーンの末端に位置する署名データP4、Q3およびR2が末端署名データ、すなわち、公開署名データとなり、それらがまとまって信頼ポイントとなる。ここで、「署名チェーンが正常」とは、例えば、チェーン検証の結果、署名データP4とP3、P3とP2、P2とP1、P1とP0の組合せがそれぞれ「正常」であること(整合性がとれていること)をいう。この場合、署名データP4ないしP0が正常にチェーンされていることから、署名データP4を公開することによって、署名データP4ないしP0の原本性が保証されることになる。
これに対して、図10(b)に示すように署名チェーンが正常でない場合がある。図10(b)のチェーンPは正常であるが、チェーンQには虫食いが発生し、チェーンRには矛盾が発生している。チェーンQにおいては、署名データQ3およびQ5が読み出せない状態(虫食い)になっている。署名データQ2、Q1、Q0のチェーンは正常である。そこで、その読み出せない署名データ以外の署名データの原本性を保証するために、末端の署名データQ6、Q4およびQ2を公開署名データとする。
チェーンRにおいては、読み出せない署名データはないが、署名データR4とR3との間でチェーン検証が「エラー」(矛盾)になっている。署名データR5、R4のチェーンは正常である。また、署名データR3、R2、R1、R0のチェーンも正常である。そこで、署名データR5ないしR1の原本性を保証するために、末端の署名データR5およびR3を公開署名データとする。そして、署名データP6、Q6、Q4およびQ2、ならびに、R5およびR3をまとめて信頼ポイントとする。
図6に戻って、サーバAP部311は、ステップS603で取得した末端署名IDから内部信頼ポイント情報8を作成し、記憶部32に記憶する(ステップS604)。さらに、その記憶した内部信頼ポイント情報8から公開信頼ポイント情報9を作成し、公開する(ステップS605)。ここで、公開とは、最終的には新聞などのメディアに公開されることが必要であるが、履歴管理サーバ3の処理としては、新聞社などのサーバに公開信頼ポイント情報9を送信することをいう。以上によれば、署名データの消失や破壊が発生しても、その署名データに連鎖する他の署名データの信頼性を確保することができる。
続いて、図8を参照して、履歴管理サーバ3における信頼ポイントを使用したヒステリシス検証処理について説明する(適宜図1、図2、図3および図4参照)。この処理は、外部から署名データの原本性を検証依頼するために、信頼ポイントID、公開ハッシュ値および署名データが履歴管理サーバ3に送信された場合に行われる。
最初に、処理部31のサーバAP部311は、外部から、例えば、ネットワーク4および通信部33を介して署名データの検証依頼を受信する(ステップS801)。そして、受信した信頼ポイントID、公開ハッシュ値および署名データを入力情報として、署名検証処理部312をコールする。ステップS802ないしステップS809の処理は、署名検証処理部312によって行われる。
まず、署名検証処理部312は、入力された信頼ポイントIDから内部信頼ポイント情報を取得する(ステップS802)。具体的には、記憶部32に記憶された内部信頼ポイント情報8のうち、入力された信頼ポイントIDが信頼ポイントID81と一致する内部信頼ポイント情報8を取得する。次に、入力された署名データから署名ID:Mを抽出する(ステップS803)。これは、図3(b)に示す署名データ6の構成に従って署名ID614を抽出し、その署名ID614の値をMとするものである。そして、入力された署名データと、記憶部32に記憶された署名情報5のうち、署名ID:Mの署名データとが一致するか否かをチェックする(ステップS804)。署名データ同士が一致した場合には(ステップS804のYes)、署名ID:Mの署名データと同じチェーンに属する公開署名ID:Nを取得する(ステップS805)。具体的には、ステップS802で取得した内部信頼ポイント情報8に含まれる公開署名ID82と署名ID:Mとを比較照合して、署名IDの値のうち署名生成クライアント2に固有の番号(チェーンID71に対応する値)が一致したとき、その公開署名ID82を公開署名ID:Nとして特定する。
ここで、署名ID:Mの署名データと同じチェーンに属し、未来方向の最も近くにある公開署名ID:Nを取得するようにしてもよい。例えば、あらかじめ内部信頼ポイント情報8に対して信頼ポイントを追加した日時を追加しておくことにより、その日時に基づいて、署名ID:Mの署名データ6に含まれる署名データの生成時刻617に未来方向に最も近い内部信頼ポイント情報8を特定し、その内部信頼ポイント情報8から署名ID:Mの署名データと同じチェーンに属する公開署名IDを取得する。これによれば、チェーン検証の対象となる署名データの個数が少なくなるので、チェーン検証処理にかかる時間を短縮できる。また、署名データの虫食いや署名データ間の矛盾が発生する可能性が少なくなるので、ステップS807で行うチェーン検証の結果が正常になる可能性が高くなる。
続いて、署名検証処理部312は、入力された公開ハッシュ値と、信頼ポイントIDの署名データから算出したハッシュ値とが一致するか否かをチェックする(ステップS806)。この場合、ステップS802で取得した内部信頼ポイント情報8から1以上の公開署名ID82を特定し、その特定した公開署名ID82に対応する署名データ6からハッシュ値を算出する。そのハッシュ値の算出は、オブジェクトID83に対応するハッシュ化アルゴリズムを持つ暗号化処理部313を用いて、ハッシュ化手順84に従って行う。ハッシュ値同士が一致した場合には(ステップS806のYes)、署名ID:Nを始点とし、署名ID:Mを終点とする入力情報を設定して、図7に示すチェーン検証処理をコールする(ステップS807)。チェーン検証処理については、既に説明したとおりである。
これによって、署名検証処理部312は、署名ID:NないしMのチェーンが正常であるか、または、虫食いや矛盾を含むエラーであるかの検証結果を取得することができる。なお、ステップS804のチェックで署名データ同士が一致しなかった場合には(ステップS804のNo)、エラー処理として「署名データ不一致」を検証結果とする(ステップS809)。また、ステップS806のチェックでハッシュ値同士が一致しなかった場合には(ステップS806のNo)、エラー処理として「ハッシュ値不一致」を検証結果とする(ステップS808)。署名検証処理部312は、それらの検証結果を出力情報としてサーバAP部311にリターンする。そして、サーバAP部311は、それらの検証結果を受け取り、外部の検証依頼元に送信する(ステップS810)。
以上によれば、外部の検証依頼元は、履歴管理サーバ3から受信した検証結果が正常であれば、送信した署名データ6の原本性が保証されたことになり、さらに、その署名データ6内の文書データのハッシュ値612と、実際に文書データから算出したハッシュ値とを比較することによって、文書データの原本性を検証することができる。なお、外部の検証依頼元が文書データを履歴管理サーバ3に送信することにより、履歴管理サーバ3が文書データのハッシュ値を比較検証するようにしてもよい。
以上本発明の実施の形態について説明したが、図1に示す署名生成クライアント2および履歴管理サーバ3のそれぞれで実行されるプログラムをコンピュータによる読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、本発明の実施の形態に係る原本保証システムが実現されるものとする。なお、プログラムをインタネットなどのネットワーク経由でコンピュータシステムに提供するようにしてもよい。
以上本発明について好適な実施の形態について一例を示したが、本発明は前記実施の形態に限定されず、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
本発明の実施の形態に係る原本保証システムの構成を示す図である。 本発明の実施の形態に係る処理部の構成を示す図であり、(a)は署名生成クライアントの処理部の構成を示し、(b)は履歴管理サーバの処理部の構成を示す。 本発明の実施の形態に係る署名生成クライアントが生成するデータの構成を示す図であり、(a)は署名情報の構成を示し、(b)は署名データの構成を示し、(c)はチェーン情報の構成を示す。 本発明の実施の形態に係る信頼ポイント情報の構成を示す図であり、(a)は内部信頼ポイント情報を示し、(b)は公開信頼ポイント情報を示す。 本発明の実施の形態に係るヒステリシス署名生成処理を示すPADである。 本発明の実施の形態に係る信頼ポイント追加処理を示すPADである。 本発明の実施の形態に係るチェーン検証処理を示すPADである。 本発明の実施の形態に係るヒステリシス検証処理を示すPADである。 本発明の実施の形態に係るヒステリシス署名生成処理におけるデータの流れを示すデータフロー図である。 本発明の実施の形態に係る信頼ポイント追加処理において公開署名IDを特定する処理を説明する図である。
符号の説明
1 原本保証システム
2 署名生成クライアント
23 記憶部(第1の記憶部)
3 履歴管理サーバ
31 処理部
32 記憶部(第2の記憶部)
4 ネットワーク
5 署名情報(署名チェーン情報)
51 署名ID
6 署名データ
612 文書データのハッシュ値(第1の情報)
616 前署名データのハッシュ値(第2の情報)
64 署名値
7 チェーン情報(署名チェーン情報)
8 内部信頼ポイント情報(信頼ポイント情報)
83 公開署名ID(公開署名データに固有の署名ID)
84 オブジェクトID
9 公開信頼ポイント情報(信頼ポイント情報)
91 公開ハッシュ値(ハッシュ値)
92 文書データ

Claims (4)

  1. 文書データに対する電子署名を行う際に、その文書データをもとに算出したハッシュ値である第1の情報および前回の電子署名の結果である署名データをもとに算出したハッシュ値である第2の情報を含む情報から電子署名の署名値を算出し、前記第1の情報、前記第2の情報、前記署名値およびその署名値に関する証明書を含む情報を、新たな電子署名の結果である署名データとして第1の記憶部に追加記憶し、それによって前記署名データ間の論理的な連鎖関係を示す署名チェーン情報を生成する1以上の署名生成クライアントと、
    前記署名生成クライアントが生成した署名チェーン情報を入力し、その署名チェーン情報を第2の記憶部に記憶し、その記憶した署名チェーン情報が示す論理的な連鎖関係を有してつながる複数の署名データのなかから、改ざんされていないことを保証すべき署名データを公開署名データとして取得し、その取得した公開署名データからハッシュ値を算出し、前記公開署名データに固有の署名ID、および、前記ハッシュ値を算出したアルゴリズムに固有のオブジェクトIDを前記第2の記憶部に記憶し、前記公開署名データに固有の署名ID、前記オブジェクトIDおよび前記ハッシュ値を、当該署名IDに対応する公開署名データが改ざんされていないことを保証する信頼ポイント情報として外部に公開する履歴管理サーバと、
    を含んで構成される原本保証システムにおいて、所定の署名データの原本性を保証する原本保証方法であって、
    前記履歴管理サーバの処理部は、
    前記署名チェーン情報から公開署名データを取得する場合に、
    最新の署名データから前回公開した公開署名データまでに対して、前後する2個の署名データのうち、新しい署名データに含まれる前記第2の情報と、古い署名データから新たに求めた第の情報とを比較することによって、前後する署名データ間の整合性を順次検証するステップと、
    前記比較の結果、新しい署名データに含まれる前記第2の情報と古い署名データから新たに求めた第2の情報とが一致して整合性が継続すると判定されたときに、前記複数の署名データのなかから、前記最新の署名データを公開署名データと特定して取得するステップと、
    前記比較の結果、新しい署名データに含まれる前記第2の情報と古い署名データから新たに求めた第2の情報とが一致せず整合性が途切れたと判定されたときに、前記複数の署名データのなかから、その整合性が連続する2以上の署名データのうちの最新の署名データ、および、前後が途切れた1の署名データを公開署名データと特定して取得するステップと、
    を含んで実行することを特徴とする原本保証方法。
  2. 前記履歴管理サーバの処理部は、
    所定の署名データの原本性を検証する場合に、
    前記所定の署名データと論理的な連鎖関係を有してつながることにより同じ署名チェーン情報に属し、前記所定の署名データの作成時より後に追加した前記信頼ポイント情報のうち、最も古い信頼ポイント情報を特定し、当該信頼ポイント情報の署名IDに対応する公開署名データから前記所定の署名データまでに対して、前後する署名データ間の整合性を順次検証するステップと、
    前記整合性が継続したときに、検証結果を正常とするステップと、
    前記整合性が途切れたときに、検証結果をエラーとするステップと、
    をさらに含んで実行することを特徴とする請求項1に記載の原本保証方法。
  3. 文書データに対する電子署名を行う際に、その文書データをもとに算出したハッシュ値である第1の情報および前回の電子署名の結果である署名データをもとに算出したハッシュ値である第2の情報を含む情報から電子署名の署名値を算出し、前記第1の情報、前記第2の情報、前記署名値およびその署名値に関する証明書を含む情報を、新たな電子署名の結果である署名データとして第1の記憶部に追加記憶し、それによって前記署名データ間の論理的な連鎖関係を示す署名チェーン情報を生成する1以上の署名生成クライアントと、
    前記署名生成クライアントが生成した署名チェーン情報を入力し、その署名チェーン情報を第2の記憶部に記憶し、その記憶した署名チェーン情報が示す論理的な連鎖関係を有してつながる複数の署名データのなかから、改ざんされていないことを保証すべき署名データを公開署名データとして取得し、その取得した公開署名データからハッシュ値を算出し、前記公開署名データに固有の署名ID、および、前記ハッシュ値を算出したアルゴリズムに固有のオブジェクトIDを前記第2の記憶部に記憶し、前記公開署名データに固有の署名ID、前記オブジェクトIDおよび前記ハッシュ値を、当該署名IDに対応する公開署名データが改ざんされていないことを保証する信頼ポイント情報として外部に公開する履歴管理サーバと、
    を含んで構成される原本保証システムであって、
    前記履歴管理サーバの処理部は、
    前記署名チェーン情報から公開署名データを取得する場合に、
    最新の署名データから前回公開した公開署名データまでに対して、前後する2個の署名データのうち、新しい署名データに含まれる前記第2の情報と、古い署名データから新たに求めた第の情報とを比較することによって、前後する署名データ間の整合性を順次検証し、
    前記比較の結果、新しい署名データに含まれる前記第2の情報と古い署名データから新たに求めた第2の情報とが一致して整合性が継続すると判定されたときに、前記複数の署名データのなかから、前記最新の署名データを公開署名データと特定して取得し、
    前記比較の結果、新しい署名データに含まれる前記第2の情報と古い署名データから新たに求めた第2の情報とが一致せず整合性が途切れたと判定されたときに、前記複数の署名データのなかから、その整合性が連続する2以上の署名データのうちの最新の署名データ、および、前後が途切れた1の署名データを公開署名データと特定して取得する
    ことを特徴とする原本保証システム。
  4. 前記履歴管理サーバの処理部は、
    所定の署名データの原本性を検証する場合に、
    前記所定の署名データと論理的な連鎖関係を有してつながることにより同じ署名チェーン情報に属し、前記所定の署名データの作成時より後に追加した前記信頼ポイント情報のうち、最も古い信頼ポイント情報を特定し、当該信頼ポイント情報の署名IDに対応する公開署名データから前記所定の署名データまでに対して、前後する署名データ間の整合性を順次検証し、
    前記整合性が継続したときに、検証結果を正常とし、
    前記整合性が途切れたときに、検証結果をエラーとする
    ことを特徴とする請求項3に記載の原本保証システム。
JP2005098515A 2005-03-30 2005-03-30 原本保証方法および原本保証システム Active JP4700388B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005098515A JP4700388B2 (ja) 2005-03-30 2005-03-30 原本保証方法および原本保証システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005098515A JP4700388B2 (ja) 2005-03-30 2005-03-30 原本保証方法および原本保証システム

Publications (2)

Publication Number Publication Date
JP2006279761A JP2006279761A (ja) 2006-10-12
JP4700388B2 true JP4700388B2 (ja) 2011-06-15

Family

ID=37213990

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005098515A Active JP4700388B2 (ja) 2005-03-30 2005-03-30 原本保証方法および原本保証システム

Country Status (1)

Country Link
JP (1) JP4700388B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5544175B2 (ja) * 2010-01-07 2014-07-09 株式会社日立製作所 原本性保証方法、管理サーバ、プログラムおよび記憶媒体

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001331104A (ja) * 1999-10-22 2001-11-30 Hitachi Ltd ディジタル署名方法および装置
JP2002175009A (ja) * 2000-12-07 2002-06-21 Hitachi Ltd ディジタル署名生成方法およびディジタル署名検証方法
JP2004040344A (ja) * 2002-07-02 2004-02-05 Hitachi Ltd 原本保証方法および原本保証システム
JP2004304338A (ja) * 2003-03-28 2004-10-28 Ntt Data Corp データ登録システム、データ登録方法及びプログラム
JP2005012490A (ja) * 2003-06-19 2005-01-13 Hitachi Ltd ディジタル署名方式
JP2006229800A (ja) * 2005-02-21 2006-08-31 Nagoya Institute Of Technology ヒステリシス署名における信頼性向上方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001331104A (ja) * 1999-10-22 2001-11-30 Hitachi Ltd ディジタル署名方法および装置
JP2002175009A (ja) * 2000-12-07 2002-06-21 Hitachi Ltd ディジタル署名生成方法およびディジタル署名検証方法
JP2004040344A (ja) * 2002-07-02 2004-02-05 Hitachi Ltd 原本保証方法および原本保証システム
JP2004304338A (ja) * 2003-03-28 2004-10-28 Ntt Data Corp データ登録システム、データ登録方法及びプログラム
JP2005012490A (ja) * 2003-06-19 2005-01-13 Hitachi Ltd ディジタル署名方式
JP2006229800A (ja) * 2005-02-21 2006-08-31 Nagoya Institute Of Technology ヒステリシス署名における信頼性向上方法

Also Published As

Publication number Publication date
JP2006279761A (ja) 2006-10-12

Similar Documents

Publication Publication Date Title
CN111881099B (zh) 数据库私有文档共享
US12003647B2 (en) Reduced-step blockchain verification of media file
US20220292214A1 (en) Blockchain endorsement with approximate hash verification
US20230078996A1 (en) Peer node recovery via approximate hash verification
US11711202B2 (en) Committing data to blockchain based on approximate hash verification
JP4783112B2 (ja) 署名履歴保管装置
CN111242617B (zh) 用于执行交易正确性验证的方法及装置
US11689356B2 (en) Approximate hash verification of unused blockchain output
JP2022549581A (ja) Dag構造のブロックチェーンにおいてブロックの連続的順序を決定するためのコンピューティング・システム、方法、非一時的コンピュータ可読媒体及びコンピュータ・プログラム
CN111800268A (zh) 用于区块链背书的零知识证明
JP4501349B2 (ja) システムモジュール実行装置
US20210194672A1 (en) Partially-ordered blockchain
US20200382309A1 (en) Approximate hash verification for blockchain
CN111753002B (zh) 基于同意的数据管理
JP2023524715A (ja) ネットワーク間の識別情報プロビジョニング
JP2007304982A (ja) 電子文書管理装置、電子文書管理方法、及びコンピュータプログラム
JP2024507908A (ja) Ssiを用いたブロックチェーンネットワークアイデンティティ管理
US8631235B2 (en) System and method for storing data using a virtual worm file system
US20230208638A1 (en) Future asset reclamation via blockchain
KR102487849B1 (ko) 블록체인에 기반한 민감 정보의 위변조 방지 장치 및 그 방법
WO2023035477A1 (zh) 一种基于区块链的文书验真方法
JP5544175B2 (ja) 原本性保証方法、管理サーバ、プログラムおよび記憶媒体
JP2023520634A (ja) 文脈完全性の維持
WO2016172982A1 (zh) 数据记录方法、装置和系统、计算机存储介质
CN110827034B (zh) 用于发起区块链交易的方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100907

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101130

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20110124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110124

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110304

R150 Certificate of patent or registration of utility model

Ref document number: 4700388

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150