Block chain-based digital copyright protection method

文档序号:1890917 发布日期:2021-11-26 浏览:16次 中文

阅读说明:本技术 一种基于区块链的数字版权保护方法 (Block chain-based digital copyright protection method ) 是由 徐彦彦 毛养素 于 2021-08-05 设计创作,主要内容包括:本发明旨在提出一种基于区块链的数字版权保护方案,结合区块链技术和数字水印技术设计了全过程的版权服务,实现版权登记、版权查询、版权交易、版权转让、版权维权五大功能需求。此外,通过智能合约实现OptiFairSwap协议完成有效的交付证明并防止交易双方的恶意行为,并结合数字指纹技术实现盗版追踪功能。作品一旦在区块链上被确权,后续交易都会被实时记录,从而实现作品从创造、流通、使用全生命周期可追溯、可追踪,这为司法取证提供了一种强大的技术保障和结论性证据。同时在版权交易和版权转让过程中版权所有者可以直接参与到自己的作品的版权管理中,交易过程公开透明,版税透明化结算。(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.)

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 obtainThen the encrypted work XeAnd ID are sent to the copyright protection center;

step 23, the copyright protection center uses its own private key skcTo pairDecryption 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 obtainAnd mixing XewAndsending to the copyright owner;

step 25, the copyright owner uses his own private key skoTo pairDecryption 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 obtainThen the encrypted work XewAndsending the information to a copyright protection center;

step 44, the user authenticates the identity informationAnd 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,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 pairDecryption 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 obtainAnd will encrypt the work XeuThe 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 pairLine 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 obtainThen the ciphertexts C and CSending 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 pairDecryption 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.

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 obtainThen the encrypted work XeAnd the ID is sent to the copyright protection center.

Step 23, the copyright protection center uses its own private key skcTo pairDecryption 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 obtainAnd mixing XewAndto the copyright owner.

Step 25, the copyright owner uses his own private key skoTo pairDecryption 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 obtainThen the encrypted work XewAndand sending the information to a copyright protection center.

Step 44, the user authenticates the identity informationAnd 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,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 pairDecryption 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 obtainAnd will encrypt the work XeuThe 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 pairLine 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 obtainThen the ciphertexts C and CAnd 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 pairDecryption 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 obtainThen the encrypted work XeAnd the ID is sent to the copyright protection center.

Step 23, the copyright protection center uses its own private key skcTo pairDecryption 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 obtainAnd mixing XewAndto the copyright owner.

Step 25, the copyright owner uses his own private key skoTo pairDecryption 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 obtainThen the encrypted work XewAndand sending the information to a copyright protection center.

Step 44, the user authenticates the identity informationAnd 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,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 pairDecryption 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 obtainAnd will encrypt the work XeuThe 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 pairDecryption 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 obtainAnd the ciphertext C,And sending the data to the user.

Step 47, the user uses his own private key skuTo pairDecrypting 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 obtainAnd the ciphertext C,And sending the data to the user.

Step 55, the user uses his own private key skuTo pairDecryption 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.

25页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种多任务模型蒸馏方法、系统、介质及电子终端

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!