WO2024262011A1 - 情報管理装置、情報管理方法、およびプログラム - Google Patents
情報管理装置、情報管理方法、およびプログラム Download PDFInfo
- Publication number
- WO2024262011A1 WO2024262011A1 PCT/JP2023/023344 JP2023023344W WO2024262011A1 WO 2024262011 A1 WO2024262011 A1 WO 2024262011A1 JP 2023023344 W JP2023023344 W JP 2023023344W WO 2024262011 A1 WO2024262011 A1 WO 2024262011A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- request
- blockchain
- smart contract
- matching
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
Definitions
- the present invention relates to an information management device, an information management method, and a program.
- one of the objectives of this application is to provide an information management device, an information management method, and a program that can manage information more accurately while reducing the amount of data stored on the blockchain.
- An information management device is an information management device that mediates transactions between users and manages transaction results by storing smart contracts related to the transactions on a blockchain, and includes: an acquisition unit that acquires requests related to purchases or sales received from users; a matching unit that matches a new request newly acquired by the acquisition unit with an existing request included in a smart contract already stored on the blockchain; and a processing unit that generates a smart contract including the new request on the blockchain if the matching is not established, and adds information of the new request to the smart contract including the existing request with which the matching is established if the matching is established.
- the processing unit generates a smart contract that includes information about the new request that has been converted into a hash value.
- the processing unit generates a smart contract including the new request using a program that is pre-stored on the blockchain.
- the blockchain is Ethereum.
- the transaction includes an electricity transaction
- the request includes a request for purchasing or selling electricity
- the processing unit adds the electricity transaction result for the request to the smart contract.
- the smart contract includes at least one of the following: information about the user, the transaction type, information about the tokens to be exchanged after the transaction is completed, and information for referencing information about the request recorded in a memory unit outside the blockchain.
- the processing unit hashes session information in a transaction between the users and stores the hashed information on the blockchain, and stores transaction information including the transaction amount and transaction volume on the blockchain without hashing the transaction information.
- An information management method is an information management method in which an information management device that mediates transactions between users and manages transaction results by storing smart contracts related to the transactions on a blockchain acquires a purchase or sale request received from a user, matches the newly acquired new request with an existing request included in a smart contract already stored on the blockchain, generates a smart contract on the blockchain that includes the new request if the match is not established, and adds information about the new request to the smart contract that includes the existing request with which the match is established if the match is established.
- a program according to one embodiment of the present invention is a program that causes an information management device, which mediates transactions between users and manages transaction results by storing smart contracts related to the transactions on a blockchain, to acquire a purchase or sale request received from a user, match the newly acquired new request with an existing request included in a smart contract already stored on the blockchain, generate a smart contract on the blockchain that includes the new request if the match is not established, and add information about the new request to the smart contract that includes the existing request with which the match is established if the match is established.
- FIG. 1 is a configuration diagram of a trading system 1 using an information management device of an embodiment.
- FIG. 1 is a configuration diagram of an information management device 100 according to an embodiment.
- FIG. 2 is a configuration diagram of a user terminal 200 according to an embodiment.
- FIG. 2 is a sequence diagram for explaining a series of flows of energy trading in the embodiment.
- FIG. 13 is a diagram showing an example of an image IM10 displayed on a user terminal 200 in a request generation process.
- 11 is a flowchart illustrating an example of a matching process and a smart contract generation process in the first embodiment.
- FIG. 2 is a diagram for explaining requests accepted from each user U in the first embodiment.
- FIG. 11 is a diagram for explaining a smart contract SC stored on the blockchain 300 in the first embodiment.
- FIG. 11 is a diagram illustrating an example of a specific configuration of a processing unit 140 in the second embodiment.
- FIG. 13 is a diagram showing an example of an image IM20 relating to the matching result.
- FIG. 2 is a diagram for explaining processing related to energy trading.
- FIG. 13 is a diagram showing an example of an image IM30 relating to the electricity trading situation.
- FIG. 13 is a diagram for explaining management of a transaction status during a charge/discharge session.
- 11 is a flowchart illustrating an example of a process executed by the information management device 100
- FIG. 1 is a configuration diagram of a trading system 1 using an information management device of an embodiment.
- the trading system 1 includes, for example, an information management device 100, one or more user terminals 200-1 to 200-n, a block chain 300, a file system 400, a charge/discharge control system (hereinafter referred to as a charge/discharge CS) 500, and a charge/discharge facility 520.
- the information management device 100, the user terminal 200, the block chain 300, and the charge/discharge CS 500 can communicate with each other, for example, via a network NW.
- the network NW includes, for example, a cellular network, a Wi-Fi network, Bluetooth (registered trademark), the Internet, a Wide Area Network (WAN), a Local Area Network (LAN), a public line, a provider device, a dedicated line, a wireless base station, and the like.
- the file system 400 is an example of a "storage unit".
- the information management device 100 may be, for example, a server device or a PC (Personal Computer), or may be a cloud server configured by cloud computing consisting of one or more information processing devices.
- the information management device 100 may also have a function as an edge server that processes data stored on the blockchain 300 or the file system 400.
- the information management device 100 mediates interpersonal transactions between users. For example, the information management device 100 generates information on energy trading (e.g., smart contract SC) to be stored on the blockchain 300, or generates information on energy trading (e.g., data set DS) to be stored in the file system 400.
- energy trading e.g., smart contract SC
- data set DS information on energy trading
- the blockchain 300 is a data store (database) that manages information about transactions in units called blocks, links the information to clarify the context (order) and stores it.
- the blockchain 300 may be a blockchain network made up of multiple devices (nodes) that can access each other.
- the blockchain 300 is, for example, Ethereum.
- Ethereum is a distributed application platform that can manage programs and their operations on the blockchain 300, using smart contracts SC as blocks.
- the security of transactions can be further ensured by using Ethereum, which has higher tamper resistance and reliability than other public blockchains.
- the process of generating and storing (saving) smart contract SC on blockchain 300 can be executed by nodes connected to blockchain 300 and information management device 100. Furthermore, in blockchain 300, multiple terminals can save smart contract SC and compare them with each other. In the following description, blockchain 300 may be referred to as "on-chain.”
- the file system 400 is, for example, a P2P (Peer to Peer) distributed file system using IPFS (Inter Planetary File System).
- the file system 400 may be an IPFS network consisting of multiple devices (nodes) that can access each other.
- the file system 400 stores a data set (electronic data) DS that includes information about energy trading.
- the file system 400 is connected to the information management device 100, and the data set DS stored by the information management device 100 is managed.
- the data set DS is in a secure environment so that the user terminal 200 and the like cannot directly access it via the network NW. Therefore, the data stored in the file system 400 does not need to be hashed.
- the file system 400 may be referred to as "off-chain" or "backend".
- the charging/discharging CS 500 manages the charging or discharging of the battery B of the electric vehicle M connected to the charging/discharging equipment 520.
- the charging/discharging equipment 520 supplies power to the battery B of the electric vehicle M to charge it, and supplies the power discharged from the battery B to the outside.
- the charging/discharging CS 500 manages the location information of the multiple charging/discharging equipment 520 installed at various locations, the charging/discharging schedule of the electric vehicle M, etc.
- the charging/discharging CS 500 may perform control related to charging/discharging based on control information from the information management device 100, and may transmit the charging/discharging results to the information management device 100.
- the configurations of the information management device 100 and the user terminal 200 will be specifically described.
- LSI Large Scale Integration
- ASIC Application Specific Integrated Circuit
- FPGA Field-Programmable Gate Array
- GPU Graphics Processing Unit
- the program may be stored in advance in a storage device (a storage device having a non-transient storage medium) such as a hard disk drive (HDD) or flash memory provided in the information management device 100, or may be stored in a removable storage medium (a non-transient storage medium) such as a DVD or CD-ROM, and the program may be installed in the HDD or flash memory provided in the information management device 100 by inserting the storage medium into a drive device provided in the information management device 100.
- a storage device a storage device having a non-transient storage medium
- a storage device having a non-transient storage medium such as a hard disk drive (HDD) or flash memory provided in the information management device 100
- a removable storage medium a non-transient storage medium
- the program may be installed in the HDD or flash memory provided in the information management device 100 by inserting the storage medium into a drive device provided in the information management device 100.
- the communication unit 110 communicates with the user terminal 200, the blockchain 300, the charge/discharge CS 500, and other external devices via the network NW.
- the communication unit 110 also communicates with the file system 400, for example, via a dedicated line.
- the acquisition unit 120 acquires information about the user U who uses the services in the trading system 1 based on the information received by the communication unit 110.
- the acquisition unit 120 also acquires requests for purchases or sales from the user U, and acquires information about the status of charging and discharging electricity (electricity trading) and the results of the trading from the charging and discharging CS 500.
- the matching unit 130 Before generating the smart contract SC to be stored on the blockchain 300, the matching unit 130 matches the new request (accepted request) newly acquired by the acquisition unit 120 with the existing request stored in the smart contract SC already stored on the blockchain 300.
- the processing unit 140 generates a smart contract SC including a new request when the matching unit 130 fails to match the new request with an existing request. Furthermore, when the matching is successful, the processing unit 140 adds information about the new request to the smart contract SC including the existing request with which the matching is successful. Note that in the embodiment, "adding" may include changing, editing, deleting, or updating part of the information in the smart contract SC. The functions of the processing unit 140 will be described in detail later.
- the registration unit 150 stores (registers) the smart contract SC generated by the processing unit 140 on the blockchain 300. Note that the processing unit 140 may generate the smart contract SC on the blockchain 300 without going through the registration unit 150.
- the registration unit 150 may also manage the registration of users U who use services provided by the trading system 1. In this case, the registration unit 150 performs new registration of the user U and registers the new user information in the user information DB 172. The registration unit 150 also performs control such as comparing the identification information of the user U or the user terminal 200 who has accessed to use the service with the identification information registered in the user information DB 172, and permitting the use of the service if matching identification information is registered, and refusing the use of the service if no identification information is registered.
- the providing unit 160 provides various information to the user terminal 200 and the charge/discharge CS 500.
- the providing unit 160 generates information (images, audio) related to the matching result by the matching unit 130, and provides the generated information to the user terminal 200.
- the providing unit 160 provides information related to the electric vehicle M performing charging/discharging and the user U to the charge/discharge CS 500.
- [User terminal] 3 is a configuration diagram of a user terminal 200 according to an embodiment.
- the user terminal 200 includes, for example, a terminal-side communication unit 210, an input unit 220, an output unit 230, a location information acquisition unit 240, a control unit 250, an application execution unit 260, and a terminal-side storage unit 270.
- the location information acquisition unit 240, the control unit 250, and the application execution unit 260 are each realized by, for example, a hardware processor such as a CPU executing a program (software).
- some or all of these components may be realized by hardware (including circuitry) such as an LSI, ASIC, FPGA, or GPU, or may be realized by cooperation between software and hardware.
- the program may be stored in advance in a storage device (a storage device having a non-transient storage medium) such as a HDD or flash memory provided in the user terminal 200, or may be stored in a removable storage medium (a non-transient storage medium) such as a DVD or CD-ROM, and the program may be installed in the HDD or flash memory provided in the user terminal 200 by inserting the storage medium into a drive device provided in the user terminal 200.
- a storage device a storage device having a non-transient storage medium
- a removable storage medium a non-transient storage medium
- the program may be installed in the HDD or flash memory provided in the user terminal 200 by inserting the storage medium into a drive device provided in the user terminal 200.
- the terminal-side memory unit 270 may be realized by the various storage devices described above, or an SSD, an EEPROM, a ROM, a RAM, or the like.
- the terminal-side memory unit 270 stores, for example, the trading application 272, the processing results of the user terminal 200, programs, and various other information.
- the terminal-side communication unit 210 communicates with the information management device 100 and other external devices via the network NW, for example.
- the terminal-side communication unit 210 may also communicate with the electric vehicle M used by the user U via short-range communication.
- the input unit 220 accepts input from the user U, for example, by operating various keys, buttons, etc.
- the input unit 220 may also be equipped with a microphone and accept voice input from the user U, for example.
- the output unit 230 includes, for example, a display 232 and a speaker 234.
- the display 232 is, for example, an LCD (Liquid Crystal Display) or an organic EL (Electro Luminescence) display. Under the control of the control unit 250 and the application execution unit 260, the output unit 230 displays various images on the display 232 and outputs audio from the speaker 234.
- the display 232 may also have the function of the input unit 220, for example as a touch panel.
- the location information acquisition unit 240 acquires location information (e.g., latitude and longitude information) of the user terminal 200 using a built-in GPS (Global Positioning System) device.
- location information e.g., latitude and longitude information
- GPS Global Positioning System
- the control unit 250 controls all of the components of the user terminal 200.
- the control unit 250 stores information received by the input unit 220 in the terminal-side memory unit 270, and transmits the information to the information management device 100 via the terminal-side communication unit 210.
- the control unit 250 may also cause information such as images and audio acquired from the information management device 100 via the terminal-side communication unit 210 to be output from the output unit 230, or may generate images and audio based on the information acquired from the information management device 100 and output the images and audio from the output unit 230.
- the application execution unit 260 is realized by executing a trading application 272 stored in the terminal side storage unit 270.
- the trading application 272 is, for example, downloaded from an external device via the network NW and installed in the user terminal 200.
- the trading application 272 transmits information input by the input unit 220 (request information), location information acquired by the location information acquisition unit 240, identification information of the user terminal 200, user information, etc. to the information management device 100, and also acquires information on request results, etc. and information on energy trading, and outputs them to the output unit 230.
- FIG. 4 is a sequence diagram for explaining a series of flows of power trading in the embodiment.
- FIG. 4 shows, as an example, the user terminal 200-1 used by the user U1, the user terminal 200-2 used by the user U2, the information management device 100, the blockchain 300, and the processing in the charge/discharge CS 500.
- Both users U1 and U2 are assumed to be users who can use the services provided by the trading system 1 (users who are permitted to use the services by the registration unit 150).
- an example of power exchange trading between a battery B1 mounted on an electric vehicle M1 used by the user U1 and a battery B2 mounted on an electric vehicle M2 used by the user U2 will be described below.
- the trading application 272 of the user terminal 200-1 generates a request for energy trading based on the information input by the user U1 (step S100) and transmits the generated request to the information management device 100 (step S102).
- the matching unit 130 of the information management device 100 receives the request sent from the user terminal 200-1 and performs matching with other requests (existing requests) included in the smart contract SC already stored on the blockchain 300 based on the received request (new request) (step S104). In the processing of step S104, it is assumed that matching was not established (there was no existing request that met the conditions of the new request). In this case, the processing unit 140 of the information management device 100 generates a smart contract SC including the new request in the blockchain 300, transmits it to the blockchain 300 (step S106), and stores the smart contract (SC) on the blockchain 300 (step S108).
- user U2 starts the trading application 272 using user terminal 200-2 and inputs a request for energy trading in the same manner as user U1.
- User terminal 200-2 generates a request based on the input information (step S110) and transmits the generated request information to the information management device 100 (step S112).
- the matching unit 130 acquires the request (new request) sent from the user terminal 200-2 and matches it with an existing request by referring to the smart contract SC stored on the blockchain 300 (step S114). The following explanation will be continued assuming that matching has been established between the requests of user U1 and user U2.
- the providing unit 160 of the information management device 100 generates information (e.g., an image) related to the matching result (step S116) and transmits it to the user terminals 200-1 and 200-2 (steps S118, S120).
- Each of the user terminals 200-1, 200-2 displays information related to the matching results sent from the information management device 100, and accepts instruction information and the like from users U1, U2 (steps S122, S124).
- the information from users U1, U2 may be information on whether to approve or reject the energy trade based on the matching results, or, if there are multiple targets that match the conditions, the selection of one of them.
- Each of the user terminals 200-1, 200-2 sends the information obtained from users U1, U2 to the information management device 100 (steps S126, S128).
- the information management device 100 acquires information from the user terminals 200-1 and 200-2, and if matching is approved, outputs information about the power trade (for example, information about the users U1 and U2 and the electric vehicles M1 and M2 who will be conducting the power trade) to the charge/discharge CS 500 (step S130).
- the charge/discharge CS 500 manages the power trade based on the information acquired from the information management device 100 (step S132). Specifically, it sets the charging/discharging equipment 520 to which the target electric vehicle M will be connected, and transmits information such as the location information and usage time (schedule) of the set charging/discharging equipment 520 to the user terminals 200-1 and 200-2 (steps S134 and S136). Note that information such as the schedule for conducting the power trade may be provided by the information management device 100.
- the charge/discharge CS 500 also performs processes related to power trading management other than steps S134 and S136. For example, the charge/discharge CS 500 transmits information about the users U1 and U2 and the electric vehicles M1 and M2 who use the charge/discharge equipment 520 to the charge/discharge equipment 520 to make a reservation in advance, and prevents other electric vehicles M from using the equipment during the reservation time. The charge/discharge CS 500 also manages the discharge status and the charge status based on information obtained from the charge/discharge equipment 520.
- the charge/discharge equipment 520 connected to the electric vehicle M2 receives the power discharged from the battery B1 of the electric vehicle M1 of the user U1, and supplies the received power to the battery B2 of the electric vehicle M2 via the charge/discharge equipment 520 connected to the electric vehicle M2.
- These charge/discharge statuses are managed by the charge/discharge CS 500 at any time based on information from the charge/discharge equipment 520.
- the charging/discharging CS 500 may transmit information on the transaction status to the user terminals 200-1 and 200-2.
- the charging/discharging facility 520 transmits information on the electricity transaction status (charging/discharging status) to the information management device 100 at a predetermined timing (step S138).
- the information on the electricity transaction status includes, for example, charging information (status data) indicating the status of the electric vehicle M1 or M2 during charging/discharging, information indicating completion of charging/discharging (charging result), and information indicating the end of the connection of the electric vehicles M1 and M2 to the charging/discharging facility 520 (session end information).
- the charging information is transmitted to the information management device 100 at a predetermined cycle, and the charging result is transmitted to the information management device 100 when charging is completed, and the session end information is transmitted to the information management device 100 when the connection between the charging/discharging facility 520 and the electric vehicle M is ended.
- the processing unit 140 of the information management device 100 receives information related to the electricity trading status from the charge/discharge CS 500, and generates a data set DS etc. in the file system 400 for the received information (step S140).
- the information management device 100 also adds the charging session result (electricity trading result) etc. to the smart contract SC including the existing request to be matched stored on the blockchain 300 (step S142), and stores the added smart contract SC (step S144).
- Steps S100 and S110 When each of the user terminals 200-1 and 200-2 generates a request, the transaction application 272 causes the user terminals 200-1 and 200-2 to display an image for inputting the request on the display 232. This image may be provided from the providing unit 160 of the information management device 100. Also, a sound corresponding to the image may be output.
- FIG. 5 is a diagram showing an example of an image IM10 displayed on the user terminal 200 in the request generation process.
- the image IM10 shown in FIG. 5 is an image displayed on the user terminal 200-1 in the process of step S100, and on the user terminal 200-2 in the process of step S110.
- the display mode of the image IM10 such as the layout, character font, size, and display content, is not limited to the example of FIG. 5.
- the image IM10 shown in FIG. 5 includes, for example, various input items for accepting a new request from the user U1.
- the image IM10 shown in FIG. 5 includes, for example, a transaction target device information display area AR11, a transaction content display area AR12, and a switch display area AR13.
- the transaction target equipment information display area AR11 information on the target equipment for electricity trading is displayed.
- the transaction target equipment information display area AR11 displays an area for accepting the setting of identification information (e.g., a vehicle ID) that identifies the electric vehicle M that is the subject of electricity trading.
- the transaction target equipment information display area AR11 may display an icon IC11 that is a GUI (Graphical User Interface) switch for selecting a vehicle ID.
- GUI Graphic User Interface
- the transaction content display area AR12 displays input items that accept information such as the type of transaction (Buy or Sell), the amount to be traded (amount of electricity), and the transaction price (purchase price or sale price).
- the transaction content display area AR12 may also include information such as the time during which the transaction can be made (Time Slot), the tokens to be exchanged after the transaction is completed (for example, information about the Payment Token (cryptocurrency) (Payment Methods) and other procedures), and the type of electricity resource to be traded (whether to only use green energy). This information may be set using, for example, check boxes or slider bars as shown in FIG. 5.
- the switch display area AR13 includes icons IC12 and IC13, which are GUI switches.
- Icon IC12 is a switch (OK switch) that accepts a new request.
- Icon IC13 is a switch (cancel switch) that accepts not to register a new request.
- the user terminal 200-1 transmits the content input by user U1 via image IM10 to the information management device 100 as new request information.
- the new request information may include information about user U1 (e.g., user ID and address information of user U1), information about the user terminal 200, etc.
- location information of the user terminal 200 may be transmitted in addition to (or instead of) the new request information.
- FIG. 6 is a flowchart showing an example of the matching process and the generation process of the smart contract in the first embodiment.
- the acquisition unit 120 judges whether or not a new request accepted from the user U has been acquired (step (step S200). If it is judged that a new request has been acquired, the matching unit 130 performs a matching process between the new request and an existing request included in the smart contract SC stored on the blockchain 300 (step S210).
- the processing unit 140 judges whether or not matching by the matching unit 130 has been established (step S220). If it is judged that matching has not been established (not established), the processing unit 140 generates a new smart contract including the new request (step S230).
- the registration unit 150 stores the generated smart contract on the blockchain (step S240). Note that the new request stored in the smart contract may be hashed.
- step S220 If it is determined in step S220 that a match has been established, the processing unit 140 adds information about the new request to the smart contract stored on the blockchain 300 that includes the existing request with which a match has been established (step S250). This ends the processing of this flowchart. If it is determined in step S200 that a new request has not been acquired, the processing of this flowchart ends.
- Figure 7 is a diagram for explaining requests received from each user U in the first embodiment.
- Figure 8 is a diagram for explaining the smart contract SC stored on the blockchain 300 in the first embodiment.
- requests related to energy trading input from user terminals 200-1 to 200-3 used by users U1 to U3, respectively are acquired, and that the smart contract SC is not stored on the blockchain 300 before the input by users U1 to U3.
- the information management device 100 first obtains a request A (power selling request) for a power transaction to sell 10 kWh of electricity from the user terminal 200-1 of user U1.
- request A may include information regarding the power trading price (sales price), and may also include other information set using the image IM10.
- the matching unit 130 matches an existing request included in the smart contract SC already stored on the blockchain 300 with a request A, which is a new request at this point. For example, the matching unit 130 determines that matching is established when there is a request (purchase request) that satisfies a condition such as wanting to purchase electricity of 10 [kWh] or less among the existing requests related to electricity trading, and determines that matching is not established when the above condition is not satisfied. Since there is no smart contract SC (purchase request) yet on the blockchain 300, the matching unit 130 determines that matching is not established. Then, the processing unit 140 generates a new smart contract SC A including the request A as shown in FIG. 7 and stores it on the blockchain 300.
- a request purchase request
- a condition such as wanting to purchase electricity of 10 [kWh] or less among the existing requests related to electricity trading
- the smart contract SC A including the request A includes at least one of information such as information on the user U who generated the request, the transaction type (electricity purchase, electricity sale, etc.), and information on the token to be used (exchanged) after the transaction is completed. Furthermore, the information of request A is converted into a hash value and stored in the smart contract SC generated by the processing unit 140. By converting request A into a hash value, leakage or tampering of the request information can be suppressed, and the request information can be better protected.
- the registration unit 150 stores (registers) the generated smart contract SC A on the blockchain 300 as shown in Fig. 7. At this point, request A becomes an existing request.
- the information management device 100 acquires request B (purchase request) for an electricity transaction to purchase 20 [kWh] of electricity from the user terminal 200-3 of user U3.
- the matching unit 130 matches request A (existing request) included in smart contract SC A already stored on the blockchain 300 with request B (new request). Since request A wants to sell 10 [kWh] of electricity and request B wants to buy 20 [kWh] of electricity, the matching unit 130 determines that the conditions are not met and matching is not established.
- the processing unit 140 generates a smart contract SC B including the request B for which matching was not established.
- the request information in this case may also be converted into a hash value.
- the registration unit 150 stores the generated smart contract SC B on the blockchain 300 as shown in FIG. 8. At this point, the request B becomes an existing request.
- the processing unit 140 performs a process (state update process) of adding only a state indicating that matching between request A and request C has been achieved, as information about request C, to the smart contract SC A including the matched request A.
- a process state update process
- a part of the information about request C may be added.
- the added information may be converted into a hash value.
- a new smart contract SC C including request C is not generated on the blockchain, and a new smart contract SC A+C including both request A and request C is not generated.
- This makes it possible to suppress an increase in the number of smart contracts SC stored on the blockchain 300 (i.e., the amount of data). Furthermore, it is possible to store more detailed and accurate information on the blockchain 300 with less time lag.
- the second embodiment differs from the first embodiment in that the request information is stored on a file system 400 other than the block chain 300, and the smart contract SC is not generated by the processing unit 140 but is generated by a program on the block chain 300 in response to an instruction from the processing unit 140.
- the following mainly focuses on the differences.
- the processing unit 140 includes, for example, a first processing unit 142, an assignment unit 144, and a second processing unit 146.
- the first processing unit 142 stores the information of the new request in the file system 400 that exists outside the blockchain 300 without hashing the information.
- the assignment unit 144 assigns identification information (CID: Content Identifier) to the information of the new request stored in the file system 400.
- the CID may be a hash value.
- the assignment unit 144 performs hashing using the information of the new request, etc. as an input value, and assigns this hash value as the CID for the new request.
- FIG. 10 is a flowchart showing an example of the matching process and the generation process of the smart contract SC in the second embodiment.
- the process in FIG. 10 differs from the process of steps S200 to S250 shown in FIG. 6 in that steps S202 and S204 are added, and step S232 is replaced with step S230. Therefore, the following description will mainly focus on the processes of steps S202 to S204 and S232.
- the first processing unit 142 stores a dataset (data file) DS including the new request in the file system 400 (step S202). Because the file system 400 is a secure environment managed by the information management device 100, the new request stored in the dataset DS does not need to be hashed.
- the assignment unit 144 assigns identification information to the new request in the dataset DS (step S204). Therefore, the dataset DS includes CID information.
- the matching unit 130 performs matching process between the existing request and the new request included in the dataset stored in the file system 400.
- step S220 If it is determined in the processing of step S220 that matching has not been established (is not established), the second processing unit 146 executes a program on the blockchain 300 to generate a smart contract including the new request (step S232) and stores the smart contract on the blockchain 300 (step S240).
- the new request included in the smart contract may be converted into a hash value.
- FIG. 11 is a diagram for explaining the requests of each user U in the second embodiment and the smart contract SC stored on the blockchain 300.
- the first processing unit 142 stores the data set DS A including the request A in the file system 400 as shown in FIG. 11.
- the assigning unit 144 assigns identification information (CID) to the request A in the data set DS A.
- the matching unit 130 matches the new request A with an existing request. If it is determined that matching is not established, the second processing unit 146 outputs an instruction to generate a smart contract SC A including the request A to another smart contract SC (hereinafter referred to as a "generation SC") that stores a program for generating a new smart contract SC and is pre-stored on the blockchain 300.
- the generation SC executes the program based on the instruction from the second processing unit 146 to generate a smart contract SC A corresponding to the request A and stores it on the blockchain 300.
- smart contracts SC A and SC B corresponding to requests A and B for which matching was not established are generated by the generation SC.
- the smart contracts SC A and SC B generated by the generation SC include at least one of information on the user U who generated the request, the transaction type (power purchase, power sale, etc.), information on the token to be used (exchanged) after the transaction is completed, and information for referencing data (dataset) stored in the file system 400. These pieces of information may be hashed.
- the user terminal 200 queries the information management device 100 about the data set DS using information for referencing the data stored in the file system 400, and can refer to the contents of the data set DS when permission of the information management device 100 is obtained.
- the first processing unit 142 when request C is acquired, stores the data set DS C including request C in the file system 400.
- the assigning unit 144 assigns a CID corresponding to request C.
- the matching unit 130 then matches request A of data set DS A and request B of data set DS B with the new request C, and determines that a match has been established between requests A and C. Therefore, the second processing unit 146 adds information based on the matching result to the smart contract SC A stored on the blockchain 300.
- the third embodiment differs from the second embodiment in that the above-mentioned request identification information (CID) is stored in the smart contract SC on the blockchain 300, and the matching result is added to the smart contract SC when the matching result is approved by the user U.
- CID request identification information
- each process may be executed by the same configuration of the processing unit 140 as in the second embodiment.
- FIG. 12 is a flowchart showing an example of the matching process and the generation process of a smart contract SC in the third embodiment.
- the process in FIG. 12 differs from steps S200 to S250 shown in FIG. 10 in that steps S234 and S252 are included instead of steps S232 and S250, and steps S260 to S280 are added. Therefore, the following description will mainly focus on steps S234, S252, and S260 to S280.
- step S220 of FIG. 12 If it is determined in step S220 of FIG. 12 that matching has not been established, the second processing unit 146 generates a new smart contract SC including the CID (identification information) of the new request using a program on the blockchain 300 (the program for the SC for generation) (step S234). If it is determined that matching has been established, the second processing unit 146 adds the CID of the new request to the smart contract SC including the CID of the existing request with which matching has been established (step S252). Note that the CID stored in the smart contract SC in the processes of steps S234 and S252 may be hashed.
- the providing unit 160 generates information indicating the matching result and provides it to the user terminal 200 that sent the matching request (step S260).
- the second processing unit 146 determines whether or not approval of the user who will be conducting the energy trade has been received from the information acquired from the user terminal 200 (step S270). If it is determined that approval has been received, information regarding the matching result is added to the target smart contract SC (step S280). If it is determined that approval has not been received (for example, information indicating refusal has been received), the processing from step S234 onwards is performed.
- FIG. 13 is a diagram for explaining the requests of each user U in the third embodiment and the smart contract SC stored on the blockchain 300.
- the first processing unit 142 accepts the request A of the user U1 and generates a data set DS A including the request A in the file system 400.
- the assigning unit 144 assigns a CID to the request A in the data set DS A.
- the second processing unit 146 uses the generation SC to generate a smart contract SC A including the CID assigned to the request A.
- FIG. 13 is a diagram for explaining the requests of each user U in the third embodiment and the smart contract SC stored on the blockchain 300.
- the first processing unit 142 accepts the request A of the user U1 and generates a data set DS A including the request A in the file system 400.
- the assigning unit 144 assigns a CID to the request A in the data set DS A.
- the second processing unit 146 uses the generation SC to generate a smart contract SC A including the CID assigned to the request A.
- a smart contract SC A including the CID of the request A for which matching is not established and a smart contract SC B including the CID of the request B are generated using the generation SC in the same manner.
- the CIDs stored in the smart contracts SC A and SC B may be hashed.
- the CID in the smart contract SC it is possible to prove that the request information on which the transaction conditions are based exists outside the blockchain (off-chain), thereby ensuring the validity of the transaction.
- the personal information of the user U can be protected. For example, if the user U wishes to refer to the request information corresponding to the CID, the user can inquire about the request information for the CID from the user terminal 200 to the information management device 100 and can refer to the request information if permission is obtained.
- the matching unit 130 matches request C with requests A and B stored in the data sets DS A and DS B of the file system 400, and determines that a match is established between requests A and C.
- the second processing unit 146 uses the generation SC to add the CID of request C, for which a match has been established, to the smart contract SC A as information based on the matching result.
- the processing unit 140 adds the CID of request C to smart contract SC A using the generation SC.
- the program of the generation SC in the third embodiment includes a program that adds the CID of the matched request to an existing smart contract SC.
- the providing unit 160 generates information (e.g., an image) regarding the above-mentioned matching result, and provides the generated information to the user terminals 200-1 and 200-2.
- the provided information may include information indicating whether or not to approve the transaction based on the matching result.
- the second processing unit 146 further adds information to the smart contract SC A depending on whether or not the transaction accepted from the users U1 and U2 is approved.
- the above-mentioned process corresponds to the display and acceptance process of the matching result in steps S122 and S124 shown in FIG. 4.
- FIG. 14 is a diagram showing an example of an image IM20 relating to the matching result.
- the image IM20 shown in FIG. 14 includes, for example, a matching result display area AR21 and a switch display area AR22.
- FIG. 14 shows, as an example, a case where there is multiple pieces of information (requests) for which matching has been established.
- the contents of each e.g., trading price, trading volume (amount of electricity)
- radio buttons check boxes
- Users U1 and U2 select one of the multiple results by using the radio buttons in image IM20. Note that when matching by the matching unit 130 is not established, information indicating that matching was not established may be displayed in the matching result display area AR21.
- icon IC21 which is a GUI switch for approving a transaction based on the matching result
- icon IC22 for rejecting (not approving) the transaction
- user terminals 200-1, 200-2 accept the selection of icon IC21 by user U1
- they accept the selection of icon IC22 they transmit information to the information management device 100 indicating that the transaction based on the matching result is rejected (processing of steps S126 and S128 in FIG. 4).
- the processing unit 140 adds a matching result dataset to the smart contract SCA on the blockchain 300.
- the information (matching result dataset) stored after the approval of the user U includes, for example, contract information (for example, power amount, transaction price, value-added rate) necessary for calculating the transaction price.
- the value-added rate may be set based on the information acquired by the processing unit 140 from the outside regarding the market situation of the electricity transaction, or may be set based on the service usage status of the user U, or may be arbitrarily set by the administrator of the trading system 1, etc.
- the matching result dataset added to the smart contract SCA may be hashed.
- the matching unit 130 may store all matching results, including successful and unsuccessful matches, performed in the file system 400 as a data set or the like in the file system 400, as shown in FIG. 13. Furthermore, the matching unit 130 may store in the file system 400 more detailed information than the matching result data set added to the smart contract SC (for example, in addition to the above contract information, request information for which a match was made, etc.). This allows for more detailed management of the matching status and reduces the amount of data added to the smart contract SC. Furthermore, the matching result data set added to the smart contract SC does not include information about the user, so the user's personal information can be protected.
- the third embodiment described above not only achieves the same effects as the first embodiment, but also proves that the request that is the basis of the transaction conditions exists off-chain (file system 400) by not storing the request information in the smart contract SC, and only storing the CID associated with the request on the smart contract SC, thereby ensuring the validity of the transaction. Also, by not storing the request information, the amount of data on the blockchain 300 can be further reduced, and information management can be performed more accurately on the file system 400.
- the matching unit 130 may store the matching results performed within the file system 400 within the file system 400, as in the third embodiment.
- the DID is a transfer framework that enables data exchange between devices by replacing identification information that identifies personal information such as a user name with an independent ID owned by the device and not managed by a third party, and can protect privacy and ensure the security of transactions.
- DID-Comm which is a P2P communication protocol
- DID-Comm distributed data linkage is possible with reduced dependency on the device that manages the entire system.
- DID-Comm it is possible to verify, for example, the certification of the qualification information (user information) of the transmitted data.
- the communication protocol used in the embodiment is not limited to DID-Comm.
- the charge/discharge CS 500 registers information on the DID used in the transfer of information on the current energy transaction in the file system 400 ((1) in FIG. 15).
- the information management device 100 also registers information on the DID and DID-Comm used by the charge/discharge CS 500 in the file system 400 ((2) in FIG. 15).
- the information management device 100 When the energy transaction is approved by users U1 and U2, the information management device 100 generates charge/discharge schedule information and the like based on the transactionable time (start time, end time) for charge/discharge included in requests A and C of users U1 and U2, and transmits the generated schedule information and information on users U1 and U2 to the charge/discharge CS 500 ((3) in FIG. 15).
- the charge/discharge CS 500 generates information (e.g., an image) related to the electricity trading status (contract status) based on the schedule information and provides it to the user terminals 200-1 and 200-2 ((4) in FIG. 15). Note that the above information may be provided by the providing unit 160 of the information management device 100 instead of the charge/discharge CS 500.
- FIG. 16 is a diagram showing an example of an image IM30 relating to the status of an electricity transaction.
- the image IM30 shown in FIG. 16 shows an example of an image displayed on the user terminal 200-2 that has sent a purchase request from the side buying electricity (the buyer side).
- the image IM30 includes, for example, a transaction status display area AR31, a transaction summary display area AR32, and a switch display area AR33.
- the transaction status display area AR31 displays information indicating the electricity purchase status (or electricity sales status) (for example, remaining charge amount, remaining discharge amount), identification information (charging/discharging equipment ID) and information regarding the location (installation position) of the charging/discharging equipment 520 to which the electric vehicle M is connected.
- the transaction status display area AR31 may also display information indicating that electricity trading is in progress or has been completed.
- the transaction summary display area AR32 displays information regarding the electricity transaction (transaction), such as the start time, end time, total amount of electricity, and total cost of charging (or discharging).
- the switch display area AR33 includes icons IC31 and IC32, which are GUI switches.
- Icon IC31 is a switch for receiving an instruction to display an electronic receipt after charging/discharging is completed.
- Icon IC32 is a switch for ending the display of image IM30.
- icon IC31 is selected by user U2
- the transaction application 272 causes an image showing a receipt for the current energy transaction to be displayed on the display 232, and when icon IC32 is selected, the transaction application 272 ends the display of image IM30.
- the users U1 and U2 move the electric vehicles M1 and M2 they use to the charging/discharging equipment 520 managed by the charging/discharging CS 500, and connect the electric vehicles M1 and M2 to the charging/discharging equipment 520 that corresponds to the charging/discharging equipment ID.
- the charging/discharging facility ID and location information displayed in the transaction status display area AR31 are, for example, the ID and location information of the charging/discharging equipment 520 closest to the user terminal 200, extracted by the charging/discharging CS 500 or the information management device 100 based on the location information of the user terminal 200.
- the electric vehicle M1 of user U1 is connected to the charging/discharging equipment 520-1
- the electric vehicle M2 of user U2 is connected to the charging/discharging equipment 520-2.
- the charging/discharging equipment 520-1, 520-2 acquires the identification information (vehicle ID) of the electric vehicles M1, M2 by connecting to the electric vehicles M1, M2, and outputs the acquired vehicle ID to the charging/discharging CS 500. If the vehicle ID is a vehicle ID that has been permitted to be used in advance (scheduled), the charging/discharging CS 500 starts a charging/discharging session (electricity trading by charging/discharging) and transmits information related to charging/discharging (e.g., charging/discharging information, charging/discharging results, session end) to the information management device 100 ((5) in FIG. 15). The information management device 100 stores the electric power trading status, etc.
- vehicle ID vehicle ID that has been permitted to be used in advance
- the charging/discharging CS 500 starts a charging/discharging session (electricity trading by charging/discharging) and transmits information related to charging/discharging (e.g., charging/discharging information, charging/discharging results, session end
- FIG. 17 is a diagram for explaining the management of the transaction status during a charge/discharge session.
- a smart contract SC A including a data set of the CID and the matching result corresponding to the requests A and C for which matching of the third embodiment shown in FIG. 13 has been established is stored on the blockchain 300.
- the example of FIG. 17 shows the management contents of the transaction status during charging/discharging, completion of charging/discharging, and at the end of the session.
- the charge/discharge CS 500 transmits information regarding charging/discharging (e.g., charging/discharging information, charging/discharging results, and end of the session) to the information management device 100.
- the information management device 100 performs transaction management during the charge/discharge session based on the transmitted information.
- FIG. 18 is a flowchart showing an example of processing executed by the information management device 100 during a charge/discharge session.
- the processing in FIG. 18 may be executed repeatedly at a predetermined cycle or at a predetermined timing during a charge/discharge session.
- the acquisition unit 120 of the information management device 100 determines whether or not information regarding charging/discharging has been acquired from the charge/discharge CS 500 (or the charge/discharge equipment 520-1, 520-2) (step S300).
- the acquisition unit 120 determines whether the acquired information is charging information or not (step S310).
- the processing unit 140 (first processing unit 142) generates a dataset DS1 corresponding to the charging information as shown in FIG. 13, and stores it in the file system 400 (step S320).
- the dataset DS1 includes, for example, information regarding the charging and discharging facility ID, charging and discharging time (timestamp), user information, vehicle ID, and amount of discharged power (or charged power).
- the dataset DS1 may also include information such as identification information (battery ID) of battery B (device to be charged and discharged), the amount of power of battery B, and the charging rate (SOC; State Of Charge).
- step S320 if the dataset DS1 already exists in the file system 400, the changed portion of the dataset DS1 may be updated, or the stored previous dataset DS1 may be deleted and a new dataset DS1 may be stored in the file system 400. Furthermore, the dataset DS1 may include information on both the charging side and the discharging side, and each may be stored as a separate dataset.
- the acquisition unit 120 determines whether the acquired information regarding charging and discharging is a charging and discharging result to be sent when charging is completed (step S330). If it is determined that the information is a charging and discharging result, the processing unit 140 generates a data set DS2 indicating the charging and discharging result as shown in FIG. 17, and stores the generated data set DS2 in the file system 400 (step S340). In addition to information similar to that of the data set DS1, the data set DS2 includes information indicating that the transaction is complete and information such as the total amount of charging (or discharging) by the session.
- the processing unit 140 calculates the final transaction amount based on the data set DS1 of the charge/discharge information, the data set DS2 of the charge/discharge results, and the contract information (e.g., transaction price, value-added rate) included in the matching result data set, and generates a data set DS3 including transaction information such as the calculated transaction amount and transaction amount (step S350).
- the transaction information may include, for example, information indicating whether the transaction has been completed.
- the data set DS3 stores session information (information obtained during communication).
- the session information includes at least one of the following information: identification information (charge/discharge ID) for identifying the charge/discharge equipment 520, identification information (CID) of the request that is the basis of the transaction, identification information (user ID) of the user who is the power consumer (supplier), the start time of charge/discharge, the end time of charge/discharge, the battery power amount at the start of the session, the battery power amount at the end of the session, the battery charging rate at the start of the session, the battery charging rate at the end of the session, and the total charge/discharge capacity by the session.
- identification information charge/discharge ID
- CID identification information
- user ID the power consumer
- step S330 if it is determined that the information on discharging is not a charge/discharge result, the acquisition unit 120 determines whether the acquired information on charging/discharging is session end information (step S360). If it is determined that the information on charging/discharging is session end information, the second processing unit 146 adds a data set (for example, at least a part of the contents of the data set DS3) corresponding to the charging session result (power trading result) to the smart contract SC A stored on the blockchain 300 (step S370), and stores it on the blockchain 300 (step S380).
- a data set for example, at least a part of the contents of the data set DS3
- the second processing unit 146 hashes the session information included in the data set (power trading result) to be added to the smart contract SC A , and adds the transaction information to the smart contract SC A without hashing it.
- the second processing unit 146 may add information (status information) that proves that charging/discharging has ended to the smart contract SC A. This ends the process of the flowchart shown in FIG. 18.
- step S300 if it is determined that the information on charging/discharging has not been acquired, the process of this flowchart ends.
- the session information including the user's identification information is hashed and stored on the blockchain 300 without revealing the contents of the data, thereby protecting the privacy information of the user U. Furthermore, by storing information necessary for calculating the final settlement amount, such as the transaction amount and transaction volume, and information for confirming the completion of the transaction (i.e., information that is not privacy information) on the blockchain 300 without hashing, the final settlement amount can be calculated correctly and quickly.
- the above-mentioned smart contract SC A includes the CID and matching result data set corresponding to request A, and thus this information can be used to obtain request information, etc. from the file system 400, etc.
- the information management device 100 in the trading system 1 of the embodiment may be one of the nodes constituting the blockchain 300 (blockchain network), or may be one of the nodes constituting the file system 400 (IPFS network).
- the information management device 100 may be configured integrally with the blockchain 300, or may be configured integrally with the file system 400.
- the information management device 100 may also be configured integrally with the charge/discharge CS 500.
- some of the functions included in the information management device 100 (for example, the functions of the matching unit 130, the registration unit 150, or the provision unit 160) may be executed by a program (dedicated smart contract) pre-stored in the blockchain 300.
- electricity from an electric vehicle M (more specifically, battery B) owned by a user U has been described, but in addition to (or instead of) electricity from the electric vehicle M, electricity may be obtained from solar power generation, wind power generation, hydroelectric power generation, thermal power generation, geothermal power generation, etc.
- the information management device 100 mediates transactions between users and manages transaction results by storing smart contracts related to the transactions on the blockchain 300.
- the information management device 100 includes an acquisition unit 120 that acquires requests related to purchases or sales received from users, a matching unit 130 that matches a new request newly acquired by the acquisition unit 120 with an existing request included in a smart contract already stored on the blockchain 300, and a processing unit 140 that generates a smart contract including the new request on the blockchain 300 if the matching is not established, and adds information about the new request to the smart contract including the existing request with which the matching is established if the matching is established. This makes it possible to reduce the amount of data stored on the blockchain 300 while managing information more accurately.
- the request information stored in the blockchain 300 is hashed, thereby making it possible to better protect the request information. Furthermore, according to the embodiment, by generating a smart contract using a program on the blockchain, the process by which a transaction is generated can be recorded on the blockchain, ensuring transparency of the transaction process. Furthermore, according to the embodiment, the time lag between the actual transaction status and the information managed by the blockchain 300 or the file system 400 can be reduced, making it possible to more accurately manage each piece of information.
- a storage medium for storing computer-readable instructions of an information management device that mediates transactions between users and manages transaction results by storing smart contracts related to the transactions on a blockchain; a processor coupled to the storage medium; The processor executes the computer-readable instructions to: Receive purchase or sale requests from users; Matching the newly acquired new request with an existing request included in a smart contract already stored on the blockchain; If the matching is not established, a smart contract including the new request is generated on the blockchain; When the matching is established, adding information of the new request to a smart contract including the existing request with which the matching is established; Information management device.
- 1...trading system 100...information management device, 110...communication unit, 120...acquisition unit, 130...matching unit, 140...processing unit, 142...first processing unit, 144...assignment unit, 146...second processing unit, 150...registration unit, 160...provision unit, 170...device side storage unit, 200...user terminal, 210...terminal side communication unit, 220...input unit, 230...output unit, 232...display, 234...speaker, 240...location information acquisition unit, 250...control unit, 260...application execution unit, 270...terminal side storage unit, 300...blockchain, 400...file system, 500...charging/discharging CS, 520...charging/discharging equipment, M...electric vehicle
Landscapes
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Public Health (AREA)
- Water Supply & Treatment (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
(1):この発明の一態様に係る情報管理装置は、ユーザ間の取引を仲介し、ブロックチェーン上に前記取引に関するスマートコントラクトを記憶させることで取引結果を管理する情報管理装置であって、ユーザから受け付けた購買または販売に関するリクエストを取得する取得部と、前記取得部により新規に取得した新規リクエストと、既に前記ブロックチェーン上に記憶されたスマートコントラクトに含まれる既存リクエストとのマッチングを行うマッチング部と、前記マッチングが成立しなかった場合に前記ブロックチェーン上に前記新規リクエストを含むスマートコントラクトを生成し、前記マッチングが成立した場合にマッチングが成立した前記既存リクエストを含むスマートコントラクトに前記新規リクエストの情報を追加する処理部と、を備える情報管理装置である。
図1は、実施形態の情報管理装置を利用した取引システム1の構成図である。取引システム1は、例えば、情報管理装置100と、一以上のユーザ端末200-1~200-nと、ブロックチェーン300と、ファイルシステム400と、充放電コントロールシステム(以下、充放電CSと称する)500と、充放電設備520とを備える。情報管理装置100と、ユーザ端末200と、ブロックチェーン300と、充放電CS500とは、例えば、ネットワークNW等を介して互いに通信可能である。ネットワークNWは、例えば、セルラー網や、Wi-Fi網、Bluetooth(登録商標)、インターネット、WAN(Wide Area Network)、LAN(Local Area Network)、公衆回線、プロバイダ装置、専用回線、無線基地局等を含む。ファイルシステム400は、「記憶部」の一例である。
図2は、実施形態の情報管理装置100の構成図である。情報管理装置100は、例えば、通信部110と、取得部120と、マッチング部130と、処理部140と、登録部150と、提供部160と、装置側記憶部170とを備える。取得部120と、マッチング部130と、処理部140と、登録部150と、提供部160とは、例えば、CPU(Central Processing Unit)等のハードウェアプロセッサがプログラム(ソフトウェア)を実行することにより実現される。また、これらの構成要素のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、GPU(Graphics Processing Unit)等のハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予め情報管理装置100が備えるHDD(Hard Disk Drive)やフラッシュメモリ等の記憶装置(非一過性の記憶媒体を備える記憶装置)に格納されていてもよいし、DVDやCD-ROM等の着脱可能な記憶媒体(非一過性の記憶媒体)に格納されており、記憶媒体が、情報管理装置100が備えるドライブ装置に装着されることで情報管理装置100が備えるHDDやフラッシュメモリにインストールされてもよい。
図3は、実施形態のユーザ端末200の構成図である。ユーザ端末200は、例えば、端末側通信部210と、入力部220と、出力部230と、位置情報取得部240と、制御部250と、アプリ実行部260と、端末側記憶部270とを備える。位置情報取得部240と、制御部250と、アプリ実行部260とは、それぞれ、例えば、CPU等のハードウェアプロセッサがプログラム(ソフトウェア)を実行することにより実現される。また、これらの構成要素のうち一部または全部は、LSIやASIC、FPGA、GPU等のハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めユーザ端末200が備えるHDDやフラッシュメモリ等の記憶装置(非一過性の記憶媒体を備える記憶装置)に格納されていてもよいし、DVDやCD-ROM等の着脱可能な記憶媒体(非一過性の記憶媒体)に格納されており、記憶媒体が、ユーザ端末200が備えるドライブ装置に装着されることでユーザ端末200が備えるHDDやフラッシュメモリにインストールされてもよい。
次に、実施形態の取引システム1を用いた電力取引の流れについて具体的に説明する。図4は、実施形態における電力取引の一連の流れについて説明するためのシーケンス図である。図4では、一例として、ユーザU1が使用するユーザ端末200-1、ユーザU2が使用するユーザ端末200-2、情報管理装置100、ブロックチェーン300、充放電CS500における処理を示している。ユーザU1およびU2は、ともに取引システム1のサービスの提供を利用できるユーザ(登録部150によりサービスの利用が許可されたユーザ)であるものとする。また、以下では、ユーザU1が利用する電動車両M1に搭載されたバッテリB1とユーザU2が利用する電動車両M2に搭載されたバッテリB2との間で電力融通取引を行う例について説明する。
[リクエスト生成処理:ステップS100、S110]
ユーザ端末200-1、200-2のそれぞれがリクエストを生成する場合、取引アプリ272は、ユーザ端末200-1、200-2にリクエストを入力する画像をディスプレイ232に表示させる。この画像は、情報管理装置100の提供部160から提供されてよい。また、画像に対応した音声が出力されてもよい。
次に、ステップS104~S108およびステップS114におけるマッチング処理、およびマッチング結果に基づくスマートコントラクトSCの生成処理について説明する。なお、以下の処理では、各ユーザ端末200における電力取引に関するリクエストをトランザクションとしたスマートコントラクトSCの生成処理について、幾つかの実施例に分けて説明する。
図6は、第1実施例におけるマッチング処理およびスマートコントラクトの生成処理の一例を示すフローチャートである。図6の例において、取得部120は、ユーザUから受け付けた新規リクエストを取得したか否かを判定する(ステップ(ステップS200)。新規リクエストを取得したと判定された場合、マッチング部130は、新規リクエストとブロックチェーン300上に記憶されたスマートコントラクトSCに含まれる既存リクエストとのマッチング処理を行う(ステップS210)。次に、処理部140は、マッチング部130によるマッチングが成立したか否かを判定する(ステップS220)。マッチングが成立しなかった(不成立である)と判定した場合、処理部140は、新規リクエストを含む新しいスマートコントラクトを生成する(ステップS230)。次に、登録部150は、生成したスマートコントラクトをブロックチェーン上に記憶する(ステップS240)。なお、スマートコントラクトに保存される新規リクエストはハッシュ値化されていてもよい。
次に、第2実施例について説明する。第2実施例は、第1実施例と比較して、リクエスト情報がブロックチェーン300以外のファイルシステム400上に記憶されるとともに、スマートコントラクトSCが処理部140により生成されるのではなく、処理部140からの指示によりブロックチェーン300上のプログラムによって生成される点で相違する。以下では、主に相違点を中心として説明する。
次に、第3実施例について説明する。第3実施例は、第2実施例と比較して、上述したリクエストの識別情報(CID)をブロックチェーン300上のスマートコントラクトSCに記憶させるとともに、マッチング結果に対するユーザUの承認があった時点で、マッチング結果がスマートコントラクトSCに追加される点で相違する。以下では、主に上記相違点を中心として説明する。なお、第3実施例でも、第2実施例と同様の処理部140の構成により各処理が実行されてよい。
次に、図4に示すステップS132~S144の電力取引管理処理について具体的に説明する。図15は、電力取引に関する処理について説明するための図である。図15において、充放電CS500と、情報管理装置100と、ファイルシステム400とは、例えば情報管理装置100と、充放電CS500のそれぞれに設けられた専用のエージェント(ユーザエージェントプログラム)によりデータの送受信等が行われてよい。また、装置間で送受信されるデータ(トランザクション)は、分散型アイデンティティ(DID:Decentralized Identifier)と呼ばれる方式で転送されてよい。DIDは、ユーザ名等の個人情報が特定されてしまうような識別情報を、第三者に管理されない自己所有の独立したIDに置き換えることで装置間でのデータ交換を可能にするとともに、プライバシーの保護や取引の安全性を確保することができる転送フレームワークである。DIDを用いたデータ転送には、例えば、P2P通信プロトコルであるDID-Commが用いられる。DID-Commを用いることで、システム全体を管理する装置への依存度を下げた状態で、分散型のデータ連携が可能となる。また、DID-Commを用いたデータ転送を行うことで、例えば送信されたデータの資格情報(ユーザ情報)の証明を検証することができる。なお、実施形態で用いられる通信プロトコルについてはDID-Commに限定されなくてもよい。
実施形態の取引システム1における情報管理装置100は、ブロックチェーン300(ブロックチェーンネットワーク)を構成するノードの一つであってもよく、ファイルシステム400(IPFSネットワーク)を構成するノードの一つであってもよい。言い換えると、情報管理装置100は、ブロックチェーン300と一体に構成されていてもよく、ファイルシステム400と一体に構成されていてもよい。また、情報管理装置100は、充放電CS500と一体に構成されていてもよい。また、情報管理装置100に含まれる機能の一部(例えば、マッチング部130、登録部150、または提供部160の機能)は、ブロックチェーン300に予め記憶されたプログラム(専用のスマートコントラクト)によって実行されてもよい。
ユーザ間の取引を仲介し、ブロックチェーン上に前記取引に関するスマートコントラクトを記憶させることで取引結果を管理する情報管理装置のコンピュータによって読み込み可能な命令(computer-readable instructions)を格納する記憶媒体(storage medium)と、
前記記憶媒体に接続されたプロセッサと、を備え、
前記プロセッサは、前記コンピュータによって読み込み可能な命令を実行することにより(the processor executing the computer-readable instructions to:)、
ユーザから受け付けた購買または販売に関するリクエストを取得し、
新規に取得した新規リクエストと、既に前記ブロックチェーン上に記憶されたスマートコントラクトに含まれる既存リクエストとのマッチングを行い、
前記マッチングが成立しなかった場合に前記ブロックチェーン上に前記新規リクエストを含むスマートコントラクトを生成し、
前記マッチングが成立した場合にマッチングが成立した前記既存リクエストを含むスマートコントラクトに前記新規リクエストの情報を追加する、
情報管理装置。
Claims (9)
- ユーザ間の取引を仲介し、ブロックチェーン上に前記取引に関するスマートコントラクトを記憶させることで取引結果を管理する情報管理装置であって、
ユーザから受け付けた購買または販売に関するリクエストを取得する取得部と、
前記取得部により新規に取得した新規リクエストと、既に前記ブロックチェーン上に記憶されたスマートコントラクトに含まれる既存リクエストとのマッチングを行うマッチング部と、
前記マッチングが成立しなかった場合に前記ブロックチェーン上に前記新規リクエストを含むスマートコントラクトを生成し、前記マッチングが成立した場合にマッチングが成立した前記既存リクエストを含むスマートコントラクトに前記新規リクエストの情報を追加する処理部と、
を備える情報管理装置。 - 前記処理部は、ハッシュ値化された前記新規リクエストの情報を含むスマートコントラクトを生成する、
請求項1に記載の情報管理装置。 - 前記処理部は、予め前記ブロックチェーン上に記憶されたプログラムにより前記新規リクエストを含むスマートコントラクトを生成させる、
請求項1に記載の情報管理装置。 - 前記ブロックチェーンは、イーサリアムである、
請求項3に記載の情報管理装置。 - 前記取引は、電力取引を含み、
前記リクエストは、電力の購買または販売に関するリクエストを含み、
前記処理部は、前記リクエストに対する電力取引結果を前記スマートコントラクトに追加する、
請求項1に記載の情報管理装置。 - 前記スマートコントラクトは、前記ユーザに関する情報、取引種別、取引完了後に交換されるトークンに関する情報、および前記ブロックチェーン外の記憶部に記録される前記リクエストに関する情報を参照するための情報のうち、少なくとも一つを含む、
請求項1に記載の情報管理装置。 - 前記処理部は、前記ユーザ間の取引におけるセッション情報をハッシュ値化して前記ブロックチェーン上に記憶させ、取引額および取引量を含む取引情報をハッシュ値化せずにブロックチェーン上に記憶させる、
請求項1に記載の情報管理装置。 - ユーザ間の取引を仲介し、ブロックチェーン上に前記取引に関するスマートコントラクトを記憶させることで取引結果を管理する情報管理装置が、
ユーザから受け付けた購買または販売に関するリクエストを取得し、
新規に取得した新規リクエストと、既に前記ブロックチェーン上に記憶されたスマートコントラクトに含まれる既存リクエストとのマッチングを行い、
前記マッチングが成立しなかった場合に前記ブロックチェーン上に前記新規リクエストを含むスマートコントラクトを生成し、
前記マッチングが成立した場合にマッチングが成立した前記既存リクエストを含むスマートコントラクトに前記新規リクエストの情報を追加する、
情報管理方法。 - ユーザ間の取引を仲介し、ブロックチェーン上に前記取引に関するスマートコントラクトを記憶させることで取引結果を管理する情報管理装置に、
ユーザから受け付けた購買または販売に関するリクエストを取得させ、
新規に取得した新規リクエストと、既に前記ブロックチェーン上に記憶されたスマートコントラクトに含まれる既存リクエストとのマッチングを行わせ、
前記マッチングが成立しなかった場合に前記ブロックチェーン上に前記新規リクエストを含むスマートコントラクトを生成させ、
前記マッチングが成立した場合にマッチングが成立した前記既存リクエストを含むスマートコントラクトに前記新規リクエストの情報を追加させる、
プログラム。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202380099433.4A CN121311915A (zh) | 2023-06-23 | 2023-06-23 | 信息管理装置、信息管理方法及程序 |
| EP23942442.7A EP4715723A1 (en) | 2023-06-23 | 2023-06-23 | Information management device, information management method, and program |
| PCT/JP2023/023344 WO2024262011A1 (ja) | 2023-06-23 | 2023-06-23 | 情報管理装置、情報管理方法、およびプログラム |
| JP2025527387A JPWO2024262011A1 (ja) | 2023-06-23 | 2023-06-23 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2023/023344 WO2024262011A1 (ja) | 2023-06-23 | 2023-06-23 | 情報管理装置、情報管理方法、およびプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024262011A1 true WO2024262011A1 (ja) | 2024-12-26 |
Family
ID=93935193
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2023/023344 Ceased WO2024262011A1 (ja) | 2023-06-23 | 2023-06-23 | 情報管理装置、情報管理方法、およびプログラム |
Country Status (4)
| Country | Link |
|---|---|
| EP (1) | EP4715723A1 (ja) |
| JP (1) | JPWO2024262011A1 (ja) |
| CN (1) | CN121311915A (ja) |
| WO (1) | WO2024262011A1 (ja) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2019153275A (ja) * | 2018-03-02 | 2019-09-12 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 制御方法、コントローラ、データ構造及び電力取引システム |
| WO2020170656A1 (ja) * | 2019-02-22 | 2020-08-27 | 株式会社日立製作所 | 構成変更管理方法、構成変更管理システム、およびノード |
| JP2022046757A (ja) | 2020-02-28 | 2022-03-23 | アスエネ株式会社 | 電力取引システム |
| WO2022153375A1 (ja) * | 2021-01-13 | 2022-07-21 | 富士通株式会社 | データ格納方法、データ格納プログラム、および情報処理装置 |
| JP2023061014A (ja) * | 2021-10-19 | 2023-05-01 | トヨタ自動車株式会社 | 電力取引システム、コンピュータ、電力取引方法 |
-
2023
- 2023-06-23 CN CN202380099433.4A patent/CN121311915A/zh active Pending
- 2023-06-23 JP JP2025527387A patent/JPWO2024262011A1/ja active Pending
- 2023-06-23 EP EP23942442.7A patent/EP4715723A1/en active Pending
- 2023-06-23 WO PCT/JP2023/023344 patent/WO2024262011A1/ja not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2019153275A (ja) * | 2018-03-02 | 2019-09-12 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 制御方法、コントローラ、データ構造及び電力取引システム |
| WO2020170656A1 (ja) * | 2019-02-22 | 2020-08-27 | 株式会社日立製作所 | 構成変更管理方法、構成変更管理システム、およびノード |
| JP2022046757A (ja) | 2020-02-28 | 2022-03-23 | アスエネ株式会社 | 電力取引システム |
| WO2022153375A1 (ja) * | 2021-01-13 | 2022-07-21 | 富士通株式会社 | データ格納方法、データ格納プログラム、および情報処理装置 |
| JP2023061014A (ja) * | 2021-10-19 | 2023-05-01 | トヨタ自動車株式会社 | 電力取引システム、コンピュータ、電力取引方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2024262011A1 (ja) | 2024-12-26 |
| EP4715723A1 (en) | 2026-03-25 |
| CN121311915A (zh) | 2026-01-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20200286132A1 (en) | Second-hand vehicle transaction method and server | |
| TW202038173A (zh) | 基於區塊鏈的資料處理系統、方法、計算設備及儲存媒體 | |
| CN110659906B (zh) | 票据信息处理方法、相关设备及介质 | |
| CN109447740A (zh) | 无线电频谱资源交易方法、可读存储介质和终端 | |
| US20130041770A1 (en) | Persistent network-based electronic transaction services | |
| US12524759B2 (en) | Systems and methods for transacting over a network | |
| Radhakrishnan et al. | Sdpp: Streaming data payment protocol for data economy | |
| CN110955724B (zh) | 基于区块链的数据处理方法、装置、节点设备及存储介质 | |
| JP2024514859A (ja) | ブロックチェーンマイクロトランザクション | |
| US8825008B2 (en) | Method and apparatus for authorizing transfer of mobile devices | |
| KR102320550B1 (ko) | Did 기반 인터체인 시스템 및 그의 데이터 교환/거래 방법 | |
| KR20220095957A (ko) | 블록체인 기반의 안전하고 신뢰 가능한 데이터 거래 방법 및 데이터 거래 플랫폼 제공 시스템 | |
| CN116957566A (zh) | 基于区块链的数据处理方法及装置、电子设备、存储介质 | |
| WO2024262011A1 (ja) | 情報管理装置、情報管理方法、およびプログラム | |
| WO2024262013A1 (ja) | 情報管理装置、情報管理方法、およびプログラム | |
| WO2024262019A1 (ja) | 情報管理装置、情報管理方法、およびプログラム | |
| Baskaran | Hybrid energy efficient deep learning and redactable consortium blockchain-based secure framework for smart parking in smart cities | |
| CN109801052B (zh) | 一种转账方法以及支付平台 | |
| CN112446508A (zh) | 物流运输中包装的回收方法及装置、存储介质及电子设备 | |
| CN115879921A (zh) | 一种电子门票的线上转让方法及装置 | |
| KR102674689B1 (ko) | 상품의 판매 및 이동 이력 정보를 이용한 중고 거래 서비스 제공 시스템 | |
| CN115705566A (zh) | 云数据处理方法、装置、计算机设备和存储介质 | |
| US20230124657A1 (en) | EGR Powered System and Energy Provider Billing Entity, Billing Management Using Blockchain | |
| JP2020071817A (ja) | 情報処理方法、情報処理装置及びプログラム | |
| JP2020113058A (ja) | 情報処理方法、情報処理装置、およびプログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23942442 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2025527387 Country of ref document: JP Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2023942442 Country of ref document: EP |
|
| ENP | Entry into the national phase |
Ref document number: 2023942442 Country of ref document: EP Effective date: 20251217 |
|
| ENP | Entry into the national phase |
Ref document number: 2023942442 Country of ref document: EP Effective date: 20251217 |
|
| ENP | Entry into the national phase |
Ref document number: 2023942442 Country of ref document: EP Effective date: 20251217 |
|
| ENP | Entry into the national phase |
Ref document number: 2023942442 Country of ref document: EP Effective date: 20251217 |
|
| ENP | Entry into the national phase |
Ref document number: 2023942442 Country of ref document: EP Effective date: 20251217 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| ENP | Entry into the national phase |
Ref document number: 2023942442 Country of ref document: EP Effective date: 20251217 |
|
| ENP | Entry into the national phase |
Ref document number: 2023942442 Country of ref document: EP Effective date: 20251217 |
|
| ENP | Entry into the national phase |
Ref document number: 2023942442 Country of ref document: EP Effective date: 20251217 |
|
| WWP | Wipo information: published in national office |
Ref document number: 2023942442 Country of ref document: EP |