CN112132577B - 一种基于区块链的多重监管的交易处理方法及装置 - Google Patents
一种基于区块链的多重监管的交易处理方法及装置 Download PDFInfo
- Publication number
- CN112132577B CN112132577B CN202010974501.5A CN202010974501A CN112132577B CN 112132577 B CN112132577 B CN 112132577B CN 202010974501 A CN202010974501 A CN 202010974501A CN 112132577 B CN112132577 B CN 112132577B
- Authority
- CN
- China
- Prior art keywords
- transaction
- public key
- commitment
- fund
- ring signature
- 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.)
- Active
Links
Images
Classifications
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明提供一种基于区块链的多重监管的交易处理方法、交易追踪方法及装置,所述方法包括:获得第一交易资金承诺;建立交易资金承诺集,并建立第一公钥集;获得第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并获得第一交易标签;获得第二交易资金承诺,并获得交易资金对应的多重监管可审计范围证明结果;获得第二公钥集;获得第一追踪密钥集,并获得第二交易标签;获得第一环签名公钥集,并获得第二环签名公钥集;对第一环签名公钥集和第二环签名公钥集进行保持位置的双环签名;生成交易账单并发布到区块链上。所述装置用于执行上述方法。本发明实施例提供的基于区块链的多重监管的交易处理方法、交易追踪方法及装置,提高交易的安全性。
Description
技术领域
本发明涉及区块链技术领域,具体涉及一种基于区块链的多重监管的交易处理方法、交易追踪方法及装置。
背景技术
区块链技术,由于具有去中心化和公开透明的特点,在已在众多的领域中广泛的进行应用。
现有技术中,实现隐私保护区块链主要以门罗币、零币等为代表,但都不具备监管功能。要实现对区块链的交易的多重监管,一种方式是为每个监管者生成交易账单,提供给每个监管方,每个监管者分别对交易账单进行审计,这种方式费时费力,需要为每个监管者生成交易账单存储压力大。另一种方式是,多个监管者之间进行通信,协作对交易账单进行审计,但是存在多个监管方互不信任的情况,此外多个监管方进行通信协作,需要额外的通信以及计算,效率低。
发明内容
针对现有技术中的问题,本发明实施例提供一种基于区块链的多重监管的交易处理方法、交易追踪方法及装置,能够至少部分地解决现有技术中存在的问题。
一方面,本发明提出一种基于区块链的多重监管的交易处理方法,包括:
根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;
根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;其中,n为大于等于2的正整数;
根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;
根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;
根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;
根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;
根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集、以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;
对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;
根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上。
第二方面,本发明还提供一种基于区块链的多重监管的交易处理方法,包括:
从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;
若判断获知所述第一交易标签未在区块链的其他交易账单中出现过,则对所述交易账单进行合法性验证;
若判断获知所述交易账单通过合法性验证,则将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
第三方面,本发明提供一种基于区块链的多重监管的交易追踪方法,包括:
从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;
根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;
若判断获知所述待匹配公钥与第二环签名公钥集中的第二环签名公钥匹配,则获得所述第一交易资金承诺在所述交易资金承诺集中的位置;其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;
根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
第四方面,本发明提供一种基于区块链的多重监管的交易处理装置,包括:
第一获得单元,用于根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;
建立单元,用于根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;其中,n为大于等于2的正整数;
第二获得单元,用于根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;
第三获得单元,用于根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;
第四获得单元,用于根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;
第五获得单元,用于根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;
第六获得单元,用于根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;
签名单元,用于对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;
发布单元,用于根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上。
第五方面,本发明提供一种基于区块链的多重监管的交易处理装置,包括:
第一获取单元,用于从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;
判断单元,用于在判断获知所述第一交易标签未在区块链的其他交易账单中出现过之后,对所述交易账单进行合法性验证;
上链单元,用于在判断获知所述交易账单通过合法性验证之后,将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
第六方面,本发明提供一种基于区块链的多重监管的交易追踪装置,包括:
第二获取单元,用于从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;
计算单元,用于根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;
第七获得单元,用于在判断获知所述待匹配公钥与第二环签名公钥集中的第二环签名公钥匹配之后,获得所述第一交易资金承诺在所述交易资金承诺集中的位置;其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;
第八获得单元,用于根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
第七方面,本发明提供一种电子设备,包括第一存储器、第一处理器及存储在所述第一存储器上并可在第一处理器上运行的第一计算机程序,所述第一处理器执行所述第一计算机程序时实现如下基于区块链的多重监管的交易处理方法:
根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;
根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;其中,n为大于等于2的正整数;
根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;
根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;
根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;
根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;
根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集、以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;
对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;
根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上。或者
从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;
若判断获知所述第一交易标签未在区块链的其他交易账单中出现过,则对所述交易账单进行合法性验证;
若判断获知所述交易账单通过合法性验证,则将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
第八方面,本发明提供一种计算机可读存储介质,其上存储有第一计算机程序,所述第一计算机程序被第一处理器执行时实现如下基于区块链的多重监管的交易处理方法:
根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;
根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;其中,n为大于等于2的正整数;
根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;
根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;
根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;
根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;
根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集、以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;
对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;
根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上。或者
从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;
若判断获知所述第一交易标签未在区块链的其他交易账单中出现过,则对所述交易账单进行合法性验证;
若判断获知所述交易账单通过合法性验证,则将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
第九方面,本发明还提供一种电子设备,包括第二存储器、第二处理器及存储在所述第二存储器上并可在第二处理器上运行的第二计算机程序,所述第二处理器执行所述第二计算机程序时实现如下基于区块链的多重监管的交易追踪方法:
从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;
根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;
若判断获知所述待匹配公钥与第二环签名公钥集中的第二环签名公钥匹配,则获得所述第一交易资金承诺在所述交易资金承诺集中的位置;其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;
根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
第十方面,本发明还提供一种计算机可读存储介质,其上存储有第二计算机程序,所述第二计算机程序被第二处理器执行时实现如下基于区块链的多重监管的交易追踪方法:
从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;
根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;
若判断获知所述待匹配公钥与第二环签名公钥集中的第二环签名公钥匹配,则获得所述交易资金承诺在所述交易资金承诺集中的位置;其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;
根据所述交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
本发明实施例提供的基于区块链的多重监管的交易处理方法、交易追踪方法及装置,根据交易发起者所持交易资金和交易资金对应的第一随机数获得第一交易资金承诺;根据第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;根据第一公钥集中的每个公钥以及随机哈希算法,获得第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据交易资金的公钥对应的随机哈希椭圆曲线点以及交易资金的私钥,获得第一交易标签;根据交易资金和交易资金对应的第二随机数获得第二交易资金承诺,并根据交易资金、第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得交易资金对应的多重监管可审计范围证明结果;根据第一公钥集、交易资金承诺集以及第二交易资金承诺,获得第二公钥集;根据交易资金的私钥、第一随机数、第二随机数以及至少两个监管公钥,获得第一追踪密钥集,并根据交易发起者所持交易资金的私钥、第一随机数和第二随机数,获得第二交易标签;根据第三随机数、第一交易标签以及第一公钥集,获得第一环签名公钥集,并根据第四随机数、第二交易标签、第二公钥集以及第一随机数集,获得第二环签名公钥集;对第一环签名公钥集和第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;根据第一公钥集、第二公钥集、交易资金承诺集、第一交易标签、第二交易标签、第二交易资金承诺、第一追踪密钥集、交易资金对应的多重监管可审计范围证明结果和双环签名结果,生成交易账单并将交易账单发布到区块链上,通过多重监管可审计范围证明结果保护交易资金隐私,提高交易的安全性以及监管效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明第一实施例提供的基于区块链的多重监管的交易处理系统的结构示意图。
图2是本发明第二实施例提供的基于区块链的多重监管的交易处理方法的流程示意图。
图3是本发明第三实施例提供的基于区块链的多重监管的交易处理方法的流程示意图。
图4是本发明第四实施例提供的基于区块链的多重监管的交易处理方法的流程示意图。
图5是本发明第五实施例提供的基于区块链的多重监管的交易处理方法的流程示意图。
图6是本发明第六实施例提供的基于区块链的多重监管的交易追踪方法的流程示意图。
图7是本发明第七实施例提供的基于区块链的多重监管的交易追踪方法的流程示意图。
图8是本发明第八实施例提供的基于区块链的多重监管的交易处理装置的结构示意图。
图9是本发明第九实施例提供的基于区块链的多重监管的交易处理装置的结构示意图。
图10是本发明第十实施例提供的基于区块链的多重监管的交易追踪装置的结构示意图。
图11是本发明第十一实施例提供的电子设备的实体结构示意图。
图12是本发明第十二实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
为了便于理解本申请提供的技术方案,下面先对本申请技术方案的研究背景和相关概念进行解释。
在国际贸易多方监管、多中心系统、多头管理等机制下,需要相互无关(甚至相互不信任)的多个监管者对链上的隐私数据进行追踪监管,来保障各自的安全的利益。一个可行的方法是对于m个监管者,使用各个监管者公布的陷门公共参数运行m次可审计可链接环签名和可审计区间证明,但是这种方式费时费力,不但计算量极大,存储压力也非常大。因此,本发明实施例提出基于区块链的多重监管的交易处理方法以及追踪方法,研究出具备多重监管功能,保障在一次可审计范围证明中,多个监管者都可以追踪到隐私数据的值,不需要多个监管者额外的通信或者计算,并且可以抵抗恶意监管者的潜在攻击的高效可审计范围证明方案,其中,抵抗恶意监管者是指能够抵抗全部监管者一起合谋时对系统的攻击(或者攻击者掌握所有追踪陷门时的攻击),例如无限铸币攻击或者逃离监管攻击等。同时,本申请的技术方案满足效率要求,即实现多重监管,要比运行m次原有可审计可链接环签名和可审计区间证明更高效,存储空间更小。
UTXO(Unspent transaction output):当前区块链上已确认但未花费的数字货币,即未花费的一笔钱。双收(Double receiving):区块链上的不忠实用户对一笔钱交易进行两次收款。环签名(Ring signature):一种特殊的数字签名方案,签名者使用自己和其用户的公钥生成一个公钥集合,然后用自己的私钥进行签名,验证者在验证签名的合法性后,只能知道该签名来自公钥集合的某个用户,但无法得知该用户的具体身份,实现了签名者的身份隐私保护。
图1是本发明第一实施例提供的基于区块链的多重监管的交易处理系统的结构示意图,如图1所示,本发明实施例提供的基于区块链的多重监管的交易处理系统,包括交易发起节点1、交易接收节点2、验证节点3和多个监管节点4,其中:
交易发起节点1、交易接收节点2、验证节点3和每个监管节点4相互之间通信连接,即交易发起节点1分别与交易接收节点2、验证节点3和每个监管节点4通信连接,交易接收节点2分别与验证节点3和每个监管节点4通信连接,验证节点3和每个监管节点4通信连接。
交易发起节点1生成交易账单并发布到区块链上。验证节点3对发布到区块链上的交易账单进行验证,并在交易账单通过验证之后将交易账单上链。监管节点4对交易账单进行追踪审计,能够还原交易账户信息和交易资金。交易接收节点2可以获取已经上链的交易账单,并进行处理。
其中,对于所述基于区块链的多重监管的交易处理系统中的一个节点,既可以作为交易发起节点1和交易接收节点2,也可以作为验证节点3,根据实际需要进行设置,本发明实施例不做限定。在所述基于区块链的多重监管的交易处理系统中,存在多个不同的监管节点4,对所述交易账单进行多重审计,监管节点4的数量根据实际需要进行设置,本发明实施例不做限定。
需要说明的是,在所述基于区块链的多重监管的交易处理系统中会公开公共参数其中,为设定的椭圆曲线群,g为公共生成元,设定系统中有m个监管者,各自都能独立监管链上的隐私数据,记每个监管者为Ri,i=1,…,m,每个监管者Ri随机选择作为监管者Ri的监管私钥,计算h1,…,hm为监管公钥,随机选取陷门公共参数使得任何人无法获得g与h的离散对数关系,可选的使用随机哈希生成h,即使用Hash-to-Point计算h=Hp(g,h1,…,hm),Hp是预设的,Hp是能生成随机椭圆曲线群元素的哈希函数。表示模q非零整数环。
图2是本发明第二实施例提供的基于区块链的多重监管的交易处理方法的流程示意图,如图2所示,本发明实施例提供的基于区块链的多重监管的交易处理方法,包括:
S201、根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;
具体地,交易发起者可以通过交易发起节点将交易发起者所持交易资金转给区块链上的交易接收者。所述交易发起节点可以获取所述交易资金对应的随机数,然后根据所述交易资金和所述交易资金对应的随机数,获得第一交易资金承诺。其中,所述交易资金对应的随机数是随机获得的。
例如,交易发起者所持交易资金可以为一个UTXO,交易发起者要通过所述基于区块链的多重监管的交易处理系统将所持交易资金a转给链上的交易者。交易发起节点Ⅰ可以根据交易资金a和交易资金a对应的第一随机数s,计算第一交易资金承诺c=gsha,
S202、根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;
具体地,所述交易发起节点在获得所述第一交易资金承诺之后,可以从区块链上随机选择n-1个其他资金承诺,与所述第一交易资金承诺构成交易资金承诺集,所述第一交易资金承诺在所述交易资金承诺中的位置随机设置。然后所述交易发起节点获取n-1个其他资金的公钥,与所述交易资金的公钥一起构成第一公钥集,所述第一公钥集包括n个公钥。其中,所述其他资金承诺与本次交易无关,用于提高交易资金承诺的隐私性。n为大于等于2的正整数,比如取100、1000,根据实际需要进行设置,本发明实施例不做限定。可理解的是,n的值越大,交易资金承诺集所起到的隐私保护性越强。
例如,将交易资金承诺集表示为C={c1,…,cn},第一交易资金承诺c为交易资金承诺集C中的一个交易资金承诺,为了方便后续说明,设定cγ=c,γ为1,…,n中的一个具体的数值。对于交易资金承诺集C的第j个资金承诺,可以表示为
例如,将所述第一公钥集表示为LPK={PK1,…,PKn},其中,其中,PKj为第一公钥集LPK的第j个公钥,j=1,…,n。交易资金a的公钥与PK1,…,PKn中的一个公钥相等,并与交易资金承诺cγ对应,为了方便后续说明,将交易资金a的公钥表示为PKγ,PKγ为第一公钥集LPK中的一个公钥,γ为1,…,n中的一个具体的数值。
S203、根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥合集集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;
具体地,所述交易发起节点在获得所述第一公钥集之后,可以根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,然后根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签。
例如,交易发起节点Ⅰ可以根据公式gj=Hp(PKj),计算获得gj,其中,PKj为第一公钥集LPK的第j个公钥,gj为PKj对应的随机哈希椭圆曲线点,j=1,…,n。交易发起节点Ⅰ计算获得的n个随机哈希椭圆曲线点中,有一个是交易资金a的公钥PKγ对应的随机哈希椭圆曲线点,表示为gγ。交易发起节点Ⅰ可以根据PKγ对应的随机哈希椭圆曲线点gγ和交易资金a的私钥x,计算第一交易标签I,
S204、根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;
具体地,所述交易发起节点可以获取所述交易资金对应的第二随机数,然后根据所述交易资金和所述交易资金对应的第二随机数,获得第二交易资金承诺。所述交易发起节点根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果。其中,所述交易资金对应的多重监管可审计范围证明结果,能够有效保护交易资金隐私,并且能够支持多重监管审计。
例如,交易发起节点Ⅰ可以根据交易资金a、所述第一交易资金承诺c、至少两个监管公钥以及多重监管可审计范围证明规则,获得交易资金a对应的多重监管可审计范围证明结果π(d)。通过π(d),在不透露交易资金a的前提下能够证明a∈[0,2q-1],并且每个监管节点能够独立追踪审计交易资金a。
S205、根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;
具体地,所述交易发起节点在获得所述第二交易资金承诺之后,可以根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集。
例如,交易发起节点Ⅰ根据公式PK′j=PKj·cj·d-1,计算交易资金承诺集C中交易资金承诺cj对应的公钥PK′j,PKj为第一公钥集LPK中交易资金承诺cj对应的公钥,d为所述第二交易资金承诺,j=1,…,n。交易发起节点Ⅰ可以获得n个交易资金承诺对应的公钥,构成第二公钥集L′PK,L′PK={PK′1,…,PK′n}={PK1·c1·d-1,…,PKn·cn·d-1}。
S206、根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;
具体地,所述交易发起节点可以获取所述交易资金的私钥,然后根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集。并且,所述交易发起节点根据所述交易资金的私钥、所述第一随机数和所述第二随机数,可以获得第二交易标签。
例如,交易发起节点Ⅰ获取交易资金a的私钥为x,根据公式计算获得第i个监管公钥hi对应的追踪密钥TKi,s为交易资金a对应的第一随机数,t为交易资金a对应的第二随机数,hi为第i个监管者的监管公钥,i=1,…,m。交易发起节点Ⅰ可以获得m个监管公钥对应的追踪密钥,构成第一追踪密钥集LTK, 交易发起节点Ⅰ可以根据公式I′=hx+s-t,计算获得第二交易标签I′,h为陷门公共参数。
S207、根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;
具体地,所述交易发起节点可以获取第三随机数,然后根据所述第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集。并且,所述交易发起节点可以根据第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集,获得第二环签名公钥集。其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的。
例如,交易发起节点Ⅰ根据公式计算获得第一公钥集LPK的第j个公钥PKj对应的第一环签名公钥Lj,I为所述第一交易标签,em+1为所述第三随机数,j=1,…,n。交易发起节点Ⅰ可以计算获得n个第一环签名公钥,n个第一环签名公钥构成第一环签名公钥集LRPK,
例如,交易发起节点Ⅰ根据公式计算获得第二公钥集L′PK的第j个公钥PL′j对应的第二环签名公钥L′j,I′为第二交易标签,em+2为第四随机数,TKi为第一追踪密钥集LTK的第i个追踪密钥,ei为第一随机数集中的第i个随机数,j=1,…,n,i=1,…,m。交易发起节点Ⅰ可以计算获得n个第二环签名公钥,n个第二环签名公钥构成第二环签名公钥集L′RPK,
S208、对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;
具体地,所述交易发起节点在获得所述第一环签名公钥集和所述第二环签名公钥集之后,对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,可以获得双环签名结果,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集。其中,所述双环签名所采用的签名算法根据实际需要进行设置,本发明实施例不做限定。
例如,交易发起节点Ⅰ执行保持位置的双环签名对LRPK和L′RPK进行签名,得到双环签名结果τ=Rsign(LRPK,L′RPK,M,I,I′,LTK),其中,在对第一环签名公钥集LRPK签名的过程中,每个位置j=1,…,n可以使用作为生成元进行签名,在对第二环签名公钥集L′RPK签名的过程中,全部位置都使用作为生成元进行签名。M为交易的其他相关信息,包括但不限于交易资金承诺集、第一公钥集、第二公钥集、第一追踪密钥集等信息,根据实际需要进行设置,本发明实施例不做限定。
S209、根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上。
具体地,所述交易发起节点在获得所述双环签名结果之后,根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单,然后将所述交易账单发布到区块链上。验证节点会获取到所述交易发起节点发布的交易账单,然后对所述交易账单进行验证,所述交易账单通过验证之后,就会上链,能够被交易接收节点所获取。
本发明实施例提供的基于区块链的多重监管的交易处理方法,根据交易发起者所持交易资金和交易资金对应的第一随机数获得第一交易资金承诺;根据第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;根据第一公钥集中的每个公钥以及随机哈希算法,获得第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据交易资金的公钥对应的随机哈希椭圆曲线点以及交易资金的私钥,获得第一交易标签;根据交易资金和交易资金对应的第二随机数获得第二交易资金承诺,并根据交易资金、第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得交易资金对应的多重监管可审计范围证明结果;根据第一公钥集、交易资金承诺集以及第二交易资金承诺,获得第二公钥集;根据交易资金的私钥、第一随机数、第二随机数以及至少两个监管公钥,获得第一追踪密钥集,并根据交易发起者所持交易资金的私钥、第一随机数和第二随机数,获得第二交易标签;根据第三随机数、第一交易标签以及第一公钥集,获得第一环签名公钥集,并根据第四随机数、第二交易标签、第二公钥集以及第一随机数集,获得第二环签名公钥集;对第一环签名公钥集和第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;根据第一公钥集、第二公钥集、交易资金承诺集、第一交易标签、第二交易标签、第二交易资金承诺、第一追踪密钥集、交易资金对应的多重监管可审计范围证明结果和双环签名结果,生成交易账单并将交易账单发布到区块链上,通过多重监管可审计范围证明结果保护交易资金隐私,提高交易的安全性,同时通过双环签名防止双花并实现多重监管,并且使用随机化交易标签生成与嵌入技术,使得方案能够有效抵抗恶意监管者和多监管者合谋给系统带来的潜在威胁,进一步提高了交易的安全性。
图3是本发明第三实施例提供的基于区块链的多重监管的交易处理方法的流程示意图,如图3所示,在上述各实施例的基础上,进一步地,对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果包括:
S2081、根据所述第一公钥集每个公钥对应的随机哈希椭圆曲线点、所述第三随机数以及公共生成元,获得所述第一环签名公钥集每个第一环签名公钥位置对应的生成元;
具体地,在进行双环签名时需要使用生成元,对于所述第一环签名公钥集,所述交易发起节点可以根据所述第一公钥集每个第一环签名公钥对应的随机哈希椭圆曲线点、所述第三随机数以及公共生成元,获得所述第一环签名公钥集每个第一环签名公钥位置对应的生成元。
例如,交易发起节点Ⅰ可以根据公式计算获得第一环签名公钥集LRPK的第j个第一环签名公钥位置对应的生成元Tj,其中,g为公共生成元,gj为第一公钥集每个公钥对应的随机哈希椭圆曲线点,gj=Hp(PKj),em+1为所述第三随机数,j=1,…,n。
S2082、根据公共生成元、公共随机哈希椭圆曲线点、各个监管者的监管公钥以及所述第一随机数集,获得所述第二环签名公钥集的生成元;
具体地,对于所述第二环签名公钥集,所述交易发起节点可以根据公共生成元、公共随机哈希椭圆曲线点、各个监管者的监管公钥以及所述第一随机数集,获得所述第二环签名公钥集的生成元。
例如,交易发起节点Ⅰ可以根据公式计算获得第二环签名公钥集L′RPk的生成元P,其中,g为公共生成元,h为陷门公共参数,em+2为所述第四随机数,hi为第i个监管者的监管公钥,ei为第一随机数集中的第i个随机数,i=1,…,m。
S2083、通过所述第一环签名公钥集每个第一环签名公钥位置对应的生成元对所述第一环签名公钥集进行签名,并通过所述第二环签名公钥集的生成元对所述第二环签名公钥集进行签名。
具体地,所述交易发起节点在获得所述第一环签名公钥集每个第一环签名公钥位置对应的生成元和所述第二环签名公钥集的生成元之后,在对所述第一环签名公钥集签名的过程中,每个位置使用每个第一环签名公钥位置对应的生成元进行签名,在对所述第二环签名公钥集签名的过程中,全部位置使用所述第二环签名公钥集的生成元进行签名。可理解的是,由于每个第一环签名公钥对应的生成元不同,对所述第一环签名公钥集进行签名,使用的是可变生成元。
在双环签名中,第一环签名公钥集起到防止双花的可链接作用,第二环签名公钥起到多重监管审计的可追踪功能,是功能分离的双环签名,即一方面实现防止双花的可链接性质,另一方面实现多重监管审计功能。
图4是本发明第四实施例提供的基于区块链的多重监管的交易处理方法的流程示意图,如图4所示,在上述各实施例的基础上,进一步地,所述根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果包括:
S2041、获取T个随机数并对所述交易资金进行比特展开,获得T个比特展开项值;
具体地,所述交易发起节点获取T个随机数,同时将所述交易资金进行比特展开,获得T个比特展开项值。
例如,T个随机数可以表示为v0,…,vT-1,v0,…,对于交易资金a进行比特展开,可以获得a=a0+…+2iak+…+2q-1aT-1,ak=0,1,k=0,…,T-1,a∈[0,2T-1],a0,…,ak,…,aT-1为T个比特展开项值,T为正整数,根据实际需要进行设置,本发明实施例不做限定。
S2042、根据T个随机数以及T个比特展开项值,获得承诺集;
具体地,所述交易发起节点在获得T个随机数以及T个比特展开项值之后,可以根据每个随机数以及每个比特展开项值,获得对应的子承诺集,可以获得T个子承诺集,T个子承诺集构成承诺集。
例如,交易发起节点Ⅰ可以计算vk为T个随机数中的第k个随机数,ak为T个比特展开项值中的第k个比特展开项值,k=0,…,T-1,fk和f′k构成一个子承诺集Fk,记为Fk=(fk,f′k)。所述交易发起节点可以计算出T个子承诺集F0,…,Fq-1,T个子承诺集即可构成承诺集F,F={F0,…,FT-1}。
S2043、根据T个随机数以及各个监管公钥,获得第二追踪密钥集,并根据陷门公共参数以及T个随机数,获得数值标签集;
具体地,所述交易发起节点可以根据T个随机数中的每个随机数以及各个监管公钥,计算获得每个随机数对应的第二追踪密钥,可以获得T个第二追踪密钥,T个第二追踪密钥构成第二追踪密钥集。所述交易发起节点根据T个随机数中的每个随机数以及陷门公共参数可以计算获得每个随机数对应的子数值标签,可以获得T个子数值标签,T个子数值标签签构成数值标签集。
例如,交易发起节点Ⅰ根据公式计算T个随机数中第k个随机数对应的第i个监管者的第二追踪密钥TKk,i,vk表示T个随机数中的第k个随机数,hi表示m个监管者中的第i个监管者的监管公钥,k=0,…,q-1,i=1,…,m。交易发起节点Ⅰ可以计算出各个监管者对应的第二追踪密钥,构成第二追踪密钥集,记为L′TK={TKk,i}k=0,…,T-1,i=1,…,m。
例如,交易发起节点Ⅰ根据公式计算T个随机数中第k个随机数对应的子数值标签Bk,vk表示T个随机数中的第k个随机数,h表示陷门公共参数。交易发起节点Ⅰ可以计算出T个子数值标签,构成数值标签集B,记为B={B0,…,Bn-1}。
S2044、根据所述承诺集、所述数值标签集、第五随机数、第二随机数集以及第二追踪密钥集,获得公钥组集合;
具体地,所述交易发起节点可以获取第五随机数和第二随机数集,然后根据所述承诺集、所述数值标签集、第五随机数、第二随机数集以及第二追踪密钥集,计算所述承诺集中每个子承诺集对应的子公钥组,可以获得T个子公钥组,T个子公钥组构成公钥组集合。
例如,交易发起节点Ⅰ根据公式计算获得承诺集中第k个子承诺集的一个金额承诺fk对应的子公钥根据公式 计算获得承诺集中第k个子承诺集的另一个金额承诺f′k对应的子公钥和构成子承诺集Fk=(fk,f′k)对应的子公钥组 可以获得k个子公钥组构成公钥组集合QPK,其中,TKk,i为第k个随机数对应的第i个监管者的第二追踪密钥,Bk为第k个随机数对应的子数值标签,wm+1为第五随机数,w1,…,wm为所述第二随机数集。
其中,述第二随机数集和所述第五随机数,可以根据公式wu=H(F;L′TK;B;u)计算获得,F表示承诺集,B表示数值标签集,L′TK表示第二追踪密钥集,u=1,…,m+1,wm+1表示第五随机数,w1,…,wm构成所述第二随机数集,H()表示哈希函数。
S2045、运行多环签名,获得多环签名结果;其中,所述多环签名结果包括所述公钥组集合、T个随机数、所述、T个随机数的中间值、所述第二追踪密钥集和所述数值标签集;
具体地,所述交易发起节点在获得所述公钥组集合之后,可以运行多环签名,获得多环签名结果。所述多环签名结果包括所述公钥组集合、T个随机数、所述第一交易资金承诺、T个随机数的中间值、所述第二追踪密钥集合和所述数值标签集。其中,T个随机数的中间值β=s-v0-…-vT-1,v0,…,vT-1为T个随机数,s为所述交易资金对应的随机数。其中,多环签名所采用的签名算法根据实际需要进行设置,本发明实施例不做限定。
例如,多环签名结果σ=RSIG(QpK,v0,…,vT-1,c,β,L′TK,B),c为第一交易资金承诺,c=gsha,a为交易资金。其中,在进行多环签名过程中,可以使用生成元进行多环签名。可以选择Borromean多环签名,进行多环签名。
S2046、根据所述第一交易资金承诺、所述T个随机数的中间值、所述承诺集、所述第二追踪密钥集、所述数值标签集以及所述多环签名结果,生成所述交易资金对应的多重监管可审计范围证明结果。
具体地,所述交易发起节点在获得所述多环签名之后,可以根据所述第一交易资金承诺、所述T个随机数的中间值、所述承诺集、所述第二追踪密钥集、所述数值标签集以及所述多环签名结果,生成所述交易资金对应的多重监管可审计范围证明结果。
例如,所述交易资金的多重监管可审计范围证明结果可以表示为π(d),π(d)=(c,β,F,L′TK,B,σ)。
在上述各实施例的基础上,进一步地,获得所述第三随机数、所述第四随机数和所述随机数据集的公式如下:
el=H(LPK,L′PK,I,I′,LTK,l)
其中,LPK表示所述第一公钥集,L′PK表示所述第二公钥集,I表示所述第一交易标签,I′表示所述第二交易标签,LTK表示所述第一追踪密钥集,l=1,…,m+2,em+1表示所述第三随机数,em+2表示所述第四随机数,e1,…,em构成所述第一随机数集,m表示监管者的数量,H()表示哈希函数。
具体地,所述交易发起节点可以根据公式el=H(LPK,L′PK,I,I′,LTK,l),生成所述第一随机数集中的各个随机数e1,…,em,以及所述第三随机数em+1和所述第四随机数em+2,LPK表示所述第一公钥集,L′PK表示所述第二公钥集,I表示所述第一交易标签,I′表示所述第二交易标签,LTK表示第一追踪密钥集,l=1,…,m+2,m表示所述监管者的数量,H()表示哈希函数。
图5是本发明第五实施例提供的基于区块链的多重监管的交易处理方法的流程示意图,如图5所示,本发明实施例提供的基于区块链的多重监管的交易处理方法,包括:
S501、从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;
具体地,交易发起节点将交易账单发布到区块链上之后,验证节点可以从区块链上获取交易账单,所述交易账单可以包括第一公钥集、第二公钥集、所述交易资金承诺集、第一交易标签、第二交易标签、第二交易资金承诺、第一追踪密钥集、交易资金对应的多重监管可审计范围证明结果以及双环签名结果。
S502、若判断获知所述第一交易标签未在区块链的其他交易账单中出现过,则对所述交易账单进行合法性验证;
具体地,所述验证节点在获得所述交易账单之后,会判断所述第一交易标签是否在区块链的其他交易账单中出现过,如果所述验证节点在其他交易账单中没有查询到所述第一交易标签,说明所述第一交易标签未在区块链的其他交易账单中出现过,那么对所述交易账单进行合法性验证。
S503、若判断获知所述交易账单通过合法性验证,则将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
具体地,所述验证节点判断所述交易账单是否通过合法性验证,如果通过所述合法性验证,那么将所述交易账单上链,如果没有通过合法性验证,那么拒绝所述交易账单上链。其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
例如,验证节点Ⅱ对交易发起节点Ⅰ发布的交易账单tx包括的交易资金对应的多重监管可审计范围证明结果π(d)的合法性验证过程如下,π(d)=(c,β,F,L′TK,B,σ)。
第一步:验证节点Ⅱ可以从π(d)中获取承诺集F,对于任意一个子承诺集Fk,计算是否成立,如果所有的子承诺集,成立,那么进行下一步验证;否则,交易资金对应的多重监管可审计范围证明结果不能通过合法性检验。其中,k=0,…,T-1。
第二步:验证节点Ⅱ验证gβ·∏fk=c是否正确,所述验证节点从π(d)中获取β,从承诺集F的子承诺集中获取f0,…,fq-1,带入到gβ·∏fk中,计算获得结果c′=gβ·∏fk,比较c′与c,如果c′与c相等,那么进入下一步验证;否则,交易资金对应的多重监管可审计范围证明结果不能通过合法性检验。
第三步:验证节点Ⅱ根据公式wu=H(F;L′TK;B;u),计算所述第二随机数集中的各个随机数w1,…,wm,以及第五随机数wm+1。验证节点Ⅱ点从σ中获取公钥组集合QPK,对于所有k=0,…,q-1,所述验证节点计算 然后遍历公钥组集合QPK,对比与子公钥组如果都相等,那么进行下一步验证。否则,交易资金对应的多重监管可审计范围证明结果不能通过合法性检验。
第四步:多环签名结果的正确性,如果签名是采用的是Borromean多环签名,那么验证Borromean多环签名的正确性,如果多环签名结果通过验证,那么交易资金对应的多重监管可审计范围证明结果不能通过合法性检验。否则,交易资金的合法性证明结果不能通过合法性检验,所述验证节点拒绝将包括π(d)的交易账单上链。其中,在进行多环签名验证的过程中,可以使用生成元进行多环签名验证。
例如,验证节点Ⅱ对交易发起节点Ⅰ发布的交易账单tx包括的双环签名结果的合法性验证过程如下:
第一步:验证节点Ⅱ从交易账单中获取第一公钥集LPK,然后根据公式gj=Hp(PKj)计算获得gj,j=1,…,n。
第二步:验证节点Ⅱ从所述交易账单中获取第一公钥集LPK={PK1,…,PKn},第二公钥集L′PK={PK′1,…,PK′n},第二交易资金承诺d,交易资金承诺集C={c1,…,cn},然后计算PK″j=PKj·cj·d-1,接着遍历第二公钥集L′PK,对比PK″j与PK′j,如果都相等,那么进行下一步验证。否则第二公钥集没有通过合法性验证,所述双环签名结果也不能通过合法性检验。
第三步:验证节点Ⅱ从所述交易账单中获取第一公钥集LPK,第二公钥集L′PK,第一交易标签I,第二交易标签I′,第一追踪密钥集LTK,然后根据公式el=H(LPK,L′PK,I,I′,LTK,l),计算出第一随机数集中的各个随机数e1,…,em,第三随机数em+1和第四随机数em+2,l=1,…,m+2。
第五步:基于第一环签名公钥集和第二环签名公钥集,验证所述交易账单包括的双环签名结果的准确性。其中,在对第一环签名公钥集LRPK进行签名验证的过程中,每个位置j=1,…,n可以使用作为生成元进行签名验证,在对第二环签名公钥集L′RPK进行签名验证的过程中,全部位置都使用作为生成元进行签名。
本发明实施例提供的基于区块链的多重监管的交易处理方法,通过判断第一交易标签是否在区块链的其他收钱账单中出现过,能够防止双收攻击的发生,提高交易的安全性。
在上述各实施例的基础上,进一步地,本发明实施例提供的基于区块链的多重监管的交易处理方法还包括:
若判断获知所述第一交易标签在区块链的其他交易账单中出现过,则确定发生双重支付并拒绝所述交易账单上链。
具体地,所述验证节点在获得交易账单之后,判断所述第一交易标签是否在区块链的其他收钱账单中出现过,如果所述验证节点在其他交易账单中查询到所述第一交易标签,表明所述第一交易标签在区块链的其他收钱账单中出现,发生了双重支付,所述验证节点停止对交易账单的验证并拒绝所述交易账单上链。
图6是本发明第六实施例提供的基于区块链的多重监管的交易追踪方法的流程示意图,如图6所示,本发明实施例提供的基于区块链的多重监管的交易追踪方法,包括:
S601、从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;
具体地,交易账单上链之后,监管节点可以从区块链上获取所述交易账单,所述交易账单可以包括第一公钥集、第二公钥集、交易资金承诺集、第一交易标签、第二交易标签、第二交易资金承诺、第一追踪密钥集、第二追踪密钥集、交易资金对应的多重监管可审计范围证明结果以及双环签名结果。其中,所述双环签名结果可以包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集。
S602、根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;
具体地,所述监管节点可以从所述第二追踪密钥集中获取对应的第二追踪密钥,然后根据本地的监管私钥和对应的第二追踪密钥,计算获得待匹配公钥。其中,所述本地的监管私钥是预设的。
例如,监管节点Ⅲ从第二追踪密钥集L′TK={TKk,i}k=0,…,q-1,i=1,…,m中获得监管者Rθ对应的第二追踪密钥TKk,θ,并获取本地的监管私钥yθ,然后根据公式计算获得监管者Rθ的待匹配公钥θ为1,…,m中一个具体数值,i=1,…,m。
S603、若判断获知所述待匹配公钥与所述第二公钥集中的公钥匹配,则获得所述第一交易资金承诺在所述交易资金承诺集中的位置;
具体地,所述监管节点在获得所述待匹配公钥之后,遍历所述第二公钥集,判断第二公钥集中是否存在与所述待匹配公钥相等的一个公钥,如果存在,那么所述待匹配公钥与所述第二公钥集中的公钥匹配,可以获得所述待匹配公钥在所述第二公钥集中的位置,该位置也是所述第一交易资金承诺在交易资金承诺集中的位置,从而可以根据该位置确定所述第一交易资金承诺。
例如,监管节点Ⅲ获得的待匹配公钥为第二公钥集L′PK={PK′1,…,PK′n}={PK1·c1·d-1,…,PKn·cn·d-1},将待匹配公钥Gθ与第二公钥集L′PK中的每个公钥进行比较,判断是否存在与待匹配公钥Gθ相等的一个公钥PK′j。
S604、根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
具体地,所述监管节点在获得所述第一交易资金承诺在所述交易资金承诺集中的位置之后,可以根据从所述交易资金承诺集中获得所述第一交易资金承诺,然后根据所述第一交易资金承诺以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
其中,每个监管者都可以通过步骤S601、S602、S603和S603实现对交易资金的追踪,因此交易发起者只需要发起一次交易,每个监管者都可以独立追踪审计到交易资金以及第一环签名公钥和第二环签名公钥环签名真实签名公钥的位置,不需要各个监管者之间相互通信或者共同计算,提高监管效率,并且能够抵抗恶意监管者的合谋攻击和恶意攻击。
图7是本发明第七实施例提供的基于区块链的多重监管的交易追踪方法的流程示意图,如图7所示,在上述各实施例的基础上,进一步地,所述根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金包括:
S6041、根据所述第一交易资金承诺在所述交易资金承诺集中的位置,获得所述第一交易资金承诺;
具体地,所述监管节点在获得所述第一交易资金承诺在所述交易资金承诺集中的位置之后,可以根据上述位置从所述交易资金承诺集中获得与上述位置对应的第一交易资金承诺。
例如,监管节点Ⅲ获得第一交易资金承诺在交易资金承诺集C={c1,…,cn}中的位置为γ,那么可以获取第γ个交易资金承诺cγ,cγ为需要追踪的交易资金对应的第一交易资金承诺。
S6042、根据所述本地的监管私钥计算承诺集中每个子承诺集的金额审计中间值;其中,所述交易资金对应的多重监管可审计范围证明结果包括所述承诺集;
具体地,所述监管节点可以根据所述本地的监管私钥计算承诺集中每个子承诺集的子金额审计中间值。其中,所述交易资金对应的多重监管可审计范围证明结果包括所述承诺集。
例如,对于承诺集F={F0,…,FT-1}中的第k个子承诺集Fk,监管节点Ⅲ计算第k个子承诺集的子金额审计中间值其中,yλ为本地的监管私钥,TKk,λ为第k个子承诺集对应本地监管者的第二追踪密钥,λ为1,…,m中的一个具体的数值,k=0,…,T-1。
S6043、根据每个子承诺集以及每个子承诺集的金额审计中间值,确定每个子承诺集对应的比特展开项值;
具体地,所述监管节点在获得每个子承诺集的金额审计中间值,将每个子承诺集的金额审计中间值分别与每个子承诺集包括的两个值进行比较,确定每个子承诺集对应的比特展开项值。
例如,对于子承诺集Fk=(fk,f′k),fk为子承诺集Fk的一个值,f′k为子承诺集Fk的另一个值,监管节点Ⅲ会比较pk和fk,以及pk和f′k,如果pk=fk,那么子承诺集Fk对应的比特展开项值ak=0,如果pk=f′k,那么子承诺集Fk对应的比特展开项值ak=1,对于承诺集F={F0,…,FT-1}中的T个子承诺集,可以计算出各个子承诺集的比特展开项值a0,…,qk,…,aT-1。
S6044、根据各个子承诺集对应的比特展开项值,计算获得所述交易资金。
具体地,所述监管节点在获得各个子承诺集对应的比特展开项值之后,可以根据各个子承诺集对应的比特展开项值计算获得所述交易资金。
例如,金额承诺集F对应的交易资金的比特展开为:a=a0+…+2iak+…+2q-1aq-1,a0,…,ak,…,aT-1为各个子承诺集对应的比特展开项值,a为金额承诺集F对应的交易资金,k=0,…,q-1。监管节点Ⅲ在计算出各个子承诺集的比特展开项值a0,…,ak,…,aT-1之后,将各个比特展开项值带入上述交易资金的比特展开公式中,即可计算获得交易资金a。
本发明实施例提供的基于区块链的多重监管的交易处理方法以及追踪方法,使用保持位置的双环签名,并且在第一环签名公钥集中的每个位置,签名和验签所使用的的生成元都不相同,在第二环签名公钥集中的每个位置使用固定生成元进行签名和验签,实现了功能分离的双环签名,一方面实现防止双花的可链接性质,另一方面实现多重监管审计功能;使用多重监管可审计范围证明技术,有效保护链上交易金额隐私,并且支持多重监管审计;使用随机化交易标签生成与嵌入技术,使得方案能够有效抵抗恶意监管者和多监管者合谋给系统带来的潜在威胁(双花、抵赖、逃离监管、发布虚假交易等)。
图8是本发明第八实施例提供的基于区块链的多重监管的交易处理装置的结构示意图,如图8所示,本发明实施例提供的基于区块链的多重监管的交易处理装置包括第一获得单元801、建立单元802、第二获得单元803、第三获得单元804、第四获得单元805、第五获得单元806、第六获得单元807、签名单元808和发布单元809,其中:
第一获得单元801用于根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;建立单元802用于根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;第二获得单元803用于根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;第三获得单元804用于根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;第四获得单元805用于根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;第五获得单元806用于根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;第六获得单元807用于根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;签名单元808用于对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;发布单元809用于根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上。
具体地,交易发起者可以通过交易发起节点将交易发起者所持交易资金转给区块链上的交易接收者。第一获得单元801可以获取所述交易资金对应的随机数,然后根据所述交易资金和所述交易资金对应的随机数,获得第一交易资金承诺。其中,所述交易资金对应的随机数是随机获得的。
在获得所述第一交易资金承诺之后,建立单元802可以从区块链上随机选择n-1个其他资金承诺,与所述第一交易资金承诺构成交易资金承诺集,所述第一交易资金承诺在所述交易资金承诺中的位置随机设置。然后建立单元802获取n-1个其他资金的公钥,与所述交易资金的公钥一起构成第一公钥集,所述第一公钥集包括n个公钥。其中,所述其他资金承诺与本次交易无关,用于提高交易资金承诺的隐私性。n为大于等于2的正整数,比如取100、1000,根据实际需要进行设置,本发明实施例不做限定。可理解的是,n的值越大,交易资金承诺集所起到的隐私保护性越强。
在获得所述第一公钥集之后,第二获得单元803可以根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,然后根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签。
第三获得单元804可以获取所述交易资金对应的第二随机数,然后根据所述交易资金和所述交易资金对应的第二随机数,获得第二交易资金承诺。第三获得单元804根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果。其中,所述交易资金对应的多重监管可审计范围证明结果,能够有效保护交易资金隐私,并且能够支持多重监管审计。
在获得所述第二交易资金承诺之后,第四获得单元805可以根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集。
第五获得单元806可以获取所述交易资金的私钥,然后根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集。并且,所述交易发起节点根据所述交易资金的私钥、所述第一随机数和所述第二随机数,可以获得第二交易标签。
第六获得单元807可以获取第三随机数,然后根据所述第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集。并且,所述交易发起节点可以根据第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集,获得第二环签名公钥集。其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的。
在获得所述第一环签名公钥集和所述第二环签名公钥集之后,签名单元808对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,可以获得双环签名结果,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集。其中,所述双环签名所采用的签名算法根据实际需要进行设置,本发明实施例不做限定。
在获得所述双环签名结果之后,发布单元809根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单,然后将所述交易账单发布到区块链上。验证节点会获取到所述交易发起节点发布的交易账单,然后对所述交易账单进行验证,所述交易账单通过验证之后,就会上链,能够被交易接收节点所获取。
本发明实施例提供的基于区块链的多重监管的交易处理装置,通过多重监管可审计范围证明结果保护交易资金隐私,提高交易的安全性,同时通过双环签名防止双花并实现多重监管,并且使用随机化交易标签生成与嵌入技术,使得方案能够有效抵抗恶意监管者和多监管者合谋给系统带来的潜在威胁,进一步提高了交易的安全性。
图9是本发明第九实施例提供的基于区块链的多重监管的交易处理装置的结构示意图,如图9所示,本发明实施例提供的基于区块链的多重监管的交易处理装置,包括第一获取单元901、判断单元902和上链单元903,其中:
第一获取单元901用于从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;判断单元902用于在判断获知所述第一交易标签未在区块链的其他交易账单中出现过之后,对所述交易账单进行合法性验证;上链单元903用于在判断获知所述交易账单通过合法性验证之后,将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
具体地,交易发起节点将交易账单发布到区块链上之后,第一获取单元901可以从区块链上获取交易账单,所述交易账单可以包括第一公钥集、第二公钥集、所述交易资金承诺集、第一交易标签、第二交易标签、第二交易资金承诺、第一追踪密钥集、交易资金对应的多重监管可审计范围证明结果以及双环签名结果。
在获得所述交易账单之后,判断单元902会判断所述第一交易标签是否在区块链的其他交易账单中出现过,如果所述验证节点在其他交易账单中没有查询到所述第一交易标签,说明所述第一交易标签未在区块链的其他交易账单中出现过,那么对所述交易账单进行合法性验证。
上链单元903判断所述交易账单是否通过合法性验证,如果通过所述合法性验证,那么将所述交易账单上链,如果没有通过合法性验证,那么拒绝所述交易账单上链。其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
本发明实施例提供的基于区块链的多重监管的交易处理装置,通过判断第一交易标签是否在区块链的其他收钱账单中出现过,能够防止双收攻击的发生,提高交易的安全性。
图10是本发明第十实施例提供的基于区块链的多重监管的交易追踪装置的结构示意图,如10所示,本发明实施例提供的基于区块链的多重监管的交易追踪装置包括第二获取单元1001、计算单元1002、第七获得单元1003和第八获得单元1004,其中:
第二获取单元1001用于从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;计算单元1002用于根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;第七获得单元1003用于在判断获知所述待匹配公钥与第二环签名公钥集中的第二环签名公钥匹配之后,获得所述第一交易资金承诺在所述交易资金承诺集中的位置;其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;第八获得单元1004用于根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
具体地,交易账单上链之后,第二获取单元1001可以从区块链上获取所述交易账单,所述交易账单可以包括第一公钥集、第二公钥集、交易资金承诺集、第一交易标签、第二交易标签、第二交易资金承诺、第一追踪密钥集、第二追踪密钥集、交易资金对应的多重监管可审计范围证明结果以及双环签名结果。其中,所述双环签名结果可以包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集。
计算单元1002可以从所述第二追踪密钥集中获取对应的第二追踪密钥,然后根据本地的监管私钥和对应的第二追踪密钥,计算获得待匹配公钥。其中,所述本地的监管私钥是预设的。
在获得所述待匹配公钥之后,第七获得单元1003遍历所述第二环签名公钥集,判断是否存在与所述待匹配公钥相等的一个第二环签名公钥,如果存在,那么所述待匹配公钥与所述第二环签名公钥集中的第二环签名公钥匹配,可以获得所述待匹配公钥在所述第二环签名公钥集中的位置,该位置也是所述第一交易资金承诺在交易资金承诺集中的位置,从而可以根据该位置确定所述第一交易资金承诺。其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;所述第四随机数据和所述第一随机数集是预先获得的。
在获得所述第一交易资金承诺在所述交易资金承诺集中的位置之后,第八获得单元1004可以根据从所述交易资金承诺集中获得所述第一交易资金承诺,然后根据所述第一交易资金承诺以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
本发明实施例提供的基于区块链的多重监管的交易追踪装置,能够独立追踪审计到交易资金以及第一环签名公钥和第二环签名公钥环签名真实签名公钥的位置,不需要各个监管者之间相互通信或者共同计算,提高监管效率,并且能够抵抗恶意监管者的合谋攻击和恶意攻击。
本发明实施例提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
图11是本发明第十一实施例提供的电子设备的实体结构示意图,如图11所示,该电子设备可以包括:第一处理器(Processor)1101、第一通信接口(CommunicationsInterface)1102、第一存储器(Memory)1103和第一通信总线1104,其中,第一处理器1101,第一通信接口1102,第一存储器1103通过第一通信总线1104完成相互间的通信。第一处理器1101可以调用第一存储器1103中的逻辑指令,以执行如下方法,例如包括:根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集、以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上。或者
从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;若判断获知所述第一交易标签未在区块链的其他交易账单中出现过,则对所述交易账单进行合法性验证;若判断获知所述交易账单通过合法性验证,则将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行如下方法,例如包括:根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集、以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上。或者
从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;若判断获知所述第一交易标签未在区块链的其他交易账单中出现过,则对所述交易账单进行合法性验证;若判断获知所述交易账单通过合法性验证,则将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储第一计算机指令,所述第一计算机指令使所述计算机执行如下方法,例如包括:根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集、以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上。或者
从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;若判断获知所述第一交易标签未在区块链的其他交易账单中出现过,则对所述交易账单进行合法性验证;若判断获知所述交易账单通过合法性验证,则将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验。
图12是本发明第十二实施例提供的电子设备的实体结构示意图,如图12所示,该电子设备可以包括:第二处理器(Processor)1201、第二通信接口(CommunicationsInterface)1202、第二存储器(Memory)1203和第二通信总线1204,其中,第二处理器1201,第二通信接口1202,第二存储器1203通过第二通信总线1204完成相互间的通信。第二处理器1201可以调用第二存储器1203中的逻辑指令,以执行如下方法,例如包括:从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;若判断获知所述待匹配公钥与第二环签名公钥集中的第二环签名公钥匹配,则获得所述第一交易资金承诺在所述交易资金承诺集中的位置;其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行如下方法,例如包括:从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;若判断获知所述待匹配公钥与第二环签名公钥集中的第二环签名公钥匹配,则获得所述第一交易资金承诺在所述交易资金承诺集中的位置;其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储第二计算机指令,所述第二计算机指令使所述计算机执行如下方法,例如包括:从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;若判断获知所述待匹配公钥与第二环签名公钥集中的第二环签名公钥匹配,则获得所述第一交易资金承诺在所述交易资金承诺集中的位置;其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金。
此外,上述的第一存储器1103和第二存储器1203中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,装置,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (13)
1.一种基于区块链的多重监管的交易处理方法,其特征在于,包括:
根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;
根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;其中,n为大于等于2的正整数;
根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;
根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;
根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;
根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;
根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集、以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;
对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;
根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上;
其中,所述根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果包括:
获取T个随机数并对所述交易资金进行比特展开,获得T个比特展开项值;其中,T个随机数可以表示为v0,…,vT-1,v0,…,对于交易资金a进行比特展开,可以获得a=a0+…+2iak+…+2q-1aT-1,ak=0,1,k=0,…,T-1,a∈[0,2T-1],a0,…,ak,…,aT-1为T个比特展开项值,T为正整数,表示模q非零整数环,为设定的椭圆曲线群;
根据T个随机数以及T个比特展开项值,获得承诺集;
根据T个随机数以及各个监管公钥,获得第二追踪密钥集,并根据陷门公共参数以及T个随机数,获得数值标签集;
根据所述承诺集、所述数值标签集、第五随机数、第二随机数集以及第二追踪密钥集,获得公钥组集合;
运行多环签名,获得多环签名结果;其中,所述多环签名结果包括所述公钥组集合、T个随机数、所述第一交易资金承诺、T个随机数的中间值、所述第二追踪密钥集和所述数值标签集;
根据所述第一交易资金承诺、所述T个随机数的中间值、所述承诺集、所述第二追踪密钥集、所述数值标签集以及所述多环签名结果,生成所述交易资金对应的多重监管可审计范围证明结果。
2.根据权利要求1所述的方法,其特征在于,对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果包括:
根据所述第一公钥集每个公钥对应的随机哈希椭圆曲线点、所述第三随机数以及公共生成元,获得所述第一环签名公钥集每个第一环签名公钥位置对应的生成元;
根据公共生成元、公共随机哈希椭圆曲线点、各个监管者的监管公钥以及所述第一随机数集,获得所述第二环签名公钥集的生成元;
通过所述第一环签名公钥集每个公钥位置对应的生成元对所述第一环签名公钥集进行签名,并通过所述第二环签名公钥集的生成元对所述第二环签名公钥集进行签名。
3.根据权利要求1或2所述的方法,其特征在于,获得所述第三随机数、所述第四随机数和所述第一随机数集的公式如下:
el=H(LPK,L′PK,I,I′,LTK,l)
其中,LPK表示所述第一公钥集,L′PK表示所述第二公钥集,I表示所述第一交易标签,I′表示所述第二交易标签,LTK表示所述第一追踪密钥集,l=1,…,m+2,em+1表示所述第三随机数,em+2表示所述第四随机数,e1,…,em构成所述第一随机数集,m表示监管者的数量,H()表示哈希函数。
4.一种基于区块链的多重监管的交易处理方法,其特征在于,包括:
从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;
若判断获知所述第一交易标签未在区块链的其他交易账单中出现过,则对所述交易账单进行合法性验证;
若判断获知所述交易账单通过合法性验证,则将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验;
其中,所述交易资金对应的多重监管可审计范围证明结果的合法性检验包括:
从所述多重监管可审计范围证明结果中获取承诺集,对所述承诺集中的任意一个子承诺集,计算是否成立,如果所有的子承诺集,成立,那么进行下一步验证,其中,fk和f′k分别为所述承诺集中的第k个子承诺集的元素,h2为监管公钥,k=0,…,T-1,T为正整数;从所述多重监管可审计范围证明结果中获取中间值β和第一交易资金承诺c,从所述承诺集的子承诺集中获取f0,…,fq-1,带入到gβ·Πfk中,计算获得结果c′=gβ·Πfk,比较c′与c,如果c′与c相等,那么进入下一步验证;根据公式wu=H(F;L′TK;B;u),计算第二随机数集中的各个随机数w1,…,wm,以及第五随机数wm+1,从多环签名结果中获取公钥组集合QPK,对于所有k=0,…,q-1,计算然后遍历公钥组集合QPK,对比与子公钥组如果都相等,那么进行下一步验证,其中,F表示所述承诺集,L′TK表示第二追踪密钥集,u=1,…,m+1,m表示监管者的数量,B表示数值标签集,Bk为第k个随机数对应的子数值标签,TKk,j为第k个随机数对应的第j个监管者的第二追踪密钥,为设定的椭圆曲线群,H()表示哈希函数;验证多环签名结果的正确性;其中,所述多重监管可审计范围证明结果包括承诺集、第一交易资金承诺、第二追踪密钥集、数值标签集、中间值和多环签名结果,所述多环签名结果包括公钥组集合;
其中,所述双环签名结果的准确性验证包括:
依次根据第一公钥集、第二交易资金承诺和交易资金承诺集对第二公钥集进行合法性验证;基于第一环签名公钥集和第二环签名公钥集,验证所述交易账单包括的双环签名结果的准确性;其中,所述第一环签名公钥集是根据第三随机数、所述第一交易标签以及所述第一公钥集获得的,所述第二环签名公钥集是根据第四随机数、第二交易标签、所述第二公钥集以及第一随机数集获得的;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;所述交易账单包括第一公钥集、所述第二交易资金承诺、所述交易资金承诺集以及所述第二交易标签。
5.根据权利要求4所述的方法,其特征在于,还包括:
若判断获知所述第一交易标签在区块链的其他交易账单中出现过,则确定发生双重支付并拒绝所述交易账单上链。
6.一种基于区块链的多重监管的交易追踪方法,其特征在于,包括:
从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;
根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;
若判断获知所述待匹配公钥与所述第二公钥集中的公钥匹配,则获得第一交易资金承诺在所述交易资金承诺集中的位置;
根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金;
其中,所述根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金包括:
根据所述第一交易资金承诺在所述交易资金承诺集中的位置,获得所述第一交易资金承诺;
根据所述本地的监管私钥计算承诺集中每个子承诺集的金额审计中间值;其中,所述交易资金对应的多重监管可审计范围证明结果包括所述承诺集;
根据每个子承诺集以及每个子承诺集的金额审计中间值,确定每个子承诺集对应的比特展开项值;
根据各个子承诺集对应的比特展开项值,计算获得所述交易资金。
7.一种基于区块链的多重监管的交易处理装置,其特征在于,包括:
第一获得单元,用于根据交易发起者所持交易资金和所述交易资金对应的第一随机数,获得第一交易资金承诺;
建立单元,用于根据所述第一交易资金承诺以及随机获取的n-1个其他资金承诺,建立交易资金承诺集,并根据所述交易资金的公钥和n-1个其他资金的公钥,建立第一公钥集;其中,所述其他资金承诺与本次交易无关;其中,n为大于等于2的正整数;
第二获得单元,用于根据所述第一公钥集中的每个公钥以及随机哈希算法,获得所述第一公钥集中每个公钥对应的随机哈希椭圆曲线点,并根据所述交易资金的公钥对应的随机哈希椭圆曲线点以及所述交易资金的私钥,获得第一交易标签;
第三获得单元,用于根据所述交易资金和所述交易资金对应的第二随机数获得第二交易资金承诺,并根据所述交易资金、所述第一交易资金承诺、至少两个监管公钥以及多重监管可审计范围证明规则,获得所述交易资金对应的多重监管可审计范围证明结果;
第四获得单元,用于根据所述第一公钥集、所述交易资金承诺集以及所述第二交易资金承诺,获得第二公钥集;
第五获得单元,用于根据所述交易资金的私钥、所述第一随机数、所述第二随机数以及所述至少两个监管公钥,获得第一追踪密钥集,并根据所述交易发起者所持交易资金的私钥、所述第一随机数和所述第二随机数,获得第二交易标签;
第六获得单元,用于根据第三随机数、所述第一交易标签以及所述第一公钥集,获得第一环签名公钥集,并根据第四随机数、所述第二交易标签、所述第二公钥集、所述第一追踪密钥集以及第一随机数集,获得第二环签名公钥集;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;
签名单元,用于对所述第一环签名公钥集和所述第二环签名公钥集进行保持位置的双环签名,获得双环签名结果;其中,所述双环签名结果包括所述第一环签名公钥集、所述第二环签名公钥集、所述第一交易标签、所述第二交易标签和所述第一追踪密钥集;
发布单元,用于根据所述第一公钥集、所述第二公钥集、所述交易资金承诺集、所述第一交易标签、所述第二交易标签、所述第二交易资金承诺、所述第一追踪密钥集、所述交易资金对应的多重监管可审计范围证明结果和所述双环签名结果,生成交易账单并将所述交易账单发布到区块链上;
其中,第三获得单元具体用于获取T个随机数并对所述交易资金进行比特展开,获得T个比特展开项值;其中,T个随机数可以表示为v0,…,vT-1,v0,…,对于交易资金a进行比特展开,可以获得a=a0+…+2iak+…+2q-1aT-1,ak=0,1,k=0,…,T-1,a∈[0,2T-1],a0,…,ak,…,aT-1为T个比特展开项值,T为正整数,表示模q非零整数环,为设定的椭圆曲线群;根据T个随机数以及T个比特展开项值,获得承诺集;根据T个随机数以及各个监管公钥,获得第二追踪密钥集,并根据陷门公共参数以及T个随机数,获得数值标签集;根据所述承诺集、所述数值标签集、第五随机数、第二随机数集以及第二追踪密钥集,获得公钥组集合;运行多环签名,获得多环签名结果;其中,所述多环签名结果包括所述公钥组集合、T个随机数、所述第一交易资金承诺第、T个随机数的中间值、所述第二追踪密钥集和所述数值标签集;根据所述第一交易资金承诺第、所述T个随机数的中间值、所述承诺集、所述第二追踪密钥集、所述数值标签集以及所述多环签名结果,生成所述交易资金对应的多重监管可审计范围证明结果。
8.一种基于区块链的多重监管的交易处理装置,其特征在于,包括:
第一获取单元,用于从区块链上获取交易账单,所述交易账单包括第二公钥集、第一交易标签、交易资金对应的多重监管可审计范围证明结果以及双环签名结果;
判断单元,用于在判断获知所述第一交易标签未在区块链的其他交易账单中出现过之后,对所述交易账单进行合法性验证;
上链单元,用于在判断获知所述交易账单通过合法性验证之后,将所述交易账单上链;其中,所述交易账单的合法性验证包括所述第二公钥集的合法性验证,所述双环签名结果的准确性验证以及所述交易资金对应的多重监管可审计范围证明结果的合法性检验;
其中,所述上链单元具体用于从所述多重监管可审计范围证明结果中获取承诺集,对所述承诺集中的任意一个子承诺集,计算是否成立,如果所有的子承诺集,成立,那么进行下一步验证,其中,fk和f′k分别为所述承诺集中的第k个子承诺集的元素,h2为监管公钥,k=0,…,T-1,T为正整数从所述多重监管可审计范围证明结果中获取中间值β和第一交易资金承诺c,从所述承诺集的子承诺集中获取f0,…,fq-1,带入到gβ·Πfk中,计算获得结果c′=gβ·Πfk,比较c′与c,如果c′与c相等,那么进入下一步验证;根据公式wu=H(F;L′TK;B;u),计算第二随机数集中的各个随机数w1,…,wm,以及第五随机数wm+1,从多环签名结果中获取公钥组集合QPK,对于所有k=0,…,q-1,计算 然后遍历公钥组集合QPK,对比与子公钥组如果都相等,那么进行下一步验证,其中,F表示所述承诺集,L′TK表示第二追踪密钥集,u=1,…,m+1,m表示监管者的数量,B表示数值标签集,Bk为第k个随机数对应的子数值标签,TKk,j为第k个随机数对应的第j个监管者的第二追踪密钥,为设定的椭圆曲线群,H()表示哈希函数;验证多环签名结果的正确性;其中,所述多重监管可审计范围证明结果包括承诺集、第一交易资金承诺、第二追踪密钥集、数值标签集、中间值和多环签名结果,所述多环签名结果包括公钥组集合;
其中,所述上链单元具体用于依次根据第一公钥集、第二交易资金承诺和交易资金承诺集对第二公钥集进行合法性验证;基于第一环签名公钥集和第二环签名公钥集,验证所述交易账单包括的双环签名结果的准确性;其中,所述第一环签名公钥集是根据第三随机数、所述第一交易标签以及所述第一公钥集获得的,第二环签名公钥集是根据第四随机数、第二交易标签、所述第二公钥集以及第一随机数集获得的;其中,所述第三随机数、所述第四随机数和所述第一随机数集是预先获得的;所述交易账单包括第一公钥集、所述第二交易资金承诺、所述交易资金承诺集以及所述第二交易标签。
9.一种基于区块链的多重监管的交易追踪装置,其特征在于,包括:
第二获取单元,用于从区块链上获取交易账单,所述交易账单包括第二公钥集、交易资金承诺集、第二交易标签、第一追踪密钥集、第二追踪密钥集和交易资金对应的多重监管可审计范围证明结果;
计算单元,用于根据本地的监管私钥和对应的第二追踪密钥计算待匹配公钥;其中,所述本地的监管私钥是预设的;
第七获得单元,用于在判断获知所述待匹配公钥与第二环签名公钥集中的第二环签名公钥匹配之后,获得第一交易资金承诺在所述交易资金承诺集中的位置;其中,所述第二环签名公钥集是基于第四随机数、所述第二交易标签、所述第二公钥集以及第一随机数集获得的;
第八获得单元,用于根据所述第一交易资金承诺在所述交易资金承诺集中的位置以及所述交易资金对应的多重监管可审计范围证明结果,获得所述交易资金;
其中,所述第八获得单元具体用于根据所述第一交易资金承诺在所述交易资金承诺集中的位置,获得所述第一交易资金承诺;根据所述本地的监管私钥计算承诺集中每个子承诺集的金额审计中间值;其中,所述交易资金对应的多重监管可审计范围证明结果包括所述承诺集;根据每个子承诺集以及每个子承诺集的金额审计中间值,确定每个子承诺集对应的比特展开项值;根据各个子承诺集对应的比特展开项值,计算获得所述交易资金。
10.一种电子设备,包括第一存储器、第一处理器及存储在所述第一存储器上并可在第一处理器上运行的第一计算机程序,其特征在于,所述第一处理器执行所述第一计算机程序时实现权利要求1至3任一项所述的方法,或者实现权利要求4或5所述的方法。
11.一种计算机可读存储介质,其上存储有第一计算机程序,其特征在于,所述第一计算机程序被第一处理器执行时实现权利要求1至3任一项所述的方法,或者实现权利要求4或5所述的方法。
12.一种电子设备,包括第二存储器、第二处理器及存储在所述第二存储器上并可在第二处理器上运行的第二计算机程序,其特征在于,所述第二处理器执行所述第二计算机程序时实现权利要求6所述的方法。
13.一种计算机可读存储介质,其上存储有第二计算机程序,其特征在于,所述第二计算机程序被第二处理器执行时实现权利要求6所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010974501.5A CN112132577B (zh) | 2020-09-16 | 2020-09-16 | 一种基于区块链的多重监管的交易处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010974501.5A CN112132577B (zh) | 2020-09-16 | 2020-09-16 | 一种基于区块链的多重监管的交易处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112132577A CN112132577A (zh) | 2020-12-25 |
CN112132577B true CN112132577B (zh) | 2021-10-08 |
Family
ID=73846920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010974501.5A Active CN112132577B (zh) | 2020-09-16 | 2020-09-16 | 一种基于区块链的多重监管的交易处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112132577B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486407B (zh) * | 2021-07-05 | 2022-07-08 | 建信金融科技有限责任公司 | 基于区块链的存单管理系统和方法 |
CN115550026B (zh) * | 2022-09-26 | 2023-07-04 | 建信金融科技有限责任公司 | 基于区块链交易的多重监管方法、系统及存储介质 |
CN116389164B (zh) * | 2023-05-26 | 2023-09-12 | 建信金融科技有限责任公司 | 数据的检测方法及装置 |
CN117874838B (zh) * | 2024-03-11 | 2024-05-17 | 誉农智汇(成都)农业科技发展集团有限公司 | 一种基于区块链的农业金融服务方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109687979A (zh) * | 2019-03-06 | 2019-04-26 | 郑州师范学院 | 一种环签名方法、装置、设备及介质 |
CN110189131A (zh) * | 2019-06-26 | 2019-08-30 | 阿里巴巴集团控股有限公司 | 采用环签名的机密区块链交易的实现方法及装置 |
CN111010280A (zh) * | 2019-12-09 | 2020-04-14 | 中山大学 | 一种基于群签名的可监管区块链构造方法 |
CN111340489A (zh) * | 2020-02-21 | 2020-06-26 | 数据通信科学技术研究所 | 可监管的交易接收者保护方法和装置 |
US10735205B1 (en) * | 2019-03-08 | 2020-08-04 | Ares Technologies, Inc. | Methods and systems for implementing an anonymized attestation chain |
-
2020
- 2020-09-16 CN CN202010974501.5A patent/CN112132577B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109687979A (zh) * | 2019-03-06 | 2019-04-26 | 郑州师范学院 | 一种环签名方法、装置、设备及介质 |
US10735205B1 (en) * | 2019-03-08 | 2020-08-04 | Ares Technologies, Inc. | Methods and systems for implementing an anonymized attestation chain |
CN110189131A (zh) * | 2019-06-26 | 2019-08-30 | 阿里巴巴集团控股有限公司 | 采用环签名的机密区块链交易的实现方法及装置 |
CN111010280A (zh) * | 2019-12-09 | 2020-04-14 | 中山大学 | 一种基于群签名的可监管区块链构造方法 |
CN111340489A (zh) * | 2020-02-21 | 2020-06-26 | 数据通信科学技术研究所 | 可监管的交易接收者保护方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112132577A (zh) | 2020-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112132577B (zh) | 一种基于区块链的多重监管的交易处理方法及装置 | |
EP3420669B1 (en) | Cryptographic method and system for secure extraction of data from a blockchain | |
CN112789824B (zh) | 区块链系统及信息传输方法、系统、装置、计算机介质 | |
US11017036B2 (en) | Publicly verifiable proofs of space | |
CN110008720B (zh) | 基于联盟链的物联网动态数据溯源方法及装置 | |
Yavuz et al. | BAF: An efficient publicly verifiable secure audit logging scheme for distributed systems | |
CN114756895B (zh) | 基于同态加密的匿踪数据核验方法及系统 | |
CN112115201B (zh) | 基于区块链的交易处理方法、交易追踪方法及装置 | |
CN107276752A (zh) | 对云支付限制密钥进行解密的方法、装置和系统 | |
CN112769567B (zh) | 一种区块链hd私钥找回方法 | |
Chan et al. | Simple and scalable blockchain with privacy | |
Hartung | Attacks on secure logging schemes | |
CN112132578B (zh) | 一种基于区块链的高效交易处理方法、追踪方法及装置 | |
CN111865595B (zh) | 一种区块链的共识方法及装置 | |
CN112769548A (zh) | 一种区块链数值信息传输方法、系统、装置及计算机介质 | |
Kamuni et al. | Secure energy market against cyber attacks using blockchain | |
CN113645036A (zh) | 一种基于环签名和智能合约的以太坊交易隐私保护方法 | |
ul Abadin et al. | A pattern for proof of work consensus algorithm in blockchain | |
Li et al. | An auditable confidentiality protocol for blockchain transactions | |
Sakho et al. | Privacy protection issues in blockchain technology | |
CN114492828A (zh) | 基于区块链技术的垂直联邦学习恶意节点检测与加固方法和应用 | |
HamithaNasrin et al. | A Review on Implementation Techniques of Blockchain enabled Smart Contract for Document Verification | |
CN110837659B (zh) | 带标签的私钥可更新数字签名方法及其在PoS区块链协议中的应用 | |
Pavithra et al. | Blockchain-based criminal smart contract for symmetric key selling using ZK-SNARKs | |
CN111340489A (zh) | 可监管的交易接收者保护方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |