Product related information management method, product related information management device, product related information management system, and computer program
The product-related information management system uses NFC tags and blockchain smart contracts to authenticate and update product ownership, addressing the limitation of existing systems by preventing falsification and ensuring authenticity.
Patent Information
- Application Number
- JP2023108721
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-30
- Publication Date
- 2025-01-17
AI Technical Summary
Existing systems for managing product-related information on blockchain platforms are limited to manufacturers and distributors, and do not prevent falsification of product owner information during resale, posing risks to brand image and consumer safety.
A product-related information management system that uses NFC tags with tamper-resistant memory to authenticate product ownership, generates NFT-IDs, and employs smart contracts on a blockchain to verify and update product-related information, ensuring authenticity and preventing falsification.
Prevents falsification of product owner information by authenticating product ownership through NFC tags and blockchain-based smart contracts, thereby safeguarding brand image and consumer safety.
Smart Images

Figure 2025007369000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a product-related information management method, a product-related information management device, a product-related information management system, and a computer program. [Background technology]
[0002] As the economy becomes more globalized, the distribution of products produced by businesses such as apparel brands and home appliance manufacturers in domestic and international markets is increasing. There are also increasing cases of purchasers of these products reselling them to others via the Internet, etc. On the other hand, when counterfeit products that are copies of existing products are distributed in the market, it can damage the brand image of businesses and threaten the safety of general consumers. There is also a risk that related information such as the owner information of the products involved in resale, etc. may be illegally forged.
[0003] Patent Document 1 discloses a system that enables users who purchase products requiring authentication to provide highly reliable authentication proof by linking the products to be authenticated with guarantee cards and writing product information and transaction information into the blockchain of a dedicated platform. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent No. 6894033 Summary of the Invention [Problem to be solved by the invention]
[0005] In the system of Patent Document 1, those who can write product information and transaction information to the blockchain are limited to manufacturers or distributors, and no method is disclosed for preventing tampering with related information such as product owner information when a purchaser resells the product.
[0006] The present invention has been made in consideration of the above circumstances, and has an object to provide a product-related information management method, a product-related information management device, a product-related information management system, and a computer program that can prevent tampering with product-related information. [Means for solving the problem]
[0007] The present application includes multiple means for solving the above-mentioned problems, and to give one example, a product-related information management method acquires a tag ID and authentication data of a tag attached to a product from a user terminal device, and if the authenticity determination result of the authentication data by the authentication server is true, acquires information including an NFT-ID, owner address, and authentication counter value corresponding to the acquired tag ID from a blockchain having a block that stores information including an NFT-ID associated with the tag ID, an owner address, product-related information, and an authentication counter value, generates an authentication token, sends the generated authentication token to the user terminal device, sends transaction data generated by the user terminal device to the blockchain, including the NFT-ID, the owner address, update information for the related information, and the authentication token, and if the transaction data is verified, updates the product-related information identified by the NFT-ID stored in the block using the update information. Effect of the Invention
[0008] According to the present invention, it is possible to prevent tampering with related information such as product owner information. [Brief description of the drawings]
[0009] [Figure 1] 1 is a diagram illustrating an example of a configuration of a product-related information management system according to an embodiment of the present invention. [Diagram 2] FIG. 2 is a diagram illustrating an example of a configuration of a product DB. [Diagram 3] FIG. 11 is a diagram showing an example of a processing procedure performed by the product-related information management system. [Figure 4] FIG. 11 is a diagram showing an example of authentication data. [Diagram 5] FIG. 1 is a diagram showing an example of product data held by a smart contract on a blockchain. [Figure 6] FIG. 13 illustrates an example of a method for generating an authentication token. [Figure 7] FIG. 2 is a diagram illustrating an example of transaction data. [Figure 8] FIG. 13 is a diagram illustrating an example of a procedure for verifying transaction data using a smart contract. [Figure 9] FIG. 13 is a diagram illustrating an example of updating related information of a product. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] The present invention will be described below with reference to the drawings showing the embodiments. FIG. 1 is a diagram showing an example of the configuration of a product-related information management system of this embodiment. The product-related information management system includes a business server 50 as a product-related information management device, and a blockchain 30 (more specifically, a smart contract 32 as a computer program that runs on the blockchain 30). The business server 50 is connected to a user terminal device 20 and an NFC tag authentication server 80 via a communication network. The business server 50 and the user terminal device 20 are connected to the blockchain 30.
[0011] The NFC tag 10 includes a chip that complies with a communication standard called NFC (Near Field Communication), and can be a sticker type, a card type, a tag type, a key chain type, or a type that is built into the product, depending on the product to which the NFC tag 10 is attached. The built-in type is not a type that is attached after the product is completed, but a type that is built into the product, for example, during the product manufacturing stage or before the product is shipped. There are no particular limitations on the products to which the NFC tag 10 is attached as long as they are sold on the market or resold and distributed on the market, but they include, for example, products that require measures against imitation and counterfeiting, such as brand-name products and home appliances.
[0012] The NFC tag 10 has a tamper-resistant memory, and stores an NFC tag ID 11, a URL 12 for connecting to the business server 50, authentication data 13, and a common key A14 in the tamper-resistant memory. The NFC tag 10 also has a tag counter 15. The NFC tag ID 11 is an identifier for identifying the NFC tag 10. The authentication data 13 is generated using the common key A14. Details of the authentication data 13 will be described later. The tag counter 15 increments a counter value (adds +1) every time the NFC tag 10 is read by the user terminal device 20.
[0013] The user terminal device 20 is, for example, a device used by a user (owner) who owns a product to which an NFC tag 10 is attached, and can be configured, for example, as a smartphone, a personal computer (PC), a tablet terminal, or the like.
[0014] The user terminal device 20 includes a control unit 21 that controls the entire device, a communication unit 22, a display unit 23, an operation unit 24, and a storage unit 25. The control unit 21 may be configured by incorporating a required number of CPUs (Central Processing Units), MPUs (Micro-Processing Units), GPUs (Graphics Processing Units), etc. The control unit 21 may also be configured by combining cryptographic processors, DSPs (Digital Signal Processors), FPGAs (Field-Programmable Gate Arrays), etc.
[0015] The communication unit 22 includes a communication module and has a function of reading the NFC tag 10. The communication unit 22 also has a function of communicating with the business server 50 and the blockchain 30.
[0016] The display unit 23 includes a liquid crystal display panel, an organic EL display panel, or the like, and can display the screen of a browser application provided by the business server 50.
[0017] The operation unit 24 is configured with a touch panel or the like, and can perform a character input operation on the display unit 23, as well as perform operations on icons, images, characters, etc. displayed on the display unit 23. The operation unit 24 may be a mouse, a keyboard, etc.
[0018] The storage unit 25 can be configured, for example, with a hard disk or a semiconductor memory, and stores the browser 26, the private key B27, and required information. The browser 26 is a Web browser, and a front end (program) of a browser application (Web application) is executed on the browser 26 side. The private key B27 is used to generate a signature to be added to transaction data, which will be described later.
[0019] The business server 50 is a server for managing product-related information to prevent it from being illegally tampered with, and is owned and operated by a business that manufactures and sells the products, or a contractor commissioned by the business. In this specification, product-related information includes owner information of the product (e.g., owner address, etc.), product status of the product (e.g., before shipping, purchased, being put up for sale on a marketplace, etc.), product information of the product (e.g., serial number, shipping date, manufacturer, etc.), etc.
[0020] The business entity server 50 includes a control unit 51 that controls the entire server, a communication unit 52, a memory 53, a storage unit 54, and a product DB 57. The control unit 51 may be configured by incorporating a required number of CPUs, MPUs, GPUs, etc. The control unit 51 may also be configured by combining a cryptographic processor, a DSP, an FPGA, etc.
[0021] The communication unit 52 is equipped with a communication module and has communication function between the NFC tag authentication server 80 and the blockchain 30.
[0022] The storage unit 54 can be configured, for example, with a hard disk or a semiconductor memory, and stores a computer program 55 (program product), a private key A 56, and required information.
[0023] The computer program 55 is a computer program that runs on the business entity server 50, and includes a browser application. The computer program 55 can be read by a recording medium reading unit from a recording medium (for example, an optically readable disk storage medium such as a CD-ROM) on which the computer program 55 is recorded, and the read computer program 55 can be stored in the storage unit 54. The computer program 55 may also be downloaded from an external device via the communication unit 52 and stored in the storage unit 54.
[0024] The memory 53 can be configured with a semiconductor memory such as a static random access memory (SRAM), a dynamic random access memory (DRAM), a flash memory, etc. A computer program 55 can be loaded into the memory 53, and the control unit 51 can execute the computer program 55. The control unit 51 can execute processing defined by the computer program 55. In other words, the processing by the control unit 51 is also the processing by the computer program 55.
[0025] Private key A56 is used to generate authentication tokens (signatures) described below.
[0026] The product DB 57 is a database of products managed by the business entity server 50. In the example of Fig. 1, the business entity server 50 has the product DB 57, but the present invention is not limited to this configuration, and a data server separate from the business entity server 50 may be provided, and the product DB may be provided in the data server. The product DB 57 may be distributed among multiple databases.
[0027] 2 is a diagram showing an example of the configuration of the product DB 57. The product DB 57 is composed of columns such as serial number (NO.), NFC tag ID, NFT-ID, owner information, product status, and product information. The product information includes information such as the product serial number, shipping date, and manufacturer. Among the information in the product DB 57, the owner information, product status, and product information are collectively referred to as related information.
[0028] The NFC tag ID is an identifier that identifies the NFC tag (tag) attached to a product, and a different ID is assigned to each NFC tag regardless of whether the product types (eg, model numbers) are the same or different.
[0029] The NFT-ID is a unique ID that identifies an NFT. An NFT (Non-Fungible Token) is a non-fungible token, a unique and non-substitutable unit of data recorded in a block (ledger) 31 of the blockchain 30, and can associate a product as a unique item. By managing an NFT associated with a product on the blockchain 30, the product's related information can be uniquely identified along with its authenticity.
[0030] The owner information may be any information that can identify the owner of the product, such as the owner address, the owner's public key, name, date of birth, user ID and password, account number, etc. Note that the name, date of birth, account number, etc. may be excluded from the viewpoint of protecting personal information. The owner information is also recorded in block 31 of the blockchain 30. The owner address in the blockchain 30 is generally a data string that is uniquely generated from the public key of a public key pair held by a user. The generation method and the format of the data string differ depending on the type of blockchain used. For example, the owner address in Bitcoin is 27 to 34 alphanumeric characters starting with 1 or 3, and the owner address in Ethereum is a 20-byte data string.
[0031] The product status is information indicating the state of the product in the distribution process, and includes, for example, the state of being put up for sale on a marketplace (being resold), not yet shipped, purchased, etc. Note that the product status is not limited to these, and may include information such as whether or not it has been repaired or repaired, unused or used, etc.
[0032] The product information includes the product's serial number, shipping date, manufacturer, etc. Note that the product information is not limited to these, and may include information such as the resale price.
[0033] The NFC tag authentication server 80 is a server that uses a common key A84 between the NFC tag 10 and the NFC tag 10 to authenticate whether a correct NFC tag 10 is held over the user terminal device 20.
[0034] The NFC tag authentication server 80 includes a control unit 81 that controls the entire server, a communication unit 82, and a storage unit 83. The control unit 81 may be configured by incorporating a required number of CPUs, MPUs, GPUs, etc. The control unit 81 may also be configured by combining a DSP, an FPGA, etc.
[0035] The communication unit 82 includes a communication module and has a function of communicating with the business server 50 .
[0036] The storage unit 83 can be configured, for example, with a hard disk or a semiconductor memory, and stores a common key A84 and required information. The common key A84 is a key common to the common key A14 stored in the NFC tag 10, and is used when performing encryption and decryption.
[0037] The blockchain 30 is a distributed system using a P2P network, and nodes (computers) on the P2P network share the same data (blocks, ledgers). The blockchain 30 is a technology for distributing, sharing, and managing blocks (ledgers) 31. The business server 50 and the user terminal device 20 shown in FIG. 1 can constitute a node.
[0038] Each block 31 of the blockchain 30 has information such as a smart contract 32, transaction data 33, and a hash value 36 of the previous (immediately preceding) block. The smart contract 32 has variables such as a public key A34 corresponding to the private key A56, a public key B35 corresponding to the private key B27, and data 37 such as an owner address and product information (see FIG. 5 described later). Only one of the public key B35 and the data 37 may be used. One public key A34 is required for each business server 50. The signature included in the transaction data 33 can derive the public key B35 from the signature without using the public key B35 by using the function of elliptic curve cryptography. Therefore, the smart contract 32 can verify the signature included in the transaction data 33 if it holds either the public key B35 or the owner address.
[0039] The smart contract 32 is a computer program that runs on the blockchain 30, holds the execution code and variables of the program deployed on the blockchain 30, and is stored in a block 31 that each node has.
[0040] The transaction data 33 includes a record of all transactions (e.g., transfer of goods, changes to goods status or goods information, etc.) that have taken place during the period of the block 31. Details of the goods data will be described later.
[0041] The hash value 36 of the previous block is a fixed-length value obtained by a predetermined calculation from the original input data, and is calculated using as input data the information contained in the previous block 31. Note that the information contained in the block 31 is not limited to the information shown in Fig. 1, and may also include, for example, a nonce used to calculate a hash value based on the information in the current block when adding the next block.
[0042] Next, the process performed by the product-related information management system (product-related information management method) will be described.
[0043] Fig. 3 is a diagram showing an example of a processing procedure by the product-related information management system. Fig. 3 explains a case where the owner (ownership) of a product is changed, that is, the product is transferred, as an example of updating product-related information. In this example, it is possible to prevent the owner of the product from being tampered with. Note that updates to product information are not limited to the owner of the product, and may also include updates to the product status or product information.
[0044] The user terminal device 20 reads the URL 12, the NFC tag ID 11, and the authentication data 13 for accessing the business server 50 from the NFC tag 10 attached to the product (S11). The reading of this information is performed when the user brings the user terminal device 20 close to the NFC tag 10.
[0045] 4 is a diagram showing an example of the authentication data 13. The authentication data 13 includes a ciphertext and a message authentication code (MAC). The ciphertext is the counter value of the tag counter 15 and the plaintext to be transmitted to the business server 50, encrypted using a common key A14. The message authentication code is a short code for authenticating the ciphertext, and can be calculated by performing an operation on the ciphertext based on a predetermined algorithm. The message authentication code is used to ensure that the ciphertext has not been altered since it was sent (integrity) when the recipient authenticates the ciphertext received.
[0046] Returning to Fig. 3, the user terminal device 20 transmits the read NFC tag ID 11 and authentication data 13 to the URL 12 of the business server 50 (S12). The business server 50 transmits the received NFC tag ID 11 and authentication data 13 to the NFC tag authentication server 80 (S13). The NFC tag authentication server 80 determines the authenticity of the authentication data (S14).
[0047] The NFC tag authentication server 80 can determine authenticity as follows. That is, (1) the NFC tag authentication server 80 uses the common key A84 to decrypt the ciphertext of the authentication data 13. (2) The NFC tag authentication server 80 determines whether the tag counter value obtained by decryption is greater than the tag counter value it holds. (3) The NFC tag authentication server 80 determines whether the NFC tag ID received from the business server 50 matches the NFC tag ID it holds. (4) The NFC tag authentication server 80 determines whether the message authentication code included in the authentication data matches a message authentication code obtained by performing an operation based on a predetermined algorithm on the ciphertext included in the authentication data.
[0048] The NFC tag authentication server 80 can determine that the authenticity determination result is true when all of the above determination results (2) to (4) are correct. Note that the NFC tag authentication server 80 may also determine that the authenticity determination result is true when some of the above determination results (2) to (4) are correct.
[0049] As described above, the authentication data 13 includes a tag counter value that is updated every time the NFC tag ID 11 is read from the NFC tag 10. If the tag counter value included in the authentication data 13 is greater than the tag counter value held by the NFC tag authentication server 80 and corresponding to the NFC tag 10, the NFC tag authentication server 80 can determine that the authenticity determination result of the authentication data 13 is true.
[0050] The authentication data 13 also includes a plain text (message) including the tag counter value and a message authentication code (authentication code) for authenticating the message. If the message authentication code calculated from the message included in the authentication data 13 matches the message authentication code included in the authentication data 13, the NFC tag authentication server 80 can determine that the authenticity determination result of the authentication data 13 is true.
[0051] Furthermore, if the NFC tag ID 11 acquired from the user terminal device 20 via the business server 50 matches the NFC tag ID held by the NFC tag authentication server 80, the authenticity determination result of the authentication data 13 can be determined to be true.
[0052] Returning to FIG. 3, the NFC tag authentication server 80 transmits the authenticity determination result (here, it is assumed that the tag is determined to be authentic) to the business entity's server 50 (S15), and ends the process.
[0053] When the business server 50 receives the authenticity determination result that is determined to be true, it specifies the NFC tag ID 11 to the blockchain 30 (S16) and obtains the NFT-ID, owner address, and counter value of the authentication counter linked to the NFC tag ID 11 (S17).
[0054] 5 is a diagram showing an example of data 37 held by the smart contract 32 on the blockchain 30. The data 37 has the same data as the product DB 57, and includes information such as a serial number (NO.), NFC tag ID, NFT-ID, authentication counter value, owner address, product status, and product information. The product information includes information such as the product serial number, shipping date, and manufacturer. Among the product data, the owner address, product status, and product information are collectively referred to as related information.
[0055] Returning to Fig. 3, the business server 50 generates an authentication token (S18). Since the business server 50 has received the authenticity determination result that is determined to be true, the business server 50 generates an authentication token for changing (updating) the ownership on the blockchain 30.
[0056] FIG. 6 is a diagram showing an example of a method for generating an authentication token. The data to be signed is input to a hash function, and a hash value is calculated. A signature (authentication token) is generated for the calculated hash value using private key A56 of the business server 50. The authentication token only has a signature and does not include the data to be signed. The data to be signed includes an NFC tag ID, an NFT-ID, an owner address, and an authentication counter (counter value). The data to be signed has the same configuration regardless of the type of product information to be updated.
[0057] As described above, the authentication token is a signature for the hash of the NFC tag ID, the NFT-ID, the owner address, etc., and the authentication counter value obtained from the blockchain 30. When verifying an authentication token on the blockchain 30, the smart contract 32 calculates a hash value from the NFC tag ID, the owner address, and the authentication counter stored in the blockchain 30 based on the NFT-ID included in the transaction data described below, and can verify the authentication token using the calculated hash value, the authentication token (signature), and the public key A34 (or the owner address).
[0058] Returning to FIG. 3, the business server 50 transmits the generated authentication token, information about the browser application (for example, the browser screen, etc.), and the NFT-ID to the user terminal device 20 (S19).
[0059] In order to transfer the product, the user operates the browser 26 of the user terminal device 20 and performs an operation for generating transaction data. The user terminal device 20 generates the transaction data in response to the user's operation (S20).
[0060] FIG. 7 is a diagram showing an example of transaction data. The transaction data has a data portion and a signature. The data portion has the owner address, update information for related information (e.g., transferee address, product status, etc.), an NFT-ID, and an authentication token. The user terminal device 20 inputs the data portion into a hash function to calculate a hash value, and generates a signature for the calculated hash value using private key B27 (a predetermined second private key). The user terminal device 20 can attach a signature to the data portion to generate transaction data.
[0061] As mentioned above, the transaction data includes the NFT-ID, the owner address, update information (e.g., the transfer address), and the signature.
[0062] Returning to Fig. 3, the user terminal device 20 transmits the generated transaction data to the blockchain 30 (S21). The blockchain 30 (more specifically, the smart contract 32) verifies the transaction data (S22), transmits a transfer completion notification to the business server 50 (S23), and ends the processing.
[0063] Next, the verification process of transaction data by the smart contract 32 will be described.
[0064] FIG. 8 is a diagram showing an example of the procedure of the transaction data verification process by the smart contract 32. The smart contract 32 receives the transaction data (S101) and derives the owner address from the signature in the transaction data (S102). The smart contract 32 acquires the owner address linked to the NFT-ID from the block 31 of the blockchain 30 (S103), and determines whether the owner address in the transaction data, the owner address derived in step S102, and the owner address acquired in S103 all match (S104). The process of step S104 makes it possible to verify that the signature of the transaction data is generated by a genuine owner address (transfer source address).
[0065] If all the owner addresses match (YES in S104), the smart contract 32 acquires the NFC tag ID and the authentication counter value associated with the NFT-ID from the block 31 of the blockchain 30 (S105), and derives a hash value of the authentication token using the data acquired from the blockchain 30 in step S105 and the owner address (S106). The smart contract 32 acquires the public key A34 held therein (S107), and determines whether the authentication token has been successfully verified (S108). The authentication token can be verified (signature verification) using the hash value derived in step S106 and the public key A34. Specifically, the smart contract 32 verifies the signature with the authentication counter value held as a variable. The public key A34 is used during the signature verification. If the signature verification is successful, it is determined that the same authentication counter value has been used, and the authentication token can be considered to have been successfully verified. The processing in step S108 makes it possible to verify that the authentication token has been generated by the genuine business server 50.
[0066] If the verification (signature verification) of the authentication token is successful (YES in S108), the smart contract 32 updates the related information on the blockchain 30 (S109). In the example of Fig. 8, the product owner address (transfer source address) is updated by the transfer destination address (update information), resulting in a change in the owner (ownership) of the product. Note that the related information to be changed is not limited to the owner address (owner information), and may be the product status or product information.
[0067] The smart contract 32 increments (adds 1) the authentication counter linked to the NFT-ID (S110), issues a normal completion event (e.g., transfer completed) to the business server 50 (S111), and terminates the processing.
[0068] As described above, when the related information stored in block 31 is updated, the authentication count value stored in block 31 can be updated. By updating the authentication counter value, it is possible to refuse to accept transaction data that uses the same authentication counter value two or more times, thereby preventing replay attacks and the like.
[0069] If the owner addresses do not match in step S104 (NO in S104), or if the verification of the authentication token (signature verification) is not successful in step S108 (NO in S108), the smart contract 32 discards the transaction data (S112), returns the state of the smart contract 32 to the state before receiving the transaction data (S113), and terminates the processing.
[0070] As described above, the transaction data may be verified based on whether the signature included in the transaction data can be verified with public key B35 (second public key) corresponding to private key B27 (predetermined second private key). This allows the owner address to be verified. The transaction data may also be verified based on whether the authentication token (signature) can be verified with public key A34 (first public key) corresponding to private key A56 (predetermined first private key). This allows the authentication token to be verified.
[0071] In the above example, the verification of transaction data is determined to be successful when the two conditions of the owner address matching and the authentication counter value matching are met, but this is not limiting. For example, depending on the security policy, etc., the verification of transaction data may be determined to be successful when only the owner address matching or only the authentication counter matching is met.
[0072] As described above, the smart contract 32 (computer program) is a computer program that runs on the blockchain 30, which has a block 31 that stores information including an NFT-ID associated with an NFC tag ID, an owner address, and product-related information, and receives transaction data from a user terminal device 20 including an NFT-ID associated with the NFC tag ID of an NFC tag attached to a product, an owner address, update information for the product-related information, and an authentication token, and if the transaction data is verified, the update information can be used to update the product-related information identified by the NFT-ID stored in the block.
[0073] As shown in FIG. 3, the business server 50 is equipped with a control unit 51, which acquires the tag ID and authentication data of the NFC tag attached to the product from the user terminal device 20, and if the authenticity determination result of the authentication data by the NFC tag authentication server 80 is true, acquires information including the NFT-ID corresponding to the acquired NFC tag ID, the owner address and the authentication counter value from the blockchain 30 which has a block 31 that stores information including the NFT-ID associated with the NFC tag ID, product-related information and the authentication counter value, generates an authentication token using this data, and transmits the generated authentication token to the user terminal device 20.
[0074] In addition, the user terminal device 20 transmits the NFC tag ID and authentication data of the NFC tag attached to the product to the business server 50. The browser 26 operating on the user terminal device 20 receives the NFT-ID corresponding to the NFC tag ID and the authentication token from the business server 50, generates transaction data including the NFT-ID, the owner address, update information for the related information, and the authentication token, and transmits the generated transaction data to the blockchain 30 having a block 31 that stores information including the NFT-ID associated with the NFC tag ID, the owner address, and the related information of the product. Note that, instead of the browser 26 operating on the user terminal device 20, an application (computer program) installed on the user terminal device 20 may be used.
[0075] As described above, the product-related information management method of this embodiment acquires the NFC tag ID and authentication data of the NFC tag attached to the product from the user terminal device 20, and if the authenticity determination result of the authentication data by the NFC tag authentication server 80 is true, acquires information including the NFT-ID, owner address and authentication counter value corresponding to the acquired NFC tag ID from the blockchain 30 having a block 31 that stores information including the NFT-ID, owner address and authentication counter value associated with the NFC tag ID, generates an authentication token, sends the generated authentication token to the user terminal device 20, sends transaction data generated by the user terminal device 20 including the NFT-ID, owner address, update information for the related information, and the authentication token to the blockchain 30, and if the transaction data is verified, the update information can be used to update the related information of the product identified by the NFT-ID stored in the block 31.
[0076] FIG. 9 is a diagram showing an example of updating related information of a product. FIG. 9 shows an example of updating the owner address of a product. In this case, the information to be updated is the owner address before the product is transferred and the address to which the product is transferred. The NFT is managed on the blockchain 30. The NFT-ID corresponding to the product is NFT-ID:5. Before the product is transferred, the owner address is "0x9988aa...", the authentication counter value is "1", the product status is "...", and the product information is "...". When the product is transferred, the owner address is changed to "0x7744bb...", and the authentication counter value is incremented to "2". The product status and product information are not changed. As a result, it is recorded on the blockchain 30 that the owner of the product with NFT-ID "5" has changed from "0x9988aa..." to "0x7744bb...". This makes it possible to prevent tampering with related information such as the product owner information.
[0077] As described above, according to this embodiment, only when the owner has the product with the NFC tag and the user who reads the information from the NFC tag is registered in block 31 of the blockchain 30 as the owner of the product, the user is verified as the genuine owner and can obtain the right to update the related information on the blockchain 30. In other words, it is possible to construct a mechanism in which even a user who has ownership cannot update the related information if the product is not in hand, and the related information of the actual product can be linked to the related information recorded on the blockchain 30, thereby preventing tampering with the related information.
[0078] (Supplementary Note 1) A product-related information management method includes obtaining a tag ID and authentication data of a tag attached to a product from a user terminal device, and if the authenticity determination result of the authentication data by an authentication server is true, obtaining information including an NFT-ID, owner address, and authentication counter value corresponding to the obtained tag ID from a blockchain having a block that stores information including an NFT-ID associated with the tag ID, an owner address, product-related information, and an authentication counter value, generating an authentication token, transmitting the generated authentication token to the user terminal device, transmitting transaction data generated by the user terminal device including the NFT-ID, the owner address, update information for the related information, and the authentication token to the blockchain, and if the transaction data is verified, updating the product-related information identified by the NFT-ID stored in the block using the update information.
[0079] (Appendix 2) In the product-related information management method in Appendix 1, the authentication data includes a tag counter value that is updated each time a tag ID is read from the tag, and if the tag counter value included in the authentication data is greater than the tag counter value corresponding to the tag held by the authentication server, the authenticity determination result of the authentication data is determined to be true.
[0080] (Supplementary Note 3) In the product-related information management method in Supplementary Note 1 or Supplementary Note 2, the authentication data includes a message including a tag counter value and an authentication code for authenticating the message, and if an authentication code calculated from the message included in the authentication data matches the authentication code included in the authentication data, the authenticity determination result of the authentication data is determined to be true.
[0081] (Appendix 4) In the product-related information management method, in any one of Appendices 1 to 3, if the tag ID acquired from the user terminal device matches the tag ID held by the authentication server, the authenticity determination result of the authentication data is deemed to be true.
[0082] (Appendix 5) A product-related information management method according to any one of Appendices 1 to 4, wherein the authentication token is information including an NFT-ID, an owner address, and an authentication counter value obtained from the blockchain, as well as a signature generated using a predetermined first private key on a calculation result after a predetermined obfuscation calculation is performed on the information.
[0083] (Supplementary Note 6) A product-related information management method in any one of Supplementary Note 1 to Supplementary Note 5, wherein the transaction data includes information including the NFT-ID, the owner address, the update information, and the authentication token, as well as a signature generated using a predetermined second private key on a calculation result after a predetermined obfuscation calculation is performed on the information.
[0084] (Appendix 7) In the product-related information management method in Appendix 6, the transaction data is verified based on whether a signature included in the transaction data can be verified with a second public key corresponding to the specified second private key, or whether an owner address derived from the signature matches an owner address of the product.
[0085] (Supplementary Note 8) The product-related information management method in Supplementary Note 5 verifies the transaction data based on whether a signature included in the authentication token can be verified with a first public key corresponding to the predetermined first private key.
[0086] (Supplementary Note 9) In the product-related information management method according to any one of Supplementary Note 1 to Supplementary Note 8, when the related information stored in the block is updated, the authentication count value stored in the block is updated.
[0087] (Additional Note 10) The product-related information management device includes a control unit, which acquires a tag ID and authentication data of a tag attached to a product from a user terminal device, and if the authenticity determination result of the authentication data by the authentication server is true, acquires information including an NFT-ID, owner address, and authentication counter value corresponding to the acquired tag ID from a blockchain having a block that stores information including an NFT-ID associated with the tag ID, an owner address, product-related information, and an authentication counter value, generates an authentication token, and transmits the generated authentication token to the user terminal device.
[0088] (Supplementary Note 11) A product-related information management system includes a product-related information management device and a blockchain having a block that stores information including an NFT-ID associated with the tag ID of a tag attached to a product, an owner address, product-related information, and an authentication counter value. The product-related information management device acquires the tag ID and authentication data of the tag attached to the product from a user terminal device, and if the authenticity determination result of the authentication data by the authentication server is true, acquires information including the NFT-ID corresponding to the acquired tag ID, the owner address, and an authentication counter value from the blockchain, generates an authentication token, and sends the generated authentication token to the user terminal device. The blockchain receives transaction data generated by the user terminal device, including the NFT-ID, the owner address, update information for the related information, and the authentication token, and if the transaction data is verified, updates the product-related information identified by the NFT-ID stored in the block using the update information.
[0089] (Appendix 12) The computer program causes a computer to execute a process of acquiring a tag ID and authentication data of a tag attached to a product from a user terminal device, and if the result of the authentication server's authenticity determination of the authentication data is true, acquiring information including an NFT-ID, owner address, and authentication counter value corresponding to the acquired tag ID from a blockchain having a block that stores information including an NFT-ID associated with the tag ID, an owner address, product-related information, and an authentication counter value, generating an authentication token, and sending the generated authentication token to the user terminal device.
[0090] (Supplementary Note 13) The computer program is a computer program that runs on a blockchain, the blockchain having a block that stores information including an NFT-ID associated with a tag ID, an owner address, and related information of a product, and causes a computer to execute a process of receiving transaction data including an NFT-ID associated with a tag ID of a tag attached to a product, an owner address, update information for the related information, and an authentication token, and if the authentication token is verified, updating the related information of the product identified by the NFT-ID stored in the block using the update information.
[0091] (Addendum 14) The computer program causes a computer to execute a process of transmitting a tag ID and authentication data of a tag attached to a product to a product-related information management device, receiving an authentication token corresponding to the tag ID from the product-related information management device, generating transaction data including the NFT-ID, the owner address, update information for the related information, and the authentication token, and transmitting the generated transaction data to a blockchain having a block that stores information including the NFT-ID associated with the tag ID, the owner address, and product-related information.
[0092] The matters described in each embodiment can be combined with each other. In addition, the independent claims and dependent claims described in the claims can be combined with each other in any and all combinations regardless of the citation format. Furthermore, the claims use a format in which a claim cites two or more other claims (multiple claim format), but this is not limited to this. A multiple claim (multi-multi claim) that cites at least one multiple claim may also be used. [Explanation of symbols]
[0093] 10. NFC Tags 11 NFC Tag ID 12 URL 13 Authentication Data 14 Common key A 15 Tag Counter 20 User terminal device 21 Control section 22 Communications Department 23 Display section 24 Control section 25 Memory section 26 Browsers 27 Private key B 30 Blockchain 31 Block 32 Smart Contracts 33 Transaction Data 34 Public Key A 35 Public Key B 36 Hash value of the previous block 37 Data 50 Business Server 51 Control section 52 Communications Department 53 Memory 54 Memory section 55 Computer Programs 56 Private key A 57 Product DB 80 NFC tag authentication server 81 Control Unit 82 Communications Department 83 Memory unit 84 Common key A
Claims
1. A tag ID and authentication data of a tag attached to the product are acquired from a user terminal device; If the authentication server determines that the authentication data is authentic, the method obtains information including the NFT-ID, the owner's address, and the authentication counter value corresponding to the obtained tag ID from a block chain having a block that stores information including the NFT-ID, the owner's address, the product-related information, and the authentication counter value associated with the tag ID; Generate an authentication token, Transmitting the generated authentication token to the user terminal device; Sending transaction data generated by the user terminal device, the transaction data including the NFT-ID, the owner address, update information for the related information, and the authentication token to the blockchain; If the transaction data is verified, the update information is used to update information related to the product identified by the NFT-ID stored in the block. How to manage product-related information.
2. the authentication data includes a tag counter value that is updated every time a tag ID is read from the tag, If the tag counter value included in the authentication data is greater than the tag counter value corresponding to the tag held by the authentication server, the authenticity determination result of the authentication data is determined to be true.
2. The product-related information management method according to claim 1.
3. the authentication data includes a message including a tag counter value and an authentication code for authenticating the message, If an authentication code calculated from a message included in the authentication data matches an authentication code included in the authentication data, the authenticity determination result of the authentication data is determined to be true.
2. The product-related information management method according to claim 1.
4. If the tag ID acquired from the user terminal device matches the tag ID held by the authentication server, the authenticity determination result of the authentication data is determined to be true.
2. The product-related information management method according to claim 1.
5. The authentication token is The signature is generated using a predetermined first private key on a calculation result obtained from the blockchain, the information including an NFT-ID, an owner address, and an authentication counter value, and a predetermined obfuscated operation performed on the information. The merchandise-related information management method according to any one of claims 1 to 4.
6. The transaction data includes: The NFT-ID, the owner address, the update information, and the authentication token are included in the information, and a signature generated using a predetermined second private key on a result of a predetermined obfuscated operation performed on the information. The merchandise-related information management method according to any one of claims 1 to 4.
7. verifying the transaction data based on whether a signature included in the transaction data can be verified with a second public key corresponding to the second predetermined private key, or whether an owner address derived from the signature matches an owner address of the product; The product-related information management method according to claim 6.
8. verifying the transaction data based on whether a signature included in the authentication token can be verified with a first public key corresponding to the first predetermined private key; The product-related information management method according to claim 5.
9. When the related information stored in the block is updated, the authentication count value stored in the block is updated. The merchandise-related information management method according to any one of claims 1 to 4.
10. A control unit is provided, The control unit is A tag ID and authentication data of a tag attached to the product are acquired from a user terminal device; If the authentication server determines that the authentication data is authentic, the method obtains information including the NFT-ID, the owner's address, and the authentication counter value corresponding to the obtained tag ID from a block chain having a block that stores information including the NFT-ID, the owner's address, the product-related information, and the authentication counter value associated with the tag ID; Generate an authentication token, Transmitting the generated authentication token to the user terminal device; Product related information management device.
11. A product-related information management device includes: a block chain having a block for storing information including an NFT-ID associated with a tag ID of a tag attached to a product, an owner address, product-related information, and an authentication counter value; The product-related information management device includes: A tag ID and authentication data of a tag attached to the product are acquired from a user terminal device; If the authentication server determines that the authentication data is authentic, the authentication server obtains information including an NFT-ID corresponding to the obtained tag ID, an owner address, and an authentication counter value from the blockchain; Generate an authentication token, Transmitting the generated authentication token to the user terminal device; The blockchain is receiving transaction data generated by the user terminal device, the transaction data including the NFT-ID, the owner address, update information for the related information, and the authentication token; If the transaction data is verified, the update information is used to update information related to the product identified by the NFT-ID stored in the block. Product related information management system.
12. A tag ID and authentication data of a tag attached to the product are acquired from a user terminal device; If the authentication server determines that the authentication data is authentic, the method obtains information including the NFT-ID, the owner's address, and the authentication counter value corresponding to the obtained tag ID from a block chain having a block that stores information including the NFT-ID, the owner's address, the product-related information, and the authentication counter value associated with the tag ID; Generate an authentication token, Transmitting the generated authentication token to the user terminal device; A computer program that causes a computer to carry out processing.
13. A computer program that operates on a blockchain, The blockchain is A block for storing information including an NFT-ID associated with a tag ID, an owner address, and related information of a product; Receiving transaction data including an NFT-ID associated with a tag ID of a tag attached to a product, an owner address, update information for the related information, and an authentication token; If the authentication token is verified, update the related information of the product identified by the NFT-ID stored in the block using the update information. A computer program that causes a computer to carry out processing.
14. Transmitting the tag ID and authentication data of the tag attached to the product to a product-related information management device; receiving an authentication token corresponding to the tag ID from the product-related information management device; Generate transaction data including the NFT-ID, the owner address, updates to the related information, and the authentication token; Sending the generated transaction data to a blockchain having a block that stores information including the NFT-ID associated with the tag ID, the owner's address, and related information of the product; A computer program that causes a computer to carry out processing.
Citation Information
Patent Citations
Appraisal Certification System
JP6894033B1