JP6495346B2 - Information processing system - Google Patents
Information processing system Download PDFInfo
- Publication number
- JP6495346B2 JP6495346B2 JP2017001935A JP2017001935A JP6495346B2 JP 6495346 B2 JP6495346 B2 JP 6495346B2 JP 2017001935 A JP2017001935 A JP 2017001935A JP 2017001935 A JP2017001935 A JP 2017001935A JP 6495346 B2 JP6495346 B2 JP 6495346B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- block
- transaction
- temporary
- digest value
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、情報処理システムに関する。 The present invention relates to an information processing system.
近年、ブロックチェーンまたはブロックチェーン技術と呼ばれる仕組みが仮想通貨を中心に普及しつつある。ブロックチェーンは2008年に仮想通貨ビットコインの中核技術として登場した。ブロックチェーンとは、分散ノードで構成されるネットワークにおいて、悪意のあるノードが一定割合以内という条件下で分散ノード間の情報同期を可能にする技術である。分散ノードが保有する情報は、台帳データまたは台帳と呼ばれ、データブロックをつないだ論理構造を持つ。 In recent years, a mechanism called block chain or block chain technology is becoming popular mainly in virtual currency. Blockchain appeared in 2008 as the core technology of virtual currency bitcoin. Blockchain is a technology that enables information synchronization between distributed nodes under a condition that malicious nodes are within a certain ratio in a network composed of distributed nodes. Information held by a distributed node is called ledger data or ledger, and has a logical structure that connects data blocks.
データブロックには、ブロックチェーンネットワークに発行されたトランザクションに関する情報が格納される。ブロックチェーンネットワークの維持に参加するノードは、ブロックチェーンネットワークに発行された各トランザクションを検証し、複数のトランザクションをまとめてデータブロックの生成を始める。データブロックの生成にはある条件があり、ブロックチェーンの維持に参加するノードは条件を満たすデータブロックを探す。条件を満たすデータブロックを生成できたノードは他のノードに対して見つけたデータブロックを送信するとともに自身の台帳データにそのブロックを追加する。データブロックを受け取ったノードは、データブロックに格納されているトランザクションやデータブロックを検証し、自身が持つ台帳データにつなぐ。 The data block stores information related to transactions issued to the block chain network. A node participating in the maintenance of the blockchain network verifies each transaction issued to the blockchain network, and collects a plurality of transactions to start generating a data block. There are certain conditions for generating data blocks, and nodes participating in the maintenance of the block chain search for data blocks that satisfy the conditions. A node that has been able to generate a data block that satisfies the condition transmits the data block found to other nodes and adds the block to its own ledger data. The node that has received the data block verifies the transaction and data block stored in the data block, and connects to the ledger data held by the node.
データブロックには、格納するトランザクションの情報の他、ひとつ前のデータブロックを示す情報やブロック生成条件に関する情報も含まれており、誰でも検証し、情報の正しさを確認することができる。データブロック間には依存関係があり、さらにブロック生成には条件があるため、過去のデータブロックになるほど改竄が困難になるという特徴がある。台帳データには、ブロックチェーンネットワークに発行された全部のトランザクションが格納される。 The data block includes information on the transaction to be stored, information indicating the immediately preceding data block, and information on the block generation condition, and anyone can verify and confirm the correctness of the information. Since there is a dependency relationship between data blocks and there are conditions for block generation, there is a feature that the past data blocks become more difficult to falsify. The ledger data stores all transactions issued to the blockchain network.
ブロックチェーンの実装はいくつか知られている。最初に実装されたブロックチェーンは仮想通貨のビットコインである(非特許文献1参照)。ビットコインでは、トランザクションのつながりで取引を表現している。近年では、台帳データにプログラムコードを埋め込み、任意の処理をトランザクションにより実行させ、その結果を台帳データに格納することができるブロックチェーンの実装も登場している(非特許文献2参照)。プログラムコードを実行できるプラットフォームでは、トランザクションの他、プログラムコードや処理結果に関する情報も台帳データに保持され、分散ノード間で同期されている。 Several blockchain implementations are known. The first implemented blockchain is a virtual currency bit coin (see Non-Patent Document 1). In Bitcoin, transactions are expressed as a series of transactions. In recent years, blockchain implementations have also appeared that can embed program code in ledger data, execute arbitrary processing by transactions, and store the results in the ledger data (see Non-Patent Document 2). In the platform that can execute the program code, in addition to the transaction, information about the program code and the processing result is also held in the ledger data and is synchronized between the distributed nodes.
しかしながら、ブロックチェーンでは、トランザクション情報のすべてがブロックチェーンに格納されるため、永続的に格納する必要のない一時情報のやり取りや保持が目的でも長期に渡り残り、情報が読み取られる危険性がある(分散ノードの数だけ流出のリスクが高まる)。また、台帳データにはすべてのトランザクションが格納されるため、永続的に必要とされる情報以外も格納されると台帳データが膨大になる。 However, in the blockchain, all transaction information is stored in the blockchain. Therefore, there is a risk that the information will be read for a long time even for the purpose of exchanging and maintaining temporary information that does not need to be stored permanently. The risk of outflow increases by the number of distributed nodes). Further, since all transactions are stored in the ledger data, the ledger data becomes enormous if information other than information that is permanently required is stored.
一時情報を保持するために台帳データとは別に一時情報用データ格納領域を新設し、一時情報をそのデータ格納領域に格納するとともに、ブロックへトランザクションを格納するときにトランザクションから一時情報を除くというアプローチをとった場合、次の課題がある。 In order to retain temporary information, a new temporary information data storage area is created separately from the ledger data, temporary information is stored in the data storage area, and temporary information is excluded from transactions when storing transactions in blocks. If you take this, there are the following issues.
一時情報を除けるようにするためには、その部分を除いてトランザクションに署名する必要があるが、一時情報を記載するフィールドを第三者により置き換えられてしまう可能性がある。仮に、トランザクションへの署名の他に、一時情報にのみ新たに電子署名を付与したとしても、同じ発行者の別のトランザクションの一時情報に置き換えられてしまう可能性がある。 In order to be able to remove the temporary information, it is necessary to sign the transaction excluding that part, but there is a possibility that the field describing the temporary information may be replaced by a third party. Even if a new electronic signature is given only to temporary information in addition to the signature on the transaction, it may be replaced with temporary information of another transaction of the same issuer.
したがって、かかる点に鑑みてなされた本発明の目的は、一時情報を格納することができるとともに、台帳データまたは、台帳データおよび台帳データ用データ格納領域を軽量化することを可能にすることである。 Accordingly, an object of the present invention made in view of such a point is to be able to store temporary information and to reduce the ledger data or the ledger data and the data storage area for the ledger data. .
上記の課題を解決するため、本発明に係る情報処理システムは、互いに情報を送受信する1つ以上のトランザクション発行装置と、複数のブロック生成検証装置とを備える情報処理システムであって、前記トランザクション発行装置は、本トランザクション情報及び一時情報を含むトランザクション情報(実施形態では、第1のトランザクション情報又は第2のトランザクション情報を意味する)を生成するトランザクション生成部と、前記トランザクション情報を前記ブロック生成検証装置に送信するトランザクション通信部と、を有し、前記ブロック生成検証装置は、前記本トランザクション情報及び前記本トランザクション情報のダイジェスト値を含み、前記一時情報を含まない格納用ブロックを生成するブロック生成部と、前記一時情報を一時情報用データ格納領域に格納し、前記格納用ブロックを台帳データに繋げる格納制御部と、前記一時情報、前記本トランザクション情報、前記本トランザクション情報のダイジェスト値、及び前記一時情報用データ格納領域のダイジェスト値を送信するブロック通信部と、他のブロック生成検証装置から送信された前記一時情報を格納した一時情報用データ格納領域から算出したダイジェスト値と、前記一時情報用データ格納領域のダイジェスト値とに基づいて前記一時情報を検証するブロック検証部と、を有することを特徴とする。 In order to solve the above-described problem, an information processing system according to the present invention is an information processing system including one or more transaction issuing devices that transmit / receive information to / from each other and a plurality of block generation verification devices. An apparatus includes a transaction generation unit that generates transaction information including the transaction information and temporary information (in the embodiment, means first transaction information or second transaction information), and the block generation verification apparatus that transmits the transaction information. A block generation unit that generates a storage block that includes the transaction information and a digest value of the transaction information, and does not include the temporary information. , Said temporary Information is stored in the temporary information data storage area and the storage block is connected to the ledger data, the temporary information, the transaction information, the digest value of the transaction information, and the temporary information data storage A block communication unit that transmits the digest value of the area; a digest value calculated from the temporary information data storage area that stores the temporary information transmitted from another block generation verification device; and a digest of the temporary information data storage area And a block verification unit that verifies the temporary information based on the value.
本発明によれば、一時情報を格納することができるとともに、ブロックチェーン及び台帳データ用データ格納領域を軽量化することができる。 ADVANTAGE OF THE INVENTION According to this invention, while being able to store temporary information, the block chain and the data storage area for ledger data can be reduced in weight.
[第1の実施形態]
まず、図1を参照して、本発明の第1の実施形態の機能構成について説明する。図1は、第1の実施形態に係る情報処理システム1の機能構成図である。
[First Embodiment]
First, the functional configuration of the first embodiment of the present invention will be described with reference to FIG. FIG. 1 is a functional configuration diagram of an
図1に示すように、情報処理システム1は、1つ以上のトランザクション発行装置2、及び複数のブロック生成検証装置3を備える。複数のトランザクション発行装置2及び複数のブロック生成検証装置3は、互いにP2P(Peer to Peer)型の通信ネットワーク(以降、「ブロックチェーンネットワーク」という)により接続され、情報を送受信する。
As shown in FIG. 1, the
トランザクション発行装置2は、スマートフォン、PC(Personal Computer)、タブレット等のコンピュータである。トランザクション発行装置2は、図2に示すようにトランザクション生成部21、電子署名付与部22、及びトランザクション通信部23を備える。
The transaction issuing
トランザクション生成部21は、ユーザの入力に基づき、図3に示すような第1のトランザクション情報を生成する。第1のトランザクション情報には、本トランザクション情報と一時情報とが含まれる。本トランザクション情報の一例は、情報処理システム1で利用される仮想通貨(ビットコイン)を用いた取引の情報である。また、本トランザクション情報は、計算処理を行うためのプログラムコード、計算処理の結果であってもよい。一例として、本トランザクション情報は、ユーザU1がユーザU2に送金したことを示す情報であり、金額、ユーザU1の識別情報、ユーザU2の識別情報等が含まれる。一時情報とは、取引の履歴としてブロックに永続的に保存される必要のない情報であり、例えば、暗号化された情報、該暗号化された情報を復号するためのコンテンツ復号鍵等である。このように、暗号化された情報、コンテンツ復号鍵等が一時情報に含まれることによって、例えば、暗号化された個人情報の利用者からの要望やサービス利用終了に伴い削除する運用や情報処理システム1に参加している利用者間でコンテンツ復号鍵の送受が完了した時点で削除する運用をすることが可能となる。
The
電子署名付与部22は、トランザクション生成部21によって生成された、本トランザクション情報と一時情報とを含む第1のトランザクション情報に秘密鍵を用いて暗号化することによって第1の電子署名を付与する。また、電子署名付与部22は、本トランザクション情報のみに、第1の電子署名と同一の秘密鍵による第2の電子署名を付与する。
The electronic
トランザクション通信部23はトランザクション生成部21によって生成された、第1のトランザクション情報、電子署名付与部22によって付与された第1の電子署名及び第2の電子署名をブロードキャストで、複数のブロック生成検証装置3に送信する。
The
ブロック生成検証装置3は、図4に示すように、ブロック通信部31、格納部32、トランザクション検証部33、ブロック生成部34、ブロック検証部35、及び格納制御部36を備える。
As shown in FIG. 4, the block
ブロック通信部31は、トランザクション発行装置2又は他のブロック生成検証装置3から送信された第1のトランザクション情報、第1の電子署名、及び第2の電子署名を受信する。また、ブロック通信部31は、他のブロック生成検証装置3から受信した、第1のトランザクション情報、第1の電子署名、及び第2の電子署名をさらに別のブロック生成検証装置3にブロードキャストで送信する。
The
格納部32は、各種情報及び各種情報をまとめた格納用ブロックを格納する。格納部32は、台帳データ格納領域321、台帳データ用データ格納領域322、及び一時情報用データ格納領域323を備える。
The
台帳データ格納領域321は、台帳データを格納する。台帳データとは、図5(a)に示すように前のブロックのブロックヘッダのハッシュ値、台帳データ用データ格納領域322に格納されている複数のトランザクション情報のダイジェスト値、一時情報用データ格納領域323のダイジェスト値、及び複数の本トランザクション情報を含む格納用ブロックを図6に示すように前のブロックに連鎖させたチェーン状の情報の集合である。なお、一時情報用データ格納領域323のダイジェスト値とは、一時情報用データ格納領域323に記憶されている一時情報全体のダイジェスト値である。
The ledger
ここで、「連鎖する」とは、各ブロックに、1つ前のブロックのブロックヘッダのハッシュ値を含めることである。このため、例えば、ブロックチェーンで互いに連鎖されているブロックのいずれかについて改竄が行われると、該ブロックのブロックヘッダのハッシュ値は全く異なる値となる。このため、ブロックヘッダのハッシュ値と、1つ後ろのブロックのブロックヘッダに記載されたハッシュ値とが異なることになる。したがって、トランザクション情報を改竄したことが明らかになり、改竄を防止する仕組みとして利用される。 Here, “to chain” means to include the hash value of the block header of the previous block in each block. For this reason, for example, if any of the blocks chained together in the block chain is altered, the hash value of the block header of the block becomes a completely different value. For this reason, the hash value of the block header is different from the hash value described in the block header of the next block. Therefore, it becomes clear that the transaction information has been tampered with and is used as a mechanism for preventing tampering.
台帳データ用データ格納領域322は、第1のトランザクション情報に含まれる電子署名付きの本トランザクション情報を格納する。
The ledger
一時情報用データ格納領域323は、台帳データに繋がれるブロックにそれぞれ含まれる本トランザクション情報に対応する一時情報を格納する。
The temporary information
トランザクション検証部33は、ブロック通信部31がトランザクション発行装置2から受信した第1のトランザクション情報の形式及び電子署名を検証する。具体的には、トランザクション検証部33は、第1のトランザクション情報の形式が所定の形式であるか否かを判定する。また、トランザクション検証部33は、電子署名の署名検証により第1のトランザクション情報が正当な発行者によるものであるか否かを判定する。また、トランザクション検証部33は、ブロック通信部31が他のブロック生成検証装置3から電子署名付きの第1のトランザクション情報を受信すると、受信した第1のトランザクション情報の形式及び電子署名を同様に検証する。
The
ブロック生成部34は、トランザクション検証部33によってトランザクション情報の形式が所定の形式であり、該トランザクション情報が正当な発行者によるものであると判定された場合、図5(a)に示すような、ブロック本体及びブロックヘッダからなる格納用ブロックを生成する。ブロック生成部34は、格納用ブロックのブロック本体に複数の、電子署名付きの本トランザクション情報を含め、一時情報を含めない。なお、ブロック本体に含まれる複数の本トランザクション情報の1つ以上は、対応する第1のトランザクション情報に一時情報が含まれていないものであってもよい。
When the
また、ブロック生成部34は、ブロックヘッダに、前に格納されたブロックのブロックヘッダのハッシュ値と、ブロック本体に含まれる複数のトランザクション情報のダイジェスト値と、一時情報用データ格納領域323のダイジェスト値とを含める。なお、ブロック生成部34は、トランザクション情報をツリー構造で台帳データ格納領域321に記憶させるが、このツリー構造におけるルートノードをダイジェスト値としてブロックヘッダに含んでもよい。
In addition, the
このとき、ブロック生成部34は、格納用ブロックがブロック生成条件を満たすためのノンス(Nonce)を探索する。ブロック生成条件とは、例えば、格納用ブロックのブロックヘッダのハッシュ値が閾値より小さくなるという条件である。
At this time, the
ブロック生成部34は、所定の条件を満たすノンスをみつけると、格納用ブロックを台帳データに繋げる。また、ブロック生成部34は、所定の条件を満たすノンスをみつけると、ブロック通信部31に、送受信用ブロックを他のブロック生成検証装置3に対してブロードキャストで送信させる。また、ブロック生成部34がノンスをみつけると、ブロック通信部31が送受信用ブロックを送信し、さらに送信した送受信用ブロックを自ら受信してもよい。この場合、格納制御部36は、受信した送受信用ブロックに対応する格納用ブロックを台帳データに繋げる。送受信用ブロックは、図5(b)に示すように、格納用ブロックに一時情報を加えた情報である。すなわち送受信用ブロックは、第1のトランザクション情報、第1の電子署名、及び第2の電子署名を有するブロック本体と、前のブロックのブロックヘッダのハッシュ値、台帳データ用データ格納領域322に格納されている複数のトランザクション情報のダイジェスト値、及び一時情報用データ格納領域323のダイジェスト値とを有するブロックヘッダと含む。
When the
ブロック検証部35は、ブロック通信部31が他のブロック生成検証装置3から送受信用ブロックを受信し、トランザクション検証部33が該送受信用ブロックに含まれる第1のトランザクション情報の正当性を検証する。
In the
具体的には、ブロック検証部35は、送受信用ブロックに含まれる本トランザクション情報からダイジェスト値を算出し、算出されたダイジェスト値とブロックヘッダに記載された台帳データ用データ格納領域322のダイジェスト値とが同一である場合に正当性を確認する。また、ブロック検証部35は、一時情報用データ格納領域323からダイジェスト値を算出し、算出されたダイジェスト値とブロックヘッダに記載された一時情報用データ格納領域323のダイジェスト値とが同一である場合に正当性を確認する。
Specifically, the
ブロック検証部35は、正当性が確認されると、本トランザクション情報を含み、一時情報を含まない格納用ブロックがブロック生成条件を満たすか否かを検証する。
When the validity is confirmed, the
格納制御部36は、第1のトランザクション情報を一意に識別するためのトランザクションID(Identification)、及び第1のトランザクション情報に含まれる一時情報を一時情報用データ格納領域323に格納させる。
The
また、格納制御部36は、ブロック生成部34が所定の条件を満たすノンスをみつけると、図6に示すように、格納用ブロックを台帳データ格納領域321に繋げる。また、格納制御部36は、ブロック通信部31が受信した送受信用ブロックに対応する格納用ブロックがブロック生成条件を満たすと判定されると、該格納用ブロックを台帳データに繋げる。
In addition, when the
また、格納制御部36は、所定のタイミングで一時情報用データ格納領域323に格納されている一時情報を削除する。例えば、格納制御部36は、トランザクションIDとともに一時情報を削除する旨の命令を含むトランザクション情報を受信し、該トランザクションに係る一時情報を削除することができる。また、格納制御部36は、一時情報用データ格納領域323に一時情報が格納されてから所定の時間が経過したときに一時情報を削除してもよいし、トランザクションの発生日時から所定の期間が経過したとき、又は他の情報管理装置に管理されている契約期間が徒過したときに一時情報を削除してもよい。削除のタイミングについては適宜設計される。
The
続いて、第1の実施形態におけるブロック生成検証装置3の情報処理方法について図7に示すシーケンス図を参照して説明する。
Next, an information processing method of the block
ブロック生成検証装置3のブロック通信部31は、トランザクション発行装置2からブロードキャストで送信された第1のトランザクション情報を受信する(ステップS11)。
The
ステップS11で第1のトランザクション情報が受信されると、トランザクション検証部33は、第1のトランザクション情報の形式及び電子署名を検証し、正当な発行者によるトランザクションであるか否かを判定する(ステップS12)。
When the first transaction information is received in step S11, the
ステップS12で、第1のトランザクション情報が正当な発行者によるトランザクションであると判定されると、格納制御部36は、一時情報をトランザクションIDなどのキー情報とともに一時情報用データ格納領域323に格納する(ステップS13)。
If it is determined in step S12 that the first transaction information is a transaction by a valid issuer, the
ステップS13で、一時情報が格納されると、ブロック生成部34は、格納用ブロックを生成する(ステップS14)。具体的には、ブロック生成部34は、ブロック本体に、複数の電子署名付き本トランザクションを含み、ブロックヘッダに複数の本トランザクションのダイジェスト値と、前のブロックのブロックヘッダのハッシュ値と、一時情報用データ格納領域323のダイジェスト値とを記載する。このとき、ブロック生成部34は、格納用ブロックがブロック生成条件を満たすようなノンスを探索する。
When the temporary information is stored in step S13, the
ステップS14で、ノンスがみつかると、格納制御部36は格納用ブロックを台帳データに繋げる。また、ブロック通信部31は、ブロック生成部34によって生成された格納用ブロックに含まれる第1のトランザクション情報と、ブロックヘッダに含まれるハッシュ値及びダイジェスト値とを含む送受信用ブロックを他のブロック生成検証装置3に対してブロードキャストで送信する(ステップS15)。このとき、ブロック通信部31が送信した送受信用ブロックを自ら受信し、格納制御部36が、受信した送受信用ブロックに対応する格納用ブロックを台帳データに繋げてもよい。
If a nonce is found in step S14, the
次に、送受信用ブロックを受信する他のブロック生成検証装置3の情報処理方法について図8を参照して説明する。
Next, an information processing method of another block
他のブロック生成検証装置3のブロック通信部31は、ブロードキャストで送信された送受信用ブロックを受信する(ステップS21)。
The
ステップS21で送受信用ブロックが受信されると、トランザクション検証部33は、送受信用ブロックに含まれる第1のトランザクションの形式及び電子署名を検証する(ステップS22)。
When the transmission / reception block is received in step S21, the
ステップS22で、第1のトランザクション情報が正当な発行者によるトランザクションであると確認されると、格納制御部36は、送受信用ブロックに含まれる一時情報を一時情報用データ格納領域323に格納する(ステップS23)。
When it is confirmed in step S22 that the first transaction information is a transaction by a valid issuer, the
ステップS23で一時情報が格納されると、ブロック検証部35は、一時情報用データ格納領域323からダイジェスト値を算出し、算出されたダイジェスト値とブロックヘッダに記載された一時情報用データ格納領域323のダイジェスト値とが同一である場合に正当性を確認する(ステップS24)。
When the temporary information is stored in step S23, the
ステップS24で、一時情報用データ格納領域323の正当性が確認されると、ブロック検証部35は、格納用ブロックがブロック生成条件を満たすか否かを検証する(ステップS25)。
When the validity of the temporary information
ステップS25で格納用ブロックがブロック生成条件を満たすと確認されると、格納制御部36は、格納用ブロックを台帳データに繋げる(ステップS26)。
When it is confirmed in step S25 that the storage block satisfies the block generation condition, the
以上のように、第1の実施形態によれば、ブロック生成検証装置3は、第1のトランザクション情報に含まれる情報のうち、永続的に格納する必要のない一時情報を一時情報用データ格納領域323に格納し、一時情報用データ格納領域323に格納された一時情報を適宜削除する。これにより台帳データ格納領域321及び台帳データ用データ格納領域322には一時情報を格納させる必要がないため、これらの領域の容量を低減することができる。
As described above, according to the first embodiment, the block
このとき、永続的に格納する本トランザクション情報の真正性を担保するために、本トランザクション情報に電子署名を付与する必要がある。また、一時情報の真正性を担保するために一時情報にも電子署名することが考えられるが、この場合、一時情報を記載するフィールドを第三者により置き換えられてしまう可能性がある。しかし、第1の実施形態によれば、本トランザクション情報に電子署名が付されるだけでなく、一時情報と本トランザクション情報を含む第1のトランザクション情報に電子署名が付されるため、一時情報が改竄されたり、第1のトランザクション情報に含まれる一時情報のみが置き換えられたりした場合にその旨を検出することができる。したがって、情報処理システム1は一時情報の真正性を担保することができる。
At this time, in order to secure the authenticity of the transaction information stored permanently, it is necessary to give an electronic signature to the transaction information. Further, in order to ensure the authenticity of the temporary information, it is conceivable to digitally sign the temporary information as well, but in this case, there is a possibility that the field describing the temporary information may be replaced by a third party. However, according to the first embodiment, not only the electronic signature is attached to the transaction information, but also the temporary information and the first transaction information including the transaction information are attached with the electronic signature. This can be detected when tampering occurs or only temporary information included in the first transaction information is replaced. Therefore, the
また、第1の実施形態によれば、ブロック生成検証装置3は、一時情報を含まない本トランザクション情報のみを含む格納用ブロックを台帳データ格納領域321に格納するが、他のブロック生成検証装置3には一時情報を含む送受信用ブロックを送信する。そのため、他のブロック生成検証装置3は、一時情報と本トランザクション情報とのいずれをも含む第1のトランザクション情報を受信し、受信した第1のトランザクション情報を正確に検証することができる。他のブロック生成検証装置3は、一時情報が真に対応する本トランザクション情報に対応していることを確認することができる。また、ブロック生成検証装置3は、台帳データに繋がれている本トランザクション情報に対応する一時情報全体を、一時情報用データ格納領域323のダイジェスト値を用いて検証するため、一時情報用データ格納領域323に格納されている一時情報のうちのいずれかの一時情報が取り換えられていた場合にもその旨を明らかにすることができる。これにより、一時情報全体についての真正性を確保することができる。
Further, according to the first embodiment, the block
また、第1の実施形態によれば、ブロック生成検証装置3は、台帳データ用データ格納領域322のダイジェスト値をブロックヘッダに含めて、他のブロック生成検証装置3に送信する。このため、他のブロック生成検証装置3は、ブロック本体に含まれる、複数の本トランザクション情報からダイジェスト値を算出し、算出されたダイジェスト値とブロックヘッダに含まれるダイジェスト値とに基づいて、複数の本トランザクション情報のうちのいずれかが置き換えられているか否かを判定することができる。具体的には、ブロック生成検証装置3は、算出されたダイジェスト値とブロックヘッダに含まれるダイジェスト値とが同一である場合、いずれの本トランザクション情報も置き換えられていないと判定し、算出されたダイジェスト値とブロックヘッダに含まれるダイジェスト値とが異なる場合、いずれか1つ以上の本トランザクション情報が置き換えられたと判定することができる。したがって、ブロック生成検証装置3から他のブロック生成検証装置3に送信されたブロックに含まれる複数の本トランザクション情報の真正性を確保することができる。
Further, according to the first embodiment, the block
したがって、ブロックチェーンが実現する全ての本トランザクション情報の記録性、改竄耐性を損なうことなく、格納部32に永続的に格納させる必要のない一時情報を一時的に保持したうえで記憶容量を低減させることができる。
Accordingly, the storage capacity is reduced after temporarily storing temporary information that does not need to be stored permanently in the
[第2の実施形態]
続いて、本発明の第2の実施形態について図面を参照して説明する。
[Second Embodiment]
Next, a second embodiment of the present invention will be described with reference to the drawings.
第2の実施形態に係る情報処理システム5は、第1の実施形態に係る情報処理システム1と同様に、1つ以上のトランザクション発行装置2、及び複数のブロック生成検証装置6を備える。複数のトランザクション発行装置2及び複数のブロック生成検証装置6は、互いにP2P(Peer to Peer)型の通信ネットワークにより接続され、情報を送受信する。なお、第1の実施形態における情報処理システム1と同様の構成ブロックについては同一の参照符号を付して、適宜、説明を省略する。
Similar to the
第2の実施形態においては、トランザクション生成部21は、ユーザによる入力に基づいて、図9に示すように、本トランザクション情報及び一時情報を生成する。また、トランザクション生成部21は、一時情報に基づいて一時情報のダイジェスト値を算出する。
In the second embodiment, the
電子署名付与部22は、トランザクション生成部21によって生成された、本トランザクション情報と、一時情報のダイジェスト値とを含む情報に電子署名を付与することによって暗号化トランザクション情報を生成する。
The electronic
トランザクション通信部23は、電子署名付与部22によって生成された暗号化トランザクション情報と一時情報とを含む第2のトランザクション情報をブロック生成検証装置6に送信する。
The
ブロック生成検証装置6は、図10に示すように、第1の実施形態のブロック生成検証装置3の各機能部に加えてキャッシュテーブル37を備える。キャッシュテーブル37には、第2のトランザクション情報に含まれる一時情報が記憶される。
As illustrated in FIG. 10, the block generation verification device 6 includes a cache table 37 in addition to the functional units of the block
トランザクション検証部33は、ブロック通信部31がトランザクション発行装置2から受信した第2のトランザクション情報の形式及び電子署名を検証する。
The
ブロック生成部34は、図11に示すような、ブロック本体及びブロックヘッダからなる格納用ブロックを生成する。ブロック生成部34は、ブロック本体に複数の、電子署名付きの暗号化トランザクション情報を含める。また、ブロック生成部34は、図12に示すように、前のブロックのブロックヘッダのハッシュ値、複数の本トランザクション情報のハッシュ値に加えて、キャッシュテーブル37のダイジェスト値をブロックヘッダに含める。
The
ブロック検証部35は、他のブロック生成検証装置6から受信した、一時情報を格納しているキャッシュテーブル37からダイジェスト値を算出する。そして、ブロック検証部35は、算出したダイジェスト値と、送受信用ブロックのブロックヘッダに記載されたキャッシュテーブル37のダイジェスト値とが一致するか否かを検証する。
The
また、ブロック検証部35は、一時情報用データ格納領域323からダイジェスト値を算出する。そして、ブロック検証部35は、算出したダイジェスト値と、送受信用ブロックのブロックヘッダに記載された一時情報用データ格納領域323のダイジェスト値とが一致するか否かを検証する。
Further, the
次に、ブロック検証部35は、一時情報を格納しているキャッシュテーブル37のダイジェスト値がブロックヘッダに記載されているキャッシュテーブルのダイジェスト値と一致し、一時情報用データ格納領域323のダイジェスト値がブロックヘッダに記載されている一時情報用データ格納領域のダイジェスト値と一致すると、キャッシュテーブル37に格納された一時情報のダイジェスト値が、該一時情報に対応する暗号化トランザクション情報に記載された一時情報のダイジェスト値と一致するか否かを検証する。
Next, the
格納制御部36は、キャッシュテーブル37に格納された一時情報のダイジェスト値が、該一時情報に対応する暗号化トランザクション情報に記載された一時情報のダイジェスト値と一致すると判定され、かつ格納用ブロックがブロック生成条件を満たすと判定されると、格納用ブロックを台帳データに繋げる。
The
また、ブロック通信部31は、ブロック生成部34がブロック生成条件を満たすノンスをみつけると、格納用ブロックとキャッシュテーブル37に格納されている一時情報とを他のブロック生成検証装置6に対してブロードキャストで送信する。
Further, when the
続いて、第2の実施形態における情報処理システム5の情報処理方法について図13を参照して説明する。 Next, an information processing method of the information processing system 5 in the second embodiment will be described with reference to FIG.
ステップS31〜S33、及びS35については、それぞれ第1の実施形態におけるステップS11〜S13,及びS15と同様である。 Steps S31 to S33 and S35 are the same as steps S11 to S13 and S15 in the first embodiment, respectively.
ステップS33で一時情報が格納されると、ブロック生成部34は、格納用ブロックを生成する。具体的には、ブロック生成部34は、ブロック本体に、複数の電子署名付き本トランザクションを含め、ブロックヘッダに複数の本トランザクションのダイジェスト値と、前のブロックのブロックヘッダのハッシュ値と、一時情報用データ格納領域323のダイジェスト値とに加え、キャッシュテーブル37のダイジェスト値を記載する(ステップS34)。
When the temporary information is stored in step S33, the
次に、送受信用ブロックを受信する他のブロック生成検証装置6の情報処理方法について図14を参照して説明する。 Next, an information processing method of another block generation verification apparatus 6 that receives a transmission / reception block will be described with reference to FIG.
ステップS41及びS42については、それぞれ第1の実施形態におけるステップS11及びS12と同様である。 Steps S41 and S42 are the same as steps S11 and S12 in the first embodiment, respectively.
ステップS42で第2のトランザクション情報が検証されると、ブロック検証部35は、キャッシュテーブル37からダイジェスト値を算出する。そして、ブロック検証部35は、算出したダイジェスト値が、送受信用ブロックのブロックヘッダに記載された、キャッシュテーブル37のダイジェスト値と同一である場合に正当性を確認する。(ステップS43)。
When the second transaction information is verified in step S42, the
ステップS43でキャッシュテーブル37のダイジェスト値が一致されていると判定されると、格納制御部36は、一時情報を一時情報用データ格納領域323に格納する(ステップS44)。
If it is determined in step S43 that the digest values in the cache table 37 match, the
ステップS44で一時情報が格納されると、ブロック検証部35は、一時情報用データ格納領域323からダイジェスト値を算出する。そして、ブロック検証部35は、算出したダイジェスト値が、送受信用ブロックのブロックヘッダに記載された、一時情報用データ格納領域323のダイジェスト値と一致するか否かを検証し、キャッシュテーブル37に格納された一時情報のダイジェスト値が、該一時情報に対応する本トランザクション情報に記載されたダイジェスト値と一致するか検証する(ステップS45)。
When the temporary information is stored in step S44, the
ステップS45でダイジェスト値が一致していると判定されると、ブロック検証部35は、ノンスを用いて格納用ブロックがブロック生成条件を満たすか否かを検証する(ステップS46)。
If it is determined in step S45 that the digest values match, the
ステップS45でブロック生成条件を満たすと確認されると、格納制御部36は、格納用ブロックを台帳データに繋げる(ステップS47)。
If it is confirmed in step S45 that the block generation condition is satisfied, the
以上のように、第2の実施形態においては、第1の実施形態と同様に、情報処理システム5は、ブロック生成検証装置6の記憶容量を低減させ、一時情報の真正性を担保することができる。 As described above, in the second embodiment, as in the first embodiment, the information processing system 5 can reduce the storage capacity of the block generation verification device 6 and ensure the authenticity of temporary information. it can.
また、第2の実施形態においては、ブロック生成検証装置6は、キャッシュテーブルのダイジェスト値を生成し、生成したダイジェスト値を含む送受信用ブロックを他のブロック生成検証装置6に送信する。このため、他のブロック生成検証装置6は、キャッシュテーブルに格納されている一時情報に電子署名が付与されていなくても、ブロックヘッダに記載されているキャッシュテーブルのダイジェスト値を用いて一時情報の真正性を確認することができる。 In the second embodiment, the block generation verification device 6 generates a digest value of the cache table, and transmits a transmission / reception block including the generated digest value to another block generation verification device 6. For this reason, the other block generation verification device 6 uses the digest value of the cache table described in the block header even if the electronic signature is not given to the temporary information stored in the cache table. Authenticity can be confirmed.
また、ブロック生成検証装置3は、台帳データに繋がれている本トランザクション情報に対応する一時情報全体を、一時情報用データ格納領域323のダイジェスト値を用いて検証するため、一時情報用データ格納領域323に格納されている一時情報のうちのいずれかの一時情報が取り換えられていた場合にもその旨を明らかにすることができる。これにより、一時情報全体についての真正性を確保することができるという第1の実施形態と同様の効果を奏する。
In addition, the block
なお、上述の実施形態における情報処理システム1及び情報処理システム5は、ビットコイン型ブロックチェーンプラットフォームとして説明したが、これに限られない。情報処理システム1及び情報処理システム5は、プログラムコード実行型ブロックチェーンプラットフォームであってもよい。
In addition, although the
トランザクション発行装置2のトランザクション生成部21は、本トランザクション情報にプログラムコード(スマートコントラクト)が含まれるように第1のトランザクション情報又は第2のトランザクション情報(以降、単に「トランザクション情報」という)を生成する。なお、トランザクション生成部21は、格納領域を指定する指定子(例えば、図15の「nohistory」)がプロパティに記載されたプログラムコードが本トランザクション情報に含まれるようトランザクション情報を生成する。
The
また、トランザクション発行装置2のトランザクション生成部21は、本トランザクション情報及び一時情報の1つ以上にプログラムのメソッドが含まれるようにトランザクション情報を生成する。トランザクション生成部21は、メソッドの引数が本トランザクション情報である場合、本トランザクション情報にメソッドおよび引数が含まれるようにトランザクション情報を生成する。また、トランザクション生成部21は、メソッドの引数が一時情報である場合、メソッドおよび一時情報への参照情報を本トランザクション情報に記載したトランザクション情報を生成する。
Further, the
また、格納制御部36は、トランザクション発行装置2から送信されたトランザクションにプログラムコードが含まれる場合には、該プログラムコードを台帳データ用データ格納領域322に格納する。格納制御部36は、プログラムコードのプロパティに記載された格納領域を指定する指定子にもとづき、台帳データ用データ格納領域322および一時情報用データ格納領域323に領域を確保する。
In addition, when the program transmitted from the
また、格納制御部36は、トランザクション発行装置2から送信されたトランザクションに含まれるメソッドの引数が本トランザクション情報に記載されている場合、該メソッドを実行し、実行結果のプロパティに指定された指定子にもとづき実行結果を格納し、引数は台帳データ用データ格納領域322に格納する。格納制御部36は、メソッドの引数が一時情報である旨の記載がある場合、該メソッドを実行し、実行結果のプロパティに指定された指定子にもとづき格納し、引数は一時情報用データ格納領域323に格納する。
In addition, when the argument of the method included in the transaction transmitted from the
また、格納制御部36は、所定のタイミングで一時情報用データ格納領域323に格納されている一時情報を削除する。例えば、格納制御部36は、削除メソッドが記載されたトランザクションがトランザクション発行装置2から発行された場合に該トランザクションに係る一時情報を削除することができる。
The
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。 Although the above embodiment has been described as a representative example, it will be apparent to those skilled in the art that many changes and substitutions can be made within the spirit and scope of the invention. Therefore, the present invention should not be construed as being limited by the above-described embodiments, and various modifications and changes can be made without departing from the scope of the claims.
1,5 情報処理システム
2 トランザクション発行装置
3,6 ブロック生成検証装置
4 通信ネットワーク
21 トランザクション生成部
22 電子署名付与部
23 トランザクション通信部
31 ブロック通信部
32 格納部
33 トランザクション検証部
34 ブロック生成部
35 ブロック検証部
36 格納制御部
37 キャッシュテーブル
321 台帳データ格納領域
322 台帳データ用データ格納領域
323 一時情報用データ格納領域
DESCRIPTION OF
Claims (5)
前記トランザクション発行装置は、
本トランザクション情報及び一時情報を含むトランザクション情報を生成するトランザクション生成部と、
前記トランザクション情報を前記ブロック生成検証装置に送信するトランザクション通信部と、を有し、
前記ブロック生成検証装置は、
前記本トランザクション情報及び前記本トランザクション情報のダイジェスト値を含み、前記一時情報を含まない格納用ブロックを生成するブロック生成部と、
前記一時情報を一時情報用データ格納領域に格納し、前記格納用ブロックを台帳データに繋げる格納制御部と、
前記一時情報、前記本トランザクション情報、前記本トランザクション情報のダイジェスト値、及び前記一時情報用データ格納領域のダイジェスト値を送信するブロック通信部と、
他のブロック生成検証装置から送信された前記一時情報を格納した一時情報用データ格納領域から算出したダイジェスト値と、前記一時情報用データ格納領域のダイジェスト値とに基づいて前記一時情報を検証するブロック検証部と、
を有することを特徴とする情報処理システム。 An information processing system comprising one or more transaction issuing devices that transmit / receive information to / from each other and a plurality of block generation verification devices,
The transaction issuing device
A transaction generator for generating transaction information including the transaction information and temporary information;
A transaction communication unit that transmits the transaction information to the block generation verification device,
The block generation verification device
A block generation unit that generates a storage block that includes the transaction information and a digest value of the transaction information and does not include the temporary information;
A storage control unit for storing the temporary information in a temporary information data storage area, and connecting the storage block to ledger data;
A block communication unit that transmits the temporary information, the transaction information, the digest value of the transaction information, and the digest value of the data storage area for temporary information;
A block for verifying the temporary information based on the digest value calculated from the temporary information data storage area storing the temporary information transmitted from another block generation verification device and the digest value of the temporary information data storage area A verification unit;
An information processing system comprising:
前記トランザクション情報に第1の電子署名を付与し、前記本トランザクション情報に第2の電子署名を付与する電子署名付与部をさらに有し、
前記格納用ブロックは、前記第2の電子署名が付与された前記本トランザクション情報を含み、一時情報及び第1の電子署名を含まないことを特徴とする請求項1に記載の情報処理システム。 The transaction issuing device
An electronic signature providing unit that assigns a first electronic signature to the transaction information and a second electronic signature to the transaction information;
The information processing system according to claim 1, wherein the storage block includes the main transaction information to which the second electronic signature is attached, and does not include temporary information and the first electronic signature.
前記本トランザクション情報及び前記一時情報のダイジェスト値に電子署名を付与する電子署名付与部を有し、
前記格納用ブロックは、前記電子署名が付与された前記本トランザクション情報及び前記一時情報のダイジェスト値を含み、前記一時情報を含まないことを特徴とする請求項1に記載の情報処理システム。 The transaction issuing device
An electronic signature giving unit for giving an electronic signature to the digest value of the transaction information and the temporary information;
The information processing system according to claim 1, wherein the storage block includes the main transaction information to which the electronic signature is attached and a digest value of the temporary information, and does not include the temporary information.
他の前記ブロック生成検証装置から受信した前記キャッシュテーブルのダイジェスト値を算出し、算出されたダイジェスト値と、受信したブロックに含まれるキャッシュテーブルのダイジェスト値とが一致する場合に、他の前記ブロック生成検証装置から受信した本トランザクション情報に対応する格納用ブロックを検証するブロック検証部を有することを特徴とする請求項3に情報処理システム。 The block communication unit further transmits a cache table including temporary information,
The digest value of the cache table received from the other block generation verification device is calculated, and when the calculated digest value matches the digest value of the cache table included in the received block, the other block generation 4. The information processing system according to claim 3, further comprising a block verification unit that verifies a storage block corresponding to the transaction information received from the verification device.
前記格納制御部は、前記格納用ブロックがブロック生成条件を満たすと判定されると、該格納用ブロックを台帳データに繋げることを特徴とする請求項1から4のいずれか一項に記載の情報処理システム。 When the block verification unit receives the temporary information, the digest value of the transaction information, the digest value of the temporary information data storage area, and the transaction information from the other block generation verification device, the storage block Determines whether the block generation condition is satisfied,
5. The information according to claim 1, wherein the storage control unit connects the storage block to ledger data when it is determined that the storage block satisfies a block generation condition. 6. Processing system.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017001935A JP6495346B2 (en) | 2017-01-10 | 2017-01-10 | Information processing system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017001935A JP6495346B2 (en) | 2017-01-10 | 2017-01-10 | Information processing system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2018112827A JP2018112827A (en) | 2018-07-19 |
| JP6495346B2 true JP6495346B2 (en) | 2019-04-03 |
Family
ID=62912366
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017001935A Active JP6495346B2 (en) | 2017-01-10 | 2017-01-10 | Information processing system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6495346B2 (en) |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11212084B2 (en) * | 2018-07-21 | 2021-12-28 | Fundacja “Blockchain Development Foundation” | System and a method for signing transactions using air-gapped private keys |
| JP6526299B1 (en) * | 2018-07-31 | 2019-06-05 | 株式会社メルカリ | INFORMATION PROCESSING METHOD, INFORMATION PROCESSING DEVICE, AND PROGRAM |
| KR102206940B1 (en) * | 2018-11-27 | 2021-01-26 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | How to execute multiparty transactions using smart contracts |
| CN112513853A (en) | 2018-12-11 | 2021-03-16 | 松下电器(美国)知识产权公司 | Data management method, data management system, and program |
| JP2020021446A (en) * | 2019-01-11 | 2020-02-06 | 株式会社メルカリ | Method for processing information, information processor, and program |
| CN110264187B (en) * | 2019-01-23 | 2021-06-04 | 腾讯科技(深圳)有限公司 | Data processing method and device, computer equipment and storage medium |
| JP7137077B2 (en) * | 2019-04-02 | 2022-09-14 | 日本電信電話株式会社 | Blockchain system, approval terminal, user terminal, history management method, and history management program |
| JP7256064B2 (en) * | 2019-04-18 | 2023-04-11 | 三菱重工業株式会社 | Management system, management method, upper block chain computing device, and program |
| US11295031B2 (en) * | 2019-10-08 | 2022-04-05 | International Business Machines Corporation | Event log tamper resistance |
| EP4080394B1 (en) | 2019-12-20 | 2026-04-08 | NTT, Inc. | Control server, data sharing system, and control program |
| CN116048389A (en) * | 2022-12-16 | 2023-05-02 | 成都航天科工大数据研究院有限公司 | Collaborative procurement method, device, equipment and storage medium based on block chain |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20160260095A1 (en) * | 2015-03-02 | 2016-09-08 | Dell Products, Lp | Containerized Computational Task Execution Management Using a Secure Distributed Transaction Ledger |
| JP5858507B1 (en) * | 2015-05-18 | 2016-02-10 | 株式会社Orb | Virtual currency management program and virtual currency management method |
| US10097356B2 (en) * | 2015-07-02 | 2018-10-09 | Nasdaq, Inc. | Systems and methods of secure provenance for distributed transaction databases |
-
2017
- 2017-01-10 JP JP2017001935A patent/JP6495346B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2018112827A (en) | 2018-07-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6495346B2 (en) | Information processing system | |
| JP7499852B2 (en) | Random Node Selection for Permissioned Blockchains | |
| AU2018348334C1 (en) | Achieving consensus among network nodes in a distributed system | |
| JP6841911B2 (en) | Information protection systems and methods | |
| Cucurull et al. | Distributed immutabilization of secure logs | |
| CN107851253B (en) | Contract consent method, consent verification method, contract consent system, consent verification device, contract consent device, computer readable recording medium | |
| US20210314396A1 (en) | Streaming content via blockchain technology | |
| JP6355168B2 (en) | Block chain generation device, block chain generation method, block chain verification device, block chain verification method and program | |
| JP6514831B1 (en) | Method and system for verifying ownership of digital assets using distributed hash tables and peer-to-peer distributed ledgers | |
| US20210192512A1 (en) | Method and apparatus for storing and obtaining merchant authentication data in blockchain network | |
| US20220029815A1 (en) | Streaming content via blockchain technology | |
| CN110458560B (en) | Method and apparatus for transaction verification | |
| JP6756041B2 (en) | Information protection systems and methods | |
| EP3070630A2 (en) | Data system and method | |
| JPWO2018020944A1 (en) | Bulletin board information management system | |
| WO2017082238A1 (en) | Block chain generation device, block chain generation method, block chain verification device, block chain verification method and program | |
| CN113259130B (en) | Transaction data processing method, device, equipment and medium | |
| CN111047324A (en) | Method and apparatus for updating public key sets at blockchain nodes | |
| JP2023551458A (en) | Key regeneration in blockchain networks via OPRF | |
| JP6951649B2 (en) | Block verification device, block verification method, and program | |
| CN114128216B (en) | Methods and systems for multi-input transactions | |
| CN112801778B (en) | Alliance-based non-performing asset blockchain system | |
| JPWO2019038839A1 (en) | Blockchain management device, blockchain management method and program | |
| CN112052474A (en) | Blu-ray copy service | |
| JP7607672B2 (en) | Authorized event processing in a distributed database. |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180525 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190212 |
|
| 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: 20190305 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190306 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6495346 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |