CN111159694A - Private use authorization method of block chain digital assets based on zero knowledge proof - Google Patents
Private use authorization method of block chain digital assets based on zero knowledge proof Download PDFInfo
- Publication number
- CN111159694A CN111159694A CN201911302917.6A CN201911302917A CN111159694A CN 111159694 A CN111159694 A CN 111159694A CN 201911302917 A CN201911302917 A CN 201911302917A CN 111159694 A CN111159694 A CN 111159694A
- Authority
- CN
- China
- Prior art keywords
- authorization
- user
- digital assets
- digital
- intelligent contract
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
- G06N5/013—Automatic theorem proving
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Abstract
The invention discloses a private use authorization method of a block chain digital asset based on zero knowledge proof, which comprises the following steps: a user registration step; a step of registering digital assets; a digital asset authorization step; and (5) an authorization certification step. The invention can publish digital assets on a blockchain, but hide the owners of the digital assets; authorization for use of the digital asset may also be made on the chain, but the authorized purchaser, owner, and digital asset information are hidden.
Description
Technical Field
The invention relates to the technical field of blockchain, in particular to a private use authorization method of blockchain digital assets based on zero knowledge proof.
Background
In a block chain system which is represented by bitcoin and is designed by a UTXO model, the flow of each UTXO is public, the anonymity is ensured by hiding the corresponding relation between a person and an address, and once the corresponding relation between a certain address and the person is exposed, all transaction records and fund quantity of the person can be basically tracked by matching with data analysis tools on a chain. In an intelligent contract blockchain such as an etherhouse, all transactional data in a block is also public, although a virtual machine can provide a well-crafted programming language to implement arbitrary logic. The development of zero knowledge proof has enabled many users to attempt to implement private transactions over blockchains, the Nightfall project published before secure (EY), enabling support for private transfers of ERC-721 class assets at etherhouses. The ZCAh project designs a transaction record mixing scheme through zero knowledge proof, realizes the same function as a bitcoin, but does not store any specific information (sender, receiver, amount, etc.) of a transaction on a chain.
Items such as ZCash and Nightfall focus on the area of private transfers, but blockchains are used much more than Token transfers. The human society is experiencing a tremendous impact from the information revolution, and from the perspective of the enterprise, most enterprises are experiencing a transition from manufacturing to innovative enterprises. The core production data of enterprises is being converted from capital, factory building, raw materials and the like into a network formed by people, knowledge (information) and knowledge, and the professional expression is called social capital. In such a large context, the protection and efficient circulation of digital assets such as knowledge-based materials, results, etc. becomes especially important to the enterprise.
The registration of the assets is necessarily disclosed based on the ERC-721 standard, and after the registration of the assets, the assets are transferred into a privacy contract, and the transfer operation is not visible to the outside. In addition, in the case of digital assets of the type of articles, pictures, and the like, the most important way of circulation is not transfer of ownership but purchase of usage rights. Such as the reprint right purchase of articles, the purchase use of pictures, etc. For such digital assets, the use of NFT model abstraction is not sufficient, and private purchase of usage rights is even more impractical.
The applicant has therefore made an advantageous search and attempt to solve the above-mentioned problems, in the context of which the technical solutions to be described below have been created.
Disclosure of Invention
The technical problem to be solved by the invention is as follows: the method for authorizing the private use of the blockchain digital assets based on zero knowledge proof is provided for overcoming the defects of the prior art.
The technical problem to be solved by the invention can be realized by adopting the following technical scheme:
the private use authorization method of the blockchain digital assets based on zero knowledge certification comprises the following steps:
a user registration step: a user who needs to issue digital assets on a block chain registers according to an intelligent contract;
a digital asset registration step: the registered user registers own digital assets according to the intelligent contract;
a digital asset authorization step: when a registered user needs to anonymously authorize a part or all of the registered digital assets to one or more registered users, the registered user generates an authorization record on a block chain according to an intelligent contract and sends the generated authorization record to the authorized user;
and an authorization certification step: when one or more authorized users acquire the authorization of a certain digital asset, the one or more authorized users generate an authorization certificate for the received authorization record according to the intelligent contract so as to prove that the one or more authorized users acquire the authorization of the certain digital asset.
In a preferred embodiment of the present invention, the method further comprises a verification authorization step, wherein the verification authorization step is that when a registered user receives an authorization certificate provided by another registered user, the registered user verifies the validity of the received authorization certificate by calling an intelligent contract.
Due to the adoption of the technical scheme, the invention has the beneficial effects that: the invention can publish digital assets on a blockchain, but hide the owners of the digital assets; authorization for use of the digital asset may also be made on the chain, but the authorized purchaser, owner, and digital asset information are hidden. Therefore, the privacy of the whole process of publishing and authorizing the digital assets on the block chain is realized, and the record of publishing and authorizing all the assets is ensured not to expose the information of any participant in principle. If necessary, the user can prove ownership or use right of the assets to any third party by means of data on the blockchain and zero knowledge proof method.
Detailed Description
The present invention is further described in order to make the technical means, the creation features, the achievement purposes and the effects of the present invention easy to understand.
The invention discloses a private use authorization method of a blockchain digital asset based on zero knowledge certification, which comprises the following steps:
a user registration step: a user who needs to issue digital assets on a block chain registers according to an intelligent contract;
a digital asset registration step: the registered user registers own digital assets according to the intelligent contract;
a digital asset authorization step: when a registered user needs to anonymously authorize a part or all of the registered digital assets to one or more registered users, the registered user generates an authorization record on a block chain according to an intelligent contract and sends the generated authorization record to the authorized user;
and an authorization certification step: when one or more authorized users acquire the authorization of a certain digital asset, the one or more authorized users generate an authorization certificate for the received authorization record according to the intelligent contract so as to prove that the one or more authorized users acquire the authorization of the certain digital asset.
And (3) verifying and authorizing: when a registered user receives an authorization certificate provided by another registered user, the registered user verifies the validity of the received authorization certificate by calling an intelligent contract.
The specific content of the user registration step is as follows:
the user who needs to release digital assets on the block chain registers according to the intelligent contract, the registered user has a pair of public and private keys representing the ownership identity of the user assets, the length of each key is 32 bytes, and the key pairs are respectively marked as pkR,skRAnd satisfies the relation:
pkR=h(skR)
the registered user also has a public and private key pair representing the identity of the blockchain and the corresponding blockchain address which are respectively marked as pkE,skEAddr, is generated using a standard elliptic curve signature algorithm. The user needs to carefully keep the private keys in the two sets of public and private key pairs, and the private keys cannot be revealed。
The user also has a username n, which is provided to the querier upon verification of the authorization information, and which should be in the form of natural semantic information representing the user's identity.
The user can realize the anonymous authorization of the digital assets only by completing the user registration process according to the intelligent contract. The user registration actually records some important information of the user on the blockchain, and the pk of the user is recordedRAnd one binding is made for three kinds of information of addr and n. Some of these information may not be changed, such as the user's blockchain address addr and pk representing the user's property ownership identityR(ii) a Further information requires rights management, such as the user's registration name information n.
Accordingly, the following two points are ensured:
1. only possess skRCan be the corresponding pkRUser registration operation is carried out, and zero knowledge proof is adopted for realization;
2. once the user has completed registration, only pk is ownedECorresponding private key skECan modify the user's registration name, and is realized by relying on an elliptic curve signature algorithm mechanism.
Note that there is an implicit requirement for both of the above: the private key of the user cannot be disclosed.
The following takes the user a as an example, and specifically introduces the user registration process:
1. generating two groups of public-private key pairs and other user information data in a secure environment;
2. generating a zero knowledge proof pi, containing a constraint:
Note: in the zero knowledge proof generation process of ZoKrates, it can be set whether the input variable is public, the public variable will appear in the generated proof, and the private variable will not appear.
The specific contents of the digital asset registration step are as follows:
for any digital asset, the user needs to generate a unique digital id for the digital asset, which is recorded as α.
Digital asset registration is actually recording the user's asset public key pk on the blockchainRα, the following two points are guaranteed according to the relationship:
1. only possess skRCan be the corresponding pkRRegistering assets, which is realized by adopting zero knowledge proof;
2. the same α can only be registered once.
The following describes the process of digital asset registration by taking the user a registering the asset α as an example:
2. Generating a zero knowledge proof pi, containing a constraint:
The specific contents of the digital asset authorization step are as follows:
the nature of authorization is to generate an authorization record on the blockchain that implies the asset α and the authorized party information.
1. Only registered asset α may be authorized, giving zero knowledge proof of the existence of the registration record for asset α;
2. the authorized party must have α the corresponding asset private key sk at registration timeRIt is necessary to give the authority to own the skRZero knowledge proof of (2);
3. the asset α, authorizer information, and authorizee information cannot be disclosed.
The following describes the process of digital asset authorization, taking user a as an example to authorize asset α to user B:
4. obtaining MTRRoot node root ofR;
5. Generating a zero knowledge proof pi, containing a constraint:
The specific contents of the authorization certification step are as follows:
in order for a user to show a third party that he or she has obtained authorization for a digital asset, an authorization certificate needs to be generated. The authorization certification essentially certifies the correspondence between the user and the authorization record on the blockchain, namely:
1.α and pk exist on the Block chainRCorresponding authorization record Zα;
2. The user owns pkRCorresponding toPrivate key skR。
The following describes the process of generating an authorization credential by taking user B as an example to generate an authorization credential for asset α:
5. obtaining MTZRoot node root ofZ;
6. Obtaining MTRRoot node root ofR;
7. Generating a zero knowledge proof pi, containing a constraint:
The specific contents of the authentication and authorization steps are as follows:
for the authorization certification provided by other users, the validity of the authorization certification can be verified by calling the method of the intelligent contract:
the method returns:
whether B obtains the authorization of A;
2. user information of authorizer a;
3. user information of authorized party B.
Intelligent contract
The invention uses a series of intelligent contracts to realize the interaction with the block chain, which mainly comprises the following classes:
user-related: for user registration, username modification, etc.;
shield contract: for a user to initiate registration, authorization, authentication, etc. of an asset;
verifier contract: the elliptic curve pairing function is used to verify the zero knowledge proof as library for other contract invocations.
Two important intelligent contract contents are specifically described below:
Organization.sol
-registering a user on the blockchain, recording the correspondence of the user's registration name, the asset public key and the blockchain address
·resetName(nA):
-modifying the user name, with only the user registered blockchain address having authority to invoke
·get(pkR)
-obtaining the asset public key pkRCorresponding user registration name
Shield.sol
-registering the digital asset α on the blockchain, where the information of user a is hidden;
updating MTR;
-generating α corresponding ERC-721token, owner for Shield contract.
Authorization of digital assets α to B, where the information of digital assets α is hidden-contracts require verification that the root was or happens to be an MTRRoot node of
·verify(π,inputs)
-verifying whether a proof pi and corresponding input matches by calling a method of a Verifier contract
The proof of authorization information is verified.
The present invention may publish digital assets on a chain, but hide the owners of the digital assets. For example: post pictures are taken as an example. For example, a user a may register a picture on the blockchain, and the blockchain has no original content of the picture, but only the hash value and ID of the picture. This picture is also not visible from the blockchain as from user a. Next, if the user a needs to prove ownership of the picture, the user a may attach a piece of "text" when publishing the picture on a certain media, and take the piece of text to the block chain for querying, so as to prove that the user a is the author of the picture. But by the data on the blockchain alone, anyone cannot find out which other pictures user a has. Even if other people have the text, the proof of ownership cannot be forged, and the pictures cannot be sold.
The present invention can also conduct authorization of use of digital assets on the chain, but hide the authorized purchaser, owner, and digital asset information. For example, a certain user B sees a picture on the medium and may pay to purchase usage rights, but no one knows from whom the user B bought what. When the purchased picture is used in the blog of the user B, the user B can be attached with a text, and the validity of the payment purchase of the user B can be confirmed on the chain through the text, but any other purchase records of the user B cannot be found, and the user B cannot be found from who the picture is purchased.
Through the functions, the invention realizes the whole-process privacy protection of picture publishing and purchasing. While also enabling disclosure of some information as necessary to prove ownership and not expose any other additional private information.
It should be noted that although the present invention uses pictures as examples, the functions implemented by the present invention can be used in the registration and authorization of any type of digital asset.
The foregoing shows and describes the general principles and broad features of the present invention and advantages thereof. It will be understood by those skilled in the art that the present invention is not limited to the embodiments described above, which are described in the specification and illustrated only to illustrate the principle of the present invention, but that various changes and modifications may be made therein without departing from the spirit and scope of the present invention, which fall within the scope of the invention as claimed. The scope of the invention is defined by the appended claims and equivalents thereof.
Claims (2)
1. The method for authorizing the private use of the blockchain digital assets based on zero knowledge certification is characterized by comprising the following steps of:
a user registration step: a user who needs to issue digital assets on a block chain registers according to an intelligent contract;
a digital asset registration step: the registered user registers own digital assets according to the intelligent contract;
a digital asset authorization step: when a registered user needs to anonymously authorize a part or all of the registered digital assets to one or more registered users, the registered user generates an authorization record on a block chain according to an intelligent contract and sends the generated authorization record to the authorized user;
and an authorization certification step: when one or more authorized users acquire the authorization of a certain digital asset, the one or more authorized users generate an authorization certificate for the received authorization record according to the intelligent contract so as to prove that the one or more authorized users acquire the authorization of the certain digital asset.
2. The method of claim 1, further comprising a verification authorization step, wherein when a registered user receives an authorization certificate provided by another registered user, the registered user verifies the validity of the received authorization certificate by invoking an intelligent contract.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911302917.6A CN111159694A (en) | 2019-12-17 | 2019-12-17 | Private use authorization method of block chain digital assets based on zero knowledge proof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911302917.6A CN111159694A (en) | 2019-12-17 | 2019-12-17 | Private use authorization method of block chain digital assets based on zero knowledge proof |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111159694A true CN111159694A (en) | 2020-05-15 |
Family
ID=70557275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911302917.6A Pending CN111159694A (en) | 2019-12-17 | 2019-12-17 | Private use authorization method of block chain digital assets based on zero knowledge proof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111159694A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111984840A (en) * | 2020-09-07 | 2020-11-24 | 中国银行股份有限公司 | Online asset safety display locking method and device |
CN112347516A (en) * | 2020-11-27 | 2021-02-09 | 网易(杭州)网络有限公司 | Asset certification method and device based on block chain |
CN113592469A (en) * | 2021-08-02 | 2021-11-02 | 杭州复杂美科技有限公司 | Red packet processing method based on zero knowledge proof, computer equipment and storage medium |
CN113592478A (en) * | 2021-08-02 | 2021-11-02 | 杭州复杂美科技有限公司 | Digital commodity transaction method, computer device and storage medium |
CN114119046A (en) * | 2021-11-25 | 2022-03-01 | 支付宝(杭州)信息技术有限公司 | Commodity design authorization use method and device based on block chain system |
CN114186248A (en) * | 2021-11-13 | 2022-03-15 | 云南财经大学 | Zero-knowledge proof verifiable certificate digital identity management system and method based on block chain intelligent contracts |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108764872A (en) * | 2018-06-01 | 2018-11-06 | 杭州复杂美科技有限公司 | A kind of authority to pay method and system, equipment and storage medium |
CN110348837A (en) * | 2019-06-28 | 2019-10-18 | 阿里巴巴集团控股有限公司 | A kind of transfer account method and system based on block chain intelligence contract |
CN110473105A (en) * | 2019-08-20 | 2019-11-19 | 深圳市网心科技有限公司 | A kind of block chain transaction settlement method, system and relevant device |
-
2019
- 2019-12-17 CN CN201911302917.6A patent/CN111159694A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108764872A (en) * | 2018-06-01 | 2018-11-06 | 杭州复杂美科技有限公司 | A kind of authority to pay method and system, equipment and storage medium |
CN110348837A (en) * | 2019-06-28 | 2019-10-18 | 阿里巴巴集团控股有限公司 | A kind of transfer account method and system based on block chain intelligence contract |
CN110473105A (en) * | 2019-08-20 | 2019-11-19 | 深圳市网心科技有限公司 | A kind of block chain transaction settlement method, system and relevant device |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111984840A (en) * | 2020-09-07 | 2020-11-24 | 中国银行股份有限公司 | Online asset safety display locking method and device |
CN111984840B (en) * | 2020-09-07 | 2023-09-22 | 中国银行股份有限公司 | Online asset security display locking method and device |
CN112347516A (en) * | 2020-11-27 | 2021-02-09 | 网易(杭州)网络有限公司 | Asset certification method and device based on block chain |
CN113592469A (en) * | 2021-08-02 | 2021-11-02 | 杭州复杂美科技有限公司 | Red packet processing method based on zero knowledge proof, computer equipment and storage medium |
CN113592478A (en) * | 2021-08-02 | 2021-11-02 | 杭州复杂美科技有限公司 | Digital commodity transaction method, computer device and storage medium |
CN114186248A (en) * | 2021-11-13 | 2022-03-15 | 云南财经大学 | Zero-knowledge proof verifiable certificate digital identity management system and method based on block chain intelligent contracts |
CN114186248B (en) * | 2021-11-13 | 2022-08-05 | 云南财经大学 | Zero-knowledge proof verifiable certificate digital identity management system and method based on block chain intelligent contracts |
CN114119046A (en) * | 2021-11-25 | 2022-03-01 | 支付宝(杭州)信息技术有限公司 | Commodity design authorization use method and device based on block chain system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111159694A (en) | Private use authorization method of block chain digital assets based on zero knowledge proof | |
US20200334675A1 (en) | System and method of generating and validating encapsulated cryptographic tokens based on multiple digital signatures | |
US11366910B2 (en) | Method and system for secure applications using blockchain | |
US6385725B1 (en) | System and method for providing commitment security among users in a computer network | |
US10410213B2 (en) | Encapsulated security tokens for electronic transactions | |
EP3782346A1 (en) | System for verification of pseudonymous credentials for digital identities with managed access to personal data on trust networks | |
Kou | Payment technologies for E-commerce | |
US20220407702A1 (en) | Systems and Methods for Token Creation and Management | |
EP3834156A1 (en) | Systems and methods for blockchain addresses and owner verification | |
CN110600096B (en) | Medical data management method and system and computer storage medium | |
JP2005509366A (en) | Method and system for data supply, method and system for transfer of ownership of electronic property, and method and system for electronic voting | |
US11238170B2 (en) | Delegation using pairwise decentralized identifier | |
US11777728B2 (en) | Systems and methods for blockchain transactions with offer and acceptance | |
US20230004970A1 (en) | Distributed Ledgers with Ledger Entries Containing Redactable Payloads | |
US20230086191A1 (en) | Systems and Methods for Token Content Unlocking, Biometric Authentication using Privacy-Protecting Tokens, Ownership-Based Limitations of Content Access, Policy-Based Time Capsule Technology, and Content Lock Mechanisms | |
US20190378130A1 (en) | Encapsulated security tokens for electronic transactions | |
Wang et al. | Access Control Management in Cloud Environments | |
Chen et al. | Toward achieving anonymous nft trading | |
CN117426073A (en) | Trusted chain of custody for verifiable credentials | |
CN114785511A (en) | Certificate generation method and device, electronic device and storage medium | |
KR100821086B1 (en) | Networked Services Licensing System and Method | |
WO2017219880A1 (en) | Right file management method | |
Ibor et al. | A conceptual framework for augmenting the security of digitized academic records in Nigerian tertiary institutions using blockchain technology | |
Brands | Non Intrusive Identity management | |
Chen et al. | A Blockchain-Based Anti-Counterfeit and Traceable NBA Digital Trading Card Management System. Symmetry 2022, 14, 1827 |
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 |