CN113706344A - Block chain-based digital copyright protection method - Google Patents

Block chain-based digital copyright protection method Download PDF

Info

Publication number
CN113706344A
CN113706344A CN202110895257.8A CN202110895257A CN113706344A CN 113706344 A CN113706344 A CN 113706344A CN 202110895257 A CN202110895257 A CN 202110895257A CN 113706344 A CN113706344 A CN 113706344A
Authority
CN
China
Prior art keywords
work
user
function
key
transaction
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.)
Granted
Application number
CN202110895257.8A
Other languages
Chinese (zh)
Other versions
CN113706344B (en
Inventor
徐彦彦
毛养素
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN202110895257.8A priority Critical patent/CN113706344B/en
Publication of CN113706344A publication Critical patent/CN113706344A/en
Application granted granted Critical
Publication of CN113706344B publication Critical patent/CN113706344B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services; Handling legal documents
    • G06Q50/184Intellectual property management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Abstract

The invention aims to provide a block chain-based digital copyright protection scheme, and copyright service in the whole process is designed by combining a block chain technology and a digital watermark technology, so that five functional requirements of copyright registration, copyright inquiry, copyright transaction, copyright assignment and copyright right maintenance are met. In addition, the OptiFairSwap protocol is realized through an intelligent contract to complete effective delivery certification and prevent malicious behaviors of both transaction parties, and a piracy tracking function is realized by combining a digital fingerprint technology. Once the works are authorized on the block chain, the subsequent transactions can be recorded in real time, so that the works can be traced and tracked from creation, circulation and use of the whole life cycle, and a strong technical guarantee and conclusive evidence are provided for judicial evidence collection. And meanwhile, copyright owners can directly participate in the copyright management of works in the copyright trading and copyright assignment processes, the trading process is open and transparent, and the royalty is cleared.

Description

Block chain-based digital copyright protection method
Technical Field
The invention belongs to the field of multimedia information security protection, and particularly relates to a digital copyright protection method of a block chain technology and a digital watermark technology.
Background
With the rapid development of computer technology and network technology, the spread of digital media is facilitated, and people can upload and share digital multimedia (such as photos, music, movies) rapidly through personal websites or social networks. At the same time, these media contents are likely to be downloaded and distributed by unauthorized users, which would seriously impair the interests of the content owners. In order to protect conventional copyrights, a content owner needs to provide digital works and personal information as copyright information to a copyright registration authority. The copyright protection mechanism stores the data in a centralized server for processing, and the risks of single-point failure, easy attack and the like exist; specific information in the transaction process is not disclosed to a copyright owner, and the copyright owner cannot directly participate in managing the copyright of the work of the owner; before delivering the content, the user needs to pay a subscription to order the work, and the user is at risk of receiving tampered data.
The block chain has the characteristics of decentralization, non-falsification, transparent disclosure and the like, and ensures that data is real and complete, transparent and traceable, so that the digital copyright content can be protected by using the block chain technology. Copyright protection comprises the processes of copyright registration, copyright transaction, copyright monitoring, infringement evidence obtaining, copyright maintenance and the like, the conventional block chain-based digital copyright protection scheme mainly focuses on providing protection for a copyright confirmation link and a copyright transaction link, and a scheme for providing safety protection for the processes of copyright inquiry, copyright assignment, copyright maintenance and the like is rare. In addition, the current existing digital product copyright protection scheme based on the blockchain technology lacks a mechanism for stopping malicious behaviors of two transaction parties, namely, after a malicious buyer receives a correct file, the file is misrecognized as an error file without paying corresponding money; the malicious seller sends the wrong file but still collects the money paid by the buyer. This not only compromises the economic benefits of both parties to the transaction, but also brings difficulties to judicial evidence collection.
Disclosure of Invention
The invention aims to provide a block chain-based digital copyright protection scheme, and copyright service in the whole process is designed by combining a block chain technology and a digital watermark technology so as to realize the functions of copyright registration, copyright inquiry, copyright transaction, copyright assignment and copyright maintenance. In addition, the method for completing the transaction of the digital works based on the OptiFairSwap delivery mode is provided, the malicious behaviors of both transaction parties can be prevented, so that effective delivery certification is completed, and the piracy tracking function is realized by combining a digital fingerprint technology. The scheme can solve the fairness problem of the two untrusted trading parties in the trading process.
The solution of the scheme is as follows: the scheme participants comprise a copyright protection central institution, a registration institution, a copyright owner and a user. The copyright protection central authority is responsible for auditing and registering the original works, and embedding the digital fingerprints of the users in the digital works during copyright transaction (copyright permission). The registry is responsible for key distribution and management, review and verification of copyright owners and user identities. Copyright owners refer to those who enjoy the copyright of digital works and are responsible for managing the copyright of their own works and completing the distribution of the works during copyright transactions and copyright assignment. The user is a transferee in the process of copyright transaction and copyright transfer, provides identity information and pays corresponding money in the transaction process, and verifies whether the work is correct.
First, the copyright protection center registers on the blockchain network, deploys the copyright protection intelligent contract, and specifies the blockchain account address of the Registration Agency (Registration Agency). The copyright owner and user then register on the blockchain network and authenticate with the registration authority. After the copyright owner finishes the creation of the works, the works and the verified identity information are encrypted and sent to the copyright protection center, after the copyright protection center decrypts the created works and audits the created works, the copyright protection center stores the information of the works through an intelligent contract and embeds the copyright information into the works, and therefore the effect of ensuring the rights of the digital works is achieved.
The blockchain user can obtain the detailed information of a certain digital work by calling an intelligent contract. A user may send a request to a copyright owner if the user wants to purchase a digital work. The copyright owner sends the requested works to the copyright protection center, and the user sends the authenticated identity information to the copyright protection center. The copyright protection center is then responsible for embedding the user's digital fingerprint in the digital work, and saves the encrypted fingerprint information and the embedding key in the blockchain network, and then sends the digital work containing the user's fingerprint to the copyright owner. The intelligent contract is invoked by copyright owners and users to complete the transaction of the digital works.
If a user wants to acquire the copyright of a certain digital work, a copyright transfer request needs to be sent to a copyright owner, the copyright owner transfers an intelligent contract to set transfer amount and open transfer permission according to the negotiation condition, and then the copyright owner and the user transfer the intelligent contract to finish the delivery certification of the digital work.
If the copyright owner finds the suspected infringement work X ', the suspected infringement work X ' and the original work X are encrypted and sent to the copyright protection center, the copyright protection center compares the original work X with the suspected infringement work X ', and if the infringement action exists, the copyright protection center extracts the user fingerprint ID of the work XuAnd initiates a true identity authentication request to the registration authority. Meanwhile, the state of the transaction is obtained from the block chain account book, and if the transaction is normally finished, the illegally distributed work can be judged to be leaked from the user u; otherwise, the pirate source is the copyright owner.
The invention provides a block chain-based digital copyright protection method, which comprises the following six stages:
in the preprocessing stage, a copyright protection central mechanism registers on a blockchain network, deploys an intelligent contract for copyright protection to become an owner of the contract, and then sets a blockchain account address of the registration mechanism.
In the copyright registration stage, after the copyright owner finishes the creation of the works, the created works and the verified identity information are encrypted and sent to the copyright protection center, after the copyright protection center decrypts the created works, the copyright protection center is responsible for embedding copyright information into the original works and storing the information of the digital works through an intelligent contract, and therefore the effect of ensuring the right of the digital works is achieved.
In the copyright inquiry stage, a user of the block chain can obtain the detailed information of a certain digital work by calling an intelligent contract.
And in the copyright transaction stage, the user sends a data request to the copyright owner, the copyright owner sends the requested data to the copyright protection center, and then the user sends the authenticated identity information to the copyright protection center. The copyright protection center is responsible for embedding the digital fingerprints of the user in the digital works, sending the digital works containing the fingerprints of the user to a copyright owner, and calling an intelligent contract by the copyright owner and the user to complete delivery certification of the digital works.
And in the copyright transfer stage, a user requests copyright transfer to a copyright owner, and the copyright owner sets transfer amount and opens transfer permission through an intelligent contract. The copyright owner and the user then invoke an intelligent contract to complete proof of delivery of the digital work.
And in the copyright maintaining stage, a copyright owner finds the suspected infringement work X ', encrypts the suspected infringement work X' with the original work X and sends the encrypted infringement work X 'and the original work X and the suspected infringement work X' are compared by the copyright protection center. If there is infringement behavior, the copyright protection center extracts the user fingerprint ID of the work XuAnd initiates a true identity authentication request to the registration authority. Meanwhile, the copyright protection center acquires the transaction state from the block chain account book, and if the transaction is normally ended, the illegally distributed works can be judged to be leaked by the user u; otherwise, the pirate source is the copyright owner.
A pretreatment stage:
the copyright protection center registers on the block chain, 6 intelligent contracts of Ownable, CopyrightRegistration, ModifyInformation, copyrightInquiry, copyrightTransaction and copyrightTransfer are deployed to become owners of the 6 intelligent contracts, and then the copyright protection center calls a setRegistrationAccency function in the Ownable contract to set the block chain account address of the registration mechanism.
Wherein the Ownable intelligent contract comprises an Ownable function and a setRegistrationAgency function. The Ownable function records the contract owner, and the setRegistrationAgency function sets the block chain account address of the registry.
A CopyrightRegistration intelligent contract includes a CopyrightRegistration function. The copyrightRegister function is called by the copyright protection center for saving metadata of the digital work (work id, work name, copyright owner, category, description, authoring completion time, transaction price, assignment price, hash value).
The ModifyInformation smart contract includes a setTransferOfPrice function, a setSubscribeOfPrice function, and a setransferlock function. The setTransferOfPrice function is used for setting the transfer price of the digital work, the setSubscribeOfPrice function is used for setting the transaction price of the digital work, and the setransferLock function is used for controlling the transfer authority of the digital work.
The functions in the CopyrightInquiry intelligent contract are getInformation, getAllSubscribers, getsubscribercount, getalldigitworks, getTransferOfLock, getOwner, getsubscribes, as follows. The getInformation function queries the detailed information (id, name, owner, category, description, creation time, transaction price, transfer price, origin hash, subscriber address) of the digital work, the getAllSubscribers function is used to query all users subscribing to a certain digital work, and the getsubscribers count function queries the number of users subscribing to a certain digital work. The getalldigitworks function queries all the work ids owned by a copyright owner. The getTransferOfLock function queries transfer rights for a digital work. The getOwner function queries the copyright owner of a digital work. The getSubscripters function queries the Etherhouse address of a certain user subscribing to the digital work.
The CopyrightTransaction intelligent contract contains the following functions: requestTransaction, saveInformation, initializeOfTxn, acceptOfTxn, revealKeyOfTxn, nocomplainOfTxn, complainRootOfTxn, complainLeafOfTxn, complainNodeOfTxn, refundOfTxn. The user invokes the requestTransaction function to send a request for data to the copyright owner. After embedding the digital fingerprint in the work, the copyright protection center calls the saveInformation function to store the encrypted digital fingerprint, the encrypted embedding key and the Merkle root of the work containing the digital fingerprint. The copyright owner calls the initializeOfTxn function to initialize transaction details (block information, a user address, a key hash value and a ciphertext Merkle root) and pay a deposit, if the initialization data is correct, the user calls the acceptOfTxn function to pay a transaction price and the deposit, and if the user pays the transaction price and the deposit, the copyright owner calls the revealeyOfTxn function to upload the key. The user downloads the key and decrypts, checks the file without objection, and calls the nocomplainOfTxn function to finish the transaction; if there is objection, calling the corresponding decision function according to the checked error node, and calling the reffundOfTxn function by the two parties according to the transaction state to finish the transaction.
The CopyrightTransfer intelligent contract contains the following functions: requestTransfer, initialize, accept, revealKey, noComplain, complainAboutTroot, complainAboutLeaf, complainAboutNode, refund. And the user calls a requestTransfer function to send a copyright transfer request to the copyright owner. The copyright owner calls the initialization function to initialize the transfer process information (block information, user address, key hash value, plaintext Merkle root and ciphertext Merkle root) and pay the deposit, if the initialization data is correct, the user calls the accept function to pay the transfer price and the deposit, and if the user pays the transfer price and the deposit, the copyright owner calls the revealKey function to upload the key. The user downloads the key and decrypts, checks the file without objection, and calls a noComplain function to finish the copyright transfer process; if there is objection, calling the corresponding decision function according to the checked error node, and calling the function to end the transaction according to the transaction state.
The CopyrightRegistration smart contract is inherited from the Ownable, the ModifyInformation smart contract is inherited from CopyrightRegistration, the CopyrightInquiry smart contract is inherited from CopyrightRegistration, and the CopyrightTransfer smart contract is inherited from the ModifyInformation, CopyrightInquiry, and CopyrightTransfer. The six intelligent contracts constitute the DApp running on the blockchain and complete the functions of each stage.
And a copyright registration stage:
step 21, the copyright owner registers in the blockchain network and performs identity authentication with the registration authority to obtain the identity ID.
Step 22, the copyright owner uses the AES encryption algorithm and the key k1Encrypting the work X to be registered to obtain an encrypted work XeAnd use the public key pk of the copyright protection centercPair key k1Encrypted to obtain
Figure BDA0003197529910000041
Then the encrypted work Xe
Figure BDA0003197529910000042
And the ID is sent to the copyright protection center.
Step 23, the copyright protection center uses its own private key skcTo pair
Figure BDA0003197529910000051
Decryption is carried out to obtain a secret key k1And use the key k1For encrypted work XeAnd decrypting to obtain the work X. After the copyright protection center examines the work X, the hash value Hash (X) of the plaintext work X is calculated, and the identity ID of the copyright owner is embedded into the work X to obtain XwThen calculating the works X containing copyright watermarkwHash value of (X)w)。
Step 24, the copyright protection center calls a copyrightRegister function in the copyrightRegistration intelligent contract to write relevant information of the work into the block chain, wherein the relevant information comprises the work id, the work name, the copyright owner, the category, the description, the creation completion time, the transaction price, the transfer price, the hash value Hash (X) of the original work and the work X containing the copyright watermarkwHash value Hash (X)w)10 parts. After the related information is linked up, the copyright protection center uses an AES encryption algorithm and a key k2For works X containing copyright informationwEncrypting to obtain XewAnd uses the public key pk of the copyright owneroPair key k2Encrypted to obtain
Figure BDA0003197529910000052
And mixing XewAnd
Figure BDA0003197529910000053
to the copyright owner.
Step 25, the copyright owner uses his own private key skoTo pair
Figure BDA0003197529910000054
Decryption is carried out to obtain a secret key k2And use the key k2For encrypted work X containing copyright watermarkewDecrypting to obtain works X containing copyright watermarkw. The copyright owner can call a setSubscribeOfPrice function, a setTransferOfPrice function and a setransferLock function in a ModifyInformation intelligent contract to respectively set a copyright transaction price, a copyright assignment price and a copyright assignment right.
And (3) copyright query stage:
in step 31, the user registers as a user of the blockchain in the blockchain network.
In step 32, the user may call the getInformation function in the CopyrightInquiry smart contract to query the detailed information of the works registered in the block chain, such as: work id, work name, copyright owner, category, description, creation completion time, transaction price, transfer price, Hash (X)w) And a subscriber address. The subscriber address refers to the address of the blockchain account of the user who successfully subscribes the work in the copyright transaction process. The user may also call getAllSubscribers function to query all users subscribing to the work, or call getsubscribers count function to query the number of subscribers to the work, and call getalldigitworks function to query all work ids registered by a user in the blockchain.
And (3) copyright transaction stage:
step 41, the user registers in the blockchain network and performs identity authentication with the registration authority to obtain a unique identity IDu
Step 42, the user sends a data request message to the copyright owner by calling the requestTransaction function in the CopyrightTransaction intelligent contract.
Step 43, after the copyright owner receives the data request message, the copyright owner uses the AES encryption algorithm and the key k1For the requested data XwEncrypted to obtain an encrypted work XewAnd use the public key pk of the copyright protection centercPair key k1Encrypted to obtain
Figure BDA0003197529910000055
Then the encrypted work XewAnd
Figure BDA0003197529910000056
and sending the information to a copyright protection center.
Step 44, the user authenticates the identity information
Figure BDA0003197529910000061
And requesting the purchased work id to be sent to the copyright protection center in an encrypted manner. Wherein the content of the first and second substances,
Figure BDA0003197529910000062
indicating that the registration authority uses its private key skaFor user identity IDuThe digital signature of (1).
Step 45, the copyright protection center uses its own private key skcTo pair
Figure BDA0003197529910000063
Decryption is carried out to obtain a secret key k1And use the key k1For encrypted work XewDecrypting to obtain the requested data XwAnd selecting proper digital fingerprint algorithm to identify the user IDuIs embedded in XwTo obtain XuAnd calculating a work X containing user fingerprint informationuHash value of (X)u). Then the copyright protection center sends XuAnd constructing a Merkle tree in a blocking manner to calculate to obtain a plaintext Merkle root, and calling a saveInformation function to write encrypted fingerprint information, an encrypted embedded key and the plaintext Merkle root into a block chain account book. Then the copyright protection center uses AES encryption algorithm and key k2For work XuEncrypted to obtain an encrypted work XeuAnd uses the public key pk of the copyright owneroPair key k2Encrypted to obtain
Figure BDA0003197529910000064
And will encrypt the work Xeu
Figure BDA0003197529910000065
The plaintext Merkle root and the block information are sent to the copyright holder. The blocking information includes a blocking mode, a block size, a block number, and a Merkle tree depth.
Step 46, the copyright owner uses his own private key skoTo pair
Figure BDA0003197529910000066
Line decryption to obtain the key k2And use the key k2For encrypted work XeuDecrypting to obtain data X containing user fingerprintu. Both parties of the transaction complete the work X according to the OptiFairSwap protocoluThe status of the transaction is recorded in the blockchain ledger.
And (3) copyright transfer stage:
step 51, the user registers in the blockchain network and performs identity authentication with the registration authority to obtain a unique identity IDu
Step 52, the user sends a copyright transfer request to the copyright owner by calling the requestTransfer function in the CopyrightTransfer intelligent contract.
And step 53, the copyright owner negotiates with the user and calls a settransferLock function in a ModifyInformation intelligent contract to open the copyright transfer authority.
At step 54, both parties of the transaction complete the distribution of the work X according to the OptiFairSwap protocol, and the status of the transaction is recorded on the blockchain ledger.
Copyright maintenance stage:
step 61, the copyright owner finds the suspected infringement work X ', and combines the suspected infringement work X' with the original work XwAnd after encryption, sending the encrypted data to a copyright protection center, and calculating the Hash value Hash (X ') of the suspected infringement work X ' by a copyright owner and uploading the Hash value Hash (X ') to a block chain account book for storage.
Step 62, comparing the suspected infringement work X 'with the original work X by the copyright protection center, and if the suspected infringement work X' and the original work X do not have correlation, ending arbitration; if the infringement action exists, downloading the encrypted digital fingerprint information and the encrypted embedded key corresponding to the work from the block chain account book, and using the private key of the workDecrypting it, extracting fingerprint information ID from infringing product XuThe fingerprint information IDuAnd sending to the registration authority.
Step 63, the registration authority retrieves the ID from the local databaseuAnd the corresponding real identity information u is sent to the copyright protection center.
Step 64, the copyright protection center inquires the transaction information of the work distribution in the transaction process from the blockchain account book, and if the transaction state of the work distribution is normally finished, the illegally distributed work can be judged to be leaked by the user u; otherwise, the pirate source is the copyright owner.
In the process of copyright transaction and copyright transfer, an OptiFairSwap protocol is put forward to complete the transaction of digital works, and malicious behaviors of both parties of the transaction are prevented. The specific steps of the OptiFairSwap are as follows:
step 1, the copyright owner divides the file X to be distributed into blocks to obtain { X1,x2,x3,…,xnConstructing a Merkle tree, and carrying out leaf node vector { x ] of Merkle1,x2,x3,…,xnAnd a non-leaf node vector y1,y2,y3,…,ymCombine to get vector { x }1,x2,…,xn,y1,y2,…,ymUsing the secret key k1Encrypting it to obtain Z ═ Z1,z2,…,zn,zn+1,zn+2,…,zn+m}. The copyright owner uses the AES encryption algorithm and the key k2Encrypting the Z vector to obtain a ciphertext C, and using the public key pk of the useruPair key k2Encrypted to obtain
Figure BDA0003197529910000071
Then the ciphertexts C and C
Figure BDA0003197529910000072
And sending the information to the user, and simultaneously, storing a guarantee fund into the intelligent contract by the copyright owner.
Step 2, the user uses the private key sk of the useruTo pair
Figure BDA0003197529910000073
Decryption is carried out to obtain a secret key k2And use the key k2And decrypting the ciphertext C to obtain the vector Z. And partitioning the vector Z to construct a Merkle tree to obtain the root r of the Merkle tree of the vector Z.
And 3, writing the root r of the Merkle tree of the vector Z into the block chain account book through the intelligent contract by the user, and storing the fee for guaranteeing the fund and purchasing the file and the root h of the Merkle tree of the file X into the intelligent contract.
Step 4, the copyright owner reads r from the block chain, locally performs the same operation as the user on the vector Z to construct a Merkle tree, calculates the root r 'of the Merkle tree locally constructed by the vector Z, compares whether the values of r and r' are the same or not, and if the values are different, stops the transaction; if the key k is the same as the key k, the copyright owner calls the intelligent contract to use the key k1And uploading to a block chain account book for storage.
Step 5, the user reads the key k from the block chain account book1Using the key k locally1The vector Z is decrypted to obtain { x'1,x′2,…,x′n,y′1,y′2,…,y′m}. User splicing { x'1,x′2,…,x′nAnd acquiring a file X', if the file is correct, normally ending the transaction, taking back the own deposit by the user, and taking back the own deposit and the cost for purchasing the file by the copyright owner. If the file is wrong, the user sends the data pi of the wrong block to { z ═ zi,zi+1,zn+(i+1)/2And the values of the corresponding brother nodes in the paths are used as input parameters of an intelligent contract judgment function.
Step 6, the decision function first determines the submitted pi ═ zi,zi+1,zn+(i+1)/2Is a leaf node and a non-leaf node of the root r of the Merkle tree. If not, the result shows that pi ═ z submitted by the user is equal to { z }i,zi+1,zn+(i+1)/2If the copyright owner has been tampered with by the user, the copyright owner retrieves his own deposit and the user's money to purchase the file and the user's deposit from the smart contract. The transaction is normally ended; if submitted, the input parametersLeaf nodes and non-leaf nodes of the root r of the Merkle tree, the decision function utilizes the key k1P ═ zi,zi+1,zn+(i+1)/2Carry out decryption to get { x }i,xi+1,y(i+1)/2}. And verifies { xi,xi+1,y(i+1)/2Is the leaf node and non-leaf node of root h of the Merkle tree. If not, the distributed file is an error file, the user retrieves the own deposit, money for purchasing the file and the deposit of the copyright owner from the intelligent contract, and the transaction is abnormally ended; if the distributed file is the correct file, the copyright owner retrieves the own deposit, the money of the user for purchasing the file and the deposit of the user from the intelligent contract, and the transaction is normally finished.
Compared with other methods, the method has the advantages that: the invention provides a block chain-based digital copyright protection method, which combines a block chain technology and a digital watermark technology to design a whole-process copyright service and realizes five functional requirements of copyright registration, copyright inquiry, copyright transaction, copyright assignment and copyright right maintenance. Once the copyright registration mode works are authorized on the block chain, the subsequent transactions can be recorded in real time, so that the works can be traced and tracked from the creation, circulation and use of the whole life cycle, and a strong technical guarantee and conclusive evidence is provided for judicial evidence collection. And meanwhile, copyright owners can directly participate in the copyright management of works in the copyright trading and copyright assignment processes, the trading process is open and transparent, and the royalty is cleared. In addition, the scheme provides an OptiFairSwap protocol to complete the transaction of digital works, so that the fair exchange of two untrusted transaction parties in the transaction process is ensured, and the occurrence of malicious behaviors of the two transaction parties can be prevented; if the transaction state is normally finished, the user can not repudiate the transaction, thereby realizing effective delivery certification.
Drawings
Fig. 1 is a flowchart of a specific process of registering copyright of a digital work according to an embodiment of the present invention.
Fig. 2 is a flowchart of a specific process of querying copyright information of a digital work according to an embodiment of the present invention.
Fig. 3 is a flowchart of a specific process for performing copyright transaction on a digital work according to an embodiment of the present invention.
Fig. 4 is a flowchart of a specific process for transferring copyright of a digital work according to an embodiment of the present invention.
Fig. 5 is a flowchart of a specific process for copyright maintenance of a digital work according to an embodiment of the present invention.
Fig. 6 is a diagram of an Ownable intelligent contract structure according to an embodiment of the present invention.
FIG. 7 is a diagram of a CopyrightRegistration intelligent contract according to an embodiment of the present invention.
Fig. 8 is a diagram of a ModifyInformation intelligent contract structure according to an embodiment of the present invention.
Fig. 9 is a diagram of a CopyrightInquiry smart contract according to an embodiment of the present invention.
Fig. 10 is a diagram of a CopyrightTransaction intelligent contract according to an embodiment of the present invention.
Fig. 11 is a diagram of the CopyrightTransfer intelligent contract according to the embodiment of the present invention.
Detailed Description
The embodiment of the invention provides a block chain-based digital copyright protection method, which is specifically realized by six stages:
in the preprocessing stage, a copyright protection central mechanism registers on a blockchain network, deploys an intelligent contract for copyright protection to become an owner of the contract, and then sets a blockchain account address of the registration mechanism.
In the copyright registration stage, after the copyright owner finishes the creation of the works, the created works and the verified identity information are encrypted and sent to the copyright protection center, after the copyright protection center decrypts the created works, the copyright protection center is responsible for embedding copyright information into the original works and storing the information of the digital works through an intelligent contract, and therefore the effect of ensuring the right of the digital works is achieved.
In the copyright inquiry stage, a user of the block chain can obtain the detailed information of a certain digital work by calling an intelligent contract.
And in the copyright transaction stage, the user sends a data request to the copyright owner, the copyright owner sends the requested data to the copyright protection center, and then the user sends the authenticated identity information to the copyright protection center. The copyright protection center is responsible for embedding the digital fingerprints of the user in the digital works, sending the digital works containing the fingerprints of the user to a copyright owner, and calling an intelligent contract by the copyright owner and the user to complete delivery certification of the digital works.
And in the copyright transfer stage, a user requests copyright transfer to a copyright owner, and the copyright owner sets transfer amount and opens transfer permission through an intelligent contract. The copyright owner and the user then invoke an intelligent contract to complete proof of delivery of the digital work.
And in the copyright maintaining stage, a copyright owner finds the suspected infringement work X ', encrypts the suspected infringement work X' with the original work X and sends the encrypted infringement work X 'and the original work X and the suspected infringement work X' are compared by the copyright protection center. If there is infringement behavior, the copyright protection center extracts the user fingerprint ID of the work XuAnd initiates a true identity authentication request to the registration authority. Meanwhile, the copyright protection center acquires the transaction state from the block chain account book, and if the transaction is normally ended, the illegally distributed works can be judged to be leaked by the user u; otherwise, the pirate source is the copyright owner.
A pretreatment stage:
the copyright protection center registers on the block chain, 6 intelligent contracts of Ownable, CopyrightRegistration, ModifyInformation, copyrightInquiry, copyrightTransaction and copyrightTransfer are deployed to become owners of the 6 intelligent contracts, and then the copyright protection center calls a setRegistrationAccency function in the Ownable contract to set the block chain account address of the registration mechanism.
As shown in fig. 6, the Ownable smart contract includes an Ownable function and a setheresistationagency function. The Ownable function records the contract owner, and the setRegistrationAgency function sets the block chain account address of the registry.
As shown in FIG. 7, the copyrightRegistration intelligent contract includes a copyrightRegister function. The copyrightRegister function is called by the copyright protection center for saving metadata of the digital work (work id, work name, copyright owner, category, description, authoring completion time, transaction price, assignment price, hash value).
As shown in fig. 8, the ModifyInformation smart contract includes a setTransferOfPrice function, a setSubscribeOfPrice function, and a setransferlock function. The setTransferOfPrice function is used for setting the transfer price of the digital work, the setSubscribeOfPrice function is used for setting the transaction price of the digital work, and the setransferLock function is used for controlling the transfer authority of the digital work.
As shown in FIG. 9, the functions in the copyrightInquiry smart contract are getInformation, getAllSubscripts, getSubscripts Count, getAllDigitalWorks, getTransferOfLock, getOwner, getSubscripts, as follows. The getInformation function queries the detailed information (id, name, owner, category, description, creation time, transaction price, transfer price, origin hash, subscriber address) of the digital work, the getAllSubscribers function is used to query all users subscribing to a certain digital work, and the getsubscribers count function queries the number of users subscribing to a certain digital work. The getalldigitworks function queries all the work ids owned by a copyright owner. The getTransferOfLock function queries transfer rights for a digital work. The getOwner function queries the copyright owner of a digital work. The getSubscripters function queries the Etherhouse address of a certain user subscribing to the digital work.
As shown in fig. 10, the CopyrightTransaction intelligent contract contains the following functions: requestTransaction, saveInformation, initializeOfTxn, acceptOfTxn, revealKeyOfTxn, nocomplainOfTxn, complainRootOfTxn, complainLeafOfTxn, complainNodeOfTxn, refundOfTxn. The user invokes the requestTransaction function to send a request for data to the copyright owner. After embedding the digital fingerprint in the work, the copyright protection center calls the saveInformation function to store the encrypted digital fingerprint, the encrypted embedding key and the Merkle root of the work containing the digital fingerprint. The copyright owner calls the initializeOfTxn function to initialize transaction details (block information, a user address, a key hash value and a ciphertext Merkle root) and pay a deposit, if the initialization data is correct, the user calls the acceptOfTxn function to pay a transaction price and the deposit, and if the user pays the transaction price and the deposit, the copyright owner calls the revealeyOfTxn function to upload the key. The user downloads the key and decrypts, checks the file without objection, and calls the nocomplainOfTxn function to finish the transaction; if there is objection, calling the corresponding decision function according to the checked error node, and calling the reffundOfTxn function by the two parties according to the transaction state to finish the transaction.
As shown in fig. 11, the CopyrightTransfer intelligent contract contains the following functions: requestTransfer, initialize, accept, revealKey, noComplain, complainAboutTroot, complainAboutLeaf, complainAboutNode, refund. And the user calls a requestTransfer function to send a copyright transfer request to the copyright owner. The copyright owner calls the initialization function to initialize the transfer process information (block information, user address, key hash value, plaintext Merkle root and ciphertext Merkle root) and pay the deposit, if the initialization data is correct, the user calls the accept function to pay the transfer price and the deposit, and if the user pays the transfer price and the deposit, the copyright owner calls the revealKey function to upload the key. The user downloads the key and decrypts, checks the file without objection, and calls a noComplain function to finish the copyright transfer process; if there is objection, calling the corresponding decision function according to the checked error node, and calling the function to end the transaction according to the transaction state.
The CopyrightRegistration smart contract is inherited from the Ownable, the ModifyInformation smart contract is inherited from CopyrightRegistration, the CopyrightInquiry smart contract is inherited from CopyrightRegistration, and the CopyrightTransfer smart contract is inherited from the ModifyInformation, CopyrightInquiry, and CopyrightTransfer. The six intelligent contracts constitute the DApp running on the blockchain and complete the functions of each stage.
And a copyright registration stage:
step 21, the copyright owner registers in the blockchain network and performs identity authentication with the registration authority to obtain the identity ID.
Step 22, the copyright owner uses the AES encryption algorithm andkey k1Encrypting the work X to be registered to obtain an encrypted work XeAnd use the public key pk of the copyright protection centercPair key k1Encrypted to obtain
Figure BDA0003197529910000111
Then the encrypted work Xe
Figure BDA0003197529910000112
And the ID is sent to the copyright protection center.
Step 23, the copyright protection center uses its own private key skcTo pair
Figure BDA0003197529910000113
Decryption is carried out to obtain a secret key k1And use the key k1For encrypted work XeAnd decrypting to obtain the work X. Then, after the copyright protection center examines the work X, the hash value Hash (X) of the plaintext work X is calculated, and the identity ID of the copyright owner is embedded into the work X to obtain XwThen calculating the works X containing copyright watermarkwHash value of (X)w)。
Step 24, the copyright protection center calls a copyrightRegister function in the copyrightRegistration intelligent contract to write relevant information of the work into the block chain, wherein the relevant information comprises the work id, the work name, the copyright owner, the category, the description, the creation completion time, the transaction price, the transfer price, the hash value Hash (X) of the original work and the work X containing the copyright watermarkwHash value Hash (X)w)10 parts. After the related information is linked up, the copyright protection center uses an AES encryption algorithm and a key k2For works X containing copyright informationwEncrypting to obtain XewAnd uses the public key pk of the copyright owneroPair key k2Encrypted to obtain
Figure BDA0003197529910000114
And mixing XewAnd
Figure BDA0003197529910000115
to the copyright owner.
Step 25, the copyright owner uses his own private key skoTo pair
Figure BDA0003197529910000116
Decryption is carried out to obtain a secret key k2And use the key k2For encrypted work X containing copyright watermarkewDecrypting to obtain works X containing copyright watermarkw. The copyright owner can call a setSubscribeOfPrice function, a setTransferOfPrice function and a setransferLock function in a ModifyInformation intelligent contract to respectively set a copyright transaction price, a copyright assignment price and a copyright assignment right.
And (3) copyright query stage:
in step 31, the user registers as a user of the blockchain in the blockchain network.
In step 32, the user may call the getInformation function in the CopyrightInquiry smart contract to query the detailed information of the works registered in the block chain, such as: work id, work name, copyright owner, category, description, creation completion time, transaction price, transfer price, Hash (X)w) And a subscriber address. Wherein, the subscriber address refers to the blockchain account address of the user who successfully subscribes to the work in the copyright transaction (copyright permission) process. The user may also call getAllSubscribers function to query all users subscribing to the work, or call getsubscribers count function to query the number of subscribers to the work, and call getalldigitworks function to query all work ids registered by a user in the blockchain.
And (3) copyright transaction stage:
step 41, the user registers in the blockchain network and performs identity authentication with the registration authority to obtain a unique identity IDu
Step 42, the user sends a data request message to the copyright owner by calling the requestTransaction function in the CopyrightTransaction intelligent contract.
Step 43, after the copyright owner receives the data request message, the copyright owner uses the AES encryption algorithm and the key k1For the requested data XwEncrypted to obtain an encrypted work XewAnd use the public key pk of the copyright protection centercPair key k1Encrypted to obtain
Figure BDA0003197529910000121
Then the encrypted work XewAnd
Figure BDA0003197529910000122
and sending the information to a copyright protection center.
Step 44, the user authenticates the identity information
Figure BDA0003197529910000123
And requesting the purchased work id to be sent to the copyright protection center in an encrypted manner. Wherein the content of the first and second substances,
Figure BDA0003197529910000124
indicating that the registration authority uses its private key skaFor user identity IDuThe digital signature of (1).
Step 45, the copyright protection center uses its own private key skcTo pair
Figure BDA0003197529910000125
Decryption is carried out to obtain a secret key k1And use the key k1For encrypted work XewDecrypting to obtain the requested data XwAnd selecting proper digital fingerprint algorithm to identify the user IDuIs embedded in XwTo obtain XuAnd calculating a work X containing user fingerprint informationuHash value of (X)u). Then the copyright protection center sends XuAnd constructing a Merkle tree in a blocking manner to calculate to obtain a plaintext Merkle root, and calling a saveInformation function to write encrypted fingerprint information, an encrypted embedded key and the plaintext Merkle root into a block chain account book. Then the copyright protection center uses AES encryption algorithm and key k2For work XuEncrypted to obtain an encrypted work XeuAnd uses the public key pk of the copyright owneroPair key k2Encrypted to obtain
Figure BDA0003197529910000126
And will encrypt the work Xeu
Figure BDA0003197529910000127
The plaintext Merkle root and the block information are sent to the copyright holder. The blocking information includes a blocking mode, a block size, a block number, and a Merkle tree depth.
Step 46, the copyright owner uses his own private key skoTo pair
Figure BDA0003197529910000128
Decryption is carried out to obtain a secret key k2And use the key k2For encrypted work XeuDecrypting to obtain data X containing user fingerprintu. Copyright owner will be the original work XuConstructing a Merkle tree according to the same blocking mode of a copyright protection center, and combining leaf nodes and non-leaf nodes of the Merkle tree to use an encryption key k3And (5) encrypting to obtain a ciphertext Z, constructing a Merkle tree, and calculating a ciphertext Merkle root. The copyright owner calls the initializeOfTxn function to initialize the copyright transaction process information and uploads the block information, the user block chain account address and the key k1Hash value, ciphertext Merkle root, and pay the deposit. The copyright owner uses the AES encryption algorithm and the key k4Encrypting the Z vector to obtain a ciphertext C, and using the public key pk of the useruPair key k4Encrypted to obtain
Figure BDA0003197529910000129
And the ciphertext C,
Figure BDA00031975299100001210
And sending the data to the user.
Step 47, the user uses his own private key skuTo pair
Figure BDA0003197529910000131
Decrypting to obtain a secret key k4And use the key k4Decrypting the ciphertext C to obtainTo vector Z. A user reads the block information and the ciphertext Merkle root uploaded by the copyright owner in the step 46 from the block chain, the vector Z is constructed into a Merkle tree according to the same block mode of the copyright owner, the root r of the Merkle tree of the vector Z is obtained, the Merkle tree is compared with the ciphertext Merkle root, and if the vector Z is different from the ciphertext Merkle root, the transaction is terminated; if the same, the user calls the accept OfTxn function to pay the transfer price and the deposit.
Step 48, the copyright owner calls the function revealakeyoftxn to upload the key k3
Step 49, the user reads the key k from the blockchain account book3Using the key k locally3The vector Z is decrypted to recover the original file XuChecking whether the file is wrong, if the file is correct, calling a function nocomplainotxn to end the copyright transaction process; if the file is wrong, the file X is replaced by the file XuAnd constructing a Merkle tree according to the same blocking mode of copyright owners, judging whether the node values in the Merkle tree are wrong or not, calling corresponding judgment functions complainRootoOfTxn, complainLeafOfTxn and complainNodeOfTxn to prove the malicious behaviors of the Merkle tree, and ending the transaction.
And (3) copyright transfer stage:
step 51, the user registers in the blockchain network and performs identity authentication with the registration authority to obtain a unique identity IDu
Step 52, the user sends a copyright transfer request to the copyright owner by calling the requestTransfer function in the CopyrightTransfer intelligent contract.
Step 53, after the copyright owner negotiates with the user, the copyright owner invokes a settransferLock function in a ModifyInformation intelligent contract to open the copyright transfer authority.
Step 54, the copyright owner divides the original work X into blocks to construct a Merkle tree, calculates a plaintext Merkle root, and combines leaf nodes and non-leaf nodes of the Merkle tree to use an encryption key k1And (5) encrypting to obtain a ciphertext Z, constructing a Merkle tree, and calculating a ciphertext Merkle root. The copyright owner calls the initialization transfer process information of the initialization transfer function, and uploads the block information, the user block chain account address and the key k1Hash value, plaintext Merkle root, secretAnd paying a deposit, wherein the blocking information comprises a blocking mode, a block size, a block number and a Merkle tree depth. The copyright owner uses the AES encryption algorithm and the key k2Encrypting the Z vector to obtain a ciphertext C, and using the public key pk of the useruPair key k2Encrypted to obtain
Figure BDA0003197529910000132
And the ciphertext C,
Figure BDA0003197529910000133
And sending the data to the user.
Step 55, the user uses his own private key skuTo pair
Figure BDA0003197529910000134
Decryption is carried out to obtain a secret key k2And use the key k2And decrypting the ciphertext C to obtain the vector Z. The user reads the blocking information and the ciphertext Merkle root uploaded by the copyright owner in the step 54 from the block chain, the vector Z is constructed into a Merkle tree according to the same blocking mode of the copyright owner, the root r of the Merkle tree of the vector Z is obtained, the root r is compared with the ciphertext Merkle root, and if the root r is different from the ciphertext Merkle root, the transaction is terminated; if the same, the user calls the accept function to pay the transfer price and the deposit.
Step 56, the copyright owner calls the function revealeKey to upload the key k1
Step 57, the user reads the key k from the blockchain account book1Using the key k locally1Decrypting the vector Z, recovering the original file X, checking whether the file is wrong, and calling a function noComplain to finish the copyright transfer process if the file is correct; if the file is wrong, the file X is constructed into a Merkle tree according to the same blocking mode of the copyright owner, whether the node value in the Merkle tree is wrong or not is judged, corresponding judgment functions complainAboutTout, complainAboutLeaf and complainAboutNode are called to prove the malicious behavior, and the transfer process is finished.
Copyright maintenance stage:
step 61, the copyright owner finds the suspected infringement work X ', and combines the suspected infringement work X' with the original workStarting work XwAnd after encryption, sending the encrypted data to a copyright protection center, and calculating the Hash value Hash (X ') of the suspected infringement work X ' by a copyright owner and uploading the Hash value Hash (X ') to a block chain account book for storage.
Step 62, comparing the suspected infringement work X 'with the original work X by the copyright protection center, and if the suspected infringement work X' and the original work X do not have correlation, ending arbitration; if infringement exists, downloading the encrypted digital fingerprint information and the encrypted embedded key corresponding to the work from the block chain account book, decrypting the work by using the private key of the work, and extracting the fingerprint information ID from the infringement work XuThe fingerprint information IDuAnd sending to the registration authority.
Step 63, the registration authority retrieves the ID from the local databaseuAnd the corresponding real identity information u is sent to the copyright protection center.
Step 64, the copyright protection center inquires the transaction information of the work distribution in the transaction process from the blockchain account book, and if the transaction state of the work distribution is normally finished, the illegally distributed work can be judged to be leaked by the user u; otherwise, the pirate source is the copyright owner.
The foregoing is a more detailed description of the invention, taken in conjunction with the preferred embodiments, and it is not intended that the invention be limited to the specific embodiments disclosed. It will be understood by those skilled in the art that various changes in detail may be effected therein without departing from the scope of the invention as defined by the appended claims.

Claims (8)

1. A block chain-based digital copyright protection method is characterized by comprising the following stages:
in the preprocessing stage, a copyright protection central mechanism registers on a block chain network, deploys an intelligent contract of copyright protection to become an owner of the contract, and then sets a block chain account address of the registration mechanism;
in the copyright registration stage, after the copyright owner finishes the creation of the works, the created works and the verified identity information are encrypted and sent to a copyright protection center, after the copyright protection center decrypts the created works, the copyright protection center is responsible for embedding copyright information into the original works and storing the information of the digital works through an intelligent contract, so that the effect of ensuring the right of the digital works is achieved;
in the copyright inquiry stage, a block chain user acquires the detailed information of a certain digital work by calling an intelligent contract;
in the copyright transaction stage, a user sends a data request to a copyright owner, the copyright owner sends the requested data to a copyright protection center, and then the user sends the authenticated identity information to the copyright protection center; the copyright protection center is responsible for embedding the digital fingerprints of the user in the digital works, sending the digital works containing the user fingerprints to a copyright owner, and calling an intelligent contract by the copyright owner and the user to complete delivery certification of the digital works;
in the copyright transfer stage, a user requests copyright transfer to a copyright owner, the copyright owner sets transfer amount and opens transfer permission through an intelligent contract, and then the copyright owner and the user call the intelligent contract to complete delivery certification of the digital works;
in the copyright maintaining stage, a copyright owner finds a suspected infringement work X ', encrypts the suspected infringement work X ' and an original work X and sends the suspected infringement work X ' and the original work X ' to a copyright protection center, and the copyright protection center compares the original work X with the suspected infringement work X '; if there is infringement behavior, the copyright protection center extracts the user fingerprint ID of the work XuAnd initiates a real identity authentication request to a registration authority; meanwhile, the copyright protection center acquires the transaction state from the block chain account book, and if the transaction is normally ended, the illegally distributed works can be judged to be leaked by the user u; otherwise, the pirate source is the copyright owner.
2. The method of claim 1, wherein the block chain-based digital rights protection method comprises: the specific implementation of the pre-processing stage is as follows,
the copyright protection center registers on a block chain, 6 intelligent contracts including Ownable, CopyrightRegistration, ModifyInformation, copyrightInquiry, copyrightTransaction and copyrightTransfer are deployed to become owners of the 6 intelligent contracts, and then the copyright protection center calls a setRegistrationAccount address of a registration mechanism in the Ownable contract;
the Ownable intelligent contract comprises an Ownable function and a setRegistrationAgency function, wherein the Ownable function records a contract owner, and the setRegistrationAgency function sets a block chain account address of a registration mechanism;
the CopyrightRegistration intelligent contract comprises a copyrightRegister function, wherein the copyrightRegister function is called by a copyright protection center to store metadata of a digital work, and the metadata comprises a work id, a work name, a copyright owner, a category, a description, creation completion time, a transaction price, an assignment price and a hash value;
the ModifyInformation intelligent contract comprises a setTransferOfPrice function, a setSubscribeOfprice function and a setransferLock function; the setTransferOfPrime function is used for setting the transfer price of the digital work, the setSubscribeOfPrime function is used for setting the transaction price of the digital work, and the setransferLock function is used for controlling the transfer authority of the digital work;
the functions in the CopyrightInquiry intelligent contract are getInformation, getallsubscribes, getsubscribercount, getalldigitworks, getTransferOfLock, getOwner, getsubscribes; the getInformation function queries detailed information of the digital works, including id, name, owner, category, description, creation time, transaction price, transfer price, original hash and subscriber address, the getAllSubscriptors function is used for querying all users subscribing to a certain digital work, and the getSubscriptors Count function queries the number of users subscribing to a certain digital work; the getAllDigitalWorks function queries all the work ids owned by a copyright owner; the getTransferOfLock function queries the transfer authority of a certain digital work; the getOwner function queries the copyright owner of a digital work; the getSubscripters function queries the Etherhouse address of a user subscribing to the digital work;
the CopyrightTransaction intelligent contract contains the following functions: requestTransaction, saveInformation, initializeOfTxn, acceptOfTxn, revealKeyOfTxn, nocomplainOfTxn, complainRootOfTxn, complainLeafOfTxn, complainNodeOfTxn, refundOfTxn. A user calls a requestTransaction function to send a data request to a copyright owner; after embedding a digital fingerprint in a work, a copyright protection center calls a saveInformation function to store the encrypted digital fingerprint, the encrypted embedded key and a Merkle root containing the digital fingerprint work; a copyright owner calls an initializeOfTxn function to initialize transaction details and pay a deposit, wherein the transaction details comprise block information, a user address, a key hash value and a ciphertext Merkle root; if the initialized data is correct, the user calls an accept OfTxn function to pay the transaction price and deposit, and if the user pays the transaction price and deposit, the copyright owner calls a revealeKeyOfTxn function to upload a secret key; the user downloads the key and decrypts, checks the file without objection, and calls the nocomplainOfTxn function to finish the transaction; if there is objection, calling a corresponding decision function according to the checked error node, and calling a refandOfTxn function by the two parties according to the transaction state to finish the transaction;
the CopyrightTransfer intelligent contract contains the following functions: requestTransfer, initialize, accept, revealKey, noComplain, complain AboutTroot, complain AboutLeaf, complain AboutNode, refund; a user calls a requestTransfer function to send a copyright transfer request to a copyright owner; the copyright owner calls an initialize function to initialize the transfer process information and pay the deposit, if the initialization data is correct, the user calls an accept function to pay the transfer price and the deposit, and if the user pays the transfer price and the deposit, the copyright owner calls a revealeKey function to upload the key; the user downloads the key and decrypts, checks the file without objection, and calls a noComplain function to finish the copyright transfer process; if there is objection, calling a corresponding decision function according to the checked error node, and calling a refund function by the two parties according to the transaction state to finish the transaction;
CopyrightRegistration smart contracts are inherited from Ownable, ModifyInformation smart contracts are inherited from CopyrightRegistration, CopyrightInquiry smart contracts are inherited from CopyrightRegistration, CopyrightTransfer smart contracts are inherited from ModifyInformation, CopyrightInquiry, CopyrightTransfer smart contracts are inherited from CopyrightTransfer; the six intelligent contracts constitute the DApp running on the blockchain and complete the functions of each stage.
3. The method of claim 2, wherein the block chain-based digital rights protection method comprises: the specific implementation of the copyright registration phase is as follows,
step 21, registering a copyright owner in the block chain network, and performing identity authentication to a registration authority to acquire an identity ID;
step 22, the copyright owner uses the AES encryption algorithm and the key k1Encrypting the work X to be registered to obtain an encrypted work XeAnd use the public key pk of the copyright protection centercPair key k1Encrypted to obtain
Figure FDA0003197529900000031
Then the encrypted work Xe
Figure FDA0003197529900000032
And ID are sent to the copyright protection center;
step 23, the copyright protection center uses its own private key skcTo pair
Figure FDA0003197529900000033
Decryption is carried out to obtain a secret key k1And use the key k1For encrypted work XeDecrypting to obtain a work X; after the copyright protection center examines the work X, the hash value Hash (X) of the plaintext work X is calculated, and the identity ID of the copyright owner is embedded into the work X to obtain XwThen calculating the works X containing copyright watermarkwHash value of (X)w);
Step 24, the copyright protection center calls a copyrightRegister function in the copyrightRegistration intelligent contract to write the relevant information of the work into the blockchain, wherein the relevant information comprises the work id, the work name, the copyright owner, the category, the description, the creation completion time, the transaction price, the transfer price, the hash value Hash (X) of the original work, and the information comprises the work id, the work name, the copyright owner, the category, the description, the creation completion time, the transaction price, the transfer price and the hash value Hash (X) of the original workCopyrighted watermark work XwHash value Hash (X)w)10 parts of a composition; after the related information is linked up, the copyright protection center uses an AES encryption algorithm and a key k2For works X containing copyright informationwEncrypting to obtain XewAnd uses the public key pk of the copyright owneroPair key k2Encrypted to obtain
Figure FDA0003197529900000041
And mixing XewAnd
Figure FDA0003197529900000042
sending to the copyright owner;
step 25, the copyright owner uses his own private key skoTo pair
Figure FDA0003197529900000043
Decryption is carried out to obtain a secret key k2And use the key k2For encrypted work X containing copyright watermarkewDecrypting to obtain works X containing copyright watermarkw(ii) a The copyright owner can call a setSubscribeOfPrice function, a setTransferOfPrice function and a setransferLock function in a ModifyInformation intelligent contract to respectively set a copyright transaction price, a copyright assignment price and a copyright assignment right.
4. The method of claim 2, wherein the block chain-based digital rights protection method comprises: the specific implementation of the copyright query phase is as follows,
step 31, registering the user as a user of the block chain in the block chain network;
in step 32, the user may call the getInformation function in the CopyrightInquiry smart contract to query the detailed information of the registered works in the block chain, including: work id, work name, copyright owner, category, description, creation completion time, transaction price, transfer price, Hash (X)w) A subscriber address; wherein the subscriber address indicates that the work is successfully subscribed in the copyright transaction processA user's blockchain account address; the user may also call getAllSubscribers function to query all users subscribing to the work, or call getsubscribers count function to query the number of subscribers to the work, and call getalldigitworks function to query all work ids registered by a user in the blockchain.
5. The method of claim 2, wherein the block chain-based digital rights protection method comprises: the specific implementation of the copyright transaction phase is as follows,
step 41, the user registers in the blockchain network and performs identity authentication with the registration authority to obtain a unique identity IDu
Step 42, the user sends a data request message to the copyright owner by calling a requestTransaction function in the CopyrightTransaction intelligent contract;
step 43, after the copyright owner receives the data request message, the copyright owner uses the AES encryption algorithm and the key k1For the requested data XwEncrypted to obtain an encrypted work XewAnd use the public key pk of the copyright protection centercPair key k1Encrypted to obtain
Figure FDA0003197529900000051
Then the encrypted work XewAnd
Figure FDA0003197529900000052
sending the information to a copyright protection center;
step 44, the user authenticates the identity information
Figure FDA0003197529900000053
And requesting to purchase the ID encryption of the work and sending the ID encryption to a copyright protection center; wherein the content of the first and second substances,
Figure FDA0003197529900000054
indicating that the registration authority uses its private key skaFor user identity IDuThe digital signature of (2);
step 45, the copyright protection center uses its own private key skcTo pair
Figure FDA0003197529900000055
Decryption is carried out to obtain a secret key k1And use the key k1For encrypted work XewDecrypting to obtain the requested data XwAnd selecting proper digital fingerprint algorithm to identify the user IDuIs embedded in XwTo obtain XuAnd calculating a work X containing user fingerprint informationuHash value of (X)u) (ii) a Then the copyright protection center sends XuBuilding a Merkle tree in blocks to calculate to obtain a plaintext Merkle root, and calling a saveInformation function to write encrypted fingerprint information, an encrypted embedded key and the plaintext Merkle root into a block chain account book; then the copyright protection center uses AES encryption algorithm and key k2For work XuEncrypted to obtain an encrypted work XeuAnd uses the public key pk of the copyright owneroPair key k2Encrypted to obtain
Figure FDA0003197529900000056
And will encrypt the work Xeu
Figure FDA0003197529900000057
The plaintext Merkle root and the block information are sent to the copyright holder. The blocking information comprises a blocking mode, a block size, a block number and a Merkle tree depth;
step 46, the copyright owner uses his own private key skoTo pair
Figure FDA0003197529900000058
Line decryption to obtain the key k2And use the key k2For encrypted work XeuDecrypting to obtain data X containing user fingerprintu(ii) a Both parties of the transaction complete the work X according to the OptiFairSwap protocoluThe status of the transaction is recorded in the blockchain ledger.
6. The method of claim 2, wherein the block chain-based digital rights protection method comprises: a specific implementation of the copyright transfer phase is as follows,
step 51, the user registers in the blockchain network and performs identity authentication with the registration authority to obtain a unique identity IDu
Step 52, the user sends a copyright transfer request to a copyright owner by calling a requestTransfer function in the CopyrightTransfer intelligent contract;
step 53, the copyright owner negotiates with the user and calls a settransferLock function in a ModifyInformation intelligent contract to open the copyright transfer authority;
at step 54, both parties of the transaction complete the distribution of the work X according to the OptiFairSwap protocol, and the status of the transaction is recorded on the blockchain ledger.
7. The method of claim 2, wherein the block chain-based digital rights protection method comprises: the copyright protection stage is implemented in the following way,
step 61, the copyright owner finds the suspected infringement work X ', and combines the suspected infringement work X' with the original work XwEncrypting and sending the encrypted data to a copyright protection center, and calculating a Hash value Hash (X ') of a suspected infringement work X ' by a copyright owner and uploading the Hash value Hash (X ') to a block chain account book for storage;
step 62, comparing the suspected infringement work X 'with the original work X by the copyright protection center, and if the suspected infringement work X' and the original work X do not have correlation, ending arbitration; if infringement exists, downloading encrypted digital fingerprint information and an encrypted embedded key corresponding to the work from the blockchain account book, decrypting the encrypted digital fingerprint information and the encrypted embedded key by using a private key of the user, and extracting fingerprint information ID from the infringement work XuThe fingerprint information IDuSending to a registration authority;
step 63, the registration authority retrieves the ID from the local databaseuThe corresponding real identity information u is sent to a copyright protection center;
step 64, the copyright protection center inquires the transaction information of the work distribution in the transaction process from the blockchain account book, and if the transaction state of the work distribution is normally finished, the illegally distributed work can be judged to be leaked by the user u; otherwise, the pirate source is the copyright owner.
8. A block chain based digital rights protection method according to claim 5 or 6, characterized by: the specific implementation of the distribution mode OptiFairSwap of works in the copyright transaction stage and the copyright transfer stage is as follows,
step 1, the copyright owner divides the file X to be distributed into blocks to obtain { X1,x2,x3,…,xnConstructing a Merkle tree, and carrying out leaf node vector { x ] of Merkle1,x2,x3,…,xnAnd a non-leaf node vector y1,y2,y3,…,ymCombine to get vector { x }1,x2,…,xn,y1,y2,…,ymUsing the secret key k1Encrypting it to obtain Z ═ Z1,z2,…,zn,zn+1,zn+2,…,zn+m}; the copyright owner uses the AES encryption algorithm and the key k2Encrypting the Z vector to obtain a ciphertext C, and using the public key pk of the useruPair key k2Encrypted to obtain
Figure FDA0003197529900000061
Then the ciphertexts C and C
Figure FDA0003197529900000062
Sending the copyright information to a user, and simultaneously storing a guarantee fund into an intelligent contract by a copyright owner;
step 2, the user uses the private key sk of the useruTo pair
Figure FDA0003197529900000063
Decryption is carried out to obtain a secret key k2And use the key k2And decrypting the ciphertext C to obtain the vector Z. Partitioning the vector Z to construct a Merkle tree to obtain a Merkle tree root of the vector Zr;
Step 3, writing the root r of the Merkle tree of the vector Z into the block chain account book through the intelligent contract by the user, and storing the cost of the deposit and the file purchase and the root h of the Merkle tree of the file X into the intelligent contract;
step 4, the copyright owner reads r from the block chain, locally performs the same operation as the user on the vector Z to construct a Merkle tree, calculates the root r 'of the Merkle tree locally constructed by the vector Z, compares whether the values of r and r' are the same or not, and if the values are different, stops the transaction; if the key k is the same as the key k, the copyright owner calls the intelligent contract to use the key k1Uploading to a block chain account book for storage;
step 5, the user reads the key k from the block chain account book1Using the key k locally1The vector Z is decrypted to obtain { x'1,x′2,…,x′n,y1′,y2′,…,y′m}. User splicing { x'1,x′2,…,x′nAcquiring a file X', if the file is correct, normally ending the transaction, taking back own deposit by a user, and taking back own deposit and the cost for purchasing the file by a copyright owner; if the file is wrong, the user sends the data pi of the wrong block to { z ═ zi,zi+1,zn+(i+1)/2The values of the corresponding brother nodes in the path and the value of the corresponding brother node in the path are used as input parameters of an intelligent contract judgment function;
step 6, the decision function first determines the submitted pi ═ zi,zi+1,zn+(i+1)/2Whether it is a leaf node and a non-leaf node of the root r of the Merkle tree; if not, the result shows that pi ═ z submitted by the user is equal to { z }i,zi+1,zn+(i+1)/2If the copyright owner is tampered with by the user, the copyright owner retrieves the own deposit, the money of the user for purchasing the file and the deposit of the user from the intelligent contract; the transaction is normally ended; if the submitted input parameters are leaf nodes and non-leaf nodes of the root r of the Merkle tree, the decision function utilizes the key k1P ═ zi,zi+1,zn+(i+1)/2Carry out decryption to get { x }i,xi+1,y(i+1)/2}; and verifies { xi,xi+1,y(i+1)/2Whether or not it is MeLeaf nodes and non-leaf nodes of root h of rkle tree; if not, the distributed file is an error file, the user retrieves the own deposit, money for purchasing the file and the deposit of the copyright owner from the intelligent contract, and the transaction is abnormally ended; if the distributed file is the correct file, the copyright owner retrieves the own deposit, the money of the user for purchasing the file and the deposit of the user from the intelligent contract, and the transaction is normally finished.
CN202110895257.8A 2021-08-05 2021-08-05 Digital copyright protection method based on block chain Active CN113706344B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110895257.8A CN113706344B (en) 2021-08-05 2021-08-05 Digital copyright protection method based on block chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110895257.8A CN113706344B (en) 2021-08-05 2021-08-05 Digital copyright protection method based on block chain

Publications (2)

Publication Number Publication Date
CN113706344A true CN113706344A (en) 2021-11-26
CN113706344B CN113706344B (en) 2024-03-01

Family

ID=78651635

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110895257.8A Active CN113706344B (en) 2021-08-05 2021-08-05 Digital copyright protection method based on block chain

Country Status (1)

Country Link
CN (1) CN113706344B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114202325A (en) * 2021-12-16 2022-03-18 北京天德科技有限公司 NFR issuing intelligent contract and operation method thereof
CN114841701A (en) * 2022-07-04 2022-08-02 浙江大学 Digital artwork anti-theft credible transaction method and device based on NFT
CN115964680A (en) * 2022-12-13 2023-04-14 暨南大学 Copyright protection method based on double-authentication blocking signature and block chain
CN116305017A (en) * 2023-03-10 2023-06-23 西安工程大学 Image copyright protection method based on mask and identification hidden embedding
CN116563030A (en) * 2023-07-07 2023-08-08 四海良田(天津)智能科技有限公司 Software copyright protection method and system based on blockchain technology

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012088663A1 (en) * 2010-12-28 2012-07-05 北京邮电大学 Digital watermark works with characteristics of copyright protection and generation method thereof
CN107798650A (en) * 2017-09-18 2018-03-13 众安信息技术服务有限公司 A kind of digital asset infringement decision method and device based on block chain
CN109002487A (en) * 2018-06-25 2018-12-14 百度在线网络技术(北京)有限公司 A kind of post-processing approach based on copyright registration information, device, equipment and medium
CN109711120A (en) * 2018-12-17 2019-05-03 浙江大学 A kind of digital resource infringement method for tracing and system based on block chain digital watermarking
CN111428207A (en) * 2020-04-23 2020-07-17 重庆邮电大学 Digital copyright registration and transaction method based on block chain technology
CN111538784A (en) * 2020-04-21 2020-08-14 全球能源互联网研究院有限公司 Block chain-based digital asset transaction method and device and storage medium
CN112418851A (en) * 2019-08-21 2021-02-26 余伟坚 Digital copyright registration, transaction and protection method and system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012088663A1 (en) * 2010-12-28 2012-07-05 北京邮电大学 Digital watermark works with characteristics of copyright protection and generation method thereof
CN107798650A (en) * 2017-09-18 2018-03-13 众安信息技术服务有限公司 A kind of digital asset infringement decision method and device based on block chain
CN109002487A (en) * 2018-06-25 2018-12-14 百度在线网络技术(北京)有限公司 A kind of post-processing approach based on copyright registration information, device, equipment and medium
US20210182871A1 (en) * 2018-06-25 2021-06-17 Baidu Online Network Technology (Beijing) Co., Ltd. Post-processing method and device based on copyright registration information, apparatus, and medium
CN109711120A (en) * 2018-12-17 2019-05-03 浙江大学 A kind of digital resource infringement method for tracing and system based on block chain digital watermarking
CN112418851A (en) * 2019-08-21 2021-02-26 余伟坚 Digital copyright registration, transaction and protection method and system
CN111538784A (en) * 2020-04-21 2020-08-14 全球能源互联网研究院有限公司 Block chain-based digital asset transaction method and device and storage medium
CN111428207A (en) * 2020-04-23 2020-07-17 重庆邮电大学 Digital copyright registration and transaction method based on block chain technology

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114202325A (en) * 2021-12-16 2022-03-18 北京天德科技有限公司 NFR issuing intelligent contract and operation method thereof
CN114841701A (en) * 2022-07-04 2022-08-02 浙江大学 Digital artwork anti-theft credible transaction method and device based on NFT
CN115964680A (en) * 2022-12-13 2023-04-14 暨南大学 Copyright protection method based on double-authentication blocking signature and block chain
CN115964680B (en) * 2022-12-13 2023-09-29 暨南大学 Copyright protection method based on double authentication blocking signature and blockchain
CN116305017A (en) * 2023-03-10 2023-06-23 西安工程大学 Image copyright protection method based on mask and identification hidden embedding
CN116305017B (en) * 2023-03-10 2023-11-03 西安工程大学 Image copyright protection method based on mask and identification hidden embedding
CN116563030A (en) * 2023-07-07 2023-08-08 四海良田(天津)智能科技有限公司 Software copyright protection method and system based on blockchain technology

Also Published As

Publication number Publication date
CN113706344B (en) 2024-03-01

Similar Documents

Publication Publication Date Title
CN113706344B (en) Digital copyright protection method based on block chain
US8078725B2 (en) Method and system for secure distribution and utilization of data over a network
US7725404B2 (en) Secure electronic commerce using mutating identifiers
US7376624B2 (en) Secure communication and real-time watermarking using mutating identifiers
US7587366B2 (en) Secure information vault, exchange and processing system and method
EP2770455B1 (en) Method and system to exercise geographic restrictions over the distribution of content via a network
US7536563B2 (en) Method and system to securely store and distribute content encryption keys
US7991697B2 (en) Method and system to digitally sign and deliver content in a geographically controlled manner via a network
US7706540B2 (en) Content distribution using set of session keys
US20030161335A1 (en) Method and system to dynamically present a payment gateway for content distributed via a network
US20030167392A1 (en) Method and system to secure content for distribution via a network
US20080154782A1 (en) Apparatus, method and system for protecting personal information
JP2008501176A (en) Information distribution system that protects privacy
AU2001269856A1 (en) Methods and systems to distribute content via a network utilizing distributed conditional access agents and secure agents, and to perform digital rights management (drm)
Barhoush et al. Requirements for enforcing digital rights management in multicast content distribution
CN112464178B (en) Data transaction copyright protection method based on blockchain and homomorphic encryption
Frattolillo et al. A novel approach to DRM systems
CN114154985A (en) Pay-per-view method based on block chain and RSA algorithm
Frattolillo et al. A model for the distribution of watermarked digital content on mobile networks
WO2023235199A1 (en) A system for managing distributed digital rights
AU2007234620B2 (en) Methods and systems to distribute content via a network utilizing distributed conditional access agents and secure agents, and to perform digital rights management (DRM)
AU2007234622A1 (en) Methods and systems to distribute content via a network utilizing distributed conditional access agents and secure agents, and to perform digital rights management (DRM)

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant