Block chain update processing method, information processing device, information processing system, and program
The blockchain update processing method addresses the risk of revealing sensitive information by using preset time checks to either confirm and add actual transactions or generate dummy transactions, effectively masking the actual usage frequency of a blockchain.
Patent Information
- Application Number
- PCT/JP2024/033955
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-11-24
- Filing Date
- 2024-09-24
- Publication Date
- 2025-05-30
AI Technical Summary
The frequent public availability of writing and reference frequencies to blockchains poses a risk of revealing sensitive information such as technological strength, business conditions, and stock price fluctuations of companies using public blockchains.
A blockchain update processing method where a computer checks for update commands at preset times, confirming and adding actual transactions to the blockchain if the command is received, or generating and adding dummy transactions if no command is received, thereby masking the actual writing frequency.
This method effectively obscures the actual usage frequency of a blockchain, making it difficult for others to predict or infer sensitive information from the apparent usage patterns.
Smart Images

Figure JP2024033955_30052025_PF_FP_ABST
Abstract
Description
Blockchain update processing method, information processing device, information processing system, and program
[0001] The present disclosure relates to a blockchain update processing method, an information processing device, an information processing system, and a program.
[0002] International Publication No. 2022 / 180752 proposes a control system that records information indicating transaction information and the planned time point for activating the transaction information in a first BC (blockchain) in response to a recording request received from a client device, and in particular, if a recording request is not received within a certain period of time, a block containing the planned time point for activating dummy transaction information is generated and added to the first BC managed by the node itself.
[0003] Japanese Patent Publication No. 2023-520632 proposes a method for protecting the confidentiality and differential privacy of a blockchain ledger by intentionally introducing noise transactions into the blockchain network.
[0004] Japanese Patent Publication No. 2019-53712 proposes an electronic voting system consisting of a first blockchain containing first transaction data indicating that a voter has been authenticated, and a second blockchain containing second transaction data which is voting information contained in the voting data, and dummy transaction data which is transaction data containing the voting content of a dummy ballot that is not linked to a vote by the voter.
[0005] Japanese Patent Application Laid-Open Publication No. 2020-80498 proposes a blockchain system including a transaction network including multiple ordinary nodes and a privileged node connected to the transaction network.
[0006] As the use of blockchain expands, various inconveniences arise due to the fact that the frequency of writing and accessing to the blockchain is publicly available to the whole world or to users participating in the blockchain. For example, there is a risk that a company's technological capabilities, economic conditions, stock price fluctuations, etc. can be inferred from the frequency of writing to the public blockchain of that company.
[0007] The present disclosure has been made in consideration of the above facts, and aims to provide a blockchain update processing method, information processing device, information processing system, and program that can make it difficult to predict the actual frequency of writing to the blockchain.
[0008] In order to achieve the above object, a blockchain update processing method according to a first aspect of the present disclosure has a computer that checks for a blockchain update command at predetermined intervals, and if the update command has been confirmed after the time has passed, generates a transaction based on the update command and adds it to the blockchain; if the update command has not been confirmed after the time has passed, generates a dummy transaction and adds the generated dummy transaction to the blockchain.
[0009] A second aspect of the present disclosure relates to a blockchain update processing method, in which a computer determines the passage of time by measuring elapsed time and comparing it with the time in the blockchain update processing method according to the first aspect.
[0010] A blockchain update processing method according to a third aspect of the present disclosure is a blockchain update processing method according to the first aspect, in which the update command is a request to add a transaction including a key and a value corresponding to the key to the blockchain.
[0011] A fourth aspect of the present disclosure relates to a blockchain update processing method, in which in the blockchain update processing method according to the first aspect, the computer generates random values or fictitious transaction contents as dummy transactions.
[0012] An information processing device according to a fifth aspect of the present disclosure includes a processor that checks for a blockchain update command at predetermined intervals, and if the update command is confirmed after the time has passed, generates a transaction based on the update command and adds it to the blockchain; if the update command is not confirmed after the time has passed, generates a dummy transaction and adds the generated dummy transaction to the blockchain.
[0013] An information processing system according to a sixth aspect of the present disclosure includes the information processing device according to the fifth aspect, and a client computer that transmits an update command to the information processing device.
[0014] A program according to a seventh aspect of the present disclosure causes a computer to check for a blockchain update command at predetermined intervals, and if the update command is confirmed when the time has passed, generate a transaction based on the update command and add it to the blockchain; if the update command is not confirmed even after the time has passed, generate a dummy transaction and add the generated dummy transaction to the blockchain.
[0015] According to the present disclosure, it is possible to provide a blockchain update processing method, an information processing device, an information processing system, and a program that can make it difficult to predict the actual frequency of writing to the blockchain.
[0016] Fig. 1 is a block diagram showing an example of the overall configuration of an information processing system according to the present embodiment; Fig. 2 is a block diagram showing the main configuration of the electrical systems of a management server and a client computer in the information processing system according to the present embodiment; Fig. 3 is a functional block diagram showing the functional configuration of the management server of the information processing system according to the present embodiment; Fig. 4 is a diagram showing an example of the flow of a block chain update process performed in the management server of the information processing system according to the present embodiment;
[0017] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings, but the present invention is not limited to the embodiment.
[0018] In this embodiment, an information processing system will be described as an example in which a management server as an example of an information processing apparatus and client computers are connected to each other via communication lines such as various networks. Fig. 1 is a block diagram showing an example of the overall configuration of an information processing system 10 according to this embodiment.
[0019] As shown in FIG. 1 , an information processing system 10 according to this embodiment includes a management server 12 and multiple client computers 14 (14A, 14B, 14C). The management server 12 and the client computers 14 are connected to each other via a communication line 16, such as a local area network (LAN), a wide area network (WAN), the Internet, or an intranet. The management server 12 and the client computers 14 are capable of transmitting and receiving various data to and from each other via the communication line 16. While FIG. 1 shows a case in which there are three client computers 14, there may be one, two, or four or more. Furthermore, although there is one management server 12, there may be multiple client computers.
[0020] In this embodiment, the client computer 14 requests the management server 12 to register data in the blockchain 18 , and the management server 12 writes data to the blockchain 18 .
[0021] The blockchain 18 is composed of blocks 20 linked in order like a chain. A block 20 is a transaction (transaction data) of a predetermined data capacity, and is a set of transaction data that has been aggregated to a certain amount and has meta-information such as a timestamp (date) 54 added to it.
[0022] Each block 20 is assigned meta-information such as a timestamp, a hash value, and a nonce. Based on this information, each block 20 is linked to the previous block and the next block according to certain rules, like a chain. Transactions are accumulated in real time and periodically bundled as blocks 20. Blocks 20 containing these transactions are stored in each node that makes up the blockchain 18. Even if one node is tampered with, the other nodes retain the correct information, so the tampering can be corrected. The hash value is derived using a special encryption technique called a hash function. The nonce is derived as a random value so that the most significant digits of the hash value are zero. Note that each node that makes up the blockchain 18 may or may not include the management server 12.
[0023] It is assumed that there is a blockchain 18 and users who use the blockchain 18. It is assumed that the users of the blockchain 18 write to or refer to the blockchain on an irregular basis.
[0024] The information processing system 10 according to this embodiment is described as being installed in company A, for example, as shown in FIG. 1, and each client computer 14 is operated by a user belonging to company A.
[0025] Next, the main configuration of the electrical systems of the management server 12 and client computers 14 of the information processing system 10 according to this embodiment will be described. Fig. 2 is a block diagram showing the main configuration of the electrical systems of the management server 12 and client computers 14 in the information processing system 10 according to this embodiment. Note that since the management server 12 and client computers 14 have general computer configurations, the following description will be given using the management server 12 as a representative.
[0026] As shown in FIG. 2 , the management server 12 according to this embodiment includes a CPU 12A as an example of a processor, a ROM 12B, a RAM 12C, a storage 12D, an operation unit 12E, a display unit 12F, and a communication line I / F (interface) unit 12G. The CPU 12A controls the overall operation of the management server 12. The ROM 12B stores various control programs and parameters in advance. The RAM 12C is used as a work area when the CPU 12A executes various programs. The storage 12D stores various data and application programs such as an update processing program for the blockchain 18. The operation unit 12E is used to input various information. The display unit 12F is used to display various information. The communication line I / F unit 12G is connected to the communication line 16 and transmits and receives various data to and from other devices connected to the communication line 16. The communication line I / F unit 12G may also be configured to communicate directly with each device using various well-known wireless communications. The above-described components of the management server 12 are electrically connected to one another via a system bus 12H. In the management server 12 according to this embodiment, the storage 12D is used as a memory unit, but examples of storage include non-volatile memory units such as HDDs (Hard Disk Drives) and flash memory.
[0027] With the above configuration, the management server 12 according to this embodiment uses the CPU 12A to access the ROM 12B, RAM 12C, and storage 12D, to acquire various data via the operation unit 12E, and to display various information on the display unit 12F. In addition, the management server 12 uses the CPU 12A to control the transmission and reception of communication data via the communication line I / F unit 12G.
[0028] The information processing system 10 according to this embodiment performs processing to make it difficult for others to predict the actual frequency of use of the blockchain 18 by displaying the user's frequency of use of the blockchain 18 as an "apparent frequency of use" when the user uses the blockchain 18, including individuals, companies, nations, etc.
[0029] Specifically, the management server 12 checks for an update command for the blockchain 18 at predetermined time intervals, and if the update command is confirmed when the predetermined time has elapsed, it generates a transaction based on the update command and adds it to the blockchain 18. On the other hand, if the update command is not confirmed even after the predetermined time has elapsed, it generates a dummy transaction and performs a process of adding the generated dummy transaction to the blockchain 18.
[0030] In detail, the management server 12 has the functions shown in Fig. 3 by loading a program stored in the ROM 12B into the RAM 12C and executing the program with the CPU 12A. Fig. 3 is a functional block diagram showing the functional configuration of the management server 12 of the information processing system 10 according to this embodiment.
[0031] That is, the management server 12 has the functions of a queue 30, an update command confirmation unit 32, a transaction generation unit 34, a dummy transaction generation unit 36, and a blockchain registration unit 38.
[0032] The queue 30 is a storage area set up in advance in the storage 12D, which stores update commands sent from the client computer 14 in the order in which they are received, and retrieves them in the order in which they were stored. An update command is a request to add a transaction including a key and a value corresponding to the key to the blockchain 18. For example, examples of keys include items such as name and age, and examples of values corresponding to a key are "Yamada Taro" if the key is a name, and "27 years old" if the key is an age.
[0033] The update command confirmation unit 32 confirms whether an update command from the user's client computer 14 has been stored in the queue 30. The update command confirmation unit 32 also has a timer that counts the elapsed time since writing to the blockchain 18. The unit measures the elapsed time using the timer and compares it with a pre-specified time to determine whether the pre-specified time has elapsed. If an update command is stored in the queue 30 when the pre-specified time has elapsed, the unit outputs a transaction generation instruction to the transaction generation unit 34. On the other hand, if an update command is not stored in the queue 30 even after the pre-specified time has elapsed, the unit outputs a dummy transaction generation instruction to the dummy transaction generation unit 36. The pre-specified time may be a constant, or may have an approximate time range instead of a constant. The pre-specified time does not need to be constant and may be changed by the user at any time. Furthermore, the pre-specified time does not necessarily need to be determined by the user, but may be determined based on some algorithm.
[0034] The transaction generation unit 34 generates a transaction based on the update command and outputs the generated transaction to the blockchain registration unit 38.
[0035] The dummy transaction generation unit 36 generates dummy transactions and outputs the generated dummy transactions to the blockchain registration unit 38. The dummy transactions are generated as transactions with random values or fictitious transaction contents. As an example of the contents of the dummy transactions, when a user writes a hash value to the blockchain 18, the dummy contents can also be written as a random hash value. Furthermore, in the case of transferring crypto assets, a dummy account can be created and a transaction can be created to transfer money to the dummy account.
[0036] The blockchain registration unit 38 writes the transaction generated by the transaction generation unit 34 or the dummy transaction generated by the dummy transaction generation unit 36 to the blockchain 18.
[0037] Next, a specific process will be described in the information processing system 10 according to this embodiment configured as described above, in which the frequency of use of the blockchain 18 by a user is displayed as an "apparent frequency of use," making it difficult for others to predict the actual frequency of use. Figure 4 is a diagram showing an example of the flow of the update process of the blockchain 18 performed by the management server 12 of the information processing system 10 according to this embodiment. Note that the process of Figure 4 starts, for example, when the information processing system 10 is started and ends when it is stopped.
[0038] In step 100, the CPU 12A starts a timer that counts the specified elapsed time, and then proceeds to step 102.
[0039] In step 102, the CPU 12A determines whether or not an update command to add information to the blockchain 18 has been received. For this determination, the update command confirmation unit 32 confirms the update command to add information to the blockchain 18 from the user's client computer 14, and if the update command is confirmed and the determination is affirmative, the process proceeds to step 104, and if the update command is not confirmed and the determination is negative, the process proceeds to step 106.
[0040] In step 104, the CPU 12A stores the update command in the queue 30, and then the process proceeds to step 106. That is, the update command confirmation unit 32 stores the update command received from the client computer 14 in the queue 30.
[0041] In step 106, the CPU 12A determines whether or not the specified time has elapsed. If the determination is negative, the process returns to step 102 and the above-described process is repeated. If the determination is positive, the process proceeds to step 108.
[0042] In step 108, the CPU 12A determines whether or not there is an update command in the queue 30. If there is no update command stored in the queue 30 and the determination is negative, the process proceeds to step 110, and if there is an update command stored in the queue 30 and the determination is positive, the process proceeds to step 112.
[0043] In step 110, the CPU 12A generates a dummy transaction and proceeds to step 114. That is, the dummy transaction generation unit 36 generates a dummy transaction and outputs the generated dummy transaction to the block chain registration unit 38.
[0044] On the other hand, in step 112, the CPU 12A retrieves one update command from the queue 30, generates a transaction, and proceeds to step 114. That is, the transaction generation unit 34 generates a transaction based on the update command retrieved from the queue 30, and outputs the generated transaction to the block chain registration unit 38.
[0045] In step 114, the CPU 12A writes to the blockchain 18 and proceeds to step 116. That is, the blockchain registration unit 38 writes to the blockchain 18 the transaction generated by the transaction generation unit 34 or the dummy transaction generated by the dummy transaction generation unit 36.
[0046] In step 116, the CPU 12A resets the timer and returns to step 100 to repeat the above-described process.
[0047] In this way, in the information processing system 10 according to this embodiment, transactions based on update commands or dummy transactions are written to the blockchain at pre-specified time intervals, so the usage frequency of the blockchain 18 can be made to appear as a "seeming usage frequency." This makes it difficult for others to predict the actual usage frequency.
[0048] In the above embodiment, an example has been described in which writing is performed on the blockchain 18 from the management server 12 of Company A's information processing system 10, but this is not limited to this. For example, it may be applied to an organization other than a company, or the update processing method for the blockchain 18 of the present disclosure may be applied to a form in which writing is performed on the blockchain 18 from an individual client computer 14.
[0049] Furthermore, the various processes performed by the CPU in the above embodiments by executing software (programs) may be executed by a computer equipped with various processors other than a CPU. Examples of such processors include programmable logic devices (PLDs) (such as field-programmable gate arrays (FPGAs)) whose circuit configuration can be changed after manufacture, and dedicated electrical circuits, such as application-specific integrated circuits (ASICs), which are processors with circuit configurations specifically designed to execute specific processes. The various processes may be executed by one of these processors, or by a combination of two or more processors of the same or different types (e.g., multiple FPGAs, or a combination of a CPU and an FPGA). The hardware structure of these processors is, more specifically, an electrical circuit that combines circuit elements such as semiconductor devices.
[0050] In the above embodiment, the various programs are pre-stored (installed) in the ROM 20B, but the present invention is not limited to this. The various programs may be provided in a form recorded on a recording medium such as a CD-ROM (Compact Disk Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), or a USB (Universal Serial Bus) memory. The various programs may also be downloaded from an external information processing device or the like via a network.
[0051] Furthermore, the configuration, operation, etc. of the information processing system 10 described in the above embodiment are merely examples, and it goes without saying that they can be modified according to the circumstances within the scope of the present disclosure.
[0052] The following supplementary note is further disclosed regarding the above embodiment: (Supplementary Note 1) A blockchain update processing method in which a computer checks a blockchain update command at predetermined time intervals, and if the update command has been confirmed when the time has elapsed, generates a transaction based on the update command and adds it to the blockchain, and if the update command has not been confirmed even after the time has elapsed, generates a dummy transaction, and adds the generated dummy transaction to the blockchain.
[0053] (Supplementary Note 2) A blockchain update processing method according to Supplementary Note 1, in which the computer determines the passage of time by measuring the elapsed time and comparing it with the time.
[0054] (Supplementary Note 3) The blockchain update processing method according to Supplementary Note 1 or Supplementary Note 2, wherein the update command is a request to add a transaction including a key and a value corresponding to the key to the blockchain.
[0055] (Supplementary Note 4) The blockchain update processing method according to any one of Supplementary Note 1 to Supplementary Note 3, wherein the computer generates random values or fictitious transaction contents as the dummy transactions.
[0056] (Supplementary Note 5) An information processing device comprising a processor that performs a process of: checking a blockchain update command at predetermined time intervals; if the update command has been confirmed when the time has elapsed, generating a transaction based on the update command and adding it to the blockchain; if the update command has not been confirmed even after the time has elapsed, generating a dummy transaction; and adding the generated dummy transaction to the blockchain.
[0057] (Supplementary Note 6) An information processing system including: the information processing device according to Supplementary Note 5; and a client computer that transmits the update command to the information processing device.
[0058] (Supplementary Note 7) A program for causing a computer to execute the following process: check for a blockchain update command at predetermined intervals; if the update command has been confirmed when the time has elapsed, generate a transaction based on the update command and add it to the blockchain; if the update command has not been confirmed even after the time has elapsed, generate a dummy transaction; and add the generated dummy transaction to the blockchain.
[0059] The disclosure of Japanese Patent Application No. 2023-199420 is incorporated herein by reference in its entirety. In addition, all documents, patent applications, and technical standards described herein are incorporated herein by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually indicated to be incorporated by reference.
Claims
1. A blockchain update processing method in which a computer checks a blockchain update command at pre-specified time intervals, and if the update command has been confirmed when the time has elapsed, generates a transaction based on the update command and adds it to the blockchain, and if the update command has not been confirmed even after the time has elapsed, generates a dummy transaction, and adds the generated dummy transaction to the blockchain.
2. The blockchain update processing method of claim 1, wherein the computer determines the passage of time by measuring the elapsed time and comparing it with the time.
3. The blockchain update processing method according to claim 1, wherein the update command is a request to add a transaction including a key and a value corresponding to the key to the blockchain.
4. The blockchain update processing method described in claim 1, wherein the computer generates random values or fictitious transaction contents as the dummy transactions.
5. An information processing device comprising a processor that performs a process of: checking a blockchain update command at predetermined intervals; if the update command has been confirmed when the time has elapsed, generating a transaction based on the update command and adding it to the blockchain; if the update command has not been confirmed even after the time has elapsed, generating a dummy transaction; and adding the generated dummy transaction to the blockchain.
6. An information processing system comprising: an information processing device according to claim 5; and a client computer that transmits the update command to the information processing device.
7. A program for causing a computer to execute a process of checking a blockchain update command at pre-specified time intervals, generating a transaction based on the update command and adding it to the blockchain if the update command has been confirmed when the time has elapsed, and generating a dummy transaction if the update command has not been confirmed even after the time has elapsed, and adding the generated dummy transaction to the blockchain.
Citation Information
Patent Citations
Mitigating of offline ciphertext single attacks
JP2019205152A
Program, information processing device, information processing system, and information processing method
JP2020080010A
Autonomous decentralization of centralized stateful security services with systematic tamper resistance
US20180248845A1