Method, system and program for content verification
The method and system enhance blockchain-based content verification by calculating hash values, attaching digital signatures, and involving multiple verifiers to ensure authenticity and legitimacy, addressing the limitations of existing systems and providing secure, flexible, and cost-effective content verification.
Patent Information
- Application Number
- JP2024138948
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-20
- Publication Date
- 2026-03-05
Smart Images

Figure 2026036391000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates generally to a method, system, and program for verifying (certifying, proving) the authenticity and legitimacy of content, and more particularly to a method, system, and program for verifying (certifying, proving) the authenticity and legitimacy of content using blockchain technology. [Background technology]
[0002] Blockchain is a distributed ledger technology that uses cryptography to manage transaction records. Unlike traditional centralized systems, it has the following features: 1) data management is not dependent on a specific institution, and all users participating in the network share data; 2) data is encrypted and linked as a chain, making it extremely difficult to tamper with; 3) information is highly transparent because many users share the same data; and 4) unlike centralized systems, there is no single point of failure, making it highly available.
[0003] Blockchain technology is used for a variety of purposes, including as a transaction ledger for cryptocurrencies (crypto assets). One such use is to provide proof of existence, time stamping, and tamper-proofing for content, including documents. For example, Patent Document 1 (Patent Document 1) achieves proof of existence, time stamping, and tamper-proofing for content by storing hash values of content and its metadata on a blockchain. Such blockchain applications are advantageous in that they can provide proof of existence, time stamping, and tamper-proofing for content at relatively low cost, without relying on specific organizations such as notary public offices.
[0004] However, while conventional technology could prove that a certain piece of content existed at a certain time, it could not prove the authenticity of the content itself. For example, suppose a copyright management system records on a blockchain the copyright of an image file belonging to a certain person along with the image file's hash value. In this case, it is possible to prove that the person had access to the image file at the time it was recorded on the blockchain, that the person knew the private key required for recording on the blockchain, and that the image file has not been tampered with since it was recorded on the blockchain. However, it was impossible to prove that the copyright of the image file truly belonged to that person (for example, that the person did not falsely represent someone else's work as their own). In particular, with the development of generative AI technology making it easy to generate images and videos that appear authentic at first glance, it is becoming increasingly important to have a trusted third party verify (certify, certify) the source, authenticity, and legitimacy of information.
[0005] The present invention has been made in view of such problems. [Prior art documents] [Patent documents]
[0006] [Patent Document 1] Patent Publication No. 2017-204707 Summary of the Invention [Problem to be solved by the invention]
[0007] To provide a method, system, and program based on blockchain that can verify the authenticity and legitimacy of content inexpensively and flexibly, in addition to proving the existence, time stamping, and detecting tampering of content. [Means for solving the problem]
[0008] The present invention solves the above problem by providing a content verification method executed by a computer, the method including the steps of: calculating a first hash value, which is a hash value of data combining content and its metadata; attaching a digital signature of the content registration entity to the first hash value to create a first record; recording the first record in a blockchain; having a content verification entity different from the content registration entity perform a verification procedure for the first record; calculating a second hash value, which is a hash value of data including the result of the verification procedure and the hash value of the first data; attaching a digital signature of the content verification entity to the second hash value to create a second record; and recording the second record in the blockchain.
[0009] The present invention also solves the above problem by providing a content verification method described in paragraph 0008, in which the verification process includes a step of verifying the validity of the electronic signature of the content registration entity based on a public key infrastructure.
[0010] The present invention also solves the above problem by providing a content verification method described in paragraph 0008, in which the verification process includes a step of verifying the validity of the content corresponding to the first record in accordance with predetermined business rules.
[0011] In addition, the present invention provides a method for verifying a verification result, wherein the verification entity is a program executed on a computer. The above problem is solved by providing a content verification method as described in paragraph 0008.
[0012] The present invention also solves the above problem by providing a content verification method as described in paragraph 0008, which has a plurality of content verification entities and further includes a step of selecting a content verification entity from the plurality of content verification entities that will perform the verification process.
[0013] The present invention also solves the above problem by providing a content verification method described in paragraph 0008, which further includes the steps of reading the second record from the blockchain and adjusting the method of providing the content based on the verification result in the second record.
[0014] The present invention also solves the above problem by providing a content verification program that causes a computer to execute the following instructions: a group of instructions for calculating a first hash value, which is a hash value of data that combines content and metadata of the content; a group of instructions for attaching the digital signature of the content registration entity to the first hash value to create a first record; a group of instructions for recording the first record in a blockchain; a group of instructions for having a content verification entity different from the content registration entity perform a verification procedure for the first record; a group of instructions for calculating a second hash value, which is a hash value of data that includes the result of the verification process and the hash value of the first data; a group of instructions for attaching the digital signature of the content verification entity to the second hash value to create a second record; and a group of instructions for recording the second record in the blockchain.
[0015] The present invention also solves the above problem by providing a content verification program as described in paragraph 0014, in which the set of instructions for performing the verification process includes a set of instructions for verifying the validity of the electronic signature of the content registration entity based on a public key infrastructure.
[0016] The present invention also solves the above problem by providing a content verification program as described in paragraph 0014, in which the set of instructions for performing the verification procedure includes a set of instructions for verifying the legitimacy of the content corresponding to the first record in accordance with predetermined business rules.
[0017] The present invention also solves the above problem by providing a content verification program as described in paragraph 0014, in which the verification entity is a program executed on a computer.
[0018] The present invention also solves the above problem by providing a content verification program as described in paragraph 0014, which has multiple content verification entities and further includes a group of instructions for selecting a content verification entity from the multiple content verification entities that will perform the verification process.
[0019] The present invention also solves the above problem by providing a content verification program as described in paragraph 0014, which further includes a group of instructions for reading the second record from the blockchain and a group of instructions for adjusting the method of providing the content based on the verification result in the second record.
[0020] The present invention also solves the above problem by providing a computer device configured to execute the program described in any one of paragraphs 0014 to 0019. [Effects of the Invention]
[0021] To provide a method, system, and program based on blockchain that can verify the authenticity and legitimacy of content inexpensively and flexibly, in addition to proving the existence, time stamping, and detecting tampering of content. [Brief explanation of the drawings]
[0022] [Figure 1] 1 is a diagram illustrating an example of the overall environment for executing the method and program according to the present invention. [Figure 2] 10 is an example of a screen when registering content information in a blockchain using the content management system according to the present invention. [Figure 3] 10 is an example of a screen when authenticating the authenticity of content information using the content verification system according to the present invention. [Figure 4] FIG. 1 is a sequence diagram of an embodiment of a content verification method according to the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0023] An embodiment of the present invention will be described below with reference to the drawings. Figure 1 shows an example of the overall environment for executing the method and program of the present invention. A content registrant (101) is a person who created the content or data that is the subject of third-party verification by the present invention, or a person responsible for managing such content or data. The content or data may be any type, such as images, videos, audio, music, computer programs (source code, binary code), or structured data (e.g., slips, ledger data). For example, data such as registration information, contracts, medical records, financial securities, transaction records, identity-related information, certificates, supply chain history, and election voting information may also be used (hereinafter, these are collectively referred to as "content"). It is preferable that the identity of the content registrant (101) can be verified using authentication means such as a public key infrastructure (PKI) (ensuring that no one is impersonating the content registrant).
[0024] The content management system (102) is an information system for managing content operated by the content registrant (101), and may be realized in any configuration including the cloud, and is not limited to a server computer, but may also be realized on a personal computer, smartphone, etc. (Needless to say, this is a different concept from a system intended to manage the content of a website, the so-called CMS (Content Management System)).
[0025] The content storage means (103) is a technical means for storing content that is subject to third-party verification, and may use any data storage technology such as RDBMS, file system, NoSQL, etc.
[0026] The blockchain management system (104) is a system for managing a private or public blockchain (105), and may be realized in any configuration, including the cloud, and is not limited to a server computer, but may also be realized on a personal computer, smartphone, etc. The programs and scripts that run the blockchain management system (104) may be implemented as smart contracts on the blockchain (105).
[0027] The blockchain (105) is a means for storing content-related information (such as hash values of content and its metadata) and its third-party authentication information. The blockchain (105) may be a private blockchain or a public blockchain. In the case of a private blockchain, it may be composed of any computer system managed by any organization (or consortium of organizations). In the case of a public blockchain, it may be composed of a large number of computers distributed around the world and under the control of various administrators. The blockchain (105) does not need to be dedicated to implementing the method of the present application, and may be configured to utilize an existing blockchain such as Bitcoin or Ethereum.
[0028] The verifier (106) is an entity (such as a person, corporation, or organization) that verifies content and is a third-party entity independent of the content registrant (101). The verifier (106) has credibility in the real economic society and has the authority to verify, certify, certify, audit, and notarize the legitimacy of content. It is also desirable that the verifier (106) has authority and credibility based on legal systems and industry practices. The verifier (106) may be, for example, a notary public or a corporate auditor. If the content is a musical work, the verifier (106) may be a music copyright management organization registered with the Agency for Cultural Affairs, or if the content is medical information, an organization approved by the Ministry of Health, Labor, and Welfare. It is preferable that the verifier (106) be able to prove its identity using authentication means such as a PKI (Public Key Infrastructure) (ensuring that no one is impersonating it). Alternatively, the verifier (106) may be a specific individual or institution, but may perform verification, auditing, and certification based on the consensus of a community consisting of numerous and diverse individuals. The certification, verification, auditing, and notarization tasks performed by the verifier (106) may be performed by a program (script) (including a smart contract on the blockchain (105)). In this case, the verifier (106) corresponds to a program executed on a computer rather than a human. The program may be a machine learning model trained with data in advance. For example, it is technically possible to use AI to verify that content is not generated by a generative AI but is created by a human. There may be multiple candidates for the verifier (106) for a given piece of content, and a procedure may be used in which the verifier (106) performing the verification is selected by the content registrant (101) or by a predetermined algorithm. Alternatively, a procedure may be used in which multiple verifiers (106) verify a certain piece of content, and the verification is deemed successful only when all (or a majority) of them verify it.
[0029] The content verification system (107) is operated by a verifier (106) to perform third-party verification of content recorded on the blockchain (105), and the blockchain management system (104) is a system whose main purpose is to record the verification results on the blockchain (105), and is preferably configured by a server computer, but may also be configured by a server on the cloud. The content verification system (107) may also be realized by a personal computer, a smartphone, etc.
[0030] A content consumer (108) is a user of content certified by a third party. For example, if the content is medical records, the content consumer (108) may be a doctor or medical professional (or in some cases, the patient himself / herself). If the content is music data, the content consumer (108) may be an ordinary consumer using a streaming service.
[0031] The content consumption system (109) is a system or application program that uses content certified by a third party, and its form varies depending on the content. For example, if the content is medical records, the content consumption system (109) may be an electronic medical record system. If the content is popular music, the content consumption system (109) may be a streaming service or video distribution service available on the Internet.
[0032] The content storage means (110) is a means for storing content used by the content usage system (109), and may use any data storage technology such as RDBMS, file system, NoSQL, etc. Instead of or in addition to the configuration in which the content stored in the content storage means (103) is appropriately copied to the content storage means (110) and used, the content usage system (109) may directly use the content stored in the content storage means (103).
[0033] Although not shown, the content management system (102), blockchain management system (104), content verification system (107), and content usage system (109) are configured to be able to exchange data with each other via a network (typically the Internet) while maintaining appropriate security. The content management system (102), blockchain management system (104), content verification system (107), and content usage system (109) do not need to be independent systems; all or some of their functions may run on the same physical system. Also not shown is an authentication infrastructure (preferably PKI) that authenticates the content registrant (101) and verifier (106).
[0034] FIG. 2 shows an example of a screen displayed when a content registrant (101) registers content-related information in a blockchain via a content management system (102). In this example, a content display section (201), a content metadata input section (202), a content verification result display section (203), and a content certification request button (204) are shown, but other incidental information may also be displayed or inputtable. While FIG. 2 shows an example of verifying and registering an image file, a similar screen configuration can be applied to any content. Here, the content ID is an identifier that can uniquely identify the content, and desirably serves as a key for accessing the content in the content storage means (103).
[0035] Figure 3 shows an example of a screen when a verifier (106) verifies content via the content verification system (107). In this example, a content display section (301), a content metadata display section (302), a PKI authentication flag (303), and a content verification button (304) are shown, but other additional information may also be displayed or made available for input. While Figure 3 shows an example of certifying an image file, a similar screen configuration can be applied to any content.
[0036] Figure 4 shows the flow of content verification processing by a third party according to the present invention (in a format conforming to a UML sequence diagram). While this diagram illustrates the exchange of information between the content management system (102), blockchain management system (104), content verification system (107), and content usage system (109), the content management system (102) may perform predetermined processing according to the operations of the content registrant (101), and the content verification system (107) may perform predetermined processing according to the operations of the verifier (106). It is preferable that users such as the content registrant (101) and the verifier (106) have previously performed a predetermined login process for the system to be operated, but this is not shown. Furthermore, processing related to the blockchain (105) may be executed by a smart contract recorded on the blockchain (105).
[0037] First, in accordance with the operation of a content registration screen by a content registrant (101), such as that shown in Fig. 2, the content management system (102) calculates a hash value (this calculation may use an existing algorithm such as SHA-256, MD5, or SHA-1) of the content to be verified and its metadata (for example, creator name, title, creation date, and content ID) (S401). The metadata can be selected arbitrarily depending on the purpose of the system, but it is desirable to include a content ID that can uniquely identify the content.
[0038] Next, the content management system (102) sends a record with the content registrant's (101's) digital signature added to the hash value to the blockchain management system (104) (S402). The content management system (102)'s digital signature may be used instead of the content registrant's (101's) digital signature (the same applies below). The blockchain management system (104) records the received record in the blockchain (105) (S403). Note that the digital signature referred to here is recorded as a blockchain record (payload), and is different from the digital signature (encryption key + public key) required for blockchain-specific functions.
[0039] Next, the blockchain management system (104) transmits a record including a content ID and the like to the content verification system (107) (S404). Here, the transmission of the record in S404 may be started after recording in the blockchain (105) in S403 is completed, or the transmission of the record in S404 may be started asynchronously without waiting for recording in the blockchain (105) in S403 to be completed. Alternatively, the record recorded in the blockchain (105) in S403 (the content, the hash value of the metadata of the content, and the digital signature of the content registrant (101)) itself may be transmitted. Alternatively, the content itself (images, music, videos, etc.) may also be transmitted. This improves efficiency when the verifier (106) verifies the content.
[0040] There may be multiple verifier (106) candidates, and a step of selecting the verifier (106) that will actually perform the verification procedure may be performed from among them. This selection may be performed by the content registrant (101) or by a predetermined algorithm (e.g., round robin, probability-based, machine learning-based, etc.) executed in the content management system (102) or the blockchain management system (105). Also, as mentioned above, a procedure may be used in which multiple verifiers (106) verify a certain piece of content, and the verification is considered successful only when all (or a majority) of them verify it.
[0041] In the content verification system (107), the verifier (106) obtains information about the target content, for example, from a content verification screen such as that shown in FIG. 3, and then performs a verification procedure (S405) of the electronic signature of the content registrant (101) in the transmitted record (or read from the blockchain (105)) using a means such as PKI. Additional verification means, for example, a configuration that requires multiple content registrants to provide electronic signatures as a prerequisite for successful verification, may be employed. Here, the content obtained by accessing the content management system (102) or the content transmitted in a transmitted message may also be verified. The content verification procedure varies depending on the type of content, but may be based on predetermined business rules (e.g., treating the content as legitimate if the content registrant (101) has a long-term contract and has not caused any problems in the past, or the content registrant (101) has a predetermined official qualification, is registered in a predetermined database, etc.). This determination may involve programmatic verification (including smart contracts on the blockchain (105)), and may be assisted or substituted by AI, particularly machine learning models.
[0042] Once the verification procedure is complete, the content verification system (107) creates a new record by adding the digital signature of the verifier (106) to the data that combines the hash value, the digital signature of the content registrant (101), and the verification result, and sends it to the blockchain management system (104) (S406). The blockchain management system (104) records the message in the blockchain (105) (S407). Here, the validity of the digital signature of the verifier (106) may be verified using a means such as PKI. The content verification work may be performed in real time or in a batch format at a predetermined timing. The contents of the record recorded here may be a content ID that can uniquely identify the content, or a combination of the identifier of a record on the blockchain that was previously saved and the digital signature of the verifier (106). Furthermore, the verification result does not have to be a binary choice of OK or NG, but can be a variety of results, such as "Registrant verified but content not verified," "Registrant and content not verified," "Registrant and content verified," "Content legitimacy questionable," "Content legitimacy almost certain," etc.
[0043] Next, the blockchain management system (104) transmits a record combining the content ID and the verification result to the content management system (102) (S408). Here, the transmission of the record in S408 may be started after recording in the blockchain (105) is completed in S407, or the transmission of the record in S408 may be started asynchronously without waiting for recording in the blockchain (105) to be completed in S407. The content management system (102) stores the verification result locally and displays it to the content registrant (101) as necessary. Optionally, at this stage, the content registrant (101) may undergo a procedure to verify the verifier's (106) digital signature using a means such as PKI.
[0044] At this stage, the digital signatures of the content registrant (101) and the third-party verifier (106) and the hash value of the content are recorded in the blockchain in an irreversible state, completing the content verification process of this application.
[0045] The following describes the process of using content verified by the system of the present application. The content usage system (109) queries the blockchain management system (104) about the verification status of the content (S410). A record corresponding to the content may be read from the blockchain (105) using a key such as the content ID. If a verified flag is recorded in the record corresponding to the content, the blockchain management system (104) returns a message indicating that the content has been verified to the content usage system (109) (S411). If a verified flag is not recorded in the record corresponding to the content, the blockchain management system (104) returns a message indicating that the content has not been verified to the content usage system (109) (S412). Furthermore, if the message is sent asynchronously, it is possible that writing to the blockchain (105) has not yet been completed at the time of the query in S410. In this case, it is preferable to return a message to that effect. In this case, a timeout process may be added, and if writing to the blockchain (105) is not completed after a predetermined time has elapsed, it may be treated as if verification has not been performed. Also, as mentioned above, if the verification result is not a binary choice of OK or NG, but is a variety of results such as "registrant verified but content not verified," "neither registrant nor content verified," "registrant and content verified," "content legitimacy questionable," "content legitimacy almost certain," etc., it is desirable to return that information to the content usage system (109). Here, the content usage system (109) may further verify the legitimacy of the digital signatures of the content registrant (101) and verifier (106) in the read record using means such as PKI.
[0046] Depending on the results of these inquiries, the content usage system (109) should adjust the processing of the content based on predetermined business rules. For example, information on whether the content has been verified may be displayed on a screen as a guideline for the content user (108). If the content has not been verified, business rules may be adopted such as not permitting the use of the content, not permitting the use of the content without separate permission from a responsible person, or partially restricting the use of the content. For example, in the case of a music distribution service, content that has been confirmed to be verified may be made available for download sales to users, while content that has not been confirmed to be verified may only be available for streaming viewing, not for download sales (this can provide benefits such as increasing user freedom while preventing copyright infringement).
[0047] The content itself may be stored within the content usage system (109), or may be acquired by the content usage system (109) as needed from the content storage means (103) of the content management system (102). In either case, the hash value of the content (and its metadata) is permanently stored in an unalterable form on the blockchain (105), ensuring that verified content has not been tampered with and that information on whether or not it has been verified has not been tampered with.
[0048] Because blockchain is a means of storing history that makes it virtually impossible to tamper with or delete transactions (records), the method, program, and system of the present invention not only prevent tampering of content and its metadata, but also prevent tampering of verification results, including by content providers (registrants) and verifiers themselves. The present invention enables content providers to flexibly use content according to its purpose and needs, such as (1) providing content in an unverified, unguaranteed state, (2) providing content with proof of existence and time of existence based on blockchain records, or (3) providing content based on third-party verification by a trusted person or institution. The present invention is particularly advantageous in that it allows for the unalterable centralized management of systematic proof of existence and verification information regarding the content itself, something not previously possible.
Claims
1. calculating a first hash value that is a hash value of data that combines the content and the metadata of the content; a step of adding a digital signature of a content registration entity to the first hash value to create a first record; recording the first record in a blockchain; a step of having a content verification entity different from the content registration entity perform a verification procedure for the first record; calculating a second hash value, which is a hash value of data including a result of the verification procedure and the hash value of the first data; a step of adding a digital signature of the content verifier to the second hash value to create a second record; recording the second record in the blockchain; A computer-implemented method for verifying content.
2. the verification process includes a step of verifying the validity of a digital signature of the content registration entity based on a public key infrastructure; The content verification method according to claim 1 .
3. the verification procedure includes verifying the validity of content corresponding to the first record according to predetermined business rules; The content verification method according to claim 1 .
4. The verifier is a program executed on a computer. The content verification method according to claim 1 .
5. The method further includes a step of selecting a content verification entity that will perform the verification process from among a plurality of content verification entities, when there are a plurality of content verification entities. The content verification method according to claim 1 .
6. reading the second record from the blockchain; and adjusting a method for providing the content based on the verification result in the second record. The content verification method according to claim 1 .
7. A set of instructions for calculating a first hash value that is a hash value of data that combines the content and the metadata of the content; a group of instructions for adding a digital signature of a content registration entity to the first hash value to create a first record; instructions to record the first record in a blockchain; A group of instructions for causing a content verification entity different from the content registration entity to perform a verification procedure for the first record; a set of instructions for calculating a second hash value, which is a hash value of data including a result of the verification process and a hash value of the first data; a group of instructions for adding a digital signature of the content verifier to the second hash value to create a second record; instructions for recording the second record in the blockchain; A content validation program that you run on your computer.
8. The set of instructions for performing the verification process includes a set of instructions for verifying the validity of a digital signature of the content registration entity based on a public key infrastructure. The content verification program according to claim 7.
9. the instructions for performing the validation procedure include instructions for validating the validity of content corresponding to the first record according to predetermined business rules; The content verification program according to claim 7.
10. The verifier is a program executed on a computer. The content verification program according to claim 7.
11. There are a plurality of content verification entities, and the content verification entity further includes a group of instructions for selecting a content verification entity to be made to perform a verification procedure from the plurality of content verification entities. The content verification program according to claim 7.
12. instructions to read the second record from the blockchain; and instructions for adjusting how the content is provided based on the verification results in the second record. The content verification program according to claim 7.
13. A computer device configured to execute a program according to any one of claims 7 to 12.
Citation Information
Patent Citations
Content distribution system, content distribution method, content generation device, and content generation program
JP2017204707A