首页 / 专利库 / 银行与财务事项 / 加密货币 / 比特币 / 基于区块链系统的账户及系统

基于链系统的账户及系统

阅读:782发布:2020-05-22

专利汇可以提供基于链系统的账户及系统专利检索,专利查询,专利分析的服务。并且本 申请 公开了一种基于 区 块 链 系统的账户,包括:账户模块、API 接口 模块、交易模块、账户数据模块及交易数据模块。本申请提供的基于区块链系统的账户融合了UTXO模型和账户模型,同时具备了 比特币 和以太坊的优点;使用UTXO支持多并发的交易模式,具有较高的处理效率;通过账户中的UTXO集可以对交易进行精准溯源;可以利用UTXO对交易进行快速安全认证,具有良好的安全性;基于账户模式支持 智能合约 ,具有良好的扩展性,可以广泛用于多种场景、领域;支持交易的可 撤回 操作;支持交易的自动清算功能;保证了区块链技术的不可篡改、去中心化的特点。,下面是基于链系统的账户及系统专利的具体信息内容。

1.一种基于链系统的账户,其特征在于,包括:
账户模块,用于统一维护和管理用户账户,且所述账户模块的数据变化表示区块链状态数据的变化;
API接口模块;
交易模块,所述交易包括:交易验证和交易池管理;交易验证通过可插拔验证器的方式,通过添加或减少对应的验证器,可以实现对交易各种特性的支持;交易池管理用于收录和管理未上链的交易,为区块链系统出块和查询提供交易的读取接口;
账户数据模块,包括:账户类型、UTXO集合、清算时间和安全地址,所述账户的类型包括:普通账户及保险账户;及
交易数据模块,包括:
普通交易,所有基于区块链系统的操作都被认为是一笔交易,不涉及延时、清算、撤回的操作均认为是普通交易,普通交易实时生效;
节点激励,用于各节点参与系统记账、表决等活动的激励机制,激励机制可选,在授权链中可以取消;
保险账户创建交易,用于创建保险账户的交易,该交易的接收账号将被创建为保险账号吗,若该账号存在,则该账号由普通账号转变为保险账号,若该账号不存在,则新生成一个保险账号;
延时交易,延时交易是由保险账号转出的交易,延时交易可被撤回,且有撤回时间限制撤回交易,用于撤回延时交易的交易。
清算交易,用于清算保险账户的交易,在清算交易发生后,保险账户的数字资产将被转移到对应的安全账户。
设置清算时间交易,用于设置清算交易发生的时间,该设置具有延时性。
2.根据权利要求1所述的基于区块链系统的账户,其特征在于,底层数据结构负责组织和维护区块链中的所有账户信息,负责数据的有效组织,查询和存储;
链下账户管理根据具体的交易/区块信息,维护账户在区块链上的详细状态,包括账户的各种具体属性信息
链上账户管理把账户的链下状态映射为可存储在链上的状态,反之,根据区块链上存储的状态,能够获取到其代表的详细链下状态。
3.根据权利要求2所述的基于区块链系统的账户,其特征在于,创建保险账户,包括:
创建保险账户交易;及
查询所述保险账户的详情,并确定保险账户的创建情况;
设置清算时间,包括:
创建设置清算时间,包括以区块高度为时间单位以及实际时间和相对参考时间的方式;
设置清算时间生效延迟;
清算保险账户,包括:
在所述清算时间之前的可清算的数据将全部转入安全账户;
到达所述清算时间之后,由当前出块节点作为清算节点自动发起对应的清算交易;
所述清算节点验证清算交易对应可清算数据;
通过验证后,将所述可清算从被清算的可清算转移到安全账户;
可清算数据在清算后被清除;
安全账户收到被清算的可清算内所有数据。
4.根据权利要求3所述的基于区块链系统的账户,其特征在于,创建保险账户交易包括:
保险账户交易只有唯一的输入地址和唯一输出地址,且所述输入为所述保险账户,输出为所述保险账户的安全地址;所述清算时间必须合法到期;所述清算账户账户内数据不为空;所述保险账户交易的签名必须是所述清算节点的签名。
5.根据权利要求4所述的基于区块链系统的账户,其特征在于,设置清算时间包括:
交易只有唯一的输入和输出,且所述输入和输出均为所述保险账户;清算时间大于生效时间;设置未生效之前,不能再次设置新的清算时间,且使用旧的清算时间;清算交易与清算时间之间独立执行。
6.根据权利要求5所述的基于区块链系统的账户,其特征在于,所述保险账户的形式化定义为:
A(k)=
其中:
k是账户A(k)的唯一标识;
addr(k)是账户A(k)的地址;
type是账户A(k)的类型,type∈{n,s},n标示普通账户,s标识保险账户;
S(k)是账户A(k)管理的业务状态;
key(k)是账户A(k)的公钥;
L(t)是账户A(k)的清算时间;
I(k)指定保险账户撤回状态输出的账户;
data记录A(k)发起的可撤回交易列表。
7.根据权利要求6所述的基于区块链系统的账户,其特征在于,保险账户创建交易TSAC,创建保险账户A(k),操作是从正常账户A(j)发起类型为SAC的转账交易,TIAC是不可撤回交易,交易成功执行将Ii+1指定的数额从A(j)转给保险账户A(k),A(j)的状态更改为 A(k)的状态更改为
8.根据权利要求7所述的基于区块链系统的账户,其特征在于,可撤回交易TSAR,从保险账户A(k)发起,转账给账户A(j),即
其中,θ是 设定的可撤回时间。
9.根据权利要求8所述的基于区块链系统的账户,其特征在于,撤回交易TR,从保险账户A(k)发起,撤回 到交易发起账户A(k)绑定的安全账户I(k),即:
TR正确执行的条件是交易Tm所在的区块高度小于θ。
10.根据权利要求9所述的基于区块链系统的账户,其特征在于,可撤回交易TSAR和撤回交易TR,设计可撤回业务包括:
用户k在时刻i通过保险账户A(k)发起一笔可撤回转账交易TSAR。TSAR指定转账金额I,目的账户为用户j的账户A(j),延时生效时间为θ;
交易经验证和链上确认后,在账本中记录TSAR之外,也在账户A(k)和A(j)中记录TSAR涉及的状态更改,但并未立刻更改 和
如果用户k在时刻i如果在时刻i在时刻n=θ,并且TSAR并未撤回,转账双方账户状态发生更改,即转账到账,在时刻n≥θ,对TSAR发起的撤回交易TR均为无效交易。

说明书全文

基于链系统的账户及系统

技术领域

[0001] 本申请涉及通信领域,具体而言,涉及一种基于区块链系统的账户。

背景技术

[0002] 区块链技术不断普及发展,从单一的加密数字货币逐渐向其他应用领域延伸,这一情况要求区块链系统能够应对大量的复杂业务环境而非简单的记账本形式。在当前区块链的主要形态结构还是比特币系统的UTXO和以太坊的账户模型,两者都存在不同的缺陷和问题,因此无法简单套用到除数字货币场景以外的其他应用领域中。
[0003] 比特币系统不存在严格意义上的账户模型,而使用了UTXO(全名Unspent Transaction Outputs,未花费交易输出),UTXO具有明显的优点和缺点。优点如下:1)首先,UTXO因为没有帐户的存在,因此容许平行进行多笔交易;2)其次使用UTXO具有较高的溯源能,可以精确追溯每一笔交易的历史轨迹;3)第三是安全性,UTXO也被认为比较安全,可以透过Simple Payment Verification(SPV)来快速验证检验交易。但UTXO也存在显著的缺点:4)由于UTXO是Stateless无状态的,这对于在其上开发应用程序非常的不利,Qtum虽然底子是UTXO的交易模式,但是仍然会设计Account Abstraction Layer账户抽象层来让应用程序的开发变得容易。
[0004] 以太坊系统为了5)实现多场景应用,引入图灵完备的智能合约增加其可编程性而使用账户模型,但是由此产生的问题是:6)由于以太坊采用的Account模式而非比特币中的UTXO模式,所以交易不能并发执行,极大的限制了处理效率,以太坊中的交易是按账户中的nonce顺序同步执行;7)扩展性不足,在以太坊网络中产生大量交易的时候,交易确认的时间会变长。发明内容
[0005] 本申请的主要目的在于提供一种基于区块链系统的账户,在保证具备上述比特币和以太坊系统优点的同时,改善或解决其自身的缺陷,实现集二者有点的新型的安全、高效、可扩展的区块链系统。
[0006] 为了达到上述目的,本申请提供的基于区块链系统的账户包括:
[0007] 账户模块,用于统一维护和管理用户账户,且所述账户模块的数据变化表示区块链状态数据的变化;
[0008] API接口模块;
[0009] 交易模块,所述交易包括:交易验证和交易池管理;交易验证通过可插拔验证器的方式,通过添加或减少对应的验证器,可以实现对交易各种特性的支持;交易池管理用于收录和管理未上链的交易,为区块链系统出块和查询提供交易的读取接口;
[0010] 账户数据模块,包括账户ID,所述账户的类型包括:一是普通账户及保险账户;及[0011] 交易数据模块,包括:
[0012] 普通交易,所有基于区块链系统的操作都被认为是一笔交易,不涉及延时、清算、撤回的操作均认为是普通交易,普通交易实时生效;
[0013] 节点激励,用于各节点参与系统记账、表决等活动的激励机制,激励机制可选,在授权链中可以取消;
[0014] 保险账户创建交易,用于创建保险账户的交易,该交易的接收账号将被创建为保险账号吗,若该账号存在,则该账号由普通账号转变为保险账号,若该账号不存在,则新生成一个保险账号;
[0015] 延时交易,延时交易是由保险账号转出的交易,延时交易可被撤回,且有撤回时间限制
[0016] 撤回交易,用于撤回延时交易的交易。
[0017] 清算交易,用于清算保险账户的交易,在清算交易发生后,保险账户的数字资产将被转移到对应的安全账户。
[0018] 设置清算时间交易,用于设置清算交易发生的时间,该设置具有延时性。
[0019] 可选地,底层数据结构负责组织和维护区块链中的所有账户信息,负责数据的有效组织,查询和存储;
[0020] 链下账户管理根据具体的交易/区块信息,维护账户在区块链上的详细状态,包括账户的各种具体属性信息
[0021] 链上账户管理把账户的链下状态映射为可存储在链上的状态,反之,根据区块链上存储的状态,能够获取到其代表的详细链下状态。
[0022] 可选地,创建保险账户,包括:
[0023] 创建保险账户交易;及
[0024] 查询所述保险账户的详情,并确定保险账户的创建情况;
[0025] 设置清算时间,包括:
[0026] 创建设置清算时间,包括以区块高度为时间单位以及实际时间和相对参考时间的方式;
[0027] 设置清算时间生效延迟;
[0028] 清算保险账户,包括:
[0029] 在所述清算时间之前的可清算的数据将全部转入安全账户;
[0030] 到达所述清算时间之后,由当前出块节点作为清算节点自动发起对应的清算交易;
[0031] 所述清算节点验证清算交易对应可清算数据;
[0032] 通过验证后,将所述可清算从被清算的可清算转移到安全账户;
[0033] 可清算数据在清算后被清除;
[0034] 安全账户收到被清算的可清算内所有数据。
[0035] 可选地,创建保险账户交易包括:保险账户交易只有唯一的输入地址和唯一输出地址,且所述输入为所述保险账户,输出为所述保险账户的安全地址;所述清算时间必须合法到期;所述清算账户账户内数据不为空;所述保险账户交易的签名必须是所述清算节点的签名。
[0036] 可选地,设置清算时间包括:交易只有唯一的输入和输出,且所述输入和输出均为所述保险账户;清算时间大于生效时间;设置未生效之前,不能再次设置新的清算时间,且使用旧的清算时间;清算交易与清算时间之间独立执行。
[0037] 可选地,所述保险账户的形式化定义为:
[0038] A(k)=
[0039] 其中:
[0040] k是账户A(k)的唯一标识;
[0041] addr(k)是账户A(k)的地址;
[0042] type是账户A(k)的类型,type∈{n,s},n标示普通账户,s标识保险账户;
[0043] S(k)是账户A(k)管理的业务状态;
[0044] key(k)是账户A(k)的公钥;
[0045] L(t)是账户A(k)的清算时间;
[0046] I(k)指定保险账户撤回状态输出的账户;
[0047] data记录A(k)发起的可撤回交易列表。
[0048] 可选地,保险账户创建交易TSAC,创建保险账户A(k),操作是从正常账户A(j)发起类型为SAC的转账交易,
[0049]
[0050] TIAC是不可撤回交易,交易成功执行将Ii+1指定的数额从A(j)转给保险账户A(k),A(j)的状态更改为 A(k)的状态更改为
[0051] 可选地,可撤回交易TSAR,从保险账户A(k)发起,转账给账户A(j),即[0052]
[0053] 其中,θ是 设定的可撤回时间。
[0054] 可选地,撤回交易TR,从保险账户A(k)发起,撤回 到交易发起账户A(k)绑定的安全账户I(k),即:
[0055]
[0056] TR正确执行的条件是交易Tm所在的区块高度小于θ。
[0057] 可选地,可撤回交易TSAR和撤回交易TR,设计可撤回业务包括:
[0058] 用户k在时刻i通过保险账户A(k)发起一笔可撤回转账交易TSAR。TSAR指定转账金额I,目的账户为用户j的账户A(j),延时生效时间为θ;
[0059] 交易经验证和链上确认后,在账本中记录TSAR之外,也在账户A(k)和A(j)中记录TSAR涉及的状态更改,但并未立刻更改 和
[0060] 如果用户k在时刻i
[0061] 如果在时刻i
[0062] 在时刻n=θ,并且TSAR并未撤回,转账双方账户状态发生更改,即转账到账,[0063] 在时刻n≥θ,对TSAR发起的撤回交易TR均为无效交易。
[0064] 与现有技术相比,本申请所提供的基于区块链系统的账户,具有以下优点:
[0065] 1.融合了UTXO模型和账户模型,同时具备了比特币和以太坊的优点[0066] 2.使用UTXO支持多并发的交易模式,具有较高的处理效率;
[0067] 3.通过账户中的UTXO集可以对交易进行精准溯源;
[0068] 4.可以利用UTXO对交易进行快速安全认证,具有良好的安全性;
[0069] 5.基于账户模式支持智能合约,具有良好的扩展性,可以广泛用于多种场景、领域;
[0070] 6.支持交易的可撤回操作;
[0071] 7.支持交易的自动清算功能;
[0072] 8.保证了区块链技术的不可篡改、去中心化的特点。附图说明
[0073] 构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0074] 图1是根据本申请一个实施例的基于区块链系统的账户的流程示意图;
[0075] 图2是根据本申请一个实施例的计算机设备的示意图;以及
[0076] 图3是根据本申请一个实施例的计算机可读存储介质的示意图。

具体实施方式

[0077] 为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
[0078] 需要说明的是,本申请的说明书权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0079] 本申请提供一种基于区块链系统的账户及系统,以解决区块链系统中因密钥遗失而造成的数据丢失;保证区块链交易系统的极难篡改、去中心化的特性不变;提高区块链系统的清算效率;通过自动清算避免人为操作存在的险。
[0080] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0081] 在本申请所包的公式当中设有多个变量或常量,这些变量或常量的基本定义如下:
[0082] 业务状态(State):业务状态通常以一个有理数表示状态s∈R。时刻(区块高度)n的业务状态表示为sn。
[0083] 账户(Account):账户是业务状态的集合。给定业务状态空间S,账户空间A,具有k个业务状态的账户A(x)∈A形式化表示为A(k)={s1,...,si},si∈S,i=[1,k]。账户A(x)在时刻n的状态表示为 si∈S,i=[1,k]。
[0084] 交易(Transaction):业务状态的一次更改称为一次交易,即顺序为第i+1个交易标识为Ti=F(Si,Ii+1)→Si+1,i∈N。
[0085] 状态机(State Machine):状态机表示账户业务状态随时间的变化情况。定义状态转移函数F(S,I):S*S→S,其中I,S∈S分别称为状态转移函数的输入和起始状态,状态机形式化表示为状态转移函数的集合,M={F(Si,Ii)→Si+1},其中 是所有账户在第i个交易时的业务状态, 是账户在第i个交易的输入。
[0086] 账本(Ledger):交易的集合形成账本L。时刻n的账本表示为L(n)={Ti},i=[1,n]。
[0087] 业务状态可撤回(State Retractable):业务状态可撤回指从业务层面看,对账本状态的更改可在严格许可的条件下部分或完全撤回。对于给定交易顺序i和j,i
[0088] 可撤回账本(Retractable Ledger):如果账本是采用支持业务状态可撤回的区块链实现,则称为可撤回账本。
[0089] 在本申请一实施例中,基于区块链系统的账户主要包括的账户模型、接口设计、交易模块设计、账户数据结构、交易数据设计五个部分。
[0090] 账户模块结构,账户模块负责用户账户的统一维护和管理,区块链状态数据的变化,最终体现在账户数据的变化。底层数据结构负责组织和维护区块链中的所有账户信息,不解读具体数据的意义,但负责数据的有效组织,查询和存储。
[0091] 链下账户管理根据具体的交易/区块信息,维护账户在区块链上的详细状态,包括账户的各种具体属性信息。
[0092] 链上账户管理把账户的链下状态映射为可存储在链上的状态,反之,根据区块链上存储的状态,能够获取到其代表的详细链下状态。
[0093] 接口设计:账户模块是作为库的方式存在,并不独立运行,而是由节点模块调用管理。因此对外发布的接口为API接口。
[0094] 交易模块设计,交易包括交易验证和交易池管理:
[0095] 交易的验证通过可插拔验证器的方式,通过添加或减少对应的验证器,可以实现对交易各种特性的支持,比如可撤回交易的相关验证就是通过一个特定的验证器实现。
[0096] 交易池的管理负责收录和管理未上链的交易,为区块链系统出块和查询提供交易的读取接口。
[0097] 交易数据设计账户数据结构包括了账户类型、UTXO集合、清算时间和安全地址。
[0098] 账户ID是账户唯一识别标识
[0099] 账户类型分为两类:一是普通账户、二是保险账户。
[0100] UTXO集合代表账户拥有的UTXO数目,也就是账目余额。
[0101] 清算时间代表账户在指定时间后将会实现账户清算。
[0102] 安全地址是执行账户清算,以及可撤回操作时,对应的目标地址。
[0103] 相关定义如下:
[0104] 普通账户:用户对正常业务建立的账户。由普通账户发起的交易,经验证后即时生效,不可撤销。
[0105] 保险账户:用户为可撤销业务建立的账户。保险账户只支持延时交易。在创建保险账户时,会绑定保险账户的安全账户,清算时间。
[0106] 安全账户:和保险账户绑定的普通账户
[0107] 延时交易。延时交易是由保险账号转出的交易,延时交易可被撤回。且有撤回时间限制。
[0108] 撤回交易。用于撤回延时交易的交易。
[0109] 清算交易。用于清算保险账户的交易,在清算交易发生后,保险账户的数字资产将被转移到对应的安全账户。
[0110] 交易数据设计
[0111] 普通交易,所有基于区块链系统的操作都被认为是一笔交易,不涉及延时、清算、撤回的操作均认为是普通交易,普通交易实时生效。
[0112] 节点激励。用于各节点参与系统记账、表决等活动的激励机制,激励机制可选,在授权链中可以取消。
[0113] 保险账户创建交易。用于创建保险账户的交易,该交易的接收账号将被创建为保险账号。若该账号存在,则该账号由普通账号转变为保险账号,若该账号不存在,则新生成一个保险账号。
[0114] 延时交易。延时交易是由保险账号转出的交易,延时交易可被撤回。且有撤回时间限制
[0115] 撤回交易。用于撤回延时交易的交易。
[0116] 清算交易。用于清算保险账户的交易,在清算交易发生后,保险账户的数字资产将被转移到对应的安全账户。
[0117] 设置清算时间交易。用于设置清算交易发生的时间,该设置具有延时性。
[0118] 交易的签名用于交易的校验,保证交易的合法性。
[0119] 交易的数据保存交易的附加数据,比如在可撤回相关交易中的清算信息,安全地址等。
[0120] 请参照图1,本申请一实施例提供了一种基于区块链系统的账户,包括:
[0121] S2:创建保险账户,包括:
[0122] S21:创建保险账户交易;及
[0123] S22:查询所述保险账户的详情,并确定保险账户的创建情况;
[0124] S4:设置清算时间,包括:
[0125] S41:创建设置清算时间,包括以区块高度为时间单位以及实际时间和相对参考时间的方式;
[0126] S42:设置清算时间生效延迟;
[0127] S6:清算保险账户,包括:
[0128] S61:在所述清算时间之前的可清算的数据将全部转入安全账户;
[0129] S62:到达所述清算时间之后,由当前出块节点作为清算节点自动发起对应的清算交易;
[0130] S63:所述清算节点验证清算交易对应可清算数据;
[0131] S64:通过验证后,将所述可清算从被清算的可清算转移到安全账户;
[0132] S66:可清算数据在清算后被清除;
[0133] S66:安全账户收到被清算的可清算内所有数据。
[0134] 在本申请一实施例中,创建保险账户交易包括:保险账户交易只有唯一的输入地址和唯一输出地址,且所述输入为所述保险账户,输出为所述保险账户的安全地址;所述清算时间必须合法到期;所述清算账户账户内数据不为空;所述保险账户交易的签名必须是所述清算节点的签名。
[0135] 在本申请一实施例中,设置清算时间包括:交易只有唯一的输入和输出,且所述输入和输出均为所述保险账户;清算时间大于生效时间;设置未生效之前,不能再次设置新的清算时间,且使用旧的清算时间;清算交易与清算时间之间独立执行。
[0136] 在本申请一实施例中,所述保险账户的形式化定义为:
[0137] A(k)=
[0138] 其中:
[0139] k是账户A(k)的唯一标识;
[0140] addr(k)是账户A(k)的地址;
[0141] type是账户A(k)的类型,type∈{n,s},n标示普通账户,s标识保险账户;
[0142] S(k)是账户A(k)管理的业务状态;
[0143] key(k)是账户A(k)的公钥;
[0144] L(t)是账户A(k)的清算时间(区块高度);
[0145] I(k)指定保险账户撤回状态输出的账户;
[0146] data记录A(k)发起的可撤回交易列表。
[0147] 在本申请一实施例中,保险账户创建交易TSAC(SecureAccountCreation Transaction),创建保险账户A(k),操作是从正常账户A(j)发起类型为SAC的转账交易,[0148]
[0149] TIAC是不可撤回交易,交易成功执行将Ii+1指定的数额从A(j)转给保险账户A(k),A(j)的状态更改为 A(k)的状态更改为
[0150] 在本申请一实施例中,可撤回交易TSAR(SecureAccountRetractable Transaction),从保险账户A(k)发起,转账给账户A(j),即
[0151]
[0152] 其中,θ是 设定的可撤回时间。
[0153] 在本申请一实施例中,撤回交易TR(Retract Transaction),从保险账户A(k)发起,撤回 到交易发起账户A(k)绑定的安全账户I(k),即:
[0154]
[0155] TR正确执行的条件是交易Tm所在的区块高度小于θ。
[0156] 在本申请一实施例中,可撤回交易TSAR和撤回交易TR,设计可撤回业务包括:
[0157] 用户k在时刻i通过保险账户A(k)发起一笔可撤回转账交易TSAR。TSAR指定转账金额I,目的账户为用户j的账户A(j),延时生效时间为θ;
[0158] 交易经验证和链上确认后,在账本中记录TSAR之外,也在账户A(k)和A(j)中记录TSAR涉及的状态更改,但并未立刻更改 和
[0159] 如果用户k在时刻i
[0160] 如果在时刻i
[0161] 在时刻n=θ,并且TSAR并未撤回,转账双方账户状态发生更改,即转账到账,[0162] 在时刻n≥θ,对TSAR发起的撤回交易TR均为无效交易。
[0163] 本申请还提供了一种区块链的账户撤回系统,包括:
[0164] 保险账户客户端,用于发起转账交易请求及或撤回请求至服务器
[0165] 服务器端,用于延迟θ时间执行或更改该转账交易请求。
[0166] 在本申请一实施例中,基于可撤回模型做了具体验证实现,一是引入保险账户作为保险账户,并以设定的安全账户作为保险账户撤回的输出;二是实现了交易撤回逻辑,适用于用户在具有账户密钥但产生非预期转账交易的场景,例如黑客攻击、误操作和金融诈骗等;三是引入可撤回交易和撤回交易类型,支撑交易撤回逻辑。
[0167] 保险账户支持可撤回交易:
[0168] 从该类型账户转出的交易具有设定的延时生效期
[0169] 交易本身记录在区块链系统中,
[0170] 但账户状态不会上更改,而是等待延时期限之后才会真正生效[0171] 在延时期内,保险账户可发起撤回交易撤回对应的转出交易对账户状态的操作。
[0172] 保险账户撤回的目标账户称为安全账户。
[0173] 保险账户的撤回输出并非返回发起保险账户本身,而是输出到安全账户。安全账户提高了撤回的安全性。
[0174] 通过账户类型的划分,用户能够清楚的分辨当前账户是否为保险账户,区分账户转出的资产是否可撤回,以及可撤回交易是否已经生效,便于用户根据实际需要选择不不同的账户类型
[0175] 交易的撤回逻辑适用于用户拥有密钥的情况下撤回保险账户转出交易的场景,实现流程如下:
[0176] 保险账户A发起一笔转账交易转移资产到账户B,并设置为可撤回交易,交易执行成功后,在A和B账户中分别记录交易及生效时间,
[0177] 但转账资产在A和B中不可用。
[0178] 在交易有效期已过情况下,转账交易正式生效,资产在B中正式可用。
[0179] 在交易易有效期内,保险账户A本身可发起回撤交易,
[0180] 则资产撤回A并立即可用,B中取消转账。
[0181] 交易本身被记录在区块链系统中,并清除账户中维持的未生效交易。
[0182] 如图2所示,本申请还提供了一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法。
[0183] 如图3所示,一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现上述任一项所述的方法。
[0184] 一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行上述任一项所述的方法。
[0185] 本申请所提供的基于区块链系统的账户定义了不同功能的账户及行为名称:
[0186] 普通账户/地址:用户对正常业务建立的账户。由普通账户发起的交易,经验证后即时生效,不可撤销。
[0187] 保险账户/地址:用户为可撤销业务建立的账户。保险账户只支持延时交易。在创建保险账户时,会绑定保险账户并要求设置清算时间。
[0188] 安全账户/地址:指保险账户绑定的普通账户。
[0189] 创建保险账户交易:当用户需要创建保险账户时,发起一笔创建保险账户交易,同时在交易中指定保险账户地址,安全账户地址,清算时间和初始的安全账户,清算时间。
[0190] 清算交易:实现清空保险账户并将金额全部转入安全账户的交易。清算交易完成后,原保险账户中数据全部转入其所绑定的安全账户中
[0191] 清算时间:用户为保险账户设置的一个时间长度值。一旦发生用户私钥丢失而无法提取保险账户中的数据,那么该数据会在清算时间到期后自动转存入安全账户。清算时间采用区块高度作为运算。
[0192] 清算时间延迟生效时间:指用户发起设置保险账户的清算时间,到清算时间真实生效之间的时间。也就是设置清算时间不会立即生效,在清算时间延迟生效时间之后才会生效。
[0193] 设置清算时间交易:用户修改保险账户清算时间所发起的交易。
[0194] 交易事务账户数据结构中主要增加以下结构:
[0195] 清算时间(说明见上述1)中e)项)代表账户在指定时间后将自动实施账户清算。
[0196] 安全地址,代表账户在实施清算行为是对应的数据转入地址。
[0197] 上述数据通过链下账户树的形式组织起来,最终形成账户树根将保存到区块中,账户树的数据结构形式为MPT。
[0198] 与现有技术相比,本申请所提供的基于区块链系统的账户,具有以下优点:
[0199] 1.融合了UTXO模型和账户模型,同时具备了比特币和以太坊的优点[0200] 2.使用UTXO支持多并发的交易模式,具有较高的处理效率;
[0201] 3.通过账户中的UTXO集可以对交易进行精准溯源;
[0202] 4.可以利用UTXO对交易进行快速安全认证,具有良好的安全性;
[0203] 5.基于账户模式支持智能合约,具有良好的扩展性,可以广泛用于多种场景、领域;
[0204] 6.支持交易的可撤回操作;
[0205] 7.支持交易的自动清算功能;
[0206] 8.保证了区块链技术的不可篡改、去中心化的特点。
[0207] 显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件软件结合。
[0208] 以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈