特許拒絶査定不服審判
2024-001547
ブロックチェーンとは異なる形式のストレージに格納されるブロックチェーンデータを検証する方法およびシステム
- 審判番号
- 2024-001547
- 法域
- 特許
- 審判種別
- 拒絶査定不服審判(拒絶査定不服の審決)
- 出願番号
- 特願2021-560366
- 請求日
- 2024年01月29日
- 審決日
- 2024年11月07日
- 公報発行日
- 2024年11月29日
- 結論
- 原査定取消(特許/登録すべき)
- 当事者
- 【請求人】ライン プラス コーポレーション
- 【請求人代理人】弁理士法人高田・高橋国際特許事務所
- 審判長/審判官
- 審判長 林 毅
- 審判官 大塚 俊範
- 審判官 山崎 慎一
- 分類
- P18 .121-WY (H04L)
- 条文(本文から自動抽出・参考)
- 特許法第29条第2項
- データ出所
- 審決公報(XML)
事件の表示
特願2021-560366「ブロックチェーンとは異なる形式のストレージに格納されるブロックチェーンデータを検証する方法およびシステム」拒絶査定不服審判事件〔令和 2年10月22日国際公開、WO2020/213763、令和 4年 9月 8日国内公表、特表2022-539283、請求項の数(20)〕について、次のとおり審決する。
結論
結 論
原査定を取り消す。
本願の発明は、特許すべきものとする。
理由
理 由
第1 手続の経緯
本願は、2019年(平成31年)4月18日を国際出願日とする特許出願であって、その手続の経緯は以下のとおりである。
令和5年 6月14日付け:拒絶理由通知書
令和5年 8月17日 :意見書、手続補正書の提出
令和5年11月 7日付け:拒絶査定(原査定)
令和6年 1月29日 :審判請求書の提出
第2 原査定の概要
原査定(令和5年11月7日付け拒絶査定)の概要は次のとおりである。
本願請求項1、12ないし15に係る発明は、以下の引用文献1に記載された発明に基いて、その発明の属する技術の分野における通常の知識を有する者(以下、「当業者」という。)が容易に発明することができたものであるから、特許法第29条第2項の規定により特許を受けることができない。
本願請求項2ないし11、16ないし20に係る発明は、以下の引用文献1に記載された発明および引用文献2に記載された発明に基いて、当業者が容易に発明することができたものであるから、特許法第29条第2項の規定により特許を受けることができない。
引用文献1 特開2017-207979号公報
引用文献2 中国特許出願公開第108734453号明細書
第3 本願発明
本願請求項1ないし20に係る発明(以下、それぞれ「本願発明1」ないし「本願発明20」という。)は、令和5年8月17日に提出された手続補正書により補正された特許請求の範囲の請求項1ないし20に記載された事項により特定される発明であり、このうち、本願発明1は、以下のとおりの発明である。
「 コンピュータ装置が実行するデータ検証方法であって、
前記コンピュータ装置が含む少なくとも1つのプロセッサが、ブロックチェーンからブロックチェーンデータの検証対象ブロックの第1ブロック情報を照会する段階、
前記少なくとも1つのプロセッサが、前記ブロックチェーンの前記ブロックチェーンデータを異なる構造で格納するストレージから前記検証対象ブロックの第2ブロック情報を照会する段階、および
前記少なくとも1つのプロセッサが、前記第1ブロック情報と前記第2ブロック情報とを比較することで、前記ストレージに格納された前記検証対象ブロックの前記ブロックチェーンデータとしての有効性を検証する段階
を含む、データ検証方法。」
本願発明2ないし12は、本願発明1を減縮した発明であり、本願発明13及び14はそれぞれ、本願発明1ないし12のうちのいずれか一項に記載の方法をコンピュータ装置に実行させるための「コンピュータプログラム」の発明、及び当該コンピュータプログラムが記録されている「記録媒体」の発明として特定したものであり、本願発明15ないし20はそれぞれ、本願発明1ないし6を「コンピュータ装置」の発明として特定したものである。
第4 引用文献、引用発明等
1 引用文献
(1)引用文献1記載事項
引用文献1には、図面とともに、次の事項が記載されている。(下線は当審で付加。以下同様。)
ア 「【技術分野】
【0001】
本発明は、改ざん検知システム、及び改ざん検知方法等に関する。
・・(略)・・
【発明が解決しようとする課題】
【0005】
しかし、特許文献1に記載されるような従来の技術では、データベースに記録されているデータに対して改ざんが行われた場合、容易に検知することができない。
【0006】
そこで、本発明は、上記事情に鑑み、データベースに記録されているデータに対して行われた改ざんを、検知可能にすることを目的とする。
【課題を解決するための手段】
【0007】
本発明による改ざん検知システムは、所定のデータに対してハッシュ関数を用いて計算したダイジェストを記憶するブロックチェーンデータベースと、所定のデータを記憶するデータベースと、所定のデータに対する参照要求を受信した場合に、データベースから所定のデータを抽出し、抽出した当該所定のデータからハッシュ関数を用いてハッシュ値を計算し、当該ハッシュ値が、前記ブロックチェーンデータベースに記憶された、所定のデータに対応するダイジェストと一致するか否かを判定し、抽出した所定のデータを出力する参照処理部と、を備える。」
イ 「【0012】
<1.システム構成の概要>
図1は、本実施形態に係る改ざん検知システム1のシステム構成の一例を示している。本実施形態に係る改ざん検知システム1は、データベースに蓄積されるデータに施される改ざんを検知することができる。本実施形態では、一例として、データベースに蓄積されるデータは株主名簿関係情報であるとして説明する。データベースに蓄積される他のデータとしては、保険証券情報、与信情報、銀行取引情報、不動産取引情報等がある。
【0013】
図1に示すように改ざん検知システム1は、インターネット等のネットワークNに接続されたWEBサーバ200と、信託銀行ノード100A、証券会社ノード100B、発行体(株式の発行体)ノード100C(以下、これらのノードをまとめて単に「ノード100」とも呼ぶ。)と、データベース300とを備えている。例えば、株を保有する投資家が株主名簿に登録された情報を変更したい場合には、信託銀行ノード100A、又は証券会社ノード100Bに変更を依頼することで、名簿の更新が行われる。
【0014】
ネットワークNは、無線ネットワークや有線ネットワークにより構成される。通信ネットワークの一例としては、携帯電話網や、PHS(Personal Handy-phone System)網、無線LAN(Local Area Network)、3G(3rd Generation)、LTE(Long Term Evolution)、4G(4th Generation)、WiMax(登録商標)、赤外線通信、Bluetooth(登録商標)、有線LAN、電話線、電灯線ネットワーク、IEEE1394等に準拠したネットワークがある。
【0015】
ノード100は、ネットワークNに接続されたコンピュータであり、例えばPCやサーバ装置等が挙げられる。また、ノード100は、例えば携帯電話やスマートフォン、PC(Personal Computer)、PDA(Personal Digital Assistants)、タブレット、ウェアラブル(Wearable)端末、ゲーム機等でもよい。信託銀行ノード100A、証券会社ノード100B、及び発行体ノード100Cは、互いにP2P(Peer to Peer)接続されており、ブロックチェーンを構成している。
【0016】
WEBサーバ200は、ネットワークNに接続されたコンピュータであり、例えばPCやサーバ装置等が挙げられる。なお、WEBサーバ200は、ノード100それぞれともP2P接続をしている。
【0017】
データベース300は、本実施形態ではWEBサーバ200の外部ストレージとして、WEBサーバ200に接続され、管理されるストレージ装置である。なお、データベース300は、WEBサーバ上に構築される構成に限定されず、ネットワークNに接続される、ストレージ管理用のサーバに構築される構成でもよい。
【0018】
<2.WEBサーバ200、データベース300>
図2を用いてWEBサーバ200、及びデータベース300の機能構成について説明する。図2は、本実施形態に係るWEBサーバ200及びデータベース300の機能ブロック図である。
【0019】
(2-1.データベース300)
データベース300は、それぞれIDをキーとして正規化された、銘柄情報テーブル331と、顧客情報テーブル332と、所有権情報テーブル333とを有している。
【0020】
図3は銘柄情報テーブル331の一例を示す図である。銘柄情報テーブル331には、図3に示すように、銘柄IDに,銘柄コード、銘柄名、及び売買単位等が対応付けられて保存されている。さらに、本実施形態では、銘柄情報テーブル331の各レコードには、後述するWEBサーバ200の処理によって、そのレコードを更新したトランザクションのIDが対応付けられて保存されている。
【0021】
図4は顧客情報テーブル332の一例を示す図である。顧客情報テーブル332には、図4に示すように、顧客IDに、顧客コード、顧客名、及び住所等が対応付けられて保存されている。さらに、本実施形態では、顧客情報テーブル332の各レコードには、後述するWEBサーバ200の処理によって、そのレコードを更新したトランザクションのIDが対応付けられて保存されている。
【0022】
また、図5は所有権情報テーブル333の一例を示す図である。所有権情報テーブル333には、図5に示すように、所有権IDに、銘柄IDが対応付けられて保存されている。さらに、本実施形態では、所有権情報テーブル333の各レコードには、後述するWEBサーバ200の処理によって、そのレコードを更新したトランザクションのIDが対応付けられて保存されている。
【0023】
(2-2.WEBサーバ200)
図2に示すように、WEBサーバ200は、更新処理部201と、参照処理部202とを備えている。
(2-2-1.更新処理部201)
更新処理部201は、ノード100からデータベース300への更新要求を受信した場合に、書込み処理を実行する。更新処理部201は、書込み処理として、
・データベース300への書込み処理
・ブロックチェーンDB131への書込み処理
を行う。
【0024】
・データベース300への書込み処理
更新処理部201は、データベース300への書込み処理として、ノード100からの更新要求に従い、データベース300上のレコードを更新する。レコードの更新には、例えば既存のSQL等の言語を用いることが好ましい。
【0025】
・ブロックチェーンDB131への書込み処理
更新処理部201は、後述するブロックチェーンDB131への書込み処理として、データベース300への書込み処理において更新したレコードについて、所定のハッシュ関数を用いてハッシュ値(以下、「更新レコードダイジェスト」とも呼ぶ。更新ダイジェストの一例である。)を計算する。
【0026】
次に、更新処理部201は、計算した更新レコードダイジェストを含むトランザクションを作成する。このとき、更新処理部201は、作成したトランザクションに対して一意なID(トランザクションID)を割り当て、更新が行われたテーブルの該当するレコードに、当該トランザクションのIDを対応付けて保存する。なお、トランザクションの詳細については、図7を用いて後述する。さらに、更新処理部201は、作成したトランザクションを、P2Pネットワークを介して、ノード100へブロードキャストする(出力の一例である。)。
【0027】
ブロードキャストされたトランザクションは、後述するノード100のマイニング部104の処理によって、ブロックに格納され、ブロックチェーンにつなげられる。
【0028】
(2-2-2.参照処理部202)
参照処理部202は、ノード100からデータベース300に格納されたデータの参照要求を受信した場合に、読出し処理を実行する。参照処理部202は、読出し処理として、
・データベース300に対する抽出処理
・ブロックチェーンDB131に対する抽出処理
・突合処理
を行う。
【0029】
・データベース300に対する抽出処理
参照処理部202は、ノード100から参照要求を受信した場合に、該当するレコード(生データ)を、データベース300から抽出する。さらに、参照処理部202は、データベース300から抽出したレコードからダイジェスト(以下、「参照レコードダイジェスト」とも呼ぶ。)を計算する。
【0030】
・ブロックチェーンDB131に対する抽出処理
参照処理部202は、ノード100から参照要求を受信した場合に、該当するレコードの更新レコードダイジェストを、ブロックチェーンDB131から抽出する。具体的には、参照処理部202は、データベース300に対する抽出処理によって抽出したレコードを参照し、当該レコードに対応するトランザクションIDを取得する。次に、参照処理部202は、ノード100に対して、トランザクションIDを指定して、データ参照要求をP2Pネットワークを介して送信する。これによって参照処理部202は、後述するノード100の処理によって、指定したトランザクションIDに対応する更新レコードダイジェストを取得することができる。
【0031】
・突合処理
次に、参照処理部202は、データベース300から抽出したレコードから計算した参照レコードダイジェストと、ブロックチェーンDB131から抽出した更新レコードダイジェストとを突合する。上述のとおり、ブロックチェーンDB131に格納されているデータは、改ざんされていないデータである。従って、データベース300から抽出したレコードのダイジェストと、ブロックチェーンDB131に格納されていたダイジェストとを突合することで、データベース300への改ざんを検知することができる。
【0032】
参照処理部202は、例えば、突合させたダイジェスト同士が一致した場合には、データベース300から抽出したレコード(生データ)を、参照要求を行ったノード100に対して送信する。また、例えば参照処理部202は、突合させたダイジェスト同士が一致しなかった場合には、アラートとともにレコードを出力することも可能である。
【0033】
<3.ノード100>
次に、図6を用いてノード100の機能構成について説明する。図6は、本実施形態に係るノード100の機能ブロック図である。図6に示すように、ノード100は、ブロードキャスト通信部101と、要求部102と、応答部103と、マイニング部104と、記憶部130とを備える。さらに、図6に示すように、記憶部130には、ブロックチェーンDB131が記録されている。ブロックチェーンDB131は、信託銀行ノード100A、証券会社ノード100B、及び発行体ノード100Cのすべてのノードに格納される分散型データベースである。」
ウ 「【0050】
次に、データベース300に登録されたデータを照会する場合、まず、ノード100は、登録内容の参照要求を、ネットワークNを介してWEBサーバ200へ送信する(S13)。WEBサーバ200における参照処理部202は、参照要求があったレコードをデータベース300から抽出し、抽出したレコードをハッシュ化して参照レコードダイジェストを計算する(S23)。また、参照処理部202は、抽出したレコードに対応するトランザクションIDを指定して、ノード100に対してデータ参照要求を送信する。これによって、参照処理部202は、ノード100から更新レコードダイジェストを取得する(S24)。
【0051】
参照処理部202は、計算した参照レコードダイジェストと、取得した更新レコードダイジェストとを突き合わせ、データの正当性を検証する(S25)。正当性が検証できた場合には、参照処理部202は、データベース300から抽出した生データを、ノード100へ送信する(S26)。なお、更新処理部201の処理対象が更新操作である場合には、参照処理部202は、参照要求の対象となったテーブルの更新操作に関する情報からダイジェストを計算する。さらに参照処理部202は、トランザクションIDを指定してノード100から取得したダイジェスト(更新操作ダイジェスト)と、計算したダイジェストとを突合する。
【0052】
このように、本実施形態に係る改ざん検知システム1においては、データベース300に登録するデータを、ハッシュ化し、ブロックチェーン上においても登録する。これによって、データベース300上のデータのハッシュ値と、対応するブロックチェーン上のダイジェストとを突合させることによって、改ざんを検知することができる。
【0053】
<ハードウェア構成>
以下、図9を参照しながら、第1の実施形態及び第2の実施形態において上述してきたノード100、及びWEBサーバ200をコンピュータ800により実現する場合のハードウェア構成の一例を説明する。なお、それぞれの装置の機能は、複数台の装置に分けて実現することもできる。
【0054】
図9に示すように、コンピュータ800は、プロセッサ801、メモリ803、記憶装置805、入力I/F部807、データI/F部809、通信I/F部811、及び表示装置813を含む。
【0055】
プロセッサ801は、メモリ803に記憶されているプログラムを実行することによりコンピュータ800における様々な処理を制御する。例えば、ノード100のブロードキャスト通信部101や要求部102、応答部103、マイニング部104、WEBサーバ200の更新処理部201や参照処理部202、などは、メモリ803に一時記憶された上で、主にプロセッサ801上で動作するプログラムとして実現可能である。
エ 「図1
[図:0001416307000001.jpg]
」
オ 「図2
[図:0001416307000002.jpg]
」
カ 「図6
[図:0001416307000003.jpg]
」
キ 「図8
[図:0001416307000004.jpg]
」
(2)引用発明
上記(1)の特に下線部に着目すると、引用文献1には、次の発明(以下、「引用発明」という。)が記載されていると認められる。
「コンピュータにより実現するWEBサーバが実行する改ざん検知方法であって、
前記コンピュータが含むプロセッサが、メモリに記憶されているプログラムを実行することにより実現する参照処理部が、ブロックチェーンを構成しているノードにトランザクションIDを指定してデータ参照要求を送信することによって、ブロックチェーンDBから前記トランザクションIDに対応する更新レコードダイジェストを取得する段階、
前記参照処理部が、前記トランザクションIDが対応付けられたレコードが保存されているデータベースから参照要求があったレコードを抽出する段階、および、
前記参照処理部が、取得した前記更新レコードダイジェストと前記参照要求に応じて抽出したレコードから計算した参照レコードダイジェストとを突き合わせることで、前記データベースに蓄積されるデータに施される改ざんを検知する段階、
を含む、改ざん検知方法。」
第5 対比・判断
1 本願発明1について
(1)対比
本願発明1と引用発明とを対比する。
ア 引用発明の「コンピュータにより実現するWEBサーバが実行する改ざん検知方法」は、後述する相違点を除いて、本願発明1の「コンピュータ装置が実行するデータ検証方法」に相当する。
イ 引用発明の「ブロックチェーンDBから」「取得する」「前記トランザクションIDに対応する更新レコードダイジェスト」は、「ブロックチェーンDB」を構成するブロックチェーンデータのうち、「前記トランザクションIDに対応する更新レコードダイジェスト」を含む“検証対象ブロック”から取得されているといえるので、本願発明1の「ブロックチェーンデータの検証対象ブロックの第1ブロック情報」に相当する。
また、引用発明の「更新レコードダイジェストを取得する」ことは、本願発明1の「第1ブロック情報を照会する」ことに相当する。
よって、引用発明の「前記コンピュータが含むプロセッサが、メモリに記憶されているプログラムを実行することにより実現する参照処理部が、ブロックチェーンを構成しているノードにトランザクションIDを指定してデータ参照要求を送信することによって、ブロックチェーンDBから前記トランザクションIDに対応する更新レコードダイジェストを取得する段階」は、本願発明1の「前記コンピュータ装置が含む少なくとも1つのプロセッサが、ブロックチェーンからブロックチェーンデータの検証対象ブロックの第1ブロック情報を照会する段階」に相当する。
ウ 引用発明の「データベース」は、本願発明1の「ストレージ」に相当する。
そして、引用発明の「前記参照処理部が、前記トランザクションIDが対応付けられたレコードが保存されているデータベースから参照要求があったレコードを抽出」し、「前記参照要求に応じて抽出したレコードから計算した参照レコードダイジェスト」と、本願発明1の「ストレージから」照会される「前記検証対象ブロックの第2ブロック情報」とは、少なくとも1つのプロセッサによって取得される、前記検証対象ブロックに対応する情報である点で、共通する。
エ 引用発明の「改ざんを検知する」ことは、本願発明1の「有効性を検証する」ことに相当する。
そして、引用発明の「前記参照処理部が、取得した前記更新レコードダイジェストと前記前記参照要求に応じて抽出したレコードから計算した参照レコードダイジェストとを突き合わせることで、前記データベースに蓄積されるデータに施される改ざんを検知する段階」と、本願発明1の「前記少なくとも1つのプロセッサが、前記第1ブロック情報と前記第2ブロック情報とを比較することで、前記ストレージに格納された前記検証対象ブロックの前記ブロックチェーンデータとしての有効性を検証する段階」とは、少なくとも第1のプロセッサが、前記第1ブロック情報と前記検証対象ブロックに対応する情報とを比較することで、前記ストレージに格納された前記検証対象ブロックに対応するデータの有効性を検証する段階である点で、共通する。
(2)一致点、相違点
したがって、本願発明1と引用発明とは、以下の点において一致ないし相違する。
(一致点)
「 コンピュータ装置が実行するデータ検証方法であって、
前記コンピュータ装置が含む少なくとも1つのプロセッサが、ブロックチェーンからブロックチェーンデータの検証対象ブロックの第1ブロック情報を照会する段階、
前記少なくとも1つのプロセッサが、前記検証対象ブロックに対応する情報を取得する段階、および
前記少なくとも1つのプロセッサが、前記第1ブロック情報と前記検証対象ブロックに対応する情報とを比較することで、前記ストレージに格納された前記検証対象ブロックに対応するデータの有効性を検証する段階
を含む、データ検証方法。」
(相違点)
(相違点1)
本願発明1においては、「ストレージ」が「前記ブロックチェーンの前記ブロックチェーンデータを異なる構造で格納」するものであるのに対し、引用発明において、「データベース」に格納されている「前記参照要求に応じて抽出したレコード」は、「ブロックチェーンDB」のブロックチェーンデータであるとはいえず、よって、当該「データベース」は「ブロックチェーンデータを異なる構造で格納」するものではない点。
(相違点2)
本願発明1においては、「ストレージから検証対象ブロックの第2ブロック情報を照会する」ものであるのに対し、引用発明は、データベースから抽出したレコードから参照レコードダイジェストを計算するものであるところ、データベースからレコードを照会するものとはいえても、データベースから参照レコードダイジェストを照会するものではない点。
(相違点3)
本願発明1においては、「前記第1ブロック情報と前記第2ブロック情報とを比較することで、前記ストレージに格納された前記検証対象ブロックの前記ブロックチェーンデータとしての有効性を検証する」ものであるのに対し、引用発明においては、「取得した前記更新レコードダイジェストと前記参照要求に応じて抽出したレコードから計算した参照レコードダイジェストとを突き合わせることで、前記データベースに蓄積されるデータに施される改ざんを検知する」ものであり、ブロックチェーンデータとしての有効性を検証するものではない点。
(3)相違点についての判断
相違点1~3についてまとめて検討する。
上記相違点1及び相違点2から明らかなように、引用発明において改ざん検知の対象となる「データベースに蓄積されるデータ」(参照要求に応じて抽出したレコード)は、「ブロックチェーンDB」のブロックチェーンデータではない。よって、上記相違点3から明らかなように、本願発明1は、「前記ストレージに格納された前記検証対象ブロックの前記ブロックチェーンデータとしての有効性を検証する」ことを目的としたものであるのに対し、引用発明は、「前記データベースに蓄積されるデータに施される改ざんを検知する」ものであるから、両者は発明の目的において相違している。
そして、引用発明における「データベースに記録されているデータに対して行われた改ざんを、検知可能にする」という発明の目的を、本願発明1のごとく「前記ストレージに格納された前記検証対象ブロックの前記ブロックチェーンデータとしての有効性を検証する」ものに変更すべき動機付けはなく、さらにそのために、引用発明において、「データベース」に「ブロックチェーンDB」のブロックチェーンデータを異なる構造で格納することにより相違点1~3に係る本願発明1の構成を想到することは当業者であっても容易であったとはいえない。
また、相違点1~3に係る本願発明1の構成が本願出願前における技術常識であったとも認められない。
したがって、本願発明1は、当業者であっても、引用発明に基いて容易に発明をすることができたものとはいえない。
2 本願発明2ないし20について
本願発明2ないし12は、本願発明1を減縮した発明であり、本願発明13及び14はそれぞれ、本願発明1ないし12のうちのいずれか一項に記載の方法をコンピュータ装置に実行させるための「コンピュータプログラム」の発明、及び当該コンピュータプログラムが記録されている「記録媒体」の発明として特定したものであり、本願発明15ないし20はそれぞれ、本願発明1ないし6を「コンピュータ装置」の発明として特定したものであるから、本願発明1と同じ理由により、当業者であっても、引用発明に基いて容易に発明をすることができたものとはいえない。
第6 むすび
以上のとおり、本願発明1ないし20は、当業者が引用発明に基いて容易に発明をすることができたものではない。
したがって、原査定の理由によって、本願を拒絶することはできない。
また、他に本願を拒絶すべき理由を発見しない。
よって、結論のとおり審決する。
審決本文(J-PlatPat)
J-PlatPatの審決検索トップを開きます。番号入力で「審判番号」を選び、下の番号を貼り付けて検索してください。
J-PlatPat 審決検索を開く
2024-001547