CN108768666A - 一种基于sm2门限密码算法的数字货币钱包管理方法 - Google Patents
一种基于sm2门限密码算法的数字货币钱包管理方法 Download PDFInfo
- Publication number
- CN108768666A CN108768666A CN201810723730.2A CN201810723730A CN108768666A CN 108768666 A CN108768666 A CN 108768666A CN 201810723730 A CN201810723730 A CN 201810723730A CN 108768666 A CN108768666 A CN 108768666A
- Authority
- CN
- China
- Prior art keywords
- sub
- private key
- wallet
- digital cash
- participant
- 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
-
- 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/3255—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 group based signatures, e.g. ring or threshold 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/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/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
- G06Q20/4014—Identity check for transactions
-
- 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
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种基于SM2门限密码算法的数字货币钱包管理方法,涉及电子技术领域,包括:客户端接收到数字货币钱包的创建指令时,生成系统参数;根据生成的各子私钥计算获得公钥;其中,各子私钥对应存储于各业务参与方,子私钥根据系统参数计算获得;通过智能合约对公钥进行身份绑定;接收用户对数字货币钱包的功能指令;根据功能指令,通过各业务参与方与智能合约配合,使用各子私钥实现钱包功能。该方法可以保证数字货币交易的安全性,提高交易效率。本发明还公开了一种客户端以及移动终端,具有上述有益效果。
Description
技术领域
本发明涉及电子技术领域,特别涉及一种基于SM2门限密码算法的数字货币钱包管理方法、一种客户端以及一种移动终端。
背景技术
数字货币是指通过互联网使用的货币,它具有传统货币的所有特征,就像经典的法定货币一样,可以用来获得、转让或兑换其他货币,也可以用它来支付商品和服务的费用,比如手机和网络通信、网上商店等。数字货币没有地理或政治边界,业务可以从任何地方发送,并且接收到世界上任何一个点。近期,中国人民银行(俗称“央行”)推动法定数字货币研究,自从比特币日益火爆以来,资产数字化成为趋势,数字货币便已成为业内外的热点话题,但是目前对数字货币还没有完整的管理策略。
而现有的加密货币如BTC、ETH、XRP常用双重签名技术进行管理,即消费者以及支付网关各自拥有一份完整的公私钥,消费者以及支付网关根据功能权限划分不同,私钥使用相对独立,一旦一方私钥丢失可能会导致很严重的后果,另外,整个交易过程需要分别验证双方生成的验证信息,多次签名以及验签过程,会严重影响交易效率。
因此,如何保证数字货币交易的安全性,提高交易效率,是本领域技术人员需要解决的技术问题。
发明内容
本发明的目的是提供一种基于SM2门限密码算法的数字货币钱包管理方法,该方法可以保证数字货币交易的安全性,提高交易效率;本发明的另一目的是提供一种客户端、以及一种移动终端,具有上述有益效果。
为解决上述技术问题,本发明提供一种基于SM2门限密码算法的数字货币钱包管理方法,包括:
客户端接收到数字货币钱包的创建指令时,生成系统参数;
根据生成的各子私钥计算获得公钥;其中,所述各子私钥对应存储于各业务参与方,所述子私钥根据所述系统参数计算获得;
通过智能合约对所述公钥进行身份绑定;
接收用户对所述数字货币钱包的功能指令;
根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能。
可选地,所述子私钥的生成方法包括:
将所述系统参数分别发送至所述各业务参与方,以便所述各业务参与方根据所述系统参数生成对应的子私钥。
可选地,所述子私钥的生成方法包括:
控制特定业务参与方根据所述系统参数生成公钥以及与若干份子私钥。
可选地,根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能包括:
当接收到数字货币转账命令时,向各业务参与方发送交易签名生成指令,以便所述各业务参与方根据各自存储的子私钥对交易数据进行签名,生成交易子签名数据;
接收所述各业务参与方发送的交易子签名数据;
根据所述交易子签名数据生成交易签名数据;
将所述交易签名数据、转账指令以及相关转账信息发送至智能合约,以便所述智能合约根据交易签名数据验证结果控制转账过程。
可选地,根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能包括:
当接收到子私钥重置指令后,向智能合约发送所述子私钥与对应的数字货币的解绑指令;
重置系统参数,得到重置后的系统参数;
通过业务参与方存储与各业务参与方对应的重置后的子私钥;其中,所述重置后的子私钥根据所述重置后的系统参数计算获得;
通过智能合约对重置后的公钥进行身份绑定,以便所述智能合约将所述数字货币关联至重置后的账户;其中,所述重置后的公钥根据各重置后的子私钥计算获得。
可选地,根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能包括:
当接收到钱包干预指令时,向各业务参与方发送干预签名生成指令,以便所述各业务参与方根据各自存储的子私钥生成对应的干预子签名;
接收所述各业务参与方发送的干预子签名;
根据所述干预子签名生成干预签名数据;
将所述干预签名数据、钱包干预指令以及相关干预信息发送至智能合约,以便所述智能合约根据干预签名数据验证结果控制钱包干预过程。
可选地,所述智能合约还用于:
获取各业务参与方信息;
对所述各业务参与方信息进行解析识别,生成各业务参与方的命令识别标准;
根据所述命令识别标准对接收到的命令进行参与方类别识别,得到命令所属参与方的类别识别结果。
可选地,所述智能合约还用于:
根据各业务参与方的职能设置功能权限;
根据所述功能权限以及所述类别识别结果进行钱包功能控制。
本发明公开一种客户端,包括:
参数生成单元,用于接收到数字货币钱包的创建指令时,生成系统参数;
公钥计算单元,用于根据生成的各子私钥计算获得公钥;其中,所述各子私钥对应存储于各业务参与方,所述子私钥根据所述系统参数计算获得;
身份绑定单元,用于通过智能合约对所述公钥进行身份绑定;
指令接收单元,用于接收用户对所述数字货币钱包的功能指令;
功能实现单元,用于根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能。
本发明公开一种移动终端,包括:如上所述的客户端。
由上述技术方案可以看出,客户端在创建数字货币钱包的过程中,可以得到根据系统参数生成的子私钥,子私钥与业务参与方的数量相同,即每个业务参与方都对应有一个子私钥,每个子私钥存储于对应的业务参与方,而每个业务参与方拥有对应子私钥的绝对拥有权;公钥由各子私钥计算获得,即多个业务参与方利用其存储的子私钥共同签名计算后与公钥配合才能完成各钱包功能的实现,单独的子私钥不能完成钱包功能的实现,也就是说即使某个子私钥被盗用也不能完成整个交易过程,数字货币交易过程需要多方合作协作完成,可以有效保障数字货币交易的安全性。另外,由于多个子私钥组合才能实现钱包功能,单独私钥签名本身没有实际意义,因此只需对各子私钥签名后得到的签名数据进行一次验证即可,可以显著提高交易效率。
本发明还公开了一种客户端以及一种移动终端,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的基于SM2门限密码算法的数字货币钱包管理方法的流程图;
图2为本发明实施例提供的数字货币钱包管理过程示意图;
图3为本发明实施例提供的客户端的结构框图。
具体实施方式
本发明的核心是提供一种基于SM2门限密码算法的数字货币钱包管理方法,该方法可以保证数字货币交易的安全性,提高交易效率;本发明的另一目的是提供一种客户端以及一种移动终端,具有上述有益效果。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例提供的基于SM2门限密码算法的数字货币钱包管理方法的流程图;该方法可以包括:
步骤s100、客户端接收到数字货币钱包的创建指令时,生成系统参数。
系统参数指在进行数字货币创建时输出的参数,每个数字货币钱包对应的系统参数都是独一无二的,区别于其他数字货币钱包的系统参数,系统参数具体包括的数据种类不做限定,比如可以包括时间、钱包应用编码以及产生的随机数等数据,可以根据需要自行设定,一般来说系统参数为任意随机数,可以根据系统参数来生成独一无二的公钥以及私钥。
步骤s110、根据生成的各子私钥计算获得公钥;其中,各子私钥对应存储于各业务参与方,子私钥根据系统参数计算获得。
其中,业务参与方表示参与货币钱包管理中的所有参与方,比如可以包括用户、商业银行、第三方支付公司以及监管方等。
本实施例利用SM2门限密码学技术,将私钥以N份子私钥的形式,令所有参与管理的参与方存储一份子私钥,实现监管方、数字货币使用方、支付服务提供商、钱包服务提供商等多方共同协作参与交易,将私钥这种重要数据分发至多端,将责任分发至多端,风险也会大大减小,结合数字货币钱包的管理,确保数字货币交易安全。
各子私钥之间是独立且没有关联的,每个子私钥都是由完整的系统参数生成的。与传统私钥相比的主要区别在于本实施例基于SM2门限密码算法需要超过门限值的多个子私钥共同协作才能实现比如转账、私钥重置、钱包干预等具体的钱包功能。
在此对子私钥以及公钥的生成方法不做限定,可以由各方信任的平台独立生成公钥以及子私钥后再分发至各端;也可以由需要存储子私钥的业务参与方各自生成自己对应的子私钥后,根据子私钥计算得到子公钥,将子公钥发送至特定端,特定端再根据子公钥计算得到公钥;或者也可以由需要存储子私钥的业务参与方各自生成自己对应的子私钥后,将子私钥发送至特定端,特定端再根据子私钥计算得到公钥。不论以何种方式生成,私钥需尽量进行没有备份的单独存储,而且在私钥的传输过程中需保证传输通道的安全性,以保障私钥的安全性。
可选地,子私钥的生成方法具体可以为:将系统参数分别发送至各业务参与方,以便各业务参与方根据系统参数生成对应的子私钥。通过各业务参与方根据系统参数进行各自私钥的设置不仅可以降低子私钥同时被泄露的风险,由于生成位置不同,各子私钥之间从生成算法等方面可能是相互独立的,对于钱包客户端来说显著提升了安全性。在这种子私钥的生成方式下,整体公钥的生成方式具体可以为:各业务参与方根据自身存储的子私钥生成子公钥(比如将子私钥与系统参数相乘),并将生成的子公钥发送至客户端或者其他可以信任的业务参与方将子公钥生成整体公钥。
可选地,子私钥的生成方法还可以为:控制特定业务参与方根据系统参数生成公钥以及与业务参与方数量匹配的若干份子私钥。根据密码特性,特定业务参与方指客户端中某个受各业务参与方认可的权威参与方(比如可以是监管方或者客户端),直接由特定业务参与方在本地生成公钥及N+1份子私钥,一份子私钥由子私钥生成方存储,将其余N份子私钥安全发送至N个参与方,生成私钥的参与方在生成子私钥的同时根据子私钥生成整体公钥,并将公钥保存至数字货币钱包相关智能合约中,通过智能合约实现基于SM2密码算法的数字货币钱包方案。
需要说明的是,上述介绍中子私钥、子公钥以及公钥均是独立的完整个体,子公钥是由单独的子私钥对应生成的,公钥时根据各子公钥计算生成的。
步骤s120、通过智能合约对公钥进行身份绑定。
钱包智能合约是部署在特定系统(区块链)上的智能合约,只有部署了该合约的系统可以实现基于SM2密码算法的数字货币钱包方案,该辅助管理方法在数字货币钱包创建时导入用户信息,并与账户地址(公钥)绑定,进行实名信息登记,生成数字货币钱包后与客户端配合,进行各业务功能的实现,主要可以包括外部账户地址的识别,各方权限分配、数字货币兑入、数字货币兑出、数字货币转账以及数字货币钱包管理等业务功能。
步骤s130、接收用户对数字货币钱包的功能指令、
在此对钱包所能实现的功能不做限定,结合业务来说,钱包功能可以包括比如钱包创建、数字货币转账、钱包干预、子私钥重置等。
步骤s130、根据功能指令,通过各业务参与方与智能合约配合,使用各子私钥实现钱包功能。
客户端接收用户的功能指令,根据接收到的功能指令通过各业务参与方控制各私钥,通过各私钥协作生成身份数据,将身份数据、功能指令以及与该功能指令配合的相关信息发送至钱包智能合约,钱包智能合约即可对身份数据进行验证,并根据验证结果以及与功能指令相关的信息进行功能控制,在此对钱包各功能实现的具体方式不做限定。
例如客户端接收到转100元给B的指令,控制各业务参与方根据各自存储的子私钥生成转账签名,根据获取的各转账签名生成签名数据,与转账对象为B、转账金额为100元等信息一同发送至钱包智能合约,钱包智能合约中存储有公钥,钱包智能合约根据公钥对签名数据进行验证,验证通过后根据相关信息执行转100元给B的动作。
由于数字货币钱包基于参与方的账户体系,将用户实名信息与数字货币钱包属性进行绑定,实现“前台自愿,后台实名”原则。交易时使用钱包虚拟属性,确保用户隐私,而监管方用户穿透式管理能力,实现隐私保护,有利于预防金融风险。
在此以业务参与方具体为参与方A、参与方B以及监管方为例对数字货币钱包管理方法进行介绍,图2所示为数字货币钱包管理过程示意图。
参与方A为个人或者企业,参与方B为钱包服务提供商,监管方为数字货币钱包的监管者或业务参与方认可的权威机构。参与方A通过参与方A的账户新增(创建)数字货币钱包,以便于基于商业银行账户体系进行数字货币与电子货币的兑换,业务参与方之间共同协作完成数字货币钱包的创建、交易等功能,监管方也通过监管各参与方等方式共同协作完成数字货币钱包的管理,上述与用户进行数据交互的过程可以在钱包客户端控制下完成。
基于上述技术方案,本发明所提供的基于SM2门限密码算法的数字货币钱包管理方法使用SM2门限密码技术作为数字货币钱包核心,通过在各业务参与方(包括比如中央银行、第三方权威机构等监管方)根据算法参数存储独立生成的子私钥,可以保证业务参与方(如用户、银行/第三方支付公司等)对子私钥的绝对拥有权,并由各方共同协作完成交易,实现了数字货币钱包创建、交易、管理等功能,而且只需使用公钥对私钥进行一次验证即可,可以在确保数字货币交易安全的同时显著提高交易效率。
上述实施例中对钱包功能以及功能的实现方式不做限定,在此对数字货币转账功能的实现过程进行阐述,具体可以包括以下步骤:
当接收到数字货币转账命令时,向各业务参与方发送交易签名生成指令,以便各业务参与方根据各自存储的子私钥对交易数据进行签名,生成交易子签名数据;
接收各业务参与方发送的交易子签名数据;
根据交易子签名生成交易签名数据;
将交易签名数据、转账指令以及相关转账信息发送至智能合约,以便智能合约根据交易签名数据验证结果控制转账过程。
数字货币转账,即数字货币之间点对点交易,由参与方发起(一般是用户),该账户减少相应额度的数字货币,而在指定的对方账户地址上增加相应数字货币。当用户(即业务参与方)向其他用户进行数字货币转账时,需要各个参与方的子私钥协作共同完成交易数据的签名,形成交易签名数据,发送至智能合约执行后续交易验证过程。验证通过后,由数字货币相关系统完成数字货币的权属变更。
在此对子私钥重置功能的实现过程进行阐述,具体可以包括以下步骤:
当接收到子私钥重置指令后,向智能合约发送子私钥与对应的数字货币的解绑指令;
重置系统参数,得到重置后的系统参数;
通过业务参与方存储与各业务参与方对应的重置后的子私钥;其中,重置后的子私钥根据重置后的系统参数计算获得;
通过智能合约对重置后的公钥进行存储,以便智能合约将数字货币关联至重置后的账户;其中,重置后的公钥根据各重置后的子私钥计算获得。
当用户客户端丢失子私钥,或者因安全风险导致的其他参与方需要子私钥重置时,需要明确的是各个参与方、监管方同步重置子私钥。由于钱包用户与公私钥关联,在子私钥重置时,将数字货币关联至重置后对应的公私钥,该过程可以由数字货币钱包相关智能合约实现。
在此对钱包干预功能的实现过程进行阐述,具体可以包括以下步骤:
当接收到钱包干预指令时,向各业务参与方发送干预签名生成指令,以便各业务参与方根据各自存储的子私钥生成对应的干预子签名;
接收各业务参与方发送的干预子签名;
根据干预子签名生成干预签名数据;
将干预签名数据、钱包干预指令以及相关干预信息发送至智能合约,以便智能合约根据干预签名数据验证结果控制钱包干预过程。
当交易触发了安全风险,参与方(一般为钱包服务提供商,如银行、第三方支付公司)有权发起数字货币钱包干预操作,需要使用各方子私钥协作共同完成管理协议的签名,发送至指定智能合约完成钱包干预过程。
由于钱包各功能的实现需通过多个业务参与方协作完成,而不同的业务参与方的指令不同,权限也不同,可选地,智能合约可以还用于识别命令来源,具体实现方法可以为:
获取各业务参与方信息;
对各业务参与方信息进行解析识别,生成各业务参与方的命令识别标准;
根据命令识别标准对接收到的命令进行参与方类别识别,得到命令所属参与方的类别识别结果。
另外,不同类型的参与方由于各自的职能不同,其可以完成的功能也不同,为防止通过非法控制某参与方实现其本身不存在的业务功能,保障钱包的安全性,可选地,智能合约可以还用于针对不同参与方的职能,定义不同的功能权限,具体实现过程可以为:
根据各业务参与方的职能设置功能权限;
根据功能权限以及类别识别结果进行钱包功能控制。
另外,客户端与钱包智能合约配合还可以完成比如数字货币兑入、兑出以及数字钱包管理等功能,根据参与方的权限,合理设置功能,数字货币兑入指电子货币兑换数字货币,由参与方协作共同完成此过程,指定账户地址增加相应的数字货币。数字货币兑出即数字货币兑换电子货币,由参与方协作共同完成此过程,指定账户地址减少相应的数字货币。数字货币钱包管理主要包括钱包的创建、注销、私钥重置等,在此对上述过程的具体实现方式不进行过多赘述,均可以参照上述实施例的介绍。
请参考图3,图3为本发明实施例提供的客户端的结构框图;该客户端可以包括:参数生成单元300、公钥计算单元310、身份绑定单元320、指令接收单元330以及功能实现单元340。
其中,参数生成单元300主要用于接收到数字货币钱包的创建指令时,生成系统参数;
公钥计算单元310主要用于通过业务参与方存储与各业务参与方对应的子私钥;其中,子私钥根据系统参数计算获得;
身份绑定单元320主要用于通过智能合约对公钥进行身份绑定;
指令接收单元330主要用于接收用户对数字货币钱包的功能指令;
功能实现单元340主要用于根据功能指令,通过各业务参与方与智能合约配合,使用各子私钥实现钱包功能。
可选地,客户端中的私钥生成单元,具体可以用于控制特定业务参与方根据系统参数生成公钥以及与若干份子私钥。
可选地,私钥生成单元还可以用于将系统参数分别发送至各业务参与方,以便各业务参与方根据系统参数生成对应的子私钥。
可选地,功能实现单元340具体可以包括转账子单元,用于当接收到数字货币转账命令时,向各业务参与方发送交易签名生成指令,以便各业务参与方根据各自存储的子私钥对交易数据进行签名,生成交易签名数据;接收各业务参与方发送的交易子签名;根据交易子签名生成交易签名数据;将交易签名数据、转账指令以及相关转账信息发送至智能合约,以便智能合约根据交易签名数据验证结果控制转账过程。
可选地,功能实现单元340可以还包括私钥重置子单元,用于当接收到子私钥重置指令后,向智能合约发送子私钥与对应的数字货币的解绑指令;重置系统参数,得到重置后的系统参数;通过业务参与方存储与各业务参与方对应的重置后的子私钥;其中,重置后的子私钥根据重置后的系统参数计算获得;通过智能合约对重置后的公钥进行身份绑定,以便智能合约将数字货币关联至重置后的账户;其中,重置后的公钥根据各重置后的子私钥计算获得。
可选地,功能实现单元340可以还包括钱包干预子单元,用于当接收到钱包干预指令时,向各业务参与方发送干预签名生成指令,以便各业务参与方根据各自存储的子私钥生成对应的干预子签名;接收各业务参与方发送的干预子签名;根据干预子签名生成干预签名数据;将干预签名数据、钱包干预指令以及相关干预信息发送至智能合约,以便智能合约根据干预签名数据验证结果控制钱包干预过程。
需要说明的是,本发明具体实施方式中的客户端中的各个单元,其工作过程请参考图1对应的具体实施方式,在此不再赘述。
本发明还公开一种移动终端,移动终端上设置有上述客户端,在此对客户端的功能不再赘述,可以参照上述介绍。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,设备,存储介质和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现,通过变换设计或改变算法,可以达到类似方案均在本发明的保护范围内。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,功能调用装置,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的一种基于SM2门限密码算法的数字货币钱包管理方法、一种客户端以及一种移动终端进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种基于SM2门限密码算法的数字货币钱包管理方法,其特征在于,包括:
客户端接收到数字货币钱包的创建指令时,生成系统参数;
根据生成的各子私钥计算获得公钥;其中,所述各子私钥对应存储于各业务参与方,所述子私钥根据所述系统参数计算获得;
通过智能合约对所述公钥进行身份绑定;
接收用户对所述数字货币钱包的功能指令;
根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能。
2.如权利要求1所述的基于SM2门限密码算法的数字货币钱包管理方法,其特征在于,所述子私钥的生成方法包括:
将所述系统参数分别发送至所述各业务参与方,以便所述各业务参与方根据所述系统参数生成对应的子私钥。
3.如权利要求1所述的基于SM2门限密码算法的数字货币钱包管理方法,其特征在于,所述子私钥的生成方法包括:
控制特定业务参与方根据所述系统参数生成公钥以及与若干份子私钥。
4.如权利要求1所述的基于SM2门限密码算法的数字货币钱包管理方法,其特征在于,根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能包括:
当接收到数字货币转账命令时,向各业务参与方发送交易签名生成指令,以便所述各业务参与方根据各自存储的子私钥对交易数据进行签名,生成交易子签名数据;
接收所述各业务参与方发送的交易子签名数据;
根据所述交易子签名数据生成交易签名数据;
将所述交易签名数据、转账指令以及相关转账信息发送至智能合约,以便所述智能合约根据交易签名数据验证结果控制转账过程。
5.如权利要求1所述的基于SM2门限密码算法的数字货币钱包管理方法,其特征在于,根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能包括:
当接收到子私钥重置指令后,向智能合约发送所述子私钥与对应的数字货币的解绑指令;
重置系统参数,得到重置后的系统参数;
通过业务参与方存储与各业务参与方对应的重置后的子私钥;其中,所述重置后的子私钥根据所述重置后的系统参数计算获得;
通过智能合约对重置后的公钥进行身份绑定,以便所述智能合约将所述数字货币关联至重置后的账户;其中,所述重置后的公钥根据各重置后的子私钥计算获得。
6.如权利要求1所述的基于SM2门限密码算法的数字货币钱包管理方法,其特征在于,根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能包括:
当接收到钱包干预指令时,向各业务参与方发送干预签名生成指令,以便所述各业务参与方根据各自存储的子私钥生成对应的干预子签名;
接收所述各业务参与方发送的干预子签名;
根据所述干预子签名生成干预签名数据;
将所述干预签名数据、钱包干预指令以及相关干预信息发送至智能合约,以便所述智能合约根据干预签名数据验证结果控制钱包干预过程。
7.如权利要求1所述的基于SM2门限密码算法的数字货币钱包管理方法,其特征在于,所述智能合约还用于:
获取各业务参与方信息;
对所述各业务参与方信息进行解析识别,生成各业务参与方的命令识别标准;
根据所述命令识别标准对接收到的命令进行参与方类别识别,得到命令所属参与方的类别识别结果。
8.如权利要求7所述的数字货币钱包辅助管理方法,其特征在于,所述智能合约还用于:
根据各业务参与方的职能设置功能权限;
根据所述功能权限以及所述类别识别结果进行钱包功能控制。
9.一种客户端,其特征在于,包括:
参数生成单元,用于接收到数字货币钱包的创建指令时,生成系统参数;
公钥计算单元,用于根据生成的各子私钥计算获得公钥;其中,所述各子私钥对应存储于各业务参与方,所述子私钥根据所述系统参数计算获得;
身份绑定单元,用于通过智能合约对所述公钥进行身份绑定;
指令接收单元,用于接收用户对所述数字货币钱包的功能指令;
功能实现单元,用于根据所述功能指令,通过各业务参与方与所述智能合约配合,使用所述各子私钥实现钱包功能。
10.一种移动终端,其特征在于,包括:如权利要求9所述的客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810723730.2A CN108768666A (zh) | 2018-07-04 | 2018-07-04 | 一种基于sm2门限密码算法的数字货币钱包管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810723730.2A CN108768666A (zh) | 2018-07-04 | 2018-07-04 | 一种基于sm2门限密码算法的数字货币钱包管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108768666A true CN108768666A (zh) | 2018-11-06 |
Family
ID=63975969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810723730.2A Pending CN108768666A (zh) | 2018-07-04 | 2018-07-04 | 一种基于sm2门限密码算法的数字货币钱包管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108768666A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109615351A (zh) * | 2018-11-09 | 2019-04-12 | 元灵通智能科技(深圳)有限公司 | Sim卡、终端机和数字货币管理系统 |
CN110046828A (zh) * | 2019-04-23 | 2019-07-23 | 上海能链众合科技有限公司 | 一种基于区块链的智能分账协议系统 |
CN110322247A (zh) * | 2019-07-12 | 2019-10-11 | 上海翎阳网络科技有限公司 | 货币资产管理存储系统及安全防护检测系统 |
CN110738474A (zh) * | 2019-10-14 | 2020-01-31 | 普联软件股份有限公司 | 一种基于国密sm2算法加密的数字代币券的方法及系统 |
CN111082927A (zh) * | 2019-11-07 | 2020-04-28 | 贵州警察学院 | 一种私钥管理方法、装置及终端设备 |
CN111144857A (zh) * | 2019-12-10 | 2020-05-12 | 深圳华数云计算技术有限公司 | 一种数字货币数据处理方法、系统和存储介质 |
CN111275411A (zh) * | 2018-12-05 | 2020-06-12 | 中国电信股份有限公司 | 数字货币钱包离线交易方法和系统、用户身份识别卡 |
CN111353770A (zh) * | 2020-04-05 | 2020-06-30 | 深圳华数云计算技术有限公司 | 一种跨设备数字钱包方案 |
CN111476555A (zh) * | 2020-03-23 | 2020-07-31 | 深圳华数云计算技术有限公司 | 一种数字货币数据处理方法、系统和存储介质 |
CN111476556A (zh) * | 2020-03-23 | 2020-07-31 | 深圳华数云计算技术有限公司 | 一种数字货币数据处理方法、系统和存储介质 |
CN111768199A (zh) * | 2020-06-30 | 2020-10-13 | 数字钱包(北京)科技有限公司 | 数字货币交易方法和本地钱包系统 |
CN112819629A (zh) * | 2021-02-08 | 2021-05-18 | 天地融科技股份有限公司 | 一种基于智能合约的数字货币交易方法及系统 |
CN113795369A (zh) * | 2018-11-21 | 2021-12-14 | 维罗纳控股经济特区公司 | 使用分布式账本进行唯一项创建 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106506156A (zh) * | 2016-12-15 | 2017-03-15 | 北京三未信安科技发展有限公司 | 一种基于椭圆曲线的分布式门限签名方法 |
CN106533698A (zh) * | 2016-12-15 | 2017-03-22 | 北京三未信安科技发展有限公司 | 一种基于rsa的分布式门限签名方法与系统 |
CN107330782A (zh) * | 2017-06-26 | 2017-11-07 | 中国人民银行数字货币研究所 | 基于数字货币实现筹资交易的方法和系统以及装置 |
CN108229938A (zh) * | 2017-12-28 | 2018-06-29 | 中国人民银行数字货币研究所 | 一种数字货币钱包开通的方法和系统 |
-
2018
- 2018-07-04 CN CN201810723730.2A patent/CN108768666A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106506156A (zh) * | 2016-12-15 | 2017-03-15 | 北京三未信安科技发展有限公司 | 一种基于椭圆曲线的分布式门限签名方法 |
CN106533698A (zh) * | 2016-12-15 | 2017-03-22 | 北京三未信安科技发展有限公司 | 一种基于rsa的分布式门限签名方法与系统 |
CN107330782A (zh) * | 2017-06-26 | 2017-11-07 | 中国人民银行数字货币研究所 | 基于数字货币实现筹资交易的方法和系统以及装置 |
CN108229938A (zh) * | 2017-12-28 | 2018-06-29 | 中国人民银行数字货币研究所 | 一种数字货币钱包开通的方法和系统 |
Non-Patent Citations (2)
Title |
---|
STEVEN GOLDFEDER: "Securing Bitcoin wallets via a new DSA/ECDSA threshold signature scheme", 《HTTP://STEVENGOLDFEDER.COM》 * |
尚铭等: "SM2椭圆曲线门限密码算法", 《密码学报》 * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109615351A (zh) * | 2018-11-09 | 2019-04-12 | 元灵通智能科技(深圳)有限公司 | Sim卡、终端机和数字货币管理系统 |
CN113795369A (zh) * | 2018-11-21 | 2021-12-14 | 维罗纳控股经济特区公司 | 使用分布式账本进行唯一项创建 |
CN111275411A (zh) * | 2018-12-05 | 2020-06-12 | 中国电信股份有限公司 | 数字货币钱包离线交易方法和系统、用户身份识别卡 |
CN110046828B (zh) * | 2019-04-23 | 2021-03-26 | 上海能链众合科技有限公司 | 一种基于区块链的智能分账协议系统 |
CN110046828A (zh) * | 2019-04-23 | 2019-07-23 | 上海能链众合科技有限公司 | 一种基于区块链的智能分账协议系统 |
CN110322247A (zh) * | 2019-07-12 | 2019-10-11 | 上海翎阳网络科技有限公司 | 货币资产管理存储系统及安全防护检测系统 |
CN110322247B (zh) * | 2019-07-12 | 2023-07-25 | 上海翎阳网络科技有限公司 | 货币资产管理存储系统及安全防护检测系统 |
CN110738474A (zh) * | 2019-10-14 | 2020-01-31 | 普联软件股份有限公司 | 一种基于国密sm2算法加密的数字代币券的方法及系统 |
CN111082927A (zh) * | 2019-11-07 | 2020-04-28 | 贵州警察学院 | 一种私钥管理方法、装置及终端设备 |
CN111082927B (zh) * | 2019-11-07 | 2023-12-12 | 贵州警察学院 | 一种私钥管理方法、装置及终端设备 |
CN111144857A (zh) * | 2019-12-10 | 2020-05-12 | 深圳华数云计算技术有限公司 | 一种数字货币数据处理方法、系统和存储介质 |
CN111476555A (zh) * | 2020-03-23 | 2020-07-31 | 深圳华数云计算技术有限公司 | 一种数字货币数据处理方法、系统和存储介质 |
CN111476556A (zh) * | 2020-03-23 | 2020-07-31 | 深圳华数云计算技术有限公司 | 一种数字货币数据处理方法、系统和存储介质 |
CN111353770A (zh) * | 2020-04-05 | 2020-06-30 | 深圳华数云计算技术有限公司 | 一种跨设备数字钱包方案 |
CN111768199A (zh) * | 2020-06-30 | 2020-10-13 | 数字钱包(北京)科技有限公司 | 数字货币交易方法和本地钱包系统 |
CN112819629A (zh) * | 2021-02-08 | 2021-05-18 | 天地融科技股份有限公司 | 一种基于智能合约的数字货币交易方法及系统 |
CN112819629B (zh) * | 2021-02-08 | 2023-06-13 | 天地融科技股份有限公司 | 一种基于智能合约的数字货币交易方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108768666A (zh) | 一种基于sm2门限密码算法的数字货币钱包管理方法 | |
US20240095728A1 (en) | Blockchain system for confidential and anonymous smart contracts | |
CN106779707B (zh) | 基于区块链的数字货币交易信息的监管方法、装置及系统 | |
KR101673073B1 (ko) | 블록체인 구조를 사용하는 암호화화폐 거래방법 | |
CN109377360A (zh) | 基于加权门限签名算法的区块链资产交易转账方法 | |
CN109937557A (zh) | 用于信息保护的系统和方法 | |
CN109003081A (zh) | 一种基于区块链的交易方法及系统 | |
CN108241979B (zh) | 基于区块链的多账本转账方法、电子装置及可读存储介质 | |
JP2019513312A (ja) | ブロックチェーン上の交換を実施するためのトークン化方法及びシステム | |
CN107278307A (zh) | 软件层的相互认证 | |
CN105684346A (zh) | 确保移动应用和网关之间空中下载通信安全的方法 | |
WO2020051710A1 (en) | System and process for managing digitized security tokens | |
CN108810868A (zh) | 共享套餐的操作方法和共享套餐系统 | |
CN108712409B (zh) | 一种基于私有区块链的电子账单交易系统 | |
CN103971241A (zh) | 一种双通道支付的方法和系统 | |
KR20210056968A (ko) | 다중 서명 보안 계정 제어 시스템 | |
CN110070363A (zh) | 区块链网络中的账户管理方法、验证方法及终端设备 | |
CN108769010A (zh) | 节点受邀注册的方法和装置 | |
CN109670826A (zh) | 基于非对称密钥池的抗量子计算区块链交易方法 | |
CN104301288B (zh) | 在线身份认证、在线交易验证、在线验证保护的方法与系统 | |
CN110278266B (zh) | 一种基于区块链的资源处理方法及装置 | |
CN1741074B (zh) | 一种防止银行信用卡被盗用的方法 | |
CN109003186A (zh) | 一种基于区块链的防止抵赖的交易方法、装置及系统 | |
TWI748630B (zh) | 基於手機名片的二維條碼支付方法及其支付系統、電腦可讀儲存媒介及電腦設備 | |
CN105096119A (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: 20181106 |