(57)【要約】      （修正有）【課題】ブロックチェーンおよびオフチェーン装置と連携するための検証システムおよび方法を提供する。【解決手段】検証システムは、セキュリティプロトコル装置と、ブロックチェーン装置と、データベース装置とを含む。セキュリティプロトコル装置は、記録データを受信し、ハッシュ関数に従ってバイナリーツリーのうちに統合する。記録データのハッシュ値は、リーフノードに保存される。セキュリティプロトコル装置は、ルートハッシュをブロックチェーン装置に送信する。セキュリティプロトコル装置は、バイナリーツリーを、オフチェーン方式によりセキュリティプロトコル装置と通信するデータベース装置に保存する。セキュリティプロトコル装置は、ブロックチェーン装置からのルートハッシュを、データベース装置に保存されたバイナリーツリーのルートハッシュと比較して、データベース装置に保存されたバイナリーツリーの正確さを検証する。【選択図】図３
2020182214.tif 000002
【特許請求の範囲】
【請求項１】
セキュリティプロトコル装置であって、
複数の端末装置から記録データを受信し、
少なくとも１つのバイナリーツリーであって、ルートハッシュを保存するルート、および、前記記録データのハッシュ値のそれぞれを保存する複数のリーフノードを含むバイナリーツリーに、ハッシュ関数に従って前記記録データを統合し、
データベース装置に前記バイナリーツリーを保存し、および
前記バイナリーツリーの前記ルートハッシュをブロックチェーンに位置するブロックチェーン装置に送信するように構成されている、バイナリーツリー処理ユニットと、
前記データベース装置に保存された前記バイナリーツリーの正確さを検証するために、検証要求を受信し、前記ブロックチェーン装置の前記ルートハッシュを、前記データベース装置に保存された前記バイナリーツリーの前記ルートハッシュと比較するように構成されている、検証ユニットと、を含み、
前記セキュリティプロトコル装置は、オフチェーン方式によって前記端末装置および前記データベース装置と通信する、
セキュリティプロトコル装置。
【請求項２】
前記バイナリーツリー処理ユニットは、前記記録データに対応する識別データを受信し、前記識別データのそれぞれに従って、前記記録データのそれぞれの前記ハッシュ値を、前記リーフノードのうちの対応する１つに保存するように構成される
ことを特徴とする請求項１に記載のセキュリティプロトコル装置。
【請求項３】
識別番号ユニットをさらに含み、前記バイナリーツリー処理ユニットが前記識別データを受信するとき、前記識別番号ユニットは前記識別データに従って前記リーフノードに対応する複数の識別番号をそれぞれ生成し、前記バイナリーツリー処理ユニットは、前記識別番号のそれぞれに従って、前記記録データのそれぞれの前記ハッシュ値を、前記リーフノードのうちの対応する１つに保存する、
ことを特徴とする請求項２に記載のセキュリティプロトコル装置。
【請求項４】
前記識別番号ユニットは、それぞれの前記識別番号を生成するために、それぞれの前記識別データの前記ハッシュ値から複数の所定のビットを抽出する
ことを特徴とする請求項３に記載のセキュリティプロトコル装置。
【請求項５】
前記バイナリーツリーが高さの値Ｈを保持する場合、前記所定のビットは、それぞれの前記識別データの前記ハッシュ値の最初のＨ−１ビットである
ことを特徴とする請求項４に記載のセキュリティプロトコル装置。
【請求項６】
前記バイナリーツリー処理ユニットが前記ブロックチェーン装置に前記バイナリーツリーの前記ルートハッシュを送信するとき、前記バイナリーツリー処理ユニットは、前記バイナリーツリーを複数のスライスに切り、前記スライスのそれぞれを、前記端末装置のうちの対応する１つに返す
ことを特徴とする請求項１に記載のセキュリティプロトコル装置。
【請求項７】
ブロックチェーンおよびオフチェーン装置との連携に適した検証方法であって、
オフチェーン方式により複数の端末装置から複数の記録データを受信する工程、
少なくとも１つのバイナリーツリーであって、ルートハッシュを保存するルート、および、前記記録データのハッシュ値のそれぞれを保存する複数のリーフノードを含むバイナリーツリーに、ハッシュ関数に従って前記記録データを統合する工程、
前記ブロックチェーンに前記バイナリーツリーの前記ルートハッシュを送信する工程、
オフチェーン方式により前記バイナリーツリーを保存する工程、および
前記オフチェーン方式により保存された前記バイナリーツリーの正確さを検証するために、検証要求を受信している場合、前記ブロックチェーンの前記ルートハッシュを、前記オフチェーン方式により保存された前記バイナリーツリーの前記ルートハッシュと比較する工程、
を含む、検証方法。
【請求項８】
前記オフチェーン方式により、前記記録データのそれぞれに対応する複数の識別データを受信する工程、および、
前記識別データのそれぞれに従って、前記記録データのそれぞれの前記ハッシュ値を、前記リーフノードのうちの対応する１つに保存する工程、
をさらに含む、請求項７に記載の検証方法。
【請求項９】
前記識別データを受信した後に、前記識別データに従って前記リーフノードのそれぞれに対応する複数の識別番号を生成する工程、および、
前記記録データの前記ハッシュ値を、前記識別番号に従って前記対応するリーフノードに保存する工程、
をさらに含むことを特徴とする請求項８に記載の検証方法。
【請求項１０】
前記識別データに従って前記リーフノードのそれぞれに対応する前記識別番号を生成する前記工程は、前記識別番号のそれぞれを生成するために、それぞれの前記識別データの前記ハッシュ値から複数の所定のビットを抽出する工程を含む
ことを特徴とする請求項９に検証方法。
【請求項１１】
前記ブロックチェーンに前記バイナリーツリーの前記ルートハッシュを送信する前記工程は、
前記バイナリーツリーを複数のスライスに切る工程、および、
前記オフチェーン方式により、前記複数のスライスのそれぞれを、前記端末装置のうちの対応する１つに返す工程、
を含む、請求項７に記載の検証方法。
【請求項１２】
端末装置であって、
記録データを生成し、前記記録データを、前記端末装置とオフチェーン方式により通信するセキュリティプロトコル装置に送信するように構成されている記録データ生成ユニット、
前記記録データに対応する識別データを生成し、前記識別データを前記セキュリティプロトコル装置に送信するように構成されている識別データ生成ユニット、および、
前記セキュリティプロトコル装置から、前記記録データと対応するバイナリーツリースライスを受信し、前記バイナリーツリースライスの正確さを検証するように構成されているスライス検証ユニット、
を含む、端末装置。
【請求項１３】
前記スライス検証ユニットは、前記バイナリーツリースライスが不正であると検証されているときに、ブロックチェーン装置に抗議（ｐｒｏｔｅｓｔ）メッセージを送信するように構成されている
ことを特徴とする請求項１２に記載の端末装置。
【請求項１４】
端末装置により実行される方法であって、
記録データを生成する工程、
前記記録データに対応する識別データを生成する工程、
前記記録データおよび前記識別データを、オフチェーン方式により前記端末装置と通信するセキュリティプロトコル装置に送信する工程、
前記セキュリティプロトコル装置から、前記記録データに対応するバイナリーツリースライスを受信する工程、および、
前記バイナリーツリースライスの正確さを検証する工程、
を含む、方法。
【請求項１５】
前記バイナリーツリースライスが不正であると検証されているときにブロックチェーン装置に抗議メッセージを送信する工程をさらに含む、請求項１４に記載の方法。
【発明の詳細な説明】
【発明の詳細な説明】
【０００１】
〔関連出願の相互参照〕
本非仮出願は、米国特許法１１９（ａ）に基づいて、２０１９年４月２４日に台湾、中華民国に出願された特許出願第１０８１１４３８９号の優先権を主張し、その全内容は参照により本明細書に組み込まれる。
【０００２】
〔技術分野〕
本発明は検証システムに関し、特に、ブロックチェーンおよびオフチェーン装置を連携することができる検証システムおよび方法に関する。
【０００３】
〔背景技術〕
従来技術において、ブロックチェーンは中央分散を達成するために分散アーキテクチャを採用している。世界の端末コンピュータは、ブロックチェーンによって接続することができる。任意の端末コンピュータによってブロックチェーンに送信されたデータは、固有の処理モードによってブロックチェーン上の他の端末コンピュータに配信することができる。これらのデータはブロックチェーン上の多数の端末コンピュータに保存されるため、データの正確さは、ブロックチェーン上の多数の端末コンピュータによって相互に検証することができ、ブロックチェーンのデータを変更または改ざんすることを困難にする。
【０００４】
従来の端末コンピュータから中央サーバへのアーキテクチャにおいて、端末コンピュータがサーバにデータをアップロードするか、またはサーバからデータをダウンロードする必要がある場合、このタスクは、端末コンピュータ、中央サーバ、およびこれら２つの間のネットワークサーバといった限定された装置の処理のみを呼び出す。このタスクは、現行のネットワーク速度およびコンピュータ計算能力の観点から極めて迅速に実行することができる。しかしながら、ブロックチェーンのアーキテクチャにおいて、端末コンピュータがブロックチェーンの特性に基づいて、ブロックチェーンにデータをアップロードするか、またはブロックチェーンからデータをダウンロードする必要があるとき、このタスクはブロックチェーン上の多数の他の端末コンピュータ（マイナーなど）の検証手順を呼び出す。その結果、膨大なネットワーク送信要件および処理金額が発生し、これは比較的時間がかかり、処理コスト（例えば、マイナーのための料金）が高くなる。
【０００５】
従来のパブリックなブロックチェーンと比較して、現在、比較的少数の端末コンピュータから構成されるプライベートなブロックチェーンが存在し、それによって、ネットワーク送信要件、処理量、処理時間、および処理コストが低減される。例えば、銀行グループは、グループまたはそのクライアント内の内部の組織のためのプライベートなブロックチェーンを作成することができる。しかしながら、より少ない数の端末コンピュータおよびプライベートに生成された特徴は、プライベートなブロックチェーンの信頼性（否認防止）がパブリックなブロックチェーンの信頼性ほど良好ではなく、プライベートなブロックチェーンの適用範囲も比較的狭いことを意味する。
【０００６】
概して、ブロックチェーンは、バイナリーツリーまたはメルクルツリーを使用するツリー状のデータ構成である。全てのデータは、ハッシュ値を生成するためにハッシュ化される。バイナリーツリーは、最上層にルートを含み、最下層に複数のリーフノードを含む。リーフノードにはデータ毎のハッシュ値が保存されており、全てのリーフノードのハッシュ値は階層毎に処理されて、ツリーのルートにルートハッシュが生成される。すべてのバイナリーツリーは、ブロックチェーン上の端末コンピュータに保存される。バイナリーツリーのデータの正確さを検証するために、バイナリーツリーの正確さおよびそのデータは、端末コンピュータ上のバイナリーツリーのルートハッシュを比較することによって検証することができる。
【０００７】
〔概要〕
従来のブロックチェーンに基づいて、特定のバイナリーツリーの特定のリーフノードにあるデータが、特定の処理の下で存在することを検証することができる。例えば、ルートハッシュが計算されるまで、レイヤごとのハッシュ計算を実行するために、リーフノードおよび対応する別のリーフノードの１つをグループ化することができる。ルートハッシュが正しければ、データが存在することが意味するが、ルートハッシュと全てのリーフノードのハッシュ値を含む完全なバイナリーツリーを取得し、バイナリーツリーのどのリーフノードにもデータが存在しないことを検証するための完全な処理を行う必要があるため、特定のデータが存在しないことを検証することは困難である。ネットワーク送信要件、処理量、処理時間、および処理コストは膨大である。
【０００８】
この観点から、本発明はデータの信頼性（否認防止）を維持することを前提として、システム全体のネットワーク送信要件、処理量、処理時間、および処理コストを軽減するために、ブロックチェーンおよびオフチェーン装置と連携するための検証システムおよび方法を提供する。
【０００９】
本発明の実施形態は、ブロックチェーンと連携し、オフチェーン方式により複数の端末装置と通信するのに適した検証システムを提供する。端末装置のそれぞれは、少なくとも１つの記録データを生成する。検証システムは、セキュリティプロトコル装置と、ブロックチェーン装置と、データベース装置とを含む。セキュリティプロトコル装置は、記録データを受信し、記録データを少なくとも１つのバイナリーツリーにハッシュ関数に従って統合する。バイナリーツリーは、ルートおよび複数のリーフノードを含む。ルートはルートハッシュを保存し、記録データのハッシュ値はそれぞれリーフノードに保存される。ブロックチェーン装置はブロックチェーンに配置され、セキュリティプロトコル装置と通信する。セキュリティプロトコル装置は、バイナリーツリーのルートハッシュをブロックチェーン装置に送信する。データベース装置は、ブロックチェーンに関与しないオフチェーン方式によりセキュリティプロトコル装置と通信する。セキュリティプロトコル装置は、バイナリーツリーをデータベース装置に保存する。ここで、セキュリティプロトコル装置が検証要求を受信すると、セキュリティプロトコル装置は、ブロックチェーン装置からのルートハッシュを、データベース装置に保存されたバイナリーツリーのルートハッシュと比較して、データベース装置に保存されたバイナリーツリーの正確さを検証する。
【００１０】
本発明の一実施形態は、ブロックチェーンおよびオフチェーン装置と連携するために適した検証方法を提供する。検証方法は、ブロックチェーンに関与しないオフチェーン方式により複数の端末装置から複数のレコードデータを受信する工程と、記録データを少なくとも１つのバイナリーツリーにハッシュ関数に従って統合する工程であって、バイナリーツリーがルートおよび複数のリーフノードを含み、ルートがルートハッシュを保存し、記録データのハッシュ値がそれぞれリーフノードに保存される工程と、バイナリーツリーのルートハッシュをブロックチェーンに送信する工程と、バイナリーツリーをブロックチェーンに関与しないオフチェーン方式で保存する工程と、検証要求を受信する場合、ブロックチェーンからのルートハッシュを、オフチェーン方式で保存されたバイナリーツリーのルートハッシュと比較して、オフチェーン方式で保存されたバイナリーツリーの正確さを検証する工程とを含む。
【００１１】
要するに、データの信頼性（否認防止）を維持することを前提として、データの大部分をオフチェーン方式によりデータベース装置に設定することができ、オフチェーン方式によるデータベースのバイナリーツリーのルートハッシュを、セキュリティプロトコル装置によってブロックチェーン上の対応するルートハッシュと比較して、バイナリーツリーの正確さを検証することによって、主な処理をオフチェーン方式による実行に変換し、それにより、ブロックチェーンの負荷を大幅に低減し、その結果、システム全体のネットワーク送信要件、処理量、処理時間、および処理コストが軽減される。
【００１２】
本発明の詳細な特徴および利点は、以下の実施において詳細に記載される。その内容は、当業者が本発明の技術的内容を理解し、内容に応じて本発明の内容を実施するのに充分である。本発明の関連する目的および利点は、明細書に開示される内容、特許請求の範囲、および図面に従って、当業者によって容易に理解され得る。
【００１３】
〔図面の簡単な説明〕
図１は、本発明の一実施形態による検証システムの概略ブロック図である。
【００１４】
図２は、本発明の一実施形態によるバイナリーツリーの概略図である。
【００１５】
図３は、本発明の別の実施形態による検証システムのブロック図である。
【００１６】
図４は、本発明の一実施形態によるバイナリーツリーのスライスの概略図である。
【００１７】
図５は、本発明の一実施形態による検証方法のフローチャートである。
【００１８】
図６は、本発明の別の実施形態による検証方法のフローチャートである。
【００１９】
〔詳細な説明〕
図１を参照すると、図１には、本発明の一実施形態による検証システム１０の概略ブロック図が示されている。本実施形態において、検証システム１０は、ブロックチェーンＢＣと連携するのに適している。ブロックチェーンＢＣは、パブリックブロックチェーン、プライベートブロックチェーン、またはそれらの組み合わせを含むことができる。検証システム１０は、例えばブロックチェーンＢＣに関与しない１つまたは複数のオフチェーン装置および／または１つまたは複数のオフチェーンチャンネルから成る、例えばオフチェーンフレームワークＯＣを介したオフチェーン方式により複数の端末装置４００と通信するように構成され、オフチェーンフレームワークＯＣおよびブロックチェーンＢＣが連携する。それぞれの端末装置４００は、少なくとも１つの記録データＲＤを生成することができる。オフチェーンフレームワークＯＣは、ブロックチェーンＢＣとは独立した経路を指す。オフチェーンフレームワークＯＣの通信とは、ブロックチェーンＢＣとは独立した経路上の通信関係を指す。例えば、オフチェーンフレームワークＯＣを介した２つの装置間の通信は、２つの装置が直接的に接続され、ブロックチェーンＢＣを呼び出さずにネットワークを介して互いに信号を送信することができることを意味する。端末装置４００は、例えば、デスクトップコンピュータ、ノートブックコンピュータ、または各種センサである。記録データＲＤは、例えば、デスクトップコンピュータまたはノートブックコンピュータによって生成されたファイル情報やトランザクション情報、センサによって感知された数値情報であるが、これに限定されるものではない。
【００２０】
図１に示すように、本実施形態において、検証システム１０がセキュリティプロトコル装置１００と、データベース装置２００と、ブロックチェーン装置３００とを含む。セキュリティプロトコル装置１００は、オフチェーンフレームワークＯＣを介してデータベース装置２００と通信し、セキュリティプロトコル装置１００は、ブロックチェーンＢＣ上に位置するブロックチェーン装置３００と通信する。データベース装置２００は、例えば、ブロックチェーンＢＣとは独立したデータ記憶サーバであり、ブロックチェーン装置３００は、例えば、ブロックチェーンＢＣに接続された複数のコンピュータの集合であるが、これに限定されるものではない。本実施形態について、セキュリティプロトコル装置１００は、ブロックチェーンＢＣとオフチェーンフレームワークＯＣの通信能力を組み合わせたサーバである。例えばセキュリティプロトコル装置１００は、オフチェーンフレームワークＯＣとブロックチェーンＢＣとの間を仲介するものであり、後述するように、端末装置４００とデータベース装置２００との間の橋渡しをブロックチェーン装置３００と同様に行うことができる。
【００２１】
図２を参照すると、図２は、本発明の一実施形態によるバイナリーツリーＢＴの概略図が示されている。図１および図２に示すように、本実施形態において、それぞれの端末装置４００が記録データＲＤを生成した後、それぞれの端末装置４００はオフチェーンフレームワークＯＣを介して記録データＲＤをセキュリティプロトコル装置１００に送信する。セキュリティプロトコル装置１００が、オフチェーンフレームワークＯＣを介してそれぞれの端末装置４００の記録データＲＤを受信した後、セキュリティプロトコル装置１００は、記録データＲＤを少なくとも１つのバイナリーツリーＢＴにハッシュ関数に従って統合する。
【００２２】
図２に示すように、本実施形態において、バイナリーツリーＢＴは、ルートＲと、複数のミドルノードＭＮと、複数のリーフノードＬＮとを含む。バイナリーツリーＢＴのツリーデータ構成において、ルートＲは最上層に位置し、リーフノードＬＮは最下層に位置し、ミドルノードＭＮは最上層と最下層との間の１つまたは複数の層に分布している。全ての２つの隣り合うリーフノードＬＮは、上位レイヤにおいて統合され、ミドルノードＭＮとなる。それぞれのレイヤにおける全ての２つの隣り合うミドルノードＭＮは、上位レイヤにおいて統合され、ミドルノードＭＮとなる。最上位レイヤにおける２つのミドルノードＭＮは、統合され、ルートＲになる。それぞれのリーフノードＬＮは、記録データＲＤのハッシュ値ＲＤＨのそれぞれの１つを保存する。それぞれのミドルノードＭＮのハッシュ値と、ルートＲのルートハッシュＲＨとは、記録データＲＤのハッシュ値ＲＤＨに関連付けられている。
【００２３】
例えば、セキュリティプロトコル装置１００は、対応するハッシュ値ＲＤＨを生成するために、ＳＨＡ−２５６のハッシュ関数を用いて記録データＲＤをハッシュ化することがあり、セキュリティプロトコル装置１００は、それぞれのリーフノードＬＮに対して、記録データＲＤのハッシュ値ＲＤＨを保存する。さらに、２つの隣接するリーフノードＬＮのそれぞれの組に保存された２つのハッシュ値は接続され、次いで、ハッシュ化され、上位レイヤのミドルノードＭＮに保存され、それぞれのレイヤの２つの隣接するミドルノードＭＮのそれぞれの組に保存された２つのハッシュ値は接続され、次いで、ハッシュ化され、上位レイヤのミドルノードＭＮに保存され、以下同様である。本実施形態において、２つのハッシュ値は、接続され、次に２つのハッシュ値が最初にコードのストリングに接続され、次にコードのストリングがハッシュ化されるように順次ハッシュ化されるが、これに限定されない。例えば、第１のハッシュ値が「ｘｘｘ」であり、第２のハッシュ値が「ｏｏｏ」である場合、２つのハッシュ値は最初に、「ｘｘｘｏｏｏ」のコードのストリングとして接続され、ストリングコード「ｘｘｘｏｏｏ」は、ハッシュ値を生成するために再度ハッシュ化される。最後に、最上位レイヤの２つのミドルノードＭＮに保存された２つのハッシュ値が接続され、ハッシュ化されて、ルートハッシュＲＨが生成される。すなわち、バイナリーツリーＢＴは、リーフノードＬＮに保存されている記録データＲＤのハッシュ値ＲＤＨと、ルートＲに保存されているルートハッシュＲＨとを含んでいる。その上、記録データＲＤは改竄することができない。これは、バイナリーツリーＢＴ内の記録データＲＤが改竄されている限り、記録データＲＤのハッシュ値ＲＤＨが変化するためである。いずれかのリーフノードＬＮの記録データＲＤのハッシュ値ＲＤＨが変化する限り、バイナリーツリーＢＴのルートハッシュＲＨもそれに応じて変化する。ルートハッシュＲＨが変化したか否かを判定することにより、バイナリーツリーＢＴに対応する記録データＲＤの正確さを検証することができる。別の実施形態において、１つのリーフノードＬには、２つ以上の記録データＲＤのハッシュ値ＲＤＨが保存されていてもよい。この場合、リーフノードＬＮに保存されるハッシュ値ＲＤＨは、２つ以上のレコードデータＲＤのハッシュ値ＲＤＨを連結してハッシュ化した値である。
【００２４】
図１および図２に示すように、本実施形態において、セキュリティプロトコル装置１００がバイナリーツリー処理ユニット１１０および検証ユニット１２０を含む。バイナリーツリー処理ユニット１１０および検証ユニット１２０は、例えば、ソフトウェア／ハードウェアによって形成された機能モジュールであり、これらに限定されないが、それぞれ特有の機能を実行する。バイナリーツリー処理ユニット１１０および検証ユニット１２０は独立したモジュールであってもよいし、統合されたモジュールであってもよい。
【００２５】
本実施形態において、セキュリティプロトコル装置１００のバイナリーツリー処理ユニット１１０は受信した記録データＲＤを自動的にハッシュ化して統合し、バイナリーツリーＢＴを生成する。セキュリティプロトコル装置１００はバイナリーツリーＢＴのルートハッシュＲＨを、ブロックチェーン装置３００に送信する、すなわち、これらのルートハッシュＲＨは、ブロックチェーンＢＣに保存される。また、セキュリティプロトコル装置１００は、バイナリーツリーＢＴをデータベース装置２００に保存する。すなわち、完全なバイナリーツリーＢＴはブロックチェーンＢＣに保存される代わりに、オフチェーンフレームワークＯＣを介して保存される。他の実施形態において、完全なバイナリーツリーＢＴがデータベース装置２００に保存され、ブロックチェーン装置３００に送信されてもよい。
【００２６】
本実施形態において、セキュリティプロトコル装置１００の検証ユニット１２０は、データベース装置２００に保存されているバイナリーツリーＢＴの正確さを検証する。セキュリティプロトコル装置１００が検証要求を受信し、検証要求がある記録データＲＤの正確さを検証するとき、検証ユニット１２０はブロックチェーン装置３００上の記録データＲＤに対応するバイナリーツリーＢＴのルートハッシュＲＨと、データベース装置２００に保存されたレコードデータＲＤに対応するバイナリーツリーＢＴのルートハッシュＲＨとを自動的に比較し、データベース装置２００に保存されたバイナリーツリーＢＴの正確さを検証する。ブロックチェーン装置３００上のルートハッシュＲＨが、データベース装置２００に保存されたバイナリーツリーＢＴのルートハッシュＲＨと一致する場合、ブロックチェーンＢＣの特性に基づいて、データベース装置２００に保存された記録データＲＤのバイナリーツリーＢＴが正しいことを示す。
【００２７】
完全なバイナリーツリーＢＴはオフチェーンフレームワークＯＣを介してデータベース装置２００内に配置されるため、記録データＲＤのハッシュ値ＲＤＨのアクセスおよび処理は主にオフチェーンフレームワークＯＣを介して実行され、ブロックチェーンＢＣ上で従来的に実行されるこのタスクのためのネットワーク送信要件、処理量、処理時間、および処理コストを節約することができる。また、ブロックチェーン装置３００上の対応するルートハッシュＲＨと比較することにより、データベース装置２００内のバイナリーツリーＢＴのルートハッシュＲＨを検証することができ、オフチェーンフレームワークＯＣを介したデータベース装置２００内のデータの正確さは確保され得る。
【００２８】
図３を参照すると、図３には、本発明の別の実施形態による検証システム１０ａのブロック図である。図１および図３における検証システム１０および１０ａの同一または類似の構成要素、接続関係、および機能は再度説明しない。以下、図３の検証システム１０ａと図１の検証システム１０との間の相違点について説明する。本実施形態において、検証システム１０ａは、セキュリティプロトコル装置１００と、データベース装置２００と、ブロックチェーン装置３００と、複数の端末装置４００とを含む。セキュリティプロトコル装置１００は、ブロックチェーンＢＣに位置するブロックチェーン装置３００と通信し、オフチェーンフレームワークＯＣを介してデータベース装置２００および端末装置４００と通信する。さらに、端末装置４００は、ブロックチェーン装置３００と通信する。セキュリティプロトコル装置１００は、バイナリーツリー処理ユニット１１０と、検証ユニット１２０と、識別番号ユニット１３０と、位置検索ユニット１４０と、スライシングユニット１５０とを備える。バイナリーツリー処理ユニット１１０、検証ユニット１２０、識別番号ユニット１３０、位置検索ユニット１４０、スライシングユニット１５０は、例えば、ソフトウェア／ハードウェアによって形成された機能モジュールであって、それぞれ固有の機能を実行するものであり、バイナリーツリー処理ユニット１１０、検証ユニット１２０、識別番号ユニット１３０、位置検索ユニット１４０、スライシングユニット１５０は、独立したモジュールであってもよいし、一体化されたモジュールであってもよい。
【００２９】
図３に示されるように、本実施形態において、ブロックチェーン装置３００が少なくとも１つのスマートコントラクト３１０を含み、セキュリティプロトコル装置１００によってブロックチェーン装置３００に送信されるルートハッシュＲＨは対応するスマートコントラクト３１０に保存される。異なる実施形態において、ブロックチェーン装置３００がスマートコントラクトとは異なるプログラムアーキテクチャまたはインターフェースを含むこともでき、ルートハッシュＲＨは異なるプログラムアーキテクチャまたはインターフェースに対応するブロックチェーン装置３００に保存されることができる。
【００３０】
図３に示すように、本実施形態において、それぞれの端末装置４００が記録データ生成ユニット４１０と、識別データ生成ユニット４２０と、スライス検証ユニット４３０とを備える。記録データ生成ユニット４１０、識別データ生成ユニット４２０、およびスライス検証ユニット４３０は、例えば、それぞれ特定の機能を実行するためにソフトウェア／ハードウェアによって形成される機能モジュールであるが、これらに限定されない。なお、記録データ生成ユニット４１０、識別データ生成ユニット４２０、スライス検証ユニット４３０は独立したモジュールであってもよいし、統合されたモジュールであってもよい。また、記録データ生成ユニット４１０は、上述した記録データＲＤを生成するように構成されている。また、それぞれの端末装置４００の記録データ生成ユニット４１０がレコードデータＲＤを生成するときに、それぞれの端末装置４００の識別データ生成ユニット４２０は、記録データＲＤのそれぞれが対応する識別データＩＤを有するように、記録データＲＤにそれぞれの対応する複数の識別データＩＤを生成する。端末装置４００は、記録データＲＤとそれに対応する識別データＩＤとを同時にセキュリティプロトコル装置１００に送信する。いくつかの実施形態において、端末装置４００は、記録データＲＤおよび対応する識別データＩＤを統合データに統合し、統合データをセキュリティプロトコル装置１００に送信することができる。いくつかの実施形態において、識別データＩＤは、プレーンコードである。
【００３１】
図３に示すように、本実施形態において、セキュリティプロトコル装置１００が記録データＲＤおよび対応する識別データＩＤを受信し、セキュリティプロトコル装置１００は識別データＩＤに従って、記録データＲＤのハッシュ値ＲＤＨを対応するリーフノードＬＮに保存する。例えば、セキュリティプロトコル装置１００が識別データＩＤを受信した後、セキュリティプロトコル装置１００の識別番号ユニット１３０は識別データＩＤに従ってリーフノードＬＮにそれぞれ対応する複数の識別番号ＩＮを生成し、セキュリティプロトコル装置１００は、識別番号ＩＮに従って記録データＲＤのハッシュ値ＲＤＨを対応するリーフノードＬＮに保存する。この場合、それぞれの識別番号ＩＮは任意のバイナリーツリーＢＴにおいて一意であり、それぞれの識別番号ＩＮは、バイナリーツリーＢＴにおけるリーフノードＬＮのそれぞれ１つに対応する。したがって、それぞれの記録データＲＤのハッシュ値ＲＤＨは後に詳述するように、対応する識別番号ＩＮを用いて、リーフノードＬＮのそれぞれ１つに配置することができる。
【００３２】
本実施形態において、セキュリティプロトコル装置１００の識別番号ユニット１３０は、識別データＩＤのそれぞれ１つのハッシュ値から複数の所定のビットを抽出し、それぞれ１つの識別番号ＩＮを生成する。また、所定ビット数は、対応するバイナリーツリーＢＴの高さ値Ｈに関連付けられてもよい。バイナリーツリーＢＴが高さの値Ｈを有する場合、バイナリーツリーＢＴは、２（Ｈ−１）のリーフノードＬＮを有する。バイナリーツリーＢＴのリーフノードＬＮが対応する排他的な固有の識別番号ＩＮを有することを可能にするために、所定のビットは、識別データＩＤのハッシュ値のそれぞれ１つから抽出された少なくともＨ−１ビットである。このように、Ｈ−１ビットの配置はリーフノードＬＮの数を満たすため、リーフノードＬＮに対応する識別番号ＩＮは一意であり、繰り返されない。本実施形態において、Ｈ−１ビットが、例えば、識別データＩＤのハッシュ値のそれぞれ１つにおける最初のＨ−１ビットであるが、これに限定されない。他の実施形態において、Ｈ−１ビットが識別データＩＤのハッシュ値のそれぞれ１つから抽出された最後のＨ−１ビット、または任意の場所のＨ−１ビットとすることができる。
【００３３】
例えば、図２のバイナリーツリーＢＴの高さの値Ｈが５であり、バイナリーツリーＢＴが２（５−１）のリーフノードＬＮ、すなわちバイナリーツリーＢＴが１６のリーフノードＬＮとなる。ある記録データＲＤに対応する識別データＩＤが「Ｅ１５３４３９１」であるとすると、識別番号ユニット１３０はＳＨＡ−２５６ハッシュ関数を用いて識別データＩＤをハッシュ化し、ハッシュ値「ｄｂｂ９ｅｄ８ｂ６７７４６８ｂ４８３４ｄ２ｆ６３４ａ７７ｅａ１ｅ６６６３４３１ｂｆ１ｅｅ７５２３０４１４６７ｆｆ８０２３ｆａ６４」を生成する。次に、識別番号ユニット１３０はハッシュ値により変換された２進ビットシーケンスの最初の４ビット「１１０１」を抽出し、「１１０１」を１０進法の値「１３」に変換し、識別番号ＩＮを「１３」として生成する。識別番号ユニット１３０は、バイナリーツリーＢＴの１６番目のリーフノードＬＮの全てを１から１６番目のリーフノードＬＮに順次設定し、識別番号ＩＮが１３の記録データＲＤのハッシュ値ＲＤＨを１３のリーフノードＬＮ番号に保存する。いくつかの実施形態において、異なる識別データＩＤが同じ識別番号ＩＮを生成することができ、または異なる記録データＲＤは同じ識別データＩＤを有し、同じ識別番号ＩＮを生成することができる。ここで、複数の記録データＲＤのハッシュ値ＲＤＨは同一の識別番号ＩＮに対応し、同一のリーフノードＬＮに保存されていてもよい。いくつかの実施形態において、バイナリーツリーＢＴのそれぞれのリーフノードＬＮが２つ以上の記録データＲＤのハッシュ値ＲＤＨを保存することができ、特定のリーフノードＬＮに対応する２つ以上の記録データＲＤのハッシュ値ＲＤＨが接続され、次いでハッシュ値を生成するためにハッシュ化される。リーフノードＬＮには、複数の記録データＲＤに対応するハッシュ値が保存される。
【００３４】
図３に示すように、本実施形態において、セキュリティプロトコル装置１００の位置検索ユニット１４０は、識別番号ＩＮを用いてレコードデータＲＤのハッシュ値ＲＤＨを特定することができる。ユーザは、データベース装置２００内のあるバイナリーツリーＢＴ内のある記録データＲＤに対応するハッシュ値ＲＤＨを検索または検証する必要がある場合、ユーザはセキュリティプロトコル装置１００を用いて上記のタスクを行うことができる。このとき、セキュリティプロトコル装置１００の位置検索ユニット１４０は、識別番号ＩＮによって記録データＲＤ（すなわち、記録されたリーフノードＬＮ）のハッシュ値ＲＤＨを探し出し、ＩＤ番号ＩＮに対応するバイナリーツリーＢＴのリーフノードＬＮから直接的に記録データＲＤのハッシュ値ＲＤＨを抽出し、データを迅速に探し出して探索する。また、ある記録データＲＤが存在しないことを確認するために、識別番号ＩＮを用いて完了させることもできる。セキュリティプロトコル装置１００は、完全なバイナリーツリーＢＴ内の全てのハッシュ値を取得する必要はない。セキュリティプロトコル装置１００の位置検索ユニット１４０は記録データＲＤに対応する識別番号ＩＮを用いて、レコードデータＲＤのハッシュ値ＲＤＨ、すなわち、対応するリーフノードＬＮを探し出し、記録データＲＤのハッシュ値ＲＤＨがリーフノードＬＮに存在するか否かを直接的に確認することができる。リーフノードが記録データＲＤのハッシュ値ＲＤＨを有していない場合には、記録データＲＤが存在しないことを検証することができる。このようにして、確認タスク全体のネットワーク送信要件、処理量、処理時間、および処理コストを大幅に削減することができる。
【００３５】
上述したように、いくつかの実施形態において、異なった記録データＲＤの識別データＩＤが同じ識別番号ＩＮを生成することができる。この場合、ある記録データＲＤのハッシュ値ＲＤＨは、２つまたはそれ以上のリーフノードＬＮに位置していてもよい。記録データＲＤを検証する必要がある場合、セキュリティプロトコル装置１００は、データベース装置２００から２つまたはそれ以上のリーフノードＬＮのハッシュ値ＲＤＨを取得して検証することができる。本実施形態において、識別番号ＩＮが繰り返される可能性は比較的低くなる。ある記録データＲＤのハッシュ値ＲＤＨが２つまたはそれ以上のリーフノードＬＮに位置する場合であっても、位置するリーフノードＬＮの数は、全てのリーフノードＬＮの数よりも依然として少ないか、はるかに少ない。このようにして、検証タスク全体のネットワーク送信要件、処理量、処理時間、および処理コストは、大幅に削減され得る。
【００３６】
図３に示すように、本実施形態において、端末装置４００が識別番号ユニット４４０をさらに含む。端末装置４００の識別番号ユニット４４０は、セキュリティプロトコル装置１００の識別番号ユニット１３０と同様の機能を有する。また、識別番号ユニット４４０は、記録データＲＤの識別データＩＤに基づいて識別番号ＩＮを生成することができる。端末装置４００は、識別番号ユニット４４０を用いて、セキュリティプロトコル装置１００が正しいリーフノードＬＮからデータを取得したか否かを検証することができる。例えば、端末装置４００が、ある記録データＲＤを検証する必要があり、レコードデータＲＤの識別データＩＤが「Ｅ１５３４３９１」である場合（上記実施例参照）、端末装置４００が検証要求をセキュリティプロトコル装置１００に送信すると、セキュリティプロトコル装置１００の位置検索ユニット１４０は記録データＲＤに対応する識別番号ＩＮを用いて、記録データＲＤのハッシュ値ＲＤＨを特定し、データベース装置２００のバイナリーツリーＢＴの１３番のリーフノードＬＮに位置することを発見し、１３番のリーフノードＬＮのハッシュ値ＲＤＨを端末装置４００に返して検証を行うことができる。同様に、端末装置４００の識別番号ユニット４４０は記録データＲＤの識別データＩＤ「Ｅ１５３４３９１」に基づいて識別番号ＩＮを生成し、識別番号ＩＮに基づいて、記録データＲＤのハッシュ値ＲＤＨを１３番目のリーフノードＬＮに保存すべきであると推定することもできる。これにより、端末装置４００は、セキュリティプロトコル装置１００から返信された記録データＲＤのハッシュ値ＲＤＨが正しい位置（リーフノード番号１３）にあるか否かを確認することができる。
【００３７】
図４を参照すると、図４には、本発明の一実施形態によるバイナリーツリーＢＴのスライスＢＴＳの概略図が示されている。図３および図４に示すように、本実施形態において、セキュリティプロトコル装置１００がバイナリーツリーＢＴのルートハッシュＲＨをブロックチェーン装置３００に送信するとき、セキュリティプロトコル装置１００のスライシングユニット１５０はバイナリーツリーＢＴを自動的に複数のスライスＢＴＳに切り、スライスＢＴＳを対応する端末装置４００に返し、それぞれの端末装置４００のスライス検証ユニット４３０は、受信したそれぞれのスライスＢＴＳの正確さを検証する。図２および図４に示すように、本実施形態において、それぞれのスライスＢＴＳがルートＲ、２つの対応するリーフノードＬＮ、および必要ならばバイナリーツリーＢＴの中央ノードＭＮによって形成されるメルクルプルーフである。リーフノードＬＮのセットに記憶される記録データＲＤのハッシュ値ＲＤＨは、前述の処理プロセスによって得られ、ルートＲに位置するルートハッシュＲＨを得ることができる。スライスＢＴＳのルートハッシュＲＨは、完全なバイナリーツリーＢＴのルートハッシュＲＨと一致している必要がある。例えば、ある端末装置４００からセキュリティプロトコル装置１００に所定の記録データＲＤおよび識別データＩＤが送信された後、セキュリティプロトコル装置１００は、記録データＲＤのハッシュ値ＲＤＨを所定のバイナリーツリーＢＴの所定のリーフノードＬＮに保存し、リーフノードＬＮに対応するスライスＢＴＳを端末装置４００に返す。端末装置４００は、スライスＢＴＳのリーフノードＬＮの記録データＲＤのハッシュ値ＲＤＨを、端末装置４００により生成した元の記録データＲＤの元のハッシュ値ＲＤＨと一致するか否かを比較する。それらが一致する場合、検証が正しいことを示す。それらが一致しない場合は、検証が正しくないことを示す。検証が正しくない場合、対応する端末装置４００は、後続のデータの訂正、無効化または他の手順のために、抗議（ｐｒｏｔｅｓｔ）メッセージをブロックチェーン装置３００に送信することができる。
【００３８】
本実施形態において、それぞれの端末装置４００は、ブロックチェーンチップを備える。ブロックチェーンチップは、例えば、ブロックチェーンＢＣと検証システム１０、１０ｂとの間で信号を自動的に送信することができる集積回路（ＩＣ）であるが、これに限定されない。このようなブロックチェーンチップによれば、端末装置４００を軽量化、薄型化、短縮化することができ、端末装置４００は、任意の物体に配置したり、任意の電子機器に組み込んだりすることが容易になる。例えば、端末装置４００は、バッテリ（例えば、電気バスやハイブリッドバス、自動車用の大型バッテリパック）、電気メータ、自動車ヘッドライト、自動車本体（例えば、５Ｇを介してネットワーク接続された自動車のドライブコンピュータ）、またはフレームに組み込むことができる。端末装置４００は、それぞれの対象物の記録データＲＤを自動的かつ継続的にアップロードする。レコードデータＲＤは、例えば、バッテリ、電気メータまたは自動車ヘッドライト、または自動車本体のセンサ情報（エンジン、走行距離計、始動回数など）の毎時または毎日の履歴検知データ、またはフレーム上のセンサによって検知される毎時または毎日の温度および湿度変化の履歴検知データ、および図の元のデータなどの、（スケジュールされたアップロードインターバルに応じた）毎時または毎日の履歴検知データであるが、これらに限定されない。セキュリティプロトコル装置１００は、記録データＲＤのハッシュ値ＲＤＨを、オフチェーンフレームワークＯＣを介してデータベース装置２００に保存し、ルートハッシュＲＨを、ブロックチェーン装置３００にアップロードすることができる。
【００３９】
検証システム１０、１０ａに基づいて、オフチェーンフレームワークＯＣを介したデータベース装置２００による様々なデータの迅速な探索および検索に加えて、ブロックチェーンＢＣの検証によってデータの否認防止を達成することもできる。また、端末装置４００のコロケーションの適用に基づいて、モノの状況を保証することができ、モノの価値を向上させることができる。例えば、長距離車両に使用される使用済みの大型バッテリパックは、ある程度使用後に短距離車両に移送することができ、一方、短距離車両に使用される使用済みの大型バッテリパックは、ある程度使用後に予備発電バッテリとして漁場などの場所に移送することができる。それぞれの変換は、使用されるモノのための取引プラットフォームといったプラットフォームを介して実行することができる。モノの状態は、それぞれの取引において検証システム１０、１０ａによって確認することができ、それによってモノの質の信頼性およびモノの価値を改善する。
【００４０】
図５を参照すると、図５は、本発明の一実施形態による検証方法のフローチャートが示されている。本実施形態において、検証方法が図１に示す検証システム１０を介して実施することができるが、これに限定されるものではない。検証方法は、ブロックチェーンＢＣと連携するのに適している。ステップＳ１０１において、セキュリティプロトコル装置１００は、例えばブロックチェーンＢＣに関与しない１つまたは複数のオフチェーン装置および／または１つまたは複数のオフチェーンチャネルからなる、例えばオフチェーンフレームワークＯＣを介したオフチェーン方式により、複数の端末装置４００から複数の記録データＲＤを受信する。ステップＳ１０３において、セキュリティプロトコル装置１００は、記録データＲＤを少なくとも１つのバイナリーツリーＢＴにハッシュ関数に従って統合し、記録データＲＤのハッシュ値ＲＤＨは、バイナリーツリーＢＴのリーフノードＬＮにそれぞれ保存される。ステップＳ１０５において、セキュリティプロトコル装置１００は、バイナリーツリーＢＴのルートハッシュＲＨをブロックチェーンＢＣに送信し、ブロックチェーン装置３００は、ルートハッシュＲＨを保存する。ステップＳ１０７において、セキュリティプロトコル装置１００は、オフチェーンフレームワークＯＣを介してバイナリーツリーＢＴを保存する、すなわち、セキュリティプロトコル装置１００が完全なバイナリーツリーＢＴを、オフチェーンフレームワークＯＣを介してデータベース装置２００に保存する。ステップＳ１０９において、セキュリティプロトコル装置１００が検証要求を受けた場合、セキュリティプロトコル装置１００は、ブロックチェーンＢＣに位置しているブロックチェーン装置３００のルートハッシュＲＨと、オフチェーンフレームワークＯＣを介してデータベース装置２００に保存されているバイナリーツリーＢＴのルートハッシュＲＨを比較することにより、オフチェーンフレームワークＯＣを介して保存されているバイナリーツリーＢＴの正確さを検証する。
【００４１】
図６を参照すると、図６は、本発明の別の実施形態による検証法のフローチャートである。本実施形態において、検証方法は、図３に示した検証システム１０ａによって実現することができるが、これに限定されるものではない。ステップＳ２０１において、セキュリティプロトコル装置１００は複数の端末装置４００から複数の記録データＲＤおよび複数の識別データＩＤを、例えば、１つまたは複数のオフチェーン装置および／または、ブロックチェーンＢＣに関与しない１つまたは複数のチャンネル、および記録データＲＤにそれぞれ対応する識別番号ＩＤから構成される、例えばオフチェーンフレームワークを介してオフチェーン方式により受信する。ステップＳ２０３において、セキュリティプロトコル装置１００が識別データＩＤを受信した後、セキュリティプロトコル装置１００は、識別データＩＤに従ったリーフノードＬＮに対応する複数の識別番号ＩＮをそれぞれ生成し、バイナリーツリーＢＴのそれぞれのリーフノードＬＮは固有の識別番号に対応する。例えば、セキュリティプロトコル装置１００はそれぞれの識別データＩＤのハッシュ値から複数の所定のビットを抽出し、それぞれの識別番号ＩＮを生成する。バイナリーツリーＢＴが高さの値Ｈを有する場合、所定のビットは、それぞれの識別データＩＤのハッシュ値の最初のＨ−１ビットである。ステップＳ２０５において、セキュリティプロトコル装置１００は、記録データＲＤをハッシュ関数によって少なくとも一つのバイナリーツリーＢＴに統合する。ステップＳ２０７において、セキュリティプロトコル装置１００は、識別番号ＩＮに従って、記録データＲＤのハッシュ値ＲＤＨを、対応するリーフノードＬＮに保存する。ステップＳ２０９において、セキュリティプロトコル装置１００は、バイナリーツリーＢＴのルートハッシュＲＨをブロックチェーンＢＣに送信し、ブロックチェーン装置３００は、ルートハッシュＲＨを保存する。ステップＳ２１１において、セキュリティプロトコル装置１００は、バイナリーツリーＢＴを複数のスライスＢＴＳに切る。ステップＳ２１３において、セキュリティプロトコル装置１００は、オフチェーンフレームワークＯＣを介して、スライスＢＴＳを対応する端末装置４００に返す。次に、それぞれの端末装置４００は、受信したそれぞれのスライスＢＴＳの正当性を検証する。ステップＳ２１５において、スライスＢＴＳが不正であると検証されている場合、対応する端末装置４００は、ブロックチェーンＢＣに抗議メッセージを送信する。ステップＳ２１７において、スライスＢＴＳが正しいと検証されている場合、端末装置４００は、ブロックチェーンＢＣに抗議メッセージを送信する必要がない。ステップＳ２１９において、セキュリティプロトコル装置１００は、オフチェーンフレームワークＯＣを介してバイナリーツリーＢＴを保存する、すなわち、完全なバイナリーツリーＢＴをデータベース装置２００に保存する。
【００４２】
ステップＳ２２１において、セキュリティプロトコル装置１００が検証要求を受けた場合、セキュリティプロトコル装置１００は、ブロックチェーンＢＣに位置するブロックチェーン装置３００のルートハッシュＲＨと、オフチェーンフレームワークＯＣを介してデータベース装置２００に保存されているバイナリーツリーＢＴのルートハッシュＲＨを比較することにより、オフチェーンフレームワークＯＣを介して保存されているバイナリーツリーＢＴの正確さを検証する。ステップＳ２２３において、セキュリティプロトコル装置１００が検索要求を受信し、検索要求がある記録データＲＤに向けられると、セキュリティプロトコル装置１００は記録データＲＤに対応する識別番号ＩＮに従ってオフチェーンフレームワークＯＣを介して保存されているバイナリーツリーＢＴのリーフノードＬＮを見つけ、識別番号ＩＮに対応するリーフノードＬＮを検索し、リーフノードＬＮから記録データＲＤのハッシュ値ＲＤＨを取得するか、またはリーフノードＬＮに記録データＲＤのハッシュ値ＲＤＨが存在しないことを検証する。
【００４３】
まとめると、従来のブロックチェーンアーキテクチャはすべてのデータをブロックチェーンに送信し、次いで、多数のブロックチェーン処理リソースを消費するブロックチェーンのマイナーを介してデータを検証する。本発明の実施形態の検証システムおよび検証方法によれば、データの信頼性（否認防止）を維持することを前提として、データの大部分をオフチェーンデータベース装置に設定することができ、オフチェーンデータベース装置のバイナリーツリーのルートハッシュと、セキュリティプロトコル装置によるブロックチェーンの対応するルートハッシュを比較することによって、バイナリーツリーの正確さを検証することができる。したがって、主な処理は、オフチェーンで実行されるように変換され、ブロックチェーン上の負荷を大幅に低減する。さらに、セキュリティプロトコル装置は識別番号に従って記録データを見つけることができ、それによって、データベース装置内の記録データのハッシュ値が保存されているリーフノードを迅速に検索し、記録データが存在するかどうかを迅速に検証することができる。本発明の実施形態の検証システムおよび手法により、システムのネットワーク送信要求、総処理量、処理時間、処理コストを低減することができる。また、ブロックチェーンチップを備えた端末装置は、様々なオブジェクトに設定または統合することができ、実用上において、より簡素および便利であり、オブジェクト品質の信頼性およびオブジェクトの価値を向上させることができる。
【００４４】
本発明を例として、好ましい実施形態に関して説明したが、本発明は開示された実施形態に限定される必要はないことを理解されたい。当業者にとって、本発明の趣旨内の様々な修正および改良は、本発明の範囲内に包含される。本発明の範囲は、添付の特許請求の範囲に基づく。
【図面の簡単な説明】
【００４５】
【図１】図１は、本発明の一実施形態による検証システムの概略ブロック図である。
【図２】図２は、本発明の一実施形態によるバイナリーツリーの概略図である。
【図３】図３は、本発明の別の実施形態による検証システムのブロック図である。
【図４】図４は、本発明の一実施形態によるバイナリーツリーのスライスの概略図である。
【図５】図５は、本発明の一実施形態による検証方法のフローチャートである。
【図６】図６は、本発明の別の実施形態による検証方法のフローチャートである。
【符号の説明】
【００４６】
１０、１０ａ  検証システム
１３  リーフノード番号
１００  セキュリティプロトコル装置
１１０  バイナリーツリー処理ユニット
１２０  検証ユニット
１３０  識別番号ユニット
１４０  位置検索ユニット
１５０  スライシングユニット
２００  データベース装置
３００  ブロックチェーン装置
３１０  スマートコントラクト
４００  端末装置
４１０  記録データ生成ユニット
４２０  識別データ生成ユニット
４３０  スライス検証ユニット
４４０  識別番号ユニット
【図１】
2020182214.tif 000003
【図２】
2020182214.tif 000004
【図３】
2020182214.tif 000005
【図４】
2020182214.tif 000006
【図５】
2020182214.tif 000007
【図６】
2020182214.tif 000008