CN110175840A - 联盟链中实现轻钱包机制的方法、客户端、联盟链及系统 - Google Patents
联盟链中实现轻钱包机制的方法、客户端、联盟链及系统 Download PDFInfo
- Publication number
- CN110175840A CN110175840A CN201910319996.5A CN201910319996A CN110175840A CN 110175840 A CN110175840 A CN 110175840A CN 201910319996 A CN201910319996 A CN 201910319996A CN 110175840 A CN110175840 A CN 110175840A
- Authority
- CN
- China
- Prior art keywords
- cryptographic hash
- chain
- alliance
- transaction
- client end
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Marketing (AREA)
- Economics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种联盟链中实现轻钱包机制的方法、客户端、联盟链及系统,属于区块链领域,包括:运行有可信执行环境的钱包客户端在普通执行环境中向联盟链发起一笔交易,以使得接收节点对交易共识后将其存储到联盟链和本地默克尔树中;钱包客户端切换至可信执行环境后,若本地存储的默克尔树根节点哈希值与联盟链中记录有最新交易信息的默克尔树的根节点哈希值不相等,则更新本地存储直至二者相等;从联盟链获得交易在默克尔树中的验证路径,以重新计算默克尔树的根节点哈希值,并与钱包客户端本地存储的默克尔树根节点哈希值进行比较,以判定交易是成功或失败。本发明能够在联盟链中实现轻钱包机制,并提高轻钱包机制的安全性。
Description
技术领域
本发明属于区块链领域,更具体地,涉及一种联盟链中实现轻钱包机制的方法、客户端、联盟链及系统。
背景技术
经过近几年的发展,数字货币在金融科技领域越来越受欢迎其总市值于2018年1月曾达到8000亿美元(其中比特币就占有率超过了30%)。不同于传统的钱包,用于管理数字货币的数字钱包更加依赖于钱包的私钥,因此钱包私钥的安全性也愈发的重要。
当前已有的数字钱包种类繁多,其中,硬件数字钱包安全性高,但用户需要携带额外的专用的物理设备,因此使用很不方便;软件数字钱包使用方便,但是其安全性无法得到保证。此外,上述硬件数字钱包和软件数字钱包都必须同步完整的区块链,因此,对运行钱包客户端的设备的存储能力提出了较高要求,然而,当前的大多数移动设备并不具备存储整个区块链的能力。轻钱包是不同于前述两种钱包的一种轻量级的数字钱包,只有简单支付验证(Simplified Payment Verification,SPV)功能,只维护与自己相关的区块链数据,极大程度上减小了对设备的存储能力要求。在轻钱包机制中,数字货币的交易被组织成默克尔树结构,交易均存储在默克尔树的叶子节点上,然后通过两个一组合并哈希直至得到根节点;根节点的哈希值作为一个区块头的元素,区块头中还包含前一区块的哈希值,使得每一个区块逻辑上以链的方式串联起来;图1所示为一个默克尔树的示意图,其中,叶子节点Ha、Hb、Hc和Hd分别对应四笔交易TxA、TxB、TxC以及TxD的哈希值。
区块链根据开放程度被划分为公有链和联盟链,公有链允许任何个人自由加入,而联盟链只允许拥有特定权限的个人或组织加入。联盟链能够很好的解决企业间合作上的问题,包括效率和信任等,在联盟链中实现轻钱包机制具有一定的实际应用意义,但是,目前尚没有一种能够在联盟链中实现轻钱包机制的方法。此外,现有的轻钱包机制没有办法保护SPV交易验证的过程和钱包地址的生成过程,使得现有的轻钱包机制的安全性得不到保证。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种联盟链中实现轻钱包机制的方法、客户端、联盟链及系统,其目的在于,在联盟链中实现轻钱包机制,并提高轻钱包机制的安全性。
为实现上述目的,按照本发明的第一方面,提供了一种联盟链中实现轻钱包机制的方法,包括:
(1)运行有可信执行环境的钱包客户端在普通执行环境中向联盟链节点发起一笔交易,以使得接收到交易的联盟链节点对该交易共识后将其存储到在联盟链中,并将该交易存储到本地默克尔树中;
(2)钱包客户端切换至可信执行环境后,获取本地存储的默克尔树根节点哈希值,记为第一哈希值,并从联盟链获取区块头信息以获得联盟链中记录有最新交易信息的默克尔树的根节点哈希值,记为第二哈希值;
(3)若第一哈希值等于第二哈希值,则转入步骤(4);否则,钱包客户端更新第一哈希值并存储更新后的哈希值,以使得记录有最新交易信息的默克尔树的根节点哈希值被存储到钱包客户端中,转入步骤(2);
(4)钱包客户端从联盟链获得交易在默克尔树中的验证路径,并根据验证路径重新计算默克尔树的根节点哈希值,记为第三哈希值;
(5)钱包客户端获取本地存储的默克尔树根节点哈希值,并与第三哈希值进行比较,若相等,则判定交易成功以结束交易;否则,判定交易失败以结束交易。
通过上述方法,基于SPV技术在盟链中实现了的轻钱包机制,并且通过在可信执行环境中执行步骤(2)~(5),使得默克尔树根节点哈希值的验证、验证路径的验证等交易验证过程均在可信执行环境中执行,实现了对SPV交易验证过程的保护,从而提高了轻钱包机制的安全性。
进一步地,本发明所提供的联盟链中实现轻钱包机制的方法,还包括:
在发起任何交易之前,钱包客户端在可信执行环境中,依次进执行下操作:根据可信执行环境的存储空间中预先存储的种子生成私钥;根据私钥生成对应的公钥;对公钥进行加密和哈希,以生成钱包客户端的地址;将所生成的私钥、公钥及地址均存储到可信执行环境的存储空间中;
上述方法通过在可信执行环境中完成钱包客户端的地址生成,实现了对钱包客户端地址生成过程的保护,从而提高了轻钱包机制的安全性。
进一步地,步骤(2)和步骤(5)中,钱包客户端获取本地存储的默克尔树根节点哈希值,包括:
钱包客户端在可信执行环境中,将存储在普通执行环境的存储空间中的区块头信息传输到可信执行环境的存储空间中,对区块头信息进行解密,并从解密后的区块头信息中提取默克尔树根节点哈希值。
进一步地,步骤(2)中,钱包客户端从联盟链获取区块头信息以获得联盟链中记录有最新交易信息的默克尔树的根节点哈希值,包括:
钱包客户端在可信执行环境中,从联盟链中的N个节点分别获取区块头信息,以提取出对应的N个默克尔树根节点哈希值;
获得所提取的N个哈希值中出现次数最多的哈希值,并将该哈希值确定为记录有最新交易信息的默克尔树的根节点哈希值;
其中,N≥1;当N>1时,通过从同时从多个联盟链节点获取区块头信息,以确定联盟链中记录有最新交易信息的默克尔树的根节点哈希值,能够防止由于单个节点伪造信息而影响轻钱包机制的安全性,从而有效避免了中心化的影响。
作为进一步优选地,本发明所提供的联盟链中实现轻钱包机制的方法,还包括:钱包客户端从可信执行环境切换至普通执行环境时,删除从联盟链获取到的所有区块头信息,由此能够提高普通执行环境和可信执行环境之间的隔离程度,进而提高轻钱包机制的安全性。
进一步地,步骤(3)中,钱包客户端更新第一哈希值并存储更新后的哈希值,包括:
钱包客户端在可信执行环境中,向联盟链发送封装有第一哈希值的消息,请求更新本地存储的默克尔树根节点哈希值;
联盟链中的节点接收到该消息后,由该接收节点获得记录有最新交易的默克尔树中以第一哈希值为根节点的子树,并获得该子树相对于整个默克尔树缺失的节点后,将缺失节点的哈希值返回给钱包客户端,以响应钱包客户端的请求;
钱包客户端接收到联盟链返回的哈希值后,连同第一哈希值一起重新计算默克尔树的根节点哈希值;将所重新计算的哈希值存储到区块头中,并对该区块头进行加密后传输到普通执行环境的存储空间中。
进一步地,步骤(4)包括:
钱包客户端在可信执行环境中,将其地址、公钥以及交易的哈希值发送至指定的联盟链节点,以使得该联盟链节点对钱包客户端的地址和公钥均验证通过后,根据交易的哈希值获得交易在默克尔树中的验证路径,并返回给钱包客户端。
按照本发明的第二方面,还提供了一种钱包客户端,钱包客户端中运行有可信执行环境,钱包客户端包括:交易发起模块、第一哈希值获取模块、第二哈希值获取模块、哈希值更新模块、验证路径获取模块、判定模块以及切换模块;
交易发起模块用于在普通执行环境中向联盟链发起一笔交易,以使得接收到该交易的联盟链节点对该交易共识后将其存储到默克尔树中,并将该交易记录到本地默克尔树中;
第一哈希值获取模块用于在可信执行环境中获取本地存储的默克尔树根节点哈希值;
第二哈希值获取模块用于在可信执行环境中从联盟链获取区块头信息以获得联盟链中记录有最新交易信息的默克尔树的根节点哈希值;
哈希值更新模块用于在可信执行环境中更新第一哈希值并存储更新后的哈希值,以使得记录有最新交易信息的默克尔树的根节点哈希值被存储到钱包客户端中;
验证路径获取模块用于在可信执行环境中从联盟链获得交易在默克尔树中的验证路径,并根据验证路径重新计算默克尔树的根节点哈希值;
判定模块用于在第一哈希值获取模块获取到的哈希值与验证路径获取模块计算的哈希值相等时判定交易成功以结束交易,并在两个哈希值不相等时判定交易失败以结束交易;
切换模块用于在可信执行环境和普通执行环境之间切换。
按照本发明的第三方面,还提供了一种联盟链,包括:接收模块、区块头返回模块以及验证路径返回模块;
接收模块用于接收钱包客户端发起的交易后,使得联盟链中的接收节点对该交易共识后将其存储到联盟链中,并将该交易记录到本地默克尔树中;
区块头返回模块用于向钱包客户端返回区块头信息;
验证路径返回模块用于向钱包客户端返回交易在默克尔树中的验证路径。
按照本发明的第四方面,还提供了一种联盟链中实现轻钱包机制的系统,包括:联盟链和运行有可信执行环境的钱包客户端;
钱包客户端用于在普通执行环境中向联盟链发起一笔交易;
联盟链用于在接收到钱包客户端发起的交易后,使得其中的接收节点对该交易共识后其存储到联盟链中,并将该交易记录到本地默克尔树中;
钱包客户端还用于在可信执行环境中获取本地存储的默克尔树根节点哈希值,记为第一哈希值,并从联盟链获取区块头信息以获得联盟链中记录有最新交易信息的默克尔树的根节点哈希值,记为第二哈希值;
联盟链还用于向钱包客户端返回区块头信息;
钱包客户端还用于在第一哈希值和第二哈希值不相等时,在可信执行环境中更新第一哈希值并存储更新后的哈希值,以使得记录有最新交易信息的默克尔树的根节点哈希值被存储到钱包客户端中;
钱包客户端还用于从联盟链获得交易在默克尔树中的验证路径,并根据验证路径重新计算默克尔树的根节点哈希值,记为第三哈希值;
联盟链还用于向钱包客户端返回交易在默克尔树中的验证路径;
钱包客户端还用于在可信执行环境中,获取本地存储的默克尔树根节点哈希值,并与第三哈希值进行比较,若相等,则判定交易成功以结束交易;否则,判定交易失败以结束交易。
总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
(1)本发明所提供的联盟链中实现轻钱包机制的方法、客户端、联盟链及系统,基于SPV技术在盟链中实现了的轻钱包机制,并且通过在可信执行环境中完成默克尔树根节点哈希值的验证、验证路径的验证等交易验证过程,实现了对SPV交易验证过程的保护,从而提高了轻钱包机制的安全性。
(2)本发明所提供的联盟链中实现轻钱包机制的方法、客户端、联盟链及系统,在可信执行环境中完成钱包客户端的地址生成,实现了对钱包客户端地址生成过程的保护,从而提高了轻钱包机制的安全性。
(3)本发明所提供的联盟链中实现轻钱包机制的方法、客户端、联盟链及系统,在其优选方案中,通过从同时从多个联盟链节点获取区块头信息,以确定联盟链中记录有最新交易信息的默克尔树的根节点哈希值,能够防止由于单个节点伪造信息而影响轻钱包机制的安全性,从而有效避免了中心化的影响,提高了轻钱包机制的安全性。
附图说明
图1为现有区块链中用于记录交易的默克尔树示意图;
图2为本发明实施例提供的联盟链中实现轻钱包机制的方法示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
为了解决目前尚没有一种能够在联盟链中实现轻钱包机制的方法,以及现有的区块链中轻钱包机制的安全性不高的问题,本发明提供了一种联盟链中实现轻钱包机制的方法、客户端、联盟链及系统,其整体思路在于:在钱包客户端中运行可信执行环境;在联盟链中以默克尔树的形式存储交易,实现了UTXO(Unspent Transaction Output,未花费过的交易输出)形式的交易存储格式,从而基于SPV技术在联盟链中实现轻钱包机制;通过在可信执行环境中完成SPV交易验证过程和钱包客户端地址的生成过程,实现了对SPV交易验证过程和钱包客户端地址生成过程的保护,从而提高了轻钱包机制的安全性。
在详细解释本发明的技术方案之前,先对相关的现有技术进行简要介绍。
普通执行环境(Rich Execution Environment,REE)是所有移动设备(智能手机、平板电脑、机顶盒、智能电视等)上本身会运行的开放的、通用的执行环境,并为上层应用提供设备的所有功能;可信执行环境(Trusted Execution Environment,TEE)是移动设备主处理器上的一个安全区域,需要通过植入相应的芯片才能运行,可信执行环境通过提供隔离的执行环境可以保证加载到该环境内部的代码和数据的安全性、机密性以及完整性。
同时运行有普通执行环境和可信执行环境的设备,可在两个执行环境之间切换。当系统处于普通执行环境中时,只能运行普通执行环境中的代码,且只能通过实现定义好的客户端接口来获取安全环境中的特定的数据和调用特定的功能;当系统处于可信执行环境时,只能运行保存在安全执行环境中的代码,但是具有普通执行环境存储空间的访问权限。总体来说,TEE提供的执行空间比常见的移动操作系统(如IoS、Android等)提供更高级别的安全性;比安全元素SE(Secure Element,如智能卡、SIM卡等)提供更多的功能。
图1所示为一个默克尔树示例,下面以图1为例,对默克尔树及其生成过程作简单的介绍。在区块链中,用于记录交易信息的默克尔树以交易的哈希值为叶子节点,例如,图1中,叶子节点Ha、Hb、Hc和Hd分别对应四笔交易TxA、TxB、TxC以及TxD的哈希值;在确定叶子节点后,默克尔树中的其他节点的生成过程是:以两个叶子节点的哈希值为一组进行哈希,得到的新的哈希值作为默克尔树的节点,如图1中的Hab和Hcd;得到的新的哈希值再以两个为一组进行哈希,得到的新的哈希值作为默克尔树的节点,重复此操作,直至得到默克尔树的根节点;在图1所示的默克尔树中,其节点Hab和Hcd进行哈希后,即得到默克尔树的根节点哈希值(Root hash),默克尔树的根节点哈希值保存区块头(block header)中;区块头中还包括时间戳(ts)和前一区块的哈希值(Prev hash),使得每一个区块逻辑上以链的方式串联起来;默克尔树结构可以使得在仅有部分节点的情况下,快速验证交易的有效性,该方式大大减少了对存储空间的要求。
在本发明中,交易的哈希值为交易的唯一标识,由交易的特征值进行哈希之后得到。具体可根据联盟链的类型来选取交易的特征值,例如在Fabric联盟链中,可选取交易的交易ID(tx_id)和通道ID(channel_id)拼接后作为交易的特征值,然后再哈希得到交易的哈希值;类似地,在其他联盟链中,亦可相应选取交易的特征值,在此将不再一一列举。
本发明所提供的联盟链中实现轻钱包机制的方法,如图2所示,包括:
(1)运行有可信执行环境的钱包客户端在普通执行环境中向联盟链发起一笔交易,以使得接收到交易的联盟链节点对该交易共识后将其存储到联盟链中,并将该交易记录到联盟链节点本地的默克尔树中;
具体地,客户端中的可信执行环境可由移动设备中本身运行的trustzone安全环境提供,或者通过在移动设备中植入Secure Enclave处理器芯片的方式提供,也可以采用其他的方式提供;由于现有的移动设备本身支持并安装有可信执行环境,因此,利用这些可信执行环境完成对SPV交易验证的过程,无需携带额外的专业物理设备,或仅需在设备中植入相应的芯片,相比于传统的硬件数字钱包和软件数字钱包,本发明能够同时保证安全性的,并使得轻钱包使用起来更为方便;
在一个可选的实施方式中,步骤(1),由该联盟链节点将交易记录在默克尔树中,包括:
由该联盟链节点计算交易的交易哈希值,并从默克尔树中获取已记录的交易哈希值;
将所有的交易哈希值作为默克尔树的叶子节点,以两个哈希值为一组进行哈希;将所得到的哈希值作为默克尔树的节点,并以两个为一组进行哈希,重复此操作直至得到默克尔树的根节点哈希值;
将重新生成的默克尔树存储到该联盟链节点的本地;
(2)钱包客户端切换至可信执行环境后,获取本地存储的默克尔树根节点哈希值,记为第一哈希值,并从联盟链获取区块头信息以获得联盟链中记录有最新交易信息的默克尔树的根节点哈希值,记为第二哈希值;
在一个可选的实施方式中,步骤(2)中,钱包客户端获取本地存储的默克尔树根节点哈希值,包括:
钱包客户端在可信执行环境中,将存储在普通执行环境的存储空间中的区块头信息传输到可信执行环境的存储空间中,对区块头信息进行解密,并从解密后的区块头信息中提取默克尔树根节点哈希值;
在本发明中,客户端钱包在每次启动时,或者每次收到用户发出的同步区块头信息的命令时,都会执行该操作,以在可信执行环境中获得存储于本地的区块头信息;
在一个可选的实施方式中,步骤(2)中,钱包客户端从联盟链获取区块头信息以获得联盟链中记录有最新交易信息的默克尔树的根节点哈希值,包括:
钱包客户端在可信执行环境中,从联盟链中的N个节点分别获取区块头信息,以提取出对应的N个默克尔树根节点哈希值;
获得所提取的N个哈希值中出现次数最多的哈希值,并将该哈希值确定为记录有最新交易信息的默克尔树的根节点哈希值;
其中,N≥1;
在本实施例中,N>1;通过从同时从多个联盟链节点获取区块头信息,以确定联盟链中记录有最新交易信息的默克尔树的根节点哈希值,能够防止由于单个节点伪造信息而影响轻钱包机制的安全性,从而有效避免了中心化的影响;
(3)若第一哈希值等于第二哈希值,则转入步骤(4);否则,钱包客户端更新第一哈希值并存储更新后的哈希值,以使得记录有最新交易信息的默克尔树的根节点哈希值被存储到钱包客户端中,转入步骤(2);
在一个可选的实施方式中,步骤(3)中,钱包客户端更新第一哈希值并存储更新后的哈希值,包括:
钱包客户端在可信执行环境中,向联盟链发送封装有第一哈希值的消息,请求更新本地存储的默克尔树根节点哈希值;
联盟链中的节点接收到该消息后,由该接收节点获得记录有最新交易的默克尔树中以第一哈希值为根节点的子树,并获得该子树相对于整个默克尔树缺失的节点后,将缺失节点的哈希值返回给钱包客户端,以响应钱包客户端的请求;
钱包客户端接收到联盟链返回的哈希值后,连同第一哈希值一起重新计算默克尔树的根节点哈希值;将所重新计算的哈希值存储到区块头中,并对该区块头进行加密后传输到普通执行环境的存储空间中;
本实施例中,钱包客户端在从联盟链同步区块头信息后,会再次执行步骤(2),能够确保获取钱包客户端本地存储的默克尔树根节点哈希值,等于联盟链中记录有最新交易信息的默克尔树的根节点哈希值,从而保证了后续验证的有效性和安全性;
(4)钱包客户端从联盟链获得交易在默克尔树中的验证路径,并根据验证路径重新计算默克尔树的根节点哈希值,记为第三哈希值;
在一个可选的实施方式中,步骤(4)具体包括:
钱包客户端在可信执行环境中,将其地址、公钥以及交易的哈希值发送至指定的联盟链节点,以使得该联盟链节点对钱包客户端的地址和公钥均验证通过后,根据交易的哈希值获得交易在默克尔树中的验证路径,并返回给钱包客户端;
在默克尔树中,交易的验证路径具体是指从叶子节点计算得到根节点的计算过程中所必须的节点哈希值,例如,对于图1中的交易TxA,其验证路径为Ha→Hb→Hcd,表示利用Ha和Hb进行哈希,得到哈希值Hab’,再利用Hab’和Hcd进行哈希,得到哈希值R;该哈希值R就是根据交易TxA的验证路径Ha→Hb→Hcd所计算的默克尔树的根节点哈希值;
(5)钱包客户端获取本地存储的默克尔树根节点哈希值,并与第三哈希值进行比较,若相等,则判定交易成功以结束交易;否则,判定交易失败以结束交易;
通过比较本地存储的默克尔树根节点哈希值和根据验证路径所计算的默克尔树根节点哈希值是否相等,以判断交易是否成功,能够防止联盟链服务端的节点中心化作恶而伪造交易验证路径,从而能够提高轻钱包机制的安全性。
通过上述方法,基于SPV技术在盟链中实现了的轻钱包机制,并且通过在可信执行环境中执行步骤(2)~(5),使得默克尔树根节点哈希值的验证、验证路径的验证等交易验证过程均在可信执行环境中执行,实现了对SPV交易验证过程的保护,从而提高了轻钱包机制的安全性。
为了进一步提高请钱包机制的安全性,上述联盟链中实现轻钱包机制的方法,还可包括:
在发起任何交易之前,钱包客户端在安全执行环境中,依次进执行下操作:根据安全执行环境的存储空间中预先存储的种子生成私钥,例如,根据该种子产生一个随机数作为私钥;根据私钥生成对应的公钥,例如,通过椭圆双曲线算法根据该私钥生成公钥;对公钥进行加密和哈希,以生成钱包客户端的地址,例如,对公钥进行两次哈希,然后给得到的公钥哈希值加上版本号,对加上版本号的公钥哈希值进行再次哈希并取操作结果的前4为作为校验位,在加上版本号的公钥哈希值后加上校验位并进行重新编码,重编码结果即为钱包地址;将所生成的私钥、公钥及地址均存储到可信执行环境的存储空间中;
上述方法通过在可信执行环境中完成钱包客户端的地址生成,实现了对钱包客户端地址生成过程的保护,从而提高了轻钱包机制的安全性。
为进一步提高轻钱包机制的安全性,上述联盟链中实现轻钱包机制的方法,还可包括:钱包客户端从可信执行环境切换至普通执行环境时,删除从联盟链获取到的所有区块头信息,通过删除这些临时信息,能够提高普通执行环境和可信执行环境之间的隔离程度,进而提高轻钱包机制的安全性。
本发明还提供了一种钱包客户端,用于执行上述联盟链中实现轻钱包机制的方法中钱包客户端的操作,本发明所提供的钱包客户端中运行有可信执行环境,钱包客户端具体包括:交易发起模块、第一哈希值获取模块、第二哈希值获取模块、哈希值更新模块、验证路径获取模块、判定模块以及切换模块;
交易发起模块用于在普通执行环境中向联盟链发起一笔交易,以使得接收到交易的联盟链节点对该交易共识后将其存储到联盟链中,并将交易记录到本地默克尔树中;
第一哈希值获取模块用于在可信执行环境中获取本地存储的默克尔树根节点哈希值;
第二哈希值获取模块用于在可信执行环境中从联盟链获取区块头信息以获得联盟链中记录有最新交易信息的默克尔树的根节点哈希值;
哈希值更新模块用于在可信执行环境中更新第一哈希值并存储更新后的哈希值,以使得记录有最新交易信息的默克尔树的根节点哈希值被存储到钱包客户端中;
验证路径获取模块用于在可信执行环境中从联盟链获得交易在默克尔树中的验证路径,并根据验证路径重新计算默克尔树的根节点哈希值;
判定模块用于在第一哈希值获取模块获取到的哈希值与验证路径获取模块计算的哈希值相等时判定交易成功以结束交易,并在两个哈希值不相等时判定交易失败以结束交易;
切换模块用于在可信执行环境和普通执行环境之间切换;
在本实施例中,各模块的具体实施方式可参考上述方法实施例的描述,在此将不再复述。
本发明还提供了一种联盟链,用于执行上述联盟链中实现轻钱包机制的方法中联盟链端的操作,本发明所提供的联盟链包括:接收模块、区块头返回模块以及验证路径返回模块;
接收模块用于接收钱包客户端发起的交易后,使得联盟链中的接收节点对该交易共识后将其存储到联盟链中,并将该交易记录到本地默克尔树中;其中,接收节点具体是指联盟链中接收到该交易的节点;
区块头返回模块用于向钱包客户端返回区块头信息;
验证路径返回模块用于向钱包客户端返回交易在默克尔树中的验证路径;
在本实施例中,各模块的具体实施方式可参考上述方法实施例的描述,在此将不再复述。
本发明还提供了一种联盟链中实现轻钱包机制的系统,用于实现上述联盟链中实现轻钱包机制的方法,该系统包括:联盟链和运行有可信执行环境的钱包客户端;
钱包客户端用于在普通执行环境中向联盟链发起一笔交易;
联盟链用于在接收到钱包客户端发起的交易后,使得其中的接收节点对该交易共识后将其存储到联盟链中,并将该交易记录到本地默克尔树中;其中,接收节点具体是指联盟链中接收到该交易的节点;
钱包客户端还用于在可信执行环境中获取本地存储的默克尔树根节点哈希值,记为第一哈希值,并从联盟链获取区块头信息以获得联盟链中记录有最新交易信息的默克尔树的根节点哈希值,记为第二哈希值;
联盟链还用于向钱包客户端返回区块头信息;
钱包客户端还用于在第一哈希值和第二哈希值不相等时,在可信执行环境中更新第一哈希值并存储更新后的哈希值,以使得记录有最新交易信息的默克尔树的根节点哈希值被存储到钱包客户端中;
钱包客户端还用于从联盟链获得交易在默克尔树中的验证路径,并根据验证路径重新计算默克尔树的根节点哈希值,记为第三哈希值;
联盟链还用于向钱包客户端返回交易在默克尔树中的验证路径;
钱包客户端还用于在可信执行环境中,获取本地存储的默克尔树根节点哈希值,并与第三哈希值进行比较,若相等,则判定交易成功以结束交易;否则,判定交易失败以结束交易;
在本实施例中,钱包客户端及联盟链的具体实施方式可参考上述方法实施例中的描述,在此将不再复述。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种联盟链中实现轻钱包机制的方法,其特征在于,包括:
(1)运行有可信执行环境的钱包客户端在普通执行环境中向联盟链发起一笔交易,以使得接收到所述交易的联盟链节点对所述交易共识后将其存储到所述联盟链中,并将所述交易记录到本地默克尔树中;
(2)所述钱包客户端切换至所述可信执行环境后,获取本地存储的默克尔树根节点哈希值,记为第一哈希值,并从所述联盟链获取区块头信息以获得所述联盟链中记录有最新交易信息的默克尔树的根节点哈希值,记为第二哈希值;
(3)若所述第一哈希值等于所述第二哈希值,则转入步骤(4);否则,所述钱包客户端更新所述第一哈希值并存储更新后的哈希值,以使得记录有最新交易信息的默克尔树的根节点哈希值被存储到所述钱包客户端中,转入步骤(2);
(4)所述钱包客户端从所述联盟链获得所述交易在默克尔树中的验证路径,并根据所述验证路径重新计算默克尔树的根节点哈希值,记为第三哈希值;
(5)所述钱包客户端获取本地存储的默克尔树根节点哈希值,并与所述第三哈希值进行比较,若相等,则判定所述交易成功以结束所述交易;否则,判定所述交易失败以结束所述交易。
2.如权利要求1所述的联盟链中实现轻钱包机制的方法,其特征在于,还包括:
在发起任何交易之前,所述钱包客户端在所述可信执行环境中,依次进执行下操作:根据所述可信执行环境的存储空间中预先存储的种子生成私钥;根据所述私钥生成对应的公钥;对所述公钥进行加密和哈希,以生成所述钱包客户端的地址;将所生成的私钥、公钥及地址均存储到所述可信执行环境的存储空间中。
3.如权利要求1所述的联盟链中实现轻钱包机制的方法,其特征在于,所述步骤(2)和所述步骤(5)中,所述钱包客户端获取本地存储的默克尔树根节点哈希值,包括:
所述钱包客户端在所述可信执行环境中,将存储在所述普通执行环境的存储空间中的区块头信息传输到所述可信执行环境的存储空间中,对所述区块头信息进行解密,并从解密后的区块头信息中提取默克尔树根节点哈希值。
4.如权利要求1所述的联盟链中实现轻钱包机制的方法,其特征在于,所述步骤(2)中,所述钱包客户端从所述联盟链获取区块头信息以获得所述联盟链中记录有最新交易信息的默克尔树的根节点哈希值,包括:
所述钱包客户端在可信执行环境中,从所述联盟链中的N个节点分别获取区块头信息,以提取出对应的N个默克尔树根节点哈希值;
获得所提取的N个哈希值中出现次数最多的哈希值,并将该哈希值确定为记录有最新交易信息的默克尔树的根节点哈希值;
其中,N≥1。
5.如权利要求4所述的联盟链中实现轻钱包机制的方法,其特征在于,还包括:所述钱包客户端从所述可信执行环境切换至所述普通执行环境时,删除从所述联盟链获取到的所有区块头信息。
6.如权利要求1或3所述的联盟链中实现轻钱包机制的方法,其特征在于,所述步骤(3)中,所述钱包客户端更新所述第一哈希值并存储更新后的哈希值,包括:
所述钱包客户端在所述可信执行环境中,向所述联盟链发送封装有所述第一哈希值的消息,请求更新本地存储的默克尔树根节点哈希值;
所述联盟链中的节点接收到该消息后,由该接收节点获得记录有最新交易的默克尔树中以所述第一哈希值为根节点的子树,并获得该子树相对于整个默克尔树缺失的节点后,将缺失节点的哈希值返回给所述钱包客户端,以响应所述钱包客户端的请求;
所述钱包客户端接收到所述联盟链返回的哈希值后,连同所述第一哈希值一起重新计算默克尔树的根节点哈希值;将所重新计算的哈希值存储到区块头中,并对该区块头进行加密后传输到所述普通执行环境的存储空间中。
7.如权利要求1所述的联盟链中实现轻钱包机制的方法,其特征在于,所述步骤(4)包括:
所述钱包客户端在所述可信执行环境中,将其地址、公钥以及所述交易的哈希值发送至指定的联盟链节点,以使得该联盟链节点对所述钱包客户端的地址和公钥均验证通过后,根据所述交易的哈希值获得所述交易在默克尔树中的验证路径,并返回给所述钱包客户端。
8.一种钱包客户端,其特征在于,所述钱包客户端中运行有可信执行环境,所述钱包客户端包括:交易发起模块、第一哈希值获取模块、第二哈希值获取模块、哈希值更新模块、验证路径获取模块、判定模块以及切换模块;
所述交易发起模块用于在普通执行环境中向联盟链发起一笔交易,以使得接收到所述交易的联盟链节点对所述交易共识后将其存储到所述联盟链中,并将所述交易记录到本地默克尔树中;
所述第一哈希值获取模块用于在可信执行环境中获取本地存储的默克尔树根节点哈希值;
所述第二哈希值获取模块用于在所述可信执行环境中从所述联盟链获取区块头信息以获得所述联盟链中记录有最新交易信息的默克尔树的根节点哈希值;
所述哈希值更新模块用于在所述可信执行环境中更新所述第一哈希值并存储更新后的哈希值,以使得记录有最新交易信息的默克尔树的根节点哈希值被存储到所述钱包客户端中;
所述验证路径获取模块用于在所述可信执行环境中从所述联盟链获得所述交易在默克尔树中的验证路径,并根据所述验证路径重新计算默克尔树的根节点哈希值;
所述判定模块用于在所述第一哈希值获取模块获取到的哈希值与所述验证路径获取模块计算的哈希值相等时判定所述交易成功以结束所述交易,并在两个哈希值不相等时判定所述交易失败以结束所述交易;
所述切换模块用于在所述可信执行环境和所述普通执行环境之间切换。
9.一种联盟链,其特征在于,包括:接收模块、区块头返回模块以及验证路径返回模块;
所述接收模块用于在接收钱包客户端发起的交易后,使得所述联盟链中的接收节点对所述交易共识后将其存储到所述联盟链中,并将所述交易记录到本地默克尔树中;
所述区块头返回模块用于向所述钱包客户端返回区块头信息;
所述验证路径返回模块用于向所述钱包客户端返回所述交易在默克尔树中的验证路径。
10.一种在联盟链中实现轻钱包机制的系统,其特征在于,包括:联盟链和运行有可信执行环境的钱包客户端;
所述钱包客户端用于在普通执行环境中向所述联盟链发起一笔交易;
所述联盟链用于在接收到所述钱包客户端发起的交易后,使得其中的接收节点对所述交易共识后将其存储到所述联盟链中,并将所述交易记录到本地默克尔树中;
所述钱包客户端还用于在所述可信执行环境中获取本地存储的默克尔树根节点哈希值,记为第一哈希值,并从所述联盟链获取区块头信息以获得所述联盟链中记录有最新交易信息的默克尔树的根节点哈希值,记为第二哈希值;
所述联盟链还用于向所述钱包客户端返回区块头信息;
所述钱包客户端还用于在所述第一哈希值和所述第二哈希值不相等时,在所述可信执行环境中更新所述第一哈希值并存储更新后的哈希值,以使得记录有最新交易信息的默克尔树的根节点哈希值被存储到所述钱包客户端中;
所述钱包客户端还用于从所述联盟链获得所述交易在默克尔树中的验证路径,并根据所述验证路径重新计算默克尔树的根节点哈希值,记为第三哈希值;
所述联盟链还用于向所述钱包客户端返回所述交易在默克尔树中的验证路径;
所述钱包客户端还用于在所述可信执行环境中,获取本地存储的默克尔树根节点哈希值,并与所述第三哈希值进行比较,若相等,则判定所述交易成功以结束所述交易;否则,判定所述交易失败以结束所述交易。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910319996.5A CN110175840B (zh) | 2019-04-19 | 2019-04-19 | 联盟链中实现轻钱包机制的方法、客户端、联盟链及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910319996.5A CN110175840B (zh) | 2019-04-19 | 2019-04-19 | 联盟链中实现轻钱包机制的方法、客户端、联盟链及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110175840A true CN110175840A (zh) | 2019-08-27 |
CN110175840B CN110175840B (zh) | 2021-08-03 |
Family
ID=67689761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910319996.5A Active CN110175840B (zh) | 2019-04-19 | 2019-04-19 | 联盟链中实现轻钱包机制的方法、客户端、联盟链及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110175840B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110599346A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种区块链信息获取方法及相关设备 |
CN110602239A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种区块链信息存储方法及相关设备 |
CN110941672A (zh) * | 2019-11-21 | 2020-03-31 | 腾讯科技(深圳)有限公司 | 户籍管理方法、装置、设备以及存储介质 |
CN110992182A (zh) * | 2019-12-04 | 2020-04-10 | 福州博泉网络科技有限公司 | 区块链钱包的交易方法及系统 |
CN111415161A (zh) * | 2020-04-27 | 2020-07-14 | 财付通支付科技有限公司 | 基于区块链的数据验证方法、装置及计算机可读存储介质 |
CN111461751A (zh) * | 2020-04-02 | 2020-07-28 | 武汉大学 | 基于区块链的房产信息链上组织方法、历史状态追溯方法及装置 |
CN111523894A (zh) * | 2020-05-06 | 2020-08-11 | 杭州复杂美科技有限公司 | 数据延时公布方法、设备和存储介质 |
CN112131235A (zh) * | 2020-09-21 | 2020-12-25 | 中国电子科技网络信息安全有限公司 | 一种区块链系统内交易可信校验实现方法 |
CN112380209A (zh) * | 2020-10-29 | 2021-02-19 | 华东师范大学 | 一种面向区块链多通道状态数据的聚集结构树方法 |
CN112600875A (zh) * | 2020-11-25 | 2021-04-02 | 北京电力交易中心有限公司 | 基于默克尔树的分布式电量交易区块链存储方法和装置 |
CN112804211A (zh) * | 2020-12-31 | 2021-05-14 | 北京存金所贵金属有限公司 | 基于联盟区块链和公有链的混合链数据验证方法和系统 |
CN112950180A (zh) * | 2021-02-24 | 2021-06-11 | 中国工商银行股份有限公司 | 一种基于联盟链的通证方法、系统、电子设备及存储介质 |
CN113704249A (zh) * | 2021-07-14 | 2021-11-26 | 杭州溪塔科技有限公司 | 一种区块链中使用静态默克尔树的方法和装置 |
CN114153849A (zh) * | 2021-12-02 | 2022-03-08 | 深圳前海微众银行股份有限公司 | 一种区块链的数据生成及验证方法及装置 |
CN114329636A (zh) * | 2022-03-04 | 2022-04-12 | 人民法院信息技术服务中心 | 一种司法数据的访问控制方法、系统、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1741010A (zh) * | 2004-08-24 | 2006-03-01 | 侯方勇 | 优化哈希树完整性校验的方法和装置 |
CN105719185A (zh) * | 2016-01-22 | 2016-06-29 | 杭州复杂美科技有限公司 | 区块链的数据对比及共识方法 |
CN107247773A (zh) * | 2017-06-07 | 2017-10-13 | 北京邮电大学 | 一种基于区块链的在分布式数据库中进行交易查询的方法 |
CN108447183A (zh) * | 2018-04-17 | 2018-08-24 | 赫普科技发展(北京)有限公司 | 一种带轻钱包的智能电表系统 |
CN108985100A (zh) * | 2018-08-15 | 2018-12-11 | 百度在线网络技术(北京)有限公司 | 基于区块链的元素安全性证明方法、装置、设备和介质 |
CN109165224A (zh) * | 2018-08-24 | 2019-01-08 | 东北大学 | 一种在区块链数据库上针对关键字key的索引方法 |
CN109241161A (zh) * | 2018-08-09 | 2019-01-18 | 深圳市雅码科技有限公司 | 一种气象数据管理方法 |
CN109559227A (zh) * | 2018-11-29 | 2019-04-02 | 咪咕文化科技有限公司 | 一种跨区块链网络的交易方法、装置及存储介质 |
-
2019
- 2019-04-19 CN CN201910319996.5A patent/CN110175840B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1741010A (zh) * | 2004-08-24 | 2006-03-01 | 侯方勇 | 优化哈希树完整性校验的方法和装置 |
CN105719185A (zh) * | 2016-01-22 | 2016-06-29 | 杭州复杂美科技有限公司 | 区块链的数据对比及共识方法 |
CN107247773A (zh) * | 2017-06-07 | 2017-10-13 | 北京邮电大学 | 一种基于区块链的在分布式数据库中进行交易查询的方法 |
CN108447183A (zh) * | 2018-04-17 | 2018-08-24 | 赫普科技发展(北京)有限公司 | 一种带轻钱包的智能电表系统 |
CN109241161A (zh) * | 2018-08-09 | 2019-01-18 | 深圳市雅码科技有限公司 | 一种气象数据管理方法 |
CN108985100A (zh) * | 2018-08-15 | 2018-12-11 | 百度在线网络技术(北京)有限公司 | 基于区块链的元素安全性证明方法、装置、设备和介质 |
CN109165224A (zh) * | 2018-08-24 | 2019-01-08 | 东北大学 | 一种在区块链数据库上针对关键字key的索引方法 |
CN109559227A (zh) * | 2018-11-29 | 2019-04-02 | 咪咕文化科技有限公司 | 一种跨区块链网络的交易方法、装置及存储介质 |
Non-Patent Citations (1)
Title |
---|
WEIQI DAI ET AL: ""SBLWT: A Secure Blockchain Lightweight Wallet Based on Trustzone"", 《IEEE ACCESS》 * |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110599346A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种区块链信息获取方法及相关设备 |
CN110602239A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种区块链信息存储方法及相关设备 |
CN110602239B (zh) * | 2019-09-20 | 2023-09-19 | 腾讯科技(深圳)有限公司 | 一种区块链信息存储方法及相关设备 |
CN110599346B (zh) * | 2019-09-20 | 2023-11-17 | 腾讯科技(深圳)有限公司 | 一种区块链信息获取方法及相关设备 |
CN110941672A (zh) * | 2019-11-21 | 2020-03-31 | 腾讯科技(深圳)有限公司 | 户籍管理方法、装置、设备以及存储介质 |
CN110941672B (zh) * | 2019-11-21 | 2023-11-24 | 腾讯科技(深圳)有限公司 | 户籍管理方法、装置、设备以及存储介质 |
CN110992182A (zh) * | 2019-12-04 | 2020-04-10 | 福州博泉网络科技有限公司 | 区块链钱包的交易方法及系统 |
CN110992182B (zh) * | 2019-12-04 | 2023-06-16 | 福州博泉网络科技有限公司 | 区块链钱包的交易方法及系统 |
CN111461751A (zh) * | 2020-04-02 | 2020-07-28 | 武汉大学 | 基于区块链的房产信息链上组织方法、历史状态追溯方法及装置 |
CN111461751B (zh) * | 2020-04-02 | 2024-03-29 | 武汉大学 | 基于区块链的房产信息链上组织方法、历史状态追溯方法及装置 |
CN111415161B (zh) * | 2020-04-27 | 2024-03-19 | 财付通支付科技有限公司 | 基于区块链的数据验证方法、装置及计算机可读存储介质 |
CN111415161A (zh) * | 2020-04-27 | 2020-07-14 | 财付通支付科技有限公司 | 基于区块链的数据验证方法、装置及计算机可读存储介质 |
CN111523894A (zh) * | 2020-05-06 | 2020-08-11 | 杭州复杂美科技有限公司 | 数据延时公布方法、设备和存储介质 |
CN112131235A (zh) * | 2020-09-21 | 2020-12-25 | 中国电子科技网络信息安全有限公司 | 一种区块链系统内交易可信校验实现方法 |
CN112380209A (zh) * | 2020-10-29 | 2021-02-19 | 华东师范大学 | 一种面向区块链多通道状态数据的聚集结构树方法 |
CN112600875A (zh) * | 2020-11-25 | 2021-04-02 | 北京电力交易中心有限公司 | 基于默克尔树的分布式电量交易区块链存储方法和装置 |
CN112600875B (zh) * | 2020-11-25 | 2023-06-30 | 北京电力交易中心有限公司 | 基于默克尔树的分布式电量交易区块链存储方法和装置 |
CN112804211A (zh) * | 2020-12-31 | 2021-05-14 | 北京存金所贵金属有限公司 | 基于联盟区块链和公有链的混合链数据验证方法和系统 |
CN112950180A (zh) * | 2021-02-24 | 2021-06-11 | 中国工商银行股份有限公司 | 一种基于联盟链的通证方法、系统、电子设备及存储介质 |
CN113704249A (zh) * | 2021-07-14 | 2021-11-26 | 杭州溪塔科技有限公司 | 一种区块链中使用静态默克尔树的方法和装置 |
CN114153849A (zh) * | 2021-12-02 | 2022-03-08 | 深圳前海微众银行股份有限公司 | 一种区块链的数据生成及验证方法及装置 |
CN114329636B (zh) * | 2022-03-04 | 2022-05-20 | 人民法院信息技术服务中心 | 一种司法数据的访问控制方法、系统、设备及存储介质 |
CN114329636A (zh) * | 2022-03-04 | 2022-04-12 | 人民法院信息技术服务中心 | 一种司法数据的访问控制方法、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110175840B (zh) | 2021-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110175840A (zh) | 联盟链中实现轻钱包机制的方法、客户端、联盟链及系统 | |
EP3812992B1 (en) | Block chain transaction method and apparatus | |
CN107220820B (zh) | 资源转移方法、装置及存储介质 | |
US10614456B2 (en) | Dynamic cryptocurrency aliasing | |
EP3896638A1 (en) | Distributed transaction propagation and verification system | |
US7233926B2 (en) | Electronic wallet system with secure inter-purses operations | |
ES2732497T3 (es) | Verificación de la participación en eventos basados en criptodivisas | |
CN108776929A (zh) | 基于区块链数据库的账单处理方法、系统和可读存储介质 | |
CN108876365A (zh) | 一种生成区块发布机制的智能合约 | |
CN110291757A (zh) | 用于提供简化帐户注册服务、用户认证服务的方法及利用其的认证服务器 | |
CN107306183A (zh) | 客户端、服务端、方法和身份验证系统 | |
CN106452785A (zh) | 区块链网络、分支节点及区块链网络应用方法 | |
US20220215355A1 (en) | Method for directly transmitting electronic coin data records between terminals and payment system | |
CN106161359A (zh) | 认证用户的方法及装置、注册可穿戴设备的方法及装置 | |
US10237072B2 (en) | Signatures for near field communications | |
US11102006B2 (en) | Blockchain intelligent security implementation | |
CN110263544A (zh) | 结合交易类型和判断条件的收据存储方法和节点 | |
CN109919614A (zh) | 一种区块链中使用零知识证明保护智能合约隐私的方法 | |
Taghiloo et al. | Mobile based secure digital wallet for peer to peer payment system | |
CN109861956A (zh) | 基于状态通道的数据验证系统、方法、装置及设备 | |
CN110264207A (zh) | 区块链分离处理方法及系统 | |
CN107070896A (zh) | 一种安全高效的区块链客户化登录方法及安全加固系统 | |
CN110046511A (zh) | 基于联盟链的防止数据泄露方法、装置、设备和存储介质 | |
Dang et al. | Pricing data tampering in automated fare collection with NFC-equipped smartphones | |
Boureanu et al. | Mechanised models and proofs for distance-bounding |
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 |