CN111476555A - 一种数字货币数据处理方法、系统和存储介质 - Google Patents
一种数字货币数据处理方法、系统和存储介质 Download PDFInfo
- Publication number
- CN111476555A CN111476555A CN202010205878.4A CN202010205878A CN111476555A CN 111476555 A CN111476555 A CN 111476555A CN 202010205878 A CN202010205878 A CN 202010205878A CN 111476555 A CN111476555 A CN 111476555A
- Authority
- CN
- China
- Prior art keywords
- digital currency
- terminal
- transaction
- root
- determining
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 238000000034 method Methods 0.000 claims abstract description 23
- 238000012795 verification Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 4
- 241000764238 Isis Species 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 11
- 230000000694 effects Effects 0.000 abstract description 3
- 238000004590 computer program Methods 0.000 description 6
- 238000001816 cooling Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- 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
- 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
-
- 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/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3252—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种数字货币数据处理方法、系统和存储介质,所述方法包括获取多个终端各自生成的私钥,确定各所述私钥各自对应的公钥,根据各所述公钥,确定一个默克尔树的根,以及上传所述默克尔树的根,以对相应的一笔数字货币进行标记等步骤。通过执行所述方法,可以保证只要任一终端申请对该笔数字货币进行交易,数字货币登记中心就可以对该笔数字货币进行交易,实现了向任意单一的终端提供对同一笔数字货币的完整控制权和管理权的效果,无需对数字货币登记中心进行改造,因此所述数字货币数据处理方法具有较低的实施成本,同时避免数字货币登记中心过于复杂,保证交易过程的安全性和原子性。本发明广泛应用于数字货币技术领域。
Description
技术领域
本发明涉及数字货币技术领域,尤其是一种数字货币数据处理方法、系统和存储介质。
背景技术
数字货币是一种全新形式的货币,被一些国家或地区的中央银行或其他货币发行机构所承认。现有数字货币的技术框架是:中央银行设立数字货币登记中心来生成和管理加密字符串,这些加密字符串相当于纸质的货币;用户使用电子终端来存储和管理加密字符串,相当于持有货币;数字货币登记中心通过公钥来标记数字货币的所有权,用户在使用数字货币时,使用自己生成的私钥对交易进行签名,由数字货币登记中心根据数字货币的编号与对应的公钥对交易进行验证,从而确定数字货币的所有人身份,进行所有权转换后,使用新的公钥对数字货币进行标记。
现有技术主要是针对单个终端与单个终端之间的交易而设计的,在这种情况下,一笔数字货币归一人(或一个终端)所有。但现实中通常存在涉及多人交易的场景,包括:多人共有一笔数字货币,他们都具有单独对这笔数字货币进行处置的完整权利。通过使用智能合约,可以使现有技术适应上述多人交易的场景,但是应用智能合约需要对数字货币登记中心进行改造,这将产生很高的成本,并且使得数字货币登记中心的设计变得复杂,难以保证交易过程的安全性和原子性。
发明内容
针对上述至少一个技术问题,本发明的目的在于提供一种数字货币数据处理方法、系统和存储介质。
一方面,本发明实施例包括一种数字货币数据处理方法,包括标记阶段;所述标记阶段包括以下步骤:
获取多个终端各自生成的私钥;
确定各所述私钥各自对应的公钥;
根据各所述公钥,确定一个默克尔树的根;
上传所述默克尔树的根,以对相应的一笔数字货币进行标记。
进一步地,所述根据各所述公钥,确定一个默克尔树的根这一步骤,具体包括:
确定各所述公钥各自对应的初始叶子节点哈希值;
根据各所述初始叶子节点哈希值进行多轮递归计算;
根据所述递归计算的最终结果确定所述默克尔树的根。
进一步地,所述根据各所述初始叶子节点哈希值进行多轮递归计算这一步骤,所使用的公式为:若不存在则 其中,H()表示哈希函数,k为用于表示递归次数的参数,l为所述默克尔树中到叶子层的距离,n为终端的数量;当l=0时为一个所述初始叶子节点哈希值。
进一步地,所述数字货币数据处理方法还包括交易签名阶段;所述交易签名阶段包括以下步骤:
在各所述终端中确定一个需要发起交易签名的目标终端;
获取所述目标终端生成的随机数;
确定所述随机数对应的掩码;
生成交易请求信息;
根据所述默克尔树的根、掩码、交易请求信息、随机数以及所述目标终端的私钥确定签名体;
上传所述掩码、签名体、交易请求信息和各所述公钥,以供对所述数字货币进行交易验证。
进一步地,所述在各所述终端中确定一个需要发起交易签名的目标终端这一步骤,具体包括:
对各所述终端进行初始轮询;
当在所述初始轮询中检测到多个需要发起交易签名的终端,则对检测到的各所述终端进行至少一轮后续轮询,直至仅检测到一个需要发起交易签名的终端,将检测到的这个终端确定为所述目标终端。
进一步地,所述根据所述默克尔树的根、掩码、交易请求信息、随机数以及所述目标终端的私钥确定签名体这一步骤,所使用的公式为:
s=r′+H(hroot,R′,M)ximodp;式中,s为所述签名体,r′为所述随机数,xi为所述私钥,i为终端的序号,hroot为所述默克尔树的根,R′为所述掩码,M为所述交易请求信息的哈希值,H()表示哈希函数,p为椭圆曲线签名验证算法所设定的有限域中Fp的元素个数。
另一方面,本发明实施例还包括一种数字货币数据处理系统,包括服务端和多个终端;
各所述终端分别用于各自生成的私钥;根据所述私钥确定公钥,通过终端之间点对点通讯的方式或通过服务端的方式进行所述公钥的交互;
所述服务端用于获取各所述公钥,根据各所述公钥确定一个默克尔树的根,上传所述确定一个默克尔树的根,以对相应的一笔数字货币进行标记。
进一步地,所述服务端还用于在各所述终端中确定一个需要发起交易签名的目标终端,获取所述目标终端生成的随机数,确定所述随机数对应的掩码,生成交易请求信息,根据所述默克尔树的根、掩码、交易请求信息、随机数以及所述目标终端的私钥确定签名体,上传所述掩码、签名体、交易请求信息和各所述公钥,以供对所述数字货币进行交易验证。
进一步地,所述服务端是由各所述终端中选定一个来配置得到的。
另一方面,本发明实施例还包括一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行实施例所述方法。
本发明的有益效果是:通过执行实施例中所述的数字货币数据处理方法,只要交易签名阶段任一终端发出交易请求,就能使数字货币交易请求通过数字货币登记中心的验证,反之则不能通过验证,从而保证了只要任一终端申请对该笔数字货币进行交易,数字货币登记中心就可以对该笔数字货币进行交易,实现了向任意单一的终端提供对同一笔数字货币的完整控制权和管理权的效果。由于数字货币登记中心对数字货币交易的验证过程可以与现有技术完全一样,也就是应用本实施例中所述的数字货币数据处理方法,无需对数字货币登记中心进行改造,因此本实施例中所述的数字货币数据处理方法具有较低的实施成本,同时避免数字货币登记中心过于复杂,保证交易过程的安全性和原子性。
附图说明
图1为实施例中所述数字货币数据处理系统的原理图;
图2为实施例中进行初始轮询和后续轮询的流程图。
具体实施方式
以下各个实施例是基于图1所示的硬件架构来实施的。图1中,所述数字货币登记中心是由中央银行或者其他有权发行货币的机构设立的,它可以由单个或者多个服务器组成。所述服务端和终端是具有数据处理能力和通信能力的设备,例如平板电脑或手机等。各所述终端分别被不同的人员所持有,每个终端都可以生成它自己的私钥,从而上传到数字货币登记中心中,由数字货币登记中心根据私钥来生成公钥以对数字货币进行所有人的标记,或者根据私钥来验证该终端是不是他想要操作的这笔数字货币的真正所有人。
以下各实施例中,数字货币登记中心和终端所运行的数字货币算法本身都是现有的,例如可以使用基于Schnorr签名机制的椭圆曲线签名验证算法,来作为数字货币登记中心发行和管理数字货币的基础。
本实施例中,所述数字货币数据处理方法是由图1中的服务端来执行的。服务端所执行的方法包括标记阶段和交易签名阶段,其中标记阶段所要做的事是请求数字货币登记中心将数字货币的所有人登记为所有终端,这样,在后续的交易签名阶段中,被登记的多个终端中,任意一个终端提供符合条件的数据,启动对数字货币的交易;交易签名阶段所要做的事是接收一个目标终端发出的交易请求,如果这个目标终端属于标记阶段所登记的终端,那么生成相应数据并上传到数字货币登记中心,供数字货币登记中心进行数字货币所有权的划转和标记。
所述标记阶段包括以下步骤:
S1A.获取多个终端各自生成的私钥;本步骤中,每个终端生成一个私钥,将序号为i的终端所生成的私钥记为xi;
S2A.确定各所述私钥各自对应的公钥;本步骤中,使用基于Schnorr的椭圆曲线签名验证算法,设定的基点为G,那么根据私钥xi所生成的公钥为Xi=xiG;
S3A.根据各所述公钥,确定一个默克尔树的根;这一步骤具体通过以下步骤S301A-S303A来实现:
S302A.根据各所述初始叶子节点哈希值进行多轮递归计算,包括第1轮、第2轮……第k轮……第n轮递归计算;在第k轮递归计算中,所使用的公式为若不存在则也就是说,在存在的情况下,第k轮递归计算的结果为在不存在的情况下,第k轮递归计算的结果为
S4A.向数字货币登记中心上传所述默克尔树的根hroot,以使得数字货币登记中心对相应的一笔数字货币进行标记。
通过执行步骤S1A-S4A,为后续执行的交易签名阶段提供了基础,使得数字货币登记中心使用默克尔树的根hroot对相应的一笔数字货币进行标记;后续步骤中,无需所有终端同时向服务端发出请求,只要经过标记的任何单一终端都可以请求数字货币登记中心对该笔数字货币进行交易,服务端就请求数字货币登记中心交易该笔数字货币,也就是对该笔数字货币进行所有权的变更登记。
在至少完成一次上述标记阶段之后的任意时刻,如果接收到至少一个终端所发起的交易请求,则由服务端执行所述交易签名阶段。
所述交易签名阶段包括以下步骤:
S1B.在各所述终端中确定一个需要发起交易签名的目标终端;如果只存在一个终端需要发起交易签名,那么这个终端就自动成为所述目标终端;如果检测到存在多个终端需要发起交易签名,那么就可以通过以下步骤S101B-S102B所实现的冲突仲裁机制来从这多个终端中确定一个目标终端:
S101B.对各所述终端进行初始轮询;参照图2,检测到终端1、终端2、终端3和终端4都需要发起交易签名,那么由服务端在经过一段冷却时间之后,对终端1、终端2、终端3和终端4进行初始轮询,或者对所有的终端进行初始轮询;如果在初始轮询中,检测到终端1、终端2、终端3和终端4或者其他终端中只有一个终端需要发起交易签名,那么就将这个终端确定为所述目标终端;图2所示的例子中,经过初始轮询,检测到终端1、终端2和终端3仍需要发起交易签名;
S102B.当在所述初始轮询中检测到多个需要发起交易签名的终端,则对检测到的各所述终端进行至少一轮后续轮询,直至仅检测到一个需要发起交易签名的终端,将检测到的这个终端确定为所述目标终端;参照图2,在经过一段冷却时间之后,由服务端执行后续轮询1,对终端1、终端2、终端3、终端4进行轮询,或者对所有的终端进行轮询;经过后续轮询1,发现仍存在终端1、终端2和终端3需要发起交易签名;在经过一段冷却时间之后,由服务端执行后续轮询2,发现仍存在终端1和终端5需要发起交易签名;在经过一段冷却时间之后,由服务端执行后续轮询3;经过后续轮询3,发现只存在终端1需要发起交易签名,则将终端1确定为所述目标终端;
上述步骤S101B-S102B的原理为:服务端不直接参与对各终端的选择过程,通过在不同时刻对各终端进行轮询,将是否发起交易签名的决策权交给各终端,在只有一个终端仍然发起交易签名、其余终端都放弃发起交易签名的情况下,将这一终端确定为目标终端,从而保证了各终端之间的平等性;
S2B.获取所述目标终端生成的随机数;在图2所示的例子中,终端1被确定为目标终端,则获取终端1生成的随机数r′;
S3B.确定所述随机数对应的掩码R′;具体地,计算掩码所用的公式为R′=r′G;
S4B.生成交易请求信息的哈希值M;
S5B.根据所述默克尔树的根hroot、掩码R′、交易请求信息的哈希值M、随机数r′以及所述目标终端的私钥xi确定签名体s;具体公式为:s=r′+H(hroot,R′,M)ximodp,p为椭圆曲线签名验证算法所设定的有限域中Fp的元素个数;
S6B.将掩码R′、签名体s组合成数字签名(R′,ss),将数字签名(R′,ss)上传到数字货币登记中心,以使得数字货币登记中心对所述数字货币进行交易验证。
数字货币登记中心使用基于Schnorr的椭圆曲线签名验证算法对接收到的数字签名(R′,ss)进行验证,具体为:根据交易请求信息,计算出其哈希值M,验证公式sG=R′+H(hroot,R′,M)Xi是否成立,如果成立,则验证通过,数字货币登记中心进行数字货币所有权变更登记等操作,如果公式不成立,则验证不通过,数字货币登记中心不对数字货币的所有权登记信息进行操作。
公式sG=R′+H(hroot,R′,M)Xi所涉及的参数是基于标记阶段中的步骤S1A-S4A获得的,只要在交易签名阶段,步骤S1A-S4A中所涉及的任一终端发出交易请求(也就是按照预设规则生成随机数和掩码)的情况下,该公式就能成立,从而保证了只要任一终端申请对该笔数字货币进行交易,数字货币登记中心就可以对该笔数字货币进行交易,向任意单一的终端提供对同一笔数字货币的完整控制权和管理权。
由于数字货币登记中心对数字货币交易的验证过程可以与现有技术完全一样,也就是应用本实施例中所述的数字货币数据处理方法,无需对数字货币登记中心进行改造,因此本实施例中所述的数字货币数据处理方法具有较低的实施成本,同时避免数字货币登记中心过于复杂,保证交易过程的安全性和原子性。
对同一笔数字货币进行控制和管理可以应用在以下情景:
图1所示的各终端对需要交易的数字货币具有共有权,他们是合伙人关系或者夫妻关系等,在法律上只要这些终端的任一持有人均表示愿意交易数字货币,就能对数字货币进行合法交易;此时,执行本实施例中的数字货币数据处理方法,任一终端都具有对该笔共有的数字货币进行处理的完整权限,当某一终端需要对该笔共有的数字货币进行交易等处理时,无需请求其他终端同意,从而保障数字货币的交易便利性。
将本实施例中的数字货币数据处理方法编写成计算机程序,进而制作成固件并写入服务端设备和终端设备,可以使得服务端设备和终端设备所组成的数字货币数据处理系统能够实现本实施例中所述数字货币数据处理方法的有益效果。
图1所示的结构中,所述服务端可以是一个专用的设备,也可以由任一终端来担当。也就是说,在执行本实施例中所述的数字货币数据处理方法时,可以先执行初始化步骤,在多个终端中选定一个,这个被选定的终端除了像其他终端一样执行其本身的数字货币钱包功能之外,还充当本实施例中所述的服务端,负责与其他终端以及数字货币登记中心进行通信,以及执行标记阶段和交易签名阶段的各步骤。通过从多个终端中选定一个来作为所述服务端,可以避免硬件结构过于复杂,以及降低硬件的使用成本。
需要说明的是,如无特殊说明,当某一特征被称为“固定”、“连接”在另一个特征,它可以直接固定、连接在另一个特征上,也可以间接地固定、连接在另一个特征上。此外,本公开中所使用的上、下、左、右等描述仅仅是相对于附图中本公开各组成部分的相互位置关系来说的。在本公开中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本实施例所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本实施例说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本实施例所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种元件,但这些元件不应限于这些术语。这些术语仅用来将同一类型的元件彼此区分开。例如,在不脱离本公开范围的情况下,第一元件也可以被称为第二元件,类似地,第二元件也可以被称为第一元件。本实施例所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
此外,可按任何合适的顺序来执行本实施例描述的过程的操作,除非本实施例另外指示或以其他方式明显地与上下文矛盾。本实施例描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本实施例所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
计算机程序能够应用于输入数据以执行本实施例所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。
Claims (10)
1.一种数字货币数据处理方法,其特征在于,包括标记阶段;所述标记阶段包括以下步骤:
获取多个终端各自生成的私钥;
确定各所述私钥各自对应的公钥;
根据各所述公钥,确定一个默克尔树的根;
上传所述默克尔树的根,以对相应的一笔数字货币进行标记。
2.根据权利要求1所述的数字货币数据处理方法,其特征在于,所述根据各所述公钥,确定一个默克尔树的根这一步骤,具体包括:
确定各所述公钥各自对应的初始叶子节点哈希值;
根据各所述初始叶子节点哈希值进行多轮递归计算;
根据所述递归计算的最终结果确定所述默克尔树的根。
4.根据权利要求1-3任一项所述的数字货币数据处理方法,其特征在于,还包括交易签名阶段;所述交易签名阶段包括以下步骤:
在各所述终端中确定一个需要发起交易签名的目标终端;
获取所述目标终端生成的随机数;
确定所述随机数对应的掩码;
生成交易请求信息;
根据所述默克尔树的根、掩码、交易请求信息、随机数以及所述目标终端的私钥确定签名体;
上传所述掩码、签名体、交易请求信息和各所述公钥,以供对所述数字货币进行交易验证。
5.根据权利要求4所述的数字货币数据处理方法,其特征在于,所述在各所述终端中确定一个需要发起交易签名的目标终端这一步骤,具体包括:
对各所述终端进行初始轮询;
当在所述初始轮询中检测到多个需要发起交易签名的终端,则对检测到的各所述终端进行至少一轮后续轮询,直至仅检测到一个需要发起交易签名的终端,将检测到的这个终端确定为所述目标终端。
6.根据权利要求4所述的数字货币数据处理方法,其特征在于,所述根据所述默克尔树的根、掩码、交易请求信息、随机数以及所述目标终端的私钥确定签名体这一步骤,所使用的公式为:
s=r′+H(hroot,R′,M)ximodp;式中,s为所述签名体,r′为所述随机数,xi为所述私钥,i为终端的序号,hroot为所述默克尔树的根,R′为所述掩码,M为所述交易请求信息的哈希值,H()表示哈希函数,p为椭圆曲线签名验证算法所设定的有限域中Fp的元素个数。
7.一种数字货币数据处理系统,其特征在于,包括服务端和多个终端;
各所述终端分别用于各自生成的私钥;根据所述私钥确定公钥,通过终端之间点对点通讯的方式或通过服务端的方式进行所述公钥的交互;
所述服务端用于获取各所述公钥,根据各所述公钥确定一个默克尔树的根,上传所述确定一个默克尔树的根,以对相应的一笔数字货币进行标记。
8.根据权利要求7所述的数字货币数据处理系统,其特征在于:
所述服务端还用于在各所述终端中确定一个需要发起交易签名的目标终端,获取所述目标终端生成的随机数,确定所述随机数对应的掩码,生成交易请求信息,根据所述默克尔树的根、掩码、交易请求信息、随机数以及所述目标终端的私钥确定签名体,上传所述掩码、签名体、交易请求信息和各所述公钥,以供对所述数字货币进行交易验证。
9.根据权利要求7或8所述的数字货币数据处理系统,其特征在于,所述服务端是由各所述终端中选定一个来配置得到的。
10.一种存储介质,其中存储有处理器可执行的指令,其特征在于,所述处理器可执行的指令在由处理器执行时用于执行如权利要求1-6任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010205878.4A CN111476555A (zh) | 2020-03-23 | 2020-03-23 | 一种数字货币数据处理方法、系统和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010205878.4A CN111476555A (zh) | 2020-03-23 | 2020-03-23 | 一种数字货币数据处理方法、系统和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111476555A true CN111476555A (zh) | 2020-07-31 |
Family
ID=71749429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010205878.4A Pending CN111476555A (zh) | 2020-03-23 | 2020-03-23 | 一种数字货币数据处理方法、系统和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111476555A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112785433A (zh) * | 2021-01-27 | 2021-05-11 | 深圳华数云计算技术有限公司 | 一种数字货币信息记录系统、方法和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018080206A1 (ko) * | 2016-10-26 | 2018-05-03 | 주식회사 코인플러그 | Utxo 기반 프로토콜에서 머클 트리 구조를 사용하여 통화를 발행 및 지급 결제하는 방법과 이를 이용한 서버 |
CN108009917A (zh) * | 2017-10-13 | 2018-05-08 | 中国银联股份有限公司 | 数字货币的交易验证和登记方法及系统 |
CN108768666A (zh) * | 2018-07-04 | 2018-11-06 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种基于sm2门限密码算法的数字货币钱包管理方法 |
CN109934582A (zh) * | 2019-02-25 | 2019-06-25 | 矩阵元技术(深圳)有限公司 | 数字货币交易数据处理方法、服务器、客户端及系统 |
-
2020
- 2020-03-23 CN CN202010205878.4A patent/CN111476555A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018080206A1 (ko) * | 2016-10-26 | 2018-05-03 | 주식회사 코인플러그 | Utxo 기반 프로토콜에서 머클 트리 구조를 사용하여 통화를 발행 및 지급 결제하는 방법과 이를 이용한 서버 |
CN108009917A (zh) * | 2017-10-13 | 2018-05-08 | 中国银联股份有限公司 | 数字货币的交易验证和登记方法及系统 |
CN108768666A (zh) * | 2018-07-04 | 2018-11-06 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种基于sm2门限密码算法的数字货币钱包管理方法 |
CN109934582A (zh) * | 2019-02-25 | 2019-06-25 | 矩阵元技术(深圳)有限公司 | 数字货币交易数据处理方法、服务器、客户端及系统 |
Non-Patent Citations (2)
Title |
---|
GREGORY MAXWELL ETAL: "Simple Schnorr Multi-Signatures with Applications to Bitcoin" * |
STEPAN: "How Schnorr signatures may improve Bitcoin" * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112785433A (zh) * | 2021-01-27 | 2021-05-11 | 深圳华数云计算技术有限公司 | 一种数字货币信息记录系统、方法和存储介质 |
CN112785433B (zh) * | 2021-01-27 | 2024-04-09 | 深圳华数云计算技术有限公司 | 一种数字货币信息记录系统、方法和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110419055A (zh) | 基于利用零知识证明的账户票据模型的区块链数据保护 | |
TWI703853B (zh) | 網路中使用者身份認證方法和裝置 | |
JP2021184274A (ja) | ブロックチェーン上のセキュアなピアツーピア通信の方法 | |
US10972255B2 (en) | Blockchain validation system | |
WO2019144612A1 (zh) | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 | |
JP2020528170A (ja) | ブロックチェーン上で追跡情報を取得及び記録するための方法及び装置 | |
JP2019126021A (ja) | ブロックチェーン式多要素個人身元認証を実現するシステム及び方法 | |
CN109479005A (zh) | 区块链实现的方法和系统 | |
TWI778296B (zh) | 資訊處理方法、裝置、電子設備及電腦可讀儲存媒體 | |
US11449837B2 (en) | Maintenance equipment management method, system and data management server | |
CN111177800B (zh) | 基于区块链的数据处理方法及装置、电子设备 | |
EP3491611A1 (en) | Blockchain-implemented method and system | |
US20200213311A1 (en) | Providing verified claims of user identity | |
JP2016539442A5 (zh) | ||
EP3317775A1 (en) | Systems and methods of secure provenance for distributed transaction databases | |
CN109993667A (zh) | 一种酒店管理方法、装置及区块链节点服务器 | |
CN106063187A (zh) | 多因子认证系统和方法 | |
CN110210207A (zh) | 授权方法及设备 | |
CN109859040A (zh) | 一种基于区块链进行房产交易的方法及装置 | |
CN111612600A (zh) | 区块链拍卖方法、设备、存储介质及区块链系统 | |
JP6265456B1 (ja) | 仮想通貨取引システム、仮想通貨取引装置、及び仮想通貨取引プログラム | |
US9424616B2 (en) | Customer identity verification | |
CN105354464A (zh) | 基于指纹信息识别用户身份的方法和装置 | |
US20180268375A1 (en) | Method and apparatus for repair or maintenance control of devices | |
CN108734580A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200731 |