CN109615525A - 多签名共享账户的保护方法、***及电子设备 - Google Patents
多签名共享账户的保护方法、***及电子设备 Download PDFInfo
- Publication number
- CN109615525A CN109615525A CN201910052466.9A CN201910052466A CN109615525A CN 109615525 A CN109615525 A CN 109615525A CN 201910052466 A CN201910052466 A CN 201910052466A CN 109615525 A CN109615525 A CN 109615525A
- Authority
- CN
- China
- Prior art keywords
- signature
- accounts
- label
- account
- transaction
- 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.)
- Granted
Links
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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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
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)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种多签名共享账户的保护方法、***及电子设备,方法包括:生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户,多签合约账户对应一个存储在以太坊区块链上的多签合约;当m个私人账户中的任意n个私人账户进行多签交易时,获取n个私人账户的交易签名,并且当转账金额大于转账限额参数或转账时间间隔小于转账间隔时间限制参数时,获取未参与多签交易的m‑n个私人账户的知情签名;通过多签合约对交易签名进行验证或对交易签名以及知情签名进行验证,当验证通过后,执行多签交易。本发明可以避免多签合约账户的部分私人账户之间串通进行欺诈交易,从而保证共享账户的资产安全。
Description
技术领域
本发明涉及数字货币交易技术领域,尤其是涉及一种多签名共享账户的保护方法、***及电子设备。
背景技术
当前,基于以太坊智能合约的数字货币交易使用智能合约和私钥签名技术。用户使用自己的私钥对自己的交易或合约操作进行签名授权,实现数字货币的对外转账交易或合约执行。用户私钥签名可以通过用户地址进行验证,私钥由用户保管,用户地址对外公开。以太坊多签名技术是指使用多个用户地址共同生成一个共享合约账户,共享合约账户的资产由多个用户管理。此共享合约账户的资产交易必须使用原来生成账户的个人账户私钥进行签名才能授权交易,从而保护共享合约账户的资产安全,实现分布式安全。
常见的多签名技术使用2/3或3/5签名。比如2/3签名中3个个人账户共同生成共享账户,3个账户中任意2个账户都可以使用共享账户实现转账交易。但是,目前的多签名交易对于未参与交易的多签个人账户来说,交易信息不透明,有可能出现部分签名用户互相串通或进行私下交易,造成其他签名用户的账户资产损失的问题。
发明内容
有鉴于此,本发明的目的在于提供多签名共享账户的保护方法、***及电子设备,以缓解目前的多签名交易对于未参与交易的多签个人账户来说,交易信息不透明,有可能出现部分签名用户互相串通或进行私下交易,造成其他签名用户的账户资产损失的技术问题。
第一方面,本发明实施例提供了一种多签名共享账户的保护方法,包括:
生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户,所述多签合约账户对应一个存储在以太坊区块链上的多签合约;其中,m和n表示私人账户的数量,并且1《n《m;
当m个私人账户中的任意n个私人账户进行多签交易时,获取n个私人账户的交易签名,并且当转账金额大于所述转账限额参数或转账时间间隔小于所述转账间隔时间限制参数时,获取未参与所述多签交易的m-n个私人账户的知情签名;其中,所述交易签名和所述知情签名均为私人账户采用私钥对交易信息进行签名;
通过所述多签合约对所述交易签名进行验证或对所述交易签名以及所述知情签名进行验证,当验证通过后,执行所述多签交易。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述获取n个私人账户的交易签名,并且当转账金额大于所述转账限额参数或转账时间间隔小于所述转账间隔时间限制参数时,获取未参与所述多签交易的m-n个私人账户的知情签名的步骤,包括:
将交易信息发送给n个私人账户,以使n个私人账户对所述交易信息进行确认,进而获取n个私人账户对所述交易信息的交易签名;其中,所述交易信息包括交易号、交易时间以及交易细节;
判断转账金额是否大于所述转账限额参数或转账时间间隔是否小于所述转账间隔时间限制参数;
如果是,则将所述交易信息发送给未参与所述多签交易的m-n个私人账户,以获取m-n个私人账户分别针对所述交易信息的知情签名。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述通过所述多签合约对所述交易签名进行验证或对所述交易签名以及所述知情签名进行验证,当验证通过后,执行所述多签交易的步骤,包括:
通过所述多签合约对所述交易签名以及所述交易签名对应的私人账户个数进行验证;
当验证通过后,判断转账金额是否大于所述转账限额参数或转账时间间隔是否小于所述转账间隔时间限制参数;
如果是,则判断是否存在知情签名,如果否,则执行交易;
如果存在所述知情签名,则对所述知情签名以及所述知情签名对应的私人账户个数进行验证;
当验证通过,并确定所述交易签名对应的私人账户和所述知情签名对应的私人账户都在m个私人账户中,并且各个私人账户互不相交后,执行交易。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户的步骤,包括:
分别获取m个私人账户的地址,并设置所述转账限额参数和所述转账间隔时间限制参数,得到多签合约账户对应的n/m多签合约;
将所述n/m多签合约部署在以太坊区块链上,得到所述多签合约账户。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述设置所述转账限额参数和所述转账间隔时间限制参数的步骤之后,还包括:
设置超时回复时间;
所述获取未参与所述多签交易的m-n个私人账户的知情签名的步骤,包括:
将交易信息发送给未参与所述多签交易的m-n个私人账户,若m-n个私人账户的回复时间超过所述超时回复时间,则忽略所述知情签名。
结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述通过所述多签合约对所述交易签名进行验证或对所述交易签名以及所述知情签名进行验证的步骤,包括:
通过所述多签合约利用公钥和椭圆曲线算法对所述交易签名进行验证;或者利用公钥和椭圆曲线算法对所述交易签名以及所述知情签名进行验证。
第二方面,本发明实施例还提供一种多签合约账户的保护***,包括:
生成模块,用于生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户,所述多签合约账户对应一个存储在以太坊区块链上的多签合约;其中,m和n表示私人账户的数量,并且1《n《m;
签名获取模块,用于当m个私人账户中的任意n个私人账户进行多签交易时,获取n个私人账户的交易签名,并且当转账金额大于所述转账限额参数或转账时间间隔小于所述转账间隔时间限制参数时,获取未参与所述多签交易的m-n个私人账户的知情签名;其中,所述交易签名和所述知情签名均为私人账户采用私钥对交易信息进行签名;
签名验证模块,用于通过所述多签合约对所述交易签名进行验证或对所述交易签名以及所述知情签名进行验证,当验证通过后,执行所述多签交易。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述签名获取模块还用于:
将交易信息发送给n个私人账户,以使n个私人账户对所述交易信息进行确认,进而获取n个私人账户对所述交易信息的交易签名;其中,所述交易信息包括交易号、交易时间以及交易细节;
判断转账金额是否大于所述转账限额参数或转账时间间隔是否小于所述转账间隔时间限制参数;
如果是,则将所述交易信息发送给未参与所述多签交易的m-n个私人账户,以获取m-n个私人账户分别针对所述交易信息的知情签名。
第三方面,本发明实施例还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的方法的步骤。
第四方面,本发明实施例还提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行如第一方面所述的方法的步骤。
本发明实施例带来了以下有益效果:本发明提供了一种多签名共享账户的保护方法、***及电子设备,涉及数字货币交易技术领域,方法包括:生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户,多签合约账户对应一个存储在以太坊区块链上的多签合约;当m个私人账户中的任意n个私人账户进行多签交易时,获取n个私人账户的交易签名,并且当转账金额大于转账限额参数或转账时间间隔小于转账间隔时间限制参数时,获取未参与多签交易的m-n个私人账户的知情签名;通过多签合约对交易签名进行验证或对交易签名以及知情签名进行验证,当验证通过后,执行多签交易。在共享账户的转账金额过大或转账频率过于频繁时,使未参与交易的用户提交知情签名,并且通过验证机制对多签合约账户的各个私人账户进行信息平衡,保证各个私钥账户的相互独立,不会出现私钥账户进行私下交易或勾结,保证共享账户的资产安全。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的多签名共享账户的保护方法的流程图;
图2为本发明实施例提供的步骤S102的方法流程图;
图3为本发明实施例提供的步骤S103的方法流程图;
图4为本发明实施例提供的多签合约转账示意图;
图5为本发明实施例提供的多签名共享账户的保护***的示意图;
图6为本发明实施例提供的电子设备的示意图。
图标:10-生成模块;20-签名获取模块;30-签名验证模块;1000-电子设备;500-处理器;501-存储器;502-总线;503-通信接口。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
数字货币交易基于用户私钥签名技术,即用户进行转账交易时,使用自己的私钥对交易进行签名,发布到区块链网络,区块链节点使用用户的地址或公钥对交易进行验证,验证通过后交易被挖矿节点写入区块。当用户进行转账交易时,交易地址使用用户地址,用户使用私钥对交易进行签名并将签名交易发送到区块链网络,区块链节点通过用户地址和椭圆曲线算法对签名交易进行验证,并使用挖矿算法对交易进行确认,一旦交易被确认,交易就成功,相关数字资产账户信息被记录进入区块链。
多签名技术是对数字货币签名技术的进一步扩展,本质上是使用多个用户私钥对一个交易进行签名,将交易责任分散,实现了分布式的安全机制。例如在以太坊的2/3签名交易中,3个用户使用各自的用户地址生成了共享账户和多签合约,这个合约可以接收和转出以太坊所有代币。当共享合约地址转出代币时,3个用户中的任意2个用户使用各自私钥对交易进行签名,才能使交易成功。
目前的多签名交易对于未参与交易的多签个人账户来说,交易信息不透明,有可能出现部分签名用户互相串通或进行私下交易,造成其他签名用户的账户资产损失的问题。基于此,本发明实施例提供的一种多签名共享账户的保护方法、***及电子设备,可以在共享账户的转账金额过大或转账频率过于频繁时,使未参与交易的用户提交知情签名,并且通过验证机制对多签合约账户的各个私人账户进行信息平衡,保证各个私钥账户的相互独立,不会出现私钥账户进行私下交易或勾结,保证共享账户的资产安全。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种多签名共享账户的保护方法进行详细介绍。
如图1所示,本发明实施例提供了一种多签名共享账户的保护方法,包括以下步骤:
步骤S101,生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户,多签合约账户对应一个存储在以太坊区块链上的多签合约;其中,m和n表示私人账户的数量,并且1《n《m;
本步骤中,分别获取m个私人账户的地址,并设置转账限额参数和转账间隔时间限制参数,得到多签合约账户对应的n/m多签合约;将n/m多签合约部署在以太坊区块链上,得到多签合约账户。
在实际应用中,m个私人账户提交自己的地址,初始化转账限额参数和转账间隔时间限制参数,并初始化n/m多签合约,初始化合约需要所有私人账户的地址,转账金额限制参数,转账时间间隔限制。将多签合约部署在以太坊上,得到多签合约账户。多签合约中存储了m个私人账户的地址,当合约转账限额超过转账限额参数时或两次转账时间间隔小于转账间隔时间限制参数时,需要未参与交易的多签个人账户提交知情签名。
步骤S102,当m个私人账户中的任意n个私人账户进行多签交易时,获取n个私人账户的交易签名,并且当转账金额大于转账限额参数或转账时间间隔小于转账间隔时间限制参数时,获取未参与多签交易的m-n个私人账户的知情签名;其中,交易签名和知情签名均为私人账户采用私钥对交易信息进行签名;交易签名的信息包括交易号、交易时间和交易细节等,n个私人账户申请交易签名。知情签名同样包括交易号、交易时间和交易细节等。
进一步地,如图2所示,步骤S102包括以下步骤:
步骤S201,将交易信息发送给n个私人账户,以使n个私人账户对交易信息进行确认,进而获取n个私人账户对交易信息的交易签名;其中,交易信息包括交易号、交易时间以及交易细节,交易信息包括交易包括金额,转出地址,n个私人账户的信息等。
步骤S202,判断转账金额是否大于转账限额参数或转账时间间隔是否小于转账间隔时间限制参数;如果是,则执行步骤S203,如果否,则执行步骤S204;
步骤S203,将交易信息发送给未参与多签交易的m-n个私人账户,以获取m-n个私人账户分别针对交易信息的知情签名。
步骤S204,对交易签名进行验证。
另外,步骤101中设置转账限额参数和转账间隔时间限制参数时,还包括:设置超时回复时间;进一步地,在获取未参与多签交易的m-n个私人账户的知情签名时,将交易信息发送给未参与多签交易的m-n个私人账户,若m-n个私人账户的回复时间超过超时回复时间,则可忽略知情签名。
在实际应用中,m个私人账户中的任意n互相确认交易信息,包括交易号、交易时间和交易细节等。这n个账户中每个账户对交易信息进行签名,得到n个交易签名。若转账金额大于转账限额参数或最近两次转账时间间隔小于转账间隔时间限制参数,则将交易号、交易时间和交易细节等交易信息告知剩下的m-n个私人账户,这m-n个账户分别对得到的交易信息进行签名,得到m-n个知情签名。若在超时回复时间内未收到知情签名,则可忽略知情签名。最后一个私人账户收集所有签名,将所有签名合并,并发送给多签合约账户。合约账户验证签名成功,即可进行交易。
步骤S103,通过多签合约对交易签名进行验证或对交易签名以及知情签名进行验证,当验证通过后,执行多签交易。
进一步地,如图3所示,步骤S103包括以下步骤:
步骤S301,通过多签合约对交易签名以及交易签名对应的私人账户个数进行验证;
步骤S302,当验证通过后,判断转账金额是否大于转账限额参数或转账时间间隔是否小于转账间隔时间限制参数;如果是,则执行步骤S303,如果否,则执行步骤S304;
步骤S303,判断是否存在知情签名;如果是,则执行步骤S306,如果否,则执行步骤S305;
步骤S304,执行交易;
步骤S305,将当前交易信息记录到日志;
步骤S306,对知情签名以及知情签名对应的私人账户个数进行验证;
步骤S307,当验证通过,并确定交易签名对应的私人账户和知情签名对应的私人账户都在m个私人账户中,并且各个私人账户互不相交后,执行步骤S304。
进一步地,通过多签合约利用公钥和椭圆曲线算法对交易签名进行验证;或者利用公钥和椭圆曲线算法对交易签名以及知情签名进行验证。
以以太坊为例,私钥是32字节编码,公钥是由私钥和椭圆曲线算法共同生成的64字节数字,用户地址则是由公钥通过一些列哈希函数生成的20字节编码。在椭圆曲线加密中,利用了某种特殊形式的椭圆曲线,即定义在有限域上的椭圆曲线。其方程为:y2=x3+ax+b(mod p);这里p是素数,a和b为两个小于p的非负整数,它们满足:4a3+27b2(mod p)≠0其中,x,y,a,b∈Fp,则满足式(2)的点(x,y)和一个无穷点O就组成了椭圆曲线E。
椭圆曲线离散对数问题ECDLP定义如下:给定素数p和椭圆曲线E,对Q=kP,在已知P,Q的情况下求出小于p的正整数k。可以证明,已知k和P计算Q比较容易,而由Q和P计算k则比较困难,至今没有有效的方法来解决这个问题,这就是椭圆曲线加密算法原理之所在。
本实施例中,对于n/m共享账户的多签交易,首先需要进行交易的n个私人账户各自进行交易签名,当合约转账限额超过转账限额参数或两次转账时间间隔小于转账间隔时间限制参数时,需要剩下的m-n的私人账户对交易进行知情签名。若在超时回复时间内未收到m-n个私人账户的回复,则可以忽略知情签名。n个私人账户的交易签名和剩下m-n个私人账户的知情签名共同发送给多签合约账户,只有所有签名均验证成功,才可以执行转账交易。
本实施例以2/3签名合约为例,显示多签合约交易过程。如图4所示,A,B,C三个以太坊账户将各自账户地址汇总,由A部署生成合约账户S,S的转账金额限制为90Ether,转账时间间隔限制为5分钟。假设S账户已经有以太币300Ether。现在A,B准备将S账户的100Ether转向个人账户D。A提出交易内容和申请签名,发送给B。B加入自己的申请签名,发送给C。C加入确认签名发送给合约账户S。S验证签名通过,转账100Ether给D账户。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
如图5所示,本发明实施例还提供一种多签合约账户的保护***,包括:
生成模块10,用于生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户,多签合约账户对应一个存储在以太坊区块链上的多签合约;其中,m和n表示私人账户的数量,并且1《n《m;
签名获取模块20,用于当m个私人账户中的任意n个私人账户进行多签交易时,获取n个私人账户的交易签名,并且当转账金额大于转账限额参数或转账时间间隔小于转账间隔时间限制参数时,获取未参与多签交易的m-n个私人账户的知情签名;其中,交易签名和知情签名均为私人账户采用私钥对交易信息进行签名;
签名验证模块30,用于通过多签合约对交易签名进行验证或对交易签名以及知情签名进行验证,当验证通过后,执行多签交易。
进一步地,签名获取模块20还用于:
将交易信息发送给n个私人账户,以使n个私人账户对交易信息进行确认,进而获取n个私人账户对交易信息的交易签名;其中,交易信息包括交易号、交易时间以及交易细节;
判断转账金额是否大于转账限额参数或转账时间间隔是否小于转账间隔时间限制参数;
如果是,则将交易信息发送给未参与多签交易的m-n个私人账户,以获取m-n个私人账户分别针对交易信息的知情签名。
本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,处理器执行计算机程序时实现如上的多签名共享账户的保护方法的步骤。
本发明实施例还提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质,程序代码使处理器执行如上的多签名共享账户的保护方法的步骤。
本发明实施例提供的多签合约账户的保护***,与上述实施例提供的多签名共享账户的保护方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本发明实施例还提供一种电子设备,包括存储器、处理器,存储器中存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例提供的多签名共享账户的保护方法的步骤。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述实施例的多签名共享账户的保护方法的步骤。
参见图6,本发明实施例还提供一种电子设备1000,包括:处理器500,存储器501,总线502和通信接口503,处理器500、通信接口503和存储器501通过总线502连接;存储器501用于存储程序;处理器500用于通过总线502调用存储在存储器501中的程序,执行上述实施例的多签名共享账户的保护方法。
其中,存储器501可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口503(可以是有线或者无线)实现该***网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线502可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器501用于存储程序,处理器500在接收到执行指令后,执行程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器500中,或者由处理器500实现。
处理器500可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器500中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器500可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processing,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器501,处理器500读取存储器501中的信息,结合其硬件完成上述方法的步骤。
本发明实施例所提供的进行多签名共享账户的保护方法的计算机程序产品,包括存储了处理器可执行的非易失的程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种多签名共享账户的保护方法,其特征在于,包括:
生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户,所述多签合约账户对应一个存储在以太坊区块链上的多签合约;其中,m和n表示私人账户的数量,并且1《n《m;
当m个私人账户中的任意n个私人账户进行多签交易时,获取n个私人账户的交易签名,并且当转账金额大于所述转账限额参数或转账时间间隔小于所述转账间隔时间限制参数时,获取未参与所述多签交易的m-n个私人账户的知情签名;其中,所述交易签名和所述知情签名均为私人账户采用私钥对交易信息进行签名;
通过所述多签合约对所述交易签名进行验证或对所述交易签名以及所述知情签名进行验证,当验证通过后,执行所述多签交易。
2.根据权利要求1所述的方法,其特征在于,所述获取n个私人账户的交易签名,并且当转账金额大于所述转账限额参数或转账时间间隔小于所述转账间隔时间限制参数时,获取未参与所述多签交易的m-n个私人账户的知情签名的步骤,包括:
将交易信息发送给n个私人账户,以使n个私人账户对所述交易信息进行确认,进而获取n个私人账户对所述交易信息的交易签名;其中,所述交易信息包括交易号、交易时间以及交易细节;
判断转账金额是否大于所述转账限额参数或转账时间间隔是否小于所述转账间隔时间限制参数;
如果是,则将所述交易信息发送给未参与所述多签交易的m-n个私人账户,以获取m-n个私人账户分别针对所述交易信息的知情签名。
3.根据权利要求2所述的方法,其特征在于,所述通过所述多签合约对所述交易签名进行验证或对所述交易签名以及所述知情签名进行验证,当验证通过后,执行所述多签交易的步骤,包括:
通过所述多签合约对所述交易签名以及所述交易签名对应的私人账户个数进行验证;
当验证通过后,判断转账金额是否大于所述转账限额参数或转账时间间隔是否小于所述转账间隔时间限制参数;
如果是,则判断是否存在知情签名,如果否,则执行交易;
如果存在所述知情签名,则对所述知情签名以及所述知情签名对应的私人账户个数进行验证;
当验证通过,并确定所述交易签名对应的私人账户和所述知情签名对应的私人账户都在m个私人账户中,并且各个私人账户互不相交后,执行交易。
4.根据权利要求1所述的方法,其特征在于,所述生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户的步骤,包括:
分别获取m个私人账户的地址,并设置所述转账限额参数和所述转账间隔时间限制参数,得到多签合约账户对应的n/m多签合约;
将所述n/m多签合约部署在以太坊区块链上,得到所述多签合约账户。
5.根据权利要求4所述的方法,其特征在于,所述设置所述转账限额参数和所述转账间隔时间限制参数的步骤之后,还包括:
设置超时回复时间;
所述获取未参与所述多签交易的m-n个私人账户的知情签名的步骤,包括:
将交易信息发送给未参与所述多签交易的m-n个私人账户,若m-n个私人账户的回复时间超过所述超时回复时间,则忽略所述知情签名。
6.根据权利要求1所述的方法,其特征在于,所述通过所述多签合约对所述交易签名进行验证或对所述交易签名以及所述知情签名进行验证的步骤,包括:
通过所述多签合约利用公钥和椭圆曲线算法对所述交易签名进行验证;或者利用公钥和椭圆曲线算法对所述交易签名以及所述知情签名进行验证。
7.一种多签合约账户的保护***,其特征在于,包括:
生成模块,用于生成签名机制为n/m并且设置有转账限额参数和转账间隔时间限制参数的多签合约账户,所述多签合约账户对应一个存储在以太坊区块链上的多签合约;其中,m和n表示私人账户的数量,并且1《n《m;
签名获取模块,用于当m个私人账户中的任意n个私人账户进行多签交易时,获取n个私人账户的交易签名,并且当转账金额大于所述转账限额参数或转账时间间隔小于所述转账间隔时间限制参数时,获取未参与所述多签交易的m-n个私人账户的知情签名;其中,所述交易签名和所述知情签名均为私人账户采用私钥对交易信息进行签名;
签名验证模块,用于通过所述多签合约对所述交易签名进行验证或对所述交易签名以及所述知情签名进行验证,当验证通过后,执行所述多签交易。
8.根据权利要求7所述的***,其特征在于,所述签名获取模块还用于:
将交易信息发送给n个私人账户,以使n个私人账户对所述交易信息进行确认,进而获取n个私人账户对所述交易信息的交易签名;其中,所述交易信息包括交易号、交易时间以及交易细节;
判断转账金额是否大于所述转账限额参数或转账时间间隔是否小于所述转账间隔时间限制参数;
如果是,则将所述交易信息发送给未参与所述多签交易的m-n个私人账户,以获取m-n个私人账户分别针对所述交易信息的知情签名。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的方法的步骤。
10.一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行如权利要求1至6任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910052466.9A CN109615525B (zh) | 2019-01-18 | 2019-01-18 | 多签名共享账户的保护方法、***及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910052466.9A CN109615525B (zh) | 2019-01-18 | 2019-01-18 | 多签名共享账户的保护方法、***及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109615525A true CN109615525A (zh) | 2019-04-12 |
CN109615525B CN109615525B (zh) | 2020-12-04 |
Family
ID=66016998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910052466.9A Active CN109615525B (zh) | 2019-01-18 | 2019-01-18 | 多签名共享账户的保护方法、***及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109615525B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110443697A (zh) * | 2019-08-08 | 2019-11-12 | 北京阿尔山区块链联盟科技有限公司 | 银行账户的管理方法及装置 |
CN111027035A (zh) * | 2019-11-06 | 2020-04-17 | 香农数据有限公司 | 一种基于区块链的多重身份认证方法及*** |
CN111147228A (zh) * | 2019-12-28 | 2020-05-12 | 西安电子科技大学 | 基于以太坊IoT实体轻量级认证方法、***、智能终端 |
CN111523889A (zh) * | 2020-04-17 | 2020-08-11 | 昆明大棒客科技有限公司 | 多重签名实现方法、装置、设备和存储介质 |
CN111738704A (zh) * | 2020-05-29 | 2020-10-02 | 易联众信息技术股份有限公司 | 一种基于区块链的捐赠数据处理方法、设备及可读介质 |
CN112529709A (zh) * | 2020-12-30 | 2021-03-19 | 四川新华万云科技有限公司 | 一种基于多签技术的以太坊智能合约实现方法 |
CN113191751A (zh) * | 2021-04-22 | 2021-07-30 | 深圳前海移联科技有限公司 | 一种基于区块链的数字货币多签方法、***及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101017586A (zh) * | 2006-02-10 | 2007-08-15 | 刘明晶 | 客户自定义组合授权支付方法 |
US20090055202A1 (en) * | 2007-08-21 | 2009-02-26 | Microsoft Corporation | Framework for development of integration adapters that surface non-static, type-safe service contracts to lob systems |
CN105933331A (zh) * | 2016-06-13 | 2016-09-07 | 财付通支付科技有限公司 | 操作账户的方法和装置 |
CN108683509A (zh) * | 2018-05-15 | 2018-10-19 | 北京创世智链信息技术研究院 | 一种基于区块链的安全交易方法、装置及*** |
-
2019
- 2019-01-18 CN CN201910052466.9A patent/CN109615525B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101017586A (zh) * | 2006-02-10 | 2007-08-15 | 刘明晶 | 客户自定义组合授权支付方法 |
US20090055202A1 (en) * | 2007-08-21 | 2009-02-26 | Microsoft Corporation | Framework for development of integration adapters that surface non-static, type-safe service contracts to lob systems |
CN105933331A (zh) * | 2016-06-13 | 2016-09-07 | 财付通支付科技有限公司 | 操作账户的方法和装置 |
CN108683509A (zh) * | 2018-05-15 | 2018-10-19 | 北京创世智链信息技术研究院 | 一种基于区块链的安全交易方法、装置及*** |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110443697A (zh) * | 2019-08-08 | 2019-11-12 | 北京阿尔山区块链联盟科技有限公司 | 银行账户的管理方法及装置 |
CN111027035A (zh) * | 2019-11-06 | 2020-04-17 | 香农数据有限公司 | 一种基于区块链的多重身份认证方法及*** |
CN111147228A (zh) * | 2019-12-28 | 2020-05-12 | 西安电子科技大学 | 基于以太坊IoT实体轻量级认证方法、***、智能终端 |
CN111147228B (zh) * | 2019-12-28 | 2022-04-01 | 西安电子科技大学 | 基于以太坊IoT实体轻量级认证方法、***、智能终端 |
CN111523889A (zh) * | 2020-04-17 | 2020-08-11 | 昆明大棒客科技有限公司 | 多重签名实现方法、装置、设备和存储介质 |
CN111523889B (zh) * | 2020-04-17 | 2023-09-01 | 昆明大棒客科技有限公司 | 多重签名实现方法、装置、设备和存储介质 |
CN111738704A (zh) * | 2020-05-29 | 2020-10-02 | 易联众信息技术股份有限公司 | 一种基于区块链的捐赠数据处理方法、设备及可读介质 |
CN112529709A (zh) * | 2020-12-30 | 2021-03-19 | 四川新华万云科技有限公司 | 一种基于多签技术的以太坊智能合约实现方法 |
CN113191751A (zh) * | 2021-04-22 | 2021-07-30 | 深圳前海移联科技有限公司 | 一种基于区块链的数字货币多签方法、***及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109615525B (zh) | 2020-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109615525A (zh) | 多签名共享账户的保护方法、***及电子设备 | |
CN110046996B (zh) | 数据处理方法和装置 | |
CN109756582A (zh) | 区块链网络中的信息记录方法、装置、节点及存储介质 | |
RU2718229C1 (ru) | Установление защищенного канала | |
US20210150522A1 (en) | Computer-implemented system and method suitable for increasing the security of instant off-line blockchain transactions | |
CN108241979A (zh) | 基于区块链的多账本转账方法、电子装置及可读存储介质 | |
CN111064583B (zh) | 一种门限sm2数字签名方法、装置、电子设备及存储介质 | |
CN113489671B (zh) | 一种基于可验证随机函数的跨联盟链通讯方法和装置 | |
WO2019069053A1 (en) | SETTLEMENT OF OBLIGATIONS THROUGH COMPENSATION TRANSACTIONS | |
WO2015120082A1 (en) | Token verification using limited use certificates | |
EP2916484A1 (en) | User authentication using elliptic curve based OTP | |
Rupp et al. | P4R: Privacy-preserving pre-payments with refunds for transportation systems | |
CN108334927A (zh) | 一种nfc收单标签及其支付方法 | |
EP3785399B1 (en) | Method for generating on-board a cryptographic key using a physically unclonable function | |
CN108183889A (zh) | 身份认证方法及身份认证装置 | |
CN108900310A (zh) | 区块链签名处理方法及区块链签名处理装置 | |
CN109413099A (zh) | 基于证书的混合云加密通信方法、装置以及电子设备 | |
CN110620764B (zh) | 基于非对称密钥池和二次剩余的抗量子计算rfid认证方法及*** | |
CN111768199A (zh) | 数字货币交易方法和本地钱包*** | |
CN110650004A (zh) | 基于对称密钥池和在线离线签名的抗量子计算rfid认证方法及*** | |
KR100971038B1 (ko) | 다수의 엔티티와 그에 따른 장치에 부하를 분배하는암호화 방법 | |
Bhaskar et al. | Verito: A Practical System for Transparency and Accountability in Virtual Economies. | |
CN109754254A (zh) | 密钥管理方法、装置以及电子设备 | |
El Madhoun et al. | A secure cloud-based NFC payment architecture for small traders | |
CN111311210B (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 |