CN115706662A - 闪电网络的密钥管理方法及装置 - Google Patents

闪电网络的密钥管理方法及装置 Download PDF

Info

Publication number
CN115706662A
CN115706662A CN202110896473.4A CN202110896473A CN115706662A CN 115706662 A CN115706662 A CN 115706662A CN 202110896473 A CN202110896473 A CN 202110896473A CN 115706662 A CN115706662 A CN 115706662A
Authority
CN
China
Prior art keywords
transaction
ith
private key
party
parties
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
Application number
CN202110896473.4A
Other languages
English (en)
Inventor
赵华锋
陈豪
金天骄
陈韩玮
李智
丁强
谢丹
李志勇
方炜
王晨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Group Zhejiang Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Group Zhejiang Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Group Zhejiang Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202110896473.4A priority Critical patent/CN115706662A/zh
Publication of CN115706662A publication Critical patent/CN115706662A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种闪电网络的密钥管理方法及装置,方法包括:利用指定算法为交易双方分别生成各自的主私钥和公钥;构建保证金交易;利用交易双方各自的主私钥分别生成各自的初始交易私钥和初始临时私钥;构造交易双方各自的初始退款交易对;广播保证金交易以建立通道;以交易双方的初始临时私钥为基础,依次循环生成第i笔交易所需的第i笔临时私钥和第i笔交易私钥,以构建对应的第i笔退款交易对进行交易;当交易双方中任一交易方广播的第i笔退款交易对符合通道关闭条件时,由另一交易方广播构建的第i笔违约救济交易以关闭通道;其中,另一交易方根据交易双方中任一交易方的第i‑1笔临时私钥广播另一交易方的第i笔违约救济交易。

Description

闪电网络的密钥管理方法及装置
技术领域
本发明涉及计算机技术领域,具体涉及一种闪电网络的密钥管理方法及装置。
背景技术
闪电网络是运行在基于区块链的数字资产之上的第二层支付协议,旨在解决数字资产固有的延展性问题。它由序列到期可撤销合约(RSMC)和哈希时间锁定合约(HTLC)组成。RSMC主要用于实现在双方之间建立一个双向微支付通道,通过引入基于撤销的状态替换机制实现对旧交易状态的撤销,从而更新链下交易的状态,解决了通道中数字资产单向流动的问题。HTLC用于将多个小额支付通道链接在一起,以通过节点之间的多跳实现未建立通道双方的双向支付,解决了数字资产跨节点传递的问题,这两个合约的结合构建了一个可路由的支付网络。
一个闪电网络支付通道包含两个交易方(参与者),如图1所示,两个交易方分别为Alice和Bob,他们通过RSMC协作建立双向支付通道,通过链下交易更新通道余额状态,并最后对通道余额进行结算。一个支付通道的建立依赖于最初的保证金交易,该交易将双方的资金注入一个2-of-2的多重签名地址中,代表了所建立的通道的余额,花费该地址中的资金需要双方私钥的签名。在RSMC的交易过程中,要求双方对称地构造交易。每一轮链下交易中,双方各自构造承诺交易/可撤销支付交易对,交换签名后只有他们自己能够广播。实线框选的交易为Alice可以广播的交易,虚线框选的交易为Bob 可以广播的交易。在交易过程中,双方可以广播各自的承诺交易/可撤销支付交易对以结算通道余额。如果之前已被撤销的承诺交易/可撤销支付交易对被广播,另一方能够广播违约救济交易以实现对作恶一方的惩罚。
其中,承诺交易(图中标记为C):双方各自构造一个承诺交易并以保证金交易中多重签名地址输出作为该交易的输入,承诺交易包含两个输出,第一个输出将数字资产发送到一个新的2-of-2多重签名地址,第二个输出将数字资产发送给另一方。两个输出中的数字资产分配代表了当前的余额状态,每次链下交易都伴随着一个新的承诺交易来更新通道余额状态。如Alice构造的C1a,其中,C代表承诺交易,1为第1笔交易,a标记交易为Alice构造; Bob构造C1b,C代表承诺交易,1为第1笔交易,b标记交易为Bob构造。
可撤销支付交易(图中标记为RD):每个承诺交易都伴随着一个可撤销支付交易,它以对应的承诺交易的第一个2-of-2多重签名地址作为输入,并将数字资产输出给交易的构造者。为了达到可撤销的目的,每一笔可撤销支付交易都会被设定一个序列号,使得只有当被引用的承诺交易有序列号个确认后,该可撤销支付交易才能进块,以为另一方创建一个争议期。如Alice构造的RD1a,其中,RD代表可撤销支付交易,1为第1笔交易,a标记交易为Alice构造;Bob构造RD1b,RD代表可撤销支付交易,1为第1笔交易,b 标记交易为Bob构造。
违约救济交易(图中标记为BR):为了避免另一方广播旧的承诺交易,每当构造了一对新的承诺交易/可撤销支付交易时,都需要将前一笔承诺交易的第一个输出中用于创建2-of-2多重签名地址的私钥发送给另一方,从而在可撤销支付交易的争议期内,另一方能够构造一笔对应的无序列号的违约救济交易并对其进行签名。如果已被撤销的承诺交易/可撤销支付交易被恶意广播,该违约救济交易能够取代该可撤销支付交易,并将通道中所有数字资产归诚实方所有。如Alice构造的BR1a,其中,BR代表违约救济交易,1为第 1笔交易,a标记交易为Alice构造;Bob构造BR1b,BR代表违约救济交易, 1为第1笔交易,b标记交易为Bob构造。
闪电网络中基于撤销的状态替换机制需要双方花费O(n)的存储成本来存储密钥,造成了较低的空间效率。现有的缓解闪电网络密钥存储成本的方案需要基于支持图灵完备的脚本语言的区块链,使得其与数字资产不兼容,或者是需要为数字资产脚本引入新的共识机制,从而会导致分叉。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的闪电网络的密钥管理方法及装置。
根据本发明的一个方面,提供了一种闪电网络的密钥管理方法,其包括:
利用指定算法为交易双方分别生成各自的主私钥和公钥;
构建保证金交易;利用交易双方各自的主私钥分别生成各自的初始交易私钥和初始临时私钥;其中,初始交易私钥由初始临时私钥生成;构造交易双方各自的初始退款交易对;广播保证金交易以建立通道;
以交易双方的初始临时私钥为基础,依次循环生成第i笔交易所需的第i 笔临时私钥和第i笔交易私钥,以构建对应的第i笔退款交易对进行交易;其中,第i笔临时私钥根据第i-1笔临时私钥生成;第i笔交易私钥根据第i笔临时私钥生成;第i笔退款交易对根据交易双方的第i笔交易私钥构建;
当交易双方中任一交易方广播的第i笔退款交易对符合通道关闭条件时,由另一交易方广播构建的第i笔违约救济交易以关闭通道;其中,另一交易方根据交易双方中任一交易方的第i-1笔临时私钥广播另一交易方的第i笔违约救济交易。
根据本发明的另一方面,提供了一种闪电网络的密钥管理装置,其包括:
第一生成模块,适于利用指定算法为交易双方分别生成各自的主私钥和公钥;
通道建立模块,适于构建保证金交易;利用交易双方各自的主私钥分别生成各自的初始交易私钥和初始临时私钥;其中,初始交易私钥由初始临时私钥生成;构造交易双方各自的初始退款交易对;广播保证金交易以建立通道;
第二生成模块,适于以交易双方的初始临时私钥为基础,依次循环生成第i笔交易所需的第i笔临时私钥和第i笔交易私钥,以构建对应的第i笔退款交易对进行交易;其中,第i笔临时私钥根据第i-1笔临时私钥生成;第i 笔交易私钥根据第i笔临时私钥生成;第i笔退款交易对根据交易双方的第i 笔交易私钥构建;
通道关闭模块,适于当交易双方中任一交易方广播的第i笔退款交易对符合通道关闭条件时,由另一交易方广播构建的第i笔违约救济交易以关闭通道;其中,另一交易方根据交易双方中任一交易方的第i-1笔临时私钥广播另一交易方的第i笔违约救济交易。
根据本发明的又一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述闪电网络的密钥管理方法对应的操作。
根据本发明的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述闪电网络的密钥管理方法对应的操作。
根据本发明的闪电网络的密钥管理方法及装置,在交易过程中,通过临时私钥和主私钥,可以生成下一笔临时私钥,以及下一笔交易使用的交易私钥,使得存储成本比原始闪电网络降低很多,且本发明无需修改闪电网络主干协议本身,也不需要基于智能合约或新的共识机制,更简便。进一步,若交易双方不主动关闭通道且不广播符合通道关闭条件的退款交易对时,可以保存通道的开启,方便进行交易。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了闪电网络交易构造示意图;
图2示出了根据本发明一个实施例的闪电网络的密钥管理方法的流程图;
图3示出了交易方A的临时私钥和交易私钥的生成示意图;
图4示出了根据本发明一个实施例的闪电网络的密钥管理装置的功能框图;
图5示出了根据本发明一个实施例的一种电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图2示出了根据本发明一个实施例的闪电网络的密钥管理方法的流程图。如图2所示,闪电网络的密钥管理方法具体包括如下步骤:
步骤S201,利用指定算法为交易双方分别生成各自的主私钥和公钥。
交易双方包括第一交易方和第二交易方,为方便更好地理解本实施例,第一交易方以A为例,第二交易方以B为例进行说明。A和B通过闪电网络的序列到期可撤销合约(RSMC)来建立通道并且进行链下交易。
本实施例中以skA标记为第一交易方A的主私钥,skB为第二交易方B的主私钥,主私钥可以采用如256位的二进制数,以64位的16进制字符串来表示。以pkA标记为第一交易方A对应于skA的公钥,pkB为第二交易方对应与skB的公钥。公钥可以通过如secp256k1椭圆曲线,以主私钥为起点,与椭圆曲线上已定义的生成点G相乘得到另一点(x,y),即为主私钥所对应的公钥,例如pkA=skA·G。
指定算法采用2048位的RSA算法,为交易双方生成各自的主私钥和公钥。RSA算法是一种基于数论的非对称加密算法,RSA算法的安全性基于大整数素因子分解的困难问题。使用RSA算法获得与RSA算法相关的三个参数 {e,d,N},包括如下步骤:先找到两个大素数:p、q;做乘法:N=p*q,计算欧拉函数值
Figure RE-GDA0003335428140000051
选择e,使其满足
Figure RE-GDA0003335428140000052
再找到满足
Figure RE-GDA0003335428140000053
的d;将(d,N)作为RSA主私钥,(e,N)作为RSA 公钥并公开。具体到本实施例中,第一交易方A以{eA,NA}作为公钥,{dA,NA}作为主私钥,第二交易方B以{eB,NB}作为公钥,{dB,NB}作为主私钥,其中NA,NB为模数。交易双方向对方均公开各自的公钥{eA,NA}和{eB,NB}。
步骤S202,构建保证金交易。
交易双方通过各自的公钥pkA,pkB可以生成一个2-of-2的多重签名地址 addrA,B,并以该地址作为输出,向其注入资金作为通道余额以构造一笔保证金交易,花费保证金交易中的输出需要双方使用skA,skB共同签名。
为了防止资金被死锁在多重签名地址中,此刻仅生成但暂不广播保证金交易。
步骤S203,利用交易双方各自的主私钥分别生成各自的初始交易私钥和初始临时私钥。
交易双方的主私钥相互不公开,为了防止主私钥被对方获取,保障闪电网络的安全,为交易双方生成交易私钥,用于构建后续的承诺交易。具体的,针对交易双方中的任一交易方,获取该交易方随机初始数;根据该交易方的主私钥和随机初始数利用指定解密算法生成初始临时私钥,并保存在本地;初始交易私钥由初始临时私钥生成,通过将初始临时私钥映射至私钥空间,得到初始交易私钥。指定解密算法为RSA解密算法RSAEnc,以A为例,如图3所示,随机获取一个随机初始值mA,通过主私钥skA和随机初始值mA利用RSA解密算法RSAEnc计算得到初始临时私钥
Figure RE-GDA0003335428140000061
再通过如SHA256哈希函数将其映射到私钥空间中,得到初始交易私钥 skA,0=SHA256(sk′A,0),其中,脚标0代表初始交易笔数。对应的交易方B,其初始临时私钥
Figure RE-GDA0003335428140000062
初始交易私钥 skB,0=SHA256(sk′B,0)。
步骤S204,构造交易双方各自的初始退款交易对。
退款交易对包括承诺交易C和可撤销支付交易RD。针对交易双方中的任一交易方,以该交易方的初始交易私钥和另一交易方的公钥生成多重签名地址,构造承诺交易和可撤销支付交易。以交易方A为例,在生成skA,0后,通过skA,0和交易方B的公钥pkB生成一个新的2-of-2多重签名地址addrA0,B,花费该地址中的资金需要使用A的初始交易私钥skA,0和B的主私钥skB共同签名。为A构造一对初始退款交易对C0a/RD0a,C0a即由交易方A构造的第0笔承诺交易,即初始承诺交易;RD0a即由交易方A构造的对应于C0a的第0 笔可撤销支付交易,即初始可撤销支付交易。0即第0笔。a代表由交易方A 构造。其中,C0a将锁定在地址addrA,B中属于交易方A的通道资金注入地址
Figure RE-GDA0003335428140000071
属于交易方B的通道资金注入地址addrB。RD0a将地址
Figure RE-GDA0003335428140000072
中的资金注入地址addrA,并为该交易设定一个序列号,作用是只有当C0a有序列号个确认后,RD0a才能进块,以创建一个争议期,即若交易方A广播了C0a/RD0a,交易方B能够立即拿回属于他的通道资金,而交易方A需要等待序列到期之后才能拿回属于他的通道资金。
其中,地址addrA,addrB为交易方A和B所拥有,对应于公钥pkA,pkB的钱包地址,交易双方的地址addrA,addrB也是相互公开的。通过各自公钥采用指定算法计算得到,具体的,将公钥作为输入,经过SHA256算法和 RIPEMD160单向哈希算法计算,并通过Base58Check编码得到的一个字符串即为地址。如以交易方A为例,首先通过A=RIPEMD160(SHA256(pkA))得到一个长度为160位的字符串,接着对A添加一个版本前缀0x00,并对添加后的值(0x00+A)进行两次SHA256哈希算法,得到 checksum=SHA256(SHA256(0x00+A)),再取checksum的前四字节作为校验码添加到A之后,最后对(0x00+A+校验码)进行Base58编码,就得到了addrA。addrB的计算与addrA同理。
地址
Figure RE-GDA0003335428140000073
为交易方A构造第0笔承诺交易,即初始承诺交易的第一个输出时所使用的2-of-2多重签名地址,花费地址
Figure RE-GDA0003335428140000074
中通道资金的可撤销支付交易/违约救济交易需要交易方A的初始交易私钥skA,0与交易方B的主私钥skB对其进行签名;对于地址
Figure RE-GDA0003335428140000075
为交易方B构造第0笔承诺交易,即初始承诺交易的第一个输出时所使用的2-of-2多重签名地址,花费地址
Figure RE-GDA0003335428140000076
中通道资金的可撤销支付交易/违约救济交易需要交易方A的主私钥 skA与交易方B的初始交易私钥skB,0对其进行签名。
在构造初始退款交易对后,交易双方还需对其进行交换并签名各自构造的初始退款交易对。
步骤S205,广播保证金交易以建立通道。
将构造的保证金交易进行广播,建立通道。
步骤S206,以交易双方的初始临时私钥为基础,依次循环生成第i笔交易所需的第i笔临时私钥和第i笔交易私钥,以构建对应的第i笔退款交易对进行交易。
基于通道可以进行链下交易,对应的链下交易在构造新的交易时,需要使用新的交易私钥。即第i笔交易基于第i笔交易私钥构建。在交易双方生成初始临时私钥和初始交易私钥时,将其保存在本地,作为第0笔临时私钥和第0笔交易私钥。以本地保存的初始临时私钥为基础,利用指定解密算法依次循环生成第i笔交易所需的第i笔临时私钥。第i笔临时私钥根据第i-1笔临时私钥生成。具体的,利用RSA解密算法RSAEnc计算过程可以如图3所示,利用sk′A,1可以计算得到sk′A,2、sk′A,3……利用RSA解密算法RSAEnc计算得到第i笔临时私钥
Figure RE-GDA0003335428140000081
将第i笔临时私钥利用 SHA256哈希算法映射至私钥空间,得到第i笔交易私钥skA,i,用于构造第i 笔承诺交易的2-of-2多重签名地址输出时使用。
对于第i次通道状态的更新,交易双方构造第i笔退款交易对Cia/RDia和 Cib/RDib来表示第i次的通道状态。如交易方A的通道资金为ai,交易方B 的通道资金为bi。交易双方从第i-1笔临时私钥开始,通过使用各自的主私钥 {dA,NA},{dB,NB}和SHA256哈希函数来生成链下交易过程使用到的第i笔交易私钥skA,i和skB,i,并通过第i笔交易私钥和交易对方的公钥生成新的2-of-2多重签名地址
Figure RE-GDA0003335428140000082
Figure RE-GDA0003335428140000083
第i笔退款交易对的构造与第0笔退款交易对即初始退款交易对的构造相同。以交易方A为例,A构造第i笔的退款交易对Cia/RDia。Cia以addrA,B作为输入,将通道资金ai注入地址
Figure RE-GDA0003335428140000084
将通道资金bi注入addrB。RDia将地址
Figure RE-GDA0003335428140000085
中的通道资金注入地址addrA,并为该交易设定一个序列号。
步骤S207,当交易双方中任一交易方广播的第i笔退款交易对符合通道关闭条件时,由另一交易方广播构建的第i笔违约救济交易以关闭通道。
在不存在恶意广播,符合通道关闭的情况下,通道可以保持开启,方便交易进行。交易双方可以构造一笔结算交易,将地址addrA,B中的通道资金按照最终状态分配给交易双方,交易双方交换签名结算交易,并广播到区块链,实现通道资金的分配。
在存在恶意广播的情况下,当交易双方中任一交易方广播的第i笔退款交易对为已撤销的交易对时,判断符合通道关闭条件。如某一交易方广播了之前已被撤销的退款交易对,另一交易方在序列到期之前,另一交易方根据交易双方中任一交易方的第i-1笔临时私钥广播另一交易方的第i笔违约救济交易,其中,另一交易方构造签名广播构建的与该交易方的第i笔退款交易对对应的第i笔违约救济交易,以关闭通道,且使得通道中的资金都归自己所有。
具体的,假设在进行第i+n次通道状态更新时,交易方A广播了之前第i 次状态的退款交易对Cia/RDia,交易方B能够在争议期内构造一笔违约救济交易BRia来替代RDia。,将地址
Figure RE-GDA0003335428140000091
中的资金注入addrB,并且不设定序列号。交易方B可以利用本地存储的临时私钥sk′A,i-1,通过交易方A的公钥 {eA,NA}利用指定加密算法对其进行迭代,恢复出第i次状态更新中A使用的临时私钥sk′A,i,指定加密算法算法如采用RSA加密算法RSADec,
Figure RE-GDA0003335428140000092
交易方B使用SHA256 哈希欢送将第i笔临时私钥sk′A,i映射为对应的第i笔交易私钥skA,i= SHA256(sk′A,i)。交易方B使用skA,i和skB对交易BRia进行签名并广播,获得通道中所有资金。或者,交易方A在生成第i+1笔退款交易对Ci+1a/RDi+1a时,将生成第i次通道状态更新中使用到的第i笔交易私钥skA,i对应的第i笔临时私钥sk′A,i以及生成的第i+1笔退款交易对一起发送给交易方B,使得交易方B 能够对生成的违约救济交易BRia进行签名。BRia为交易方B构造的针对交易方A恶意广播的已被撤销的退款交易对Cia/RDia对应的第i笔违约救济交易。 BRia将地址
Figure RE-GDA0003335428140000093
中的资金注入地址addrB,且不设定序列号。当交易方A 恶意广播第i笔退款交易对Cia/RDia,交易方B能够在序列到期之前,通过SHA256哈希函数得到SHA256(sk′A,i)=skA,i,并使用skA,i与skB对构造的BRia 进行签名并广播,替代交易RDia,从而获得通道中的所有资金,实现对交易方A的惩罚。
进一步,交易双方中的任一交易方将该交易方的第i笔临时私钥发送给另一交易方,另一交易方利用指定加密算法验证该交易方的第i笔临时私钥,若验证成功,则将利用该交易方的第i笔临时私钥替换本地保存的该交易方的第 i-1笔临时私钥。如当交易方B收到第i笔临时私钥sk′A,i后,将通过交易方A 的公钥{eA,NA},利用指定加密算法算法如采用RSA加密算法RSADec,来验证
Figure RE-GDA0003335428140000101
是否成立。若验证通过,将用sk′A,i来覆盖交易方B 本地原保存的sk′A,i-1,对应的交易方B也会将其第i笔临时私钥以及创建的退款交易对Ci+1a/RDi+1a用skB签名后返回给交易方A,由交易方A签名等,方便当交易方B发生广播的退款交易对符合通道关闭条件时,由另一交易方广播构建对应的违约救济交易以关闭通道。
基于以上处理,交易双方在本地可以仅需要存储一份来自对方的最新笔临时私钥,通过对方的公钥对该临时私钥进行迭代,就能够得出之前链下交易中对方使用的所有私钥,一方面验证临时私钥的准确性,另一方面,可以迭代获取到已被撤销的退款交易对对应的交易私钥,无需本地存储多份交易私钥,大大降低闪电网络存储成本。由于对方使用的主私钥不是公开的,也保障了对方下一笔交易私钥的安全性。
根据本发明提供的闪电网络的密钥管理方法,在交易过程中,通过临时私钥和主私钥,可以生成下一笔临时私钥,以及下一笔交易使用的交易私钥,使得存储成本比原始闪电网络降低很多,且本发明无需修改闪电网络主干协议本身,也不需要基于智能合约或新的共识机制,更简便。进一步,若交易双方不主动关闭通道且不广播符合通道关闭条件的退款交易对时,可以保存通道的开启,方便进行交易。
图4示出了根据本发明一个实施例的闪电网络的密钥管理装置的功能框图。如图4所示,闪电网络的密钥管理装置包括如下模块:
第一生成模块410,适于利用指定算法为交易双方分别生成各自的主私钥和公钥;
通道建立模块420,适于构建保证金交易;利用交易双方各自的主私钥分别生成各自的初始交易私钥和初始临时私钥;其中,初始交易私钥由初始临时私钥生成;构造交易双方各自的初始退款交易对;广播保证金交易以建立通道;
第二生成模块430,适于以交易双方的初始临时私钥为基础,依次循环生成第i笔交易所需的第i笔临时私钥和第i笔交易私钥,以构建对应的第i笔退款交易对进行交易;其中,第i笔临时私钥根据第i-1笔临时私钥生成;第 i笔交易私钥根据第i笔临时私钥生成;第i笔退款交易对根据交易双方的第i 笔交易私钥构建;
通道关闭模块440,适于当交易双方中任一交易方广播的第i笔退款交易对符合通道关闭条件时,由另一交易方广播构建的第i笔违约救济交易以关闭通道;其中,另一交易方根据交易双方中任一交易方的第i-1笔临时私钥广播另一交易方的第i笔违约救济交易。
可选地,通道建立模块420进一步适于:
针对交易双方中的任一交易方,获取该交易方随机初始数;
根据该交易方的主私钥和随机初始数利用指定解密算法生成初始临时私钥,并保存在本地;
将初始临时私钥映射至私钥空间,得到初始交易私钥。
可选地,退款交易对包括承诺交易和可撤销支付交易;
通道建立模块420进一步适于:
针对交易双方中的任一交易方,以该交易方的初始交易私钥和另一交易方的公钥生成多重签名地址,构造承诺交易和可撤销支付交易;其中,该交易方将其通道资金注入。
可选地,第二生成模块430进一步适于:
交易双方将本地保存的初始临时私钥利用指定解密算法依次循环生成第i 笔交易所需的第i笔临时私钥;
将第i笔临时私钥映射至私钥空间,得到第i笔交易私钥。
可选地,通道关闭模块440具体为:
交易双方中的任一交易方将该交易方的第i笔临时私钥发送给另一交易方;
另一交易方利用指定加密算法验证该交易方的第i笔临时私钥,若验证成功,则将利用该交易方的第i笔临时私钥替换本地保存的该交易方的第i-1笔临时私钥;
另一交易方利用该交易方的第i笔临时私钥映射得到该交易方的第i笔交易私钥,签名另一交易方的第i笔违约救济交易进行广播,以获取通道资金。
可选地,通道关闭模块440进一步适于:
当交易双方中任一交易方广播的第i笔退款交易对为已撤销的交易对时,判断符合通道关闭条件;
由另一交易方广播构建的与该交易方的第i笔退款交易对对应的第i笔违约救济交易以关闭通道。
可选地,指定算法为RSA算法;指定解密算法为RSA解密算法;指定加密算法为RSA加密算法。
以上各模块的描述参照方法实施例中对应的描述,在此不再赘述。
本申请还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的闪电网络的密钥管理方法。
图5示出了根据本发明一个实施例的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图5所示,该电子设备可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:
处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。
通信接口504,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器502,用于执行程序510,具体可以执行上述闪电网络的密钥管理方法实施例中的相关步骤。
具体地,程序510可以包括程序代码,该程序代码包括计算机操作指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC (ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序510具体可以用于使得处理器502执行上述任意方法实施例中的闪电网络的密钥管理方法。程序510中各步骤的具体实现可以参见上述闪电网络的密钥管理实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的闪电网络的密钥管理装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (10)

1.一种闪电网络的密钥管理方法,其特征在于,方法包括:
利用指定算法为交易双方分别生成各自的主私钥和公钥;
构建保证金交易;利用交易双方各自的主私钥分别生成各自的初始交易私钥和初始临时私钥;其中,初始交易私钥由初始临时私钥生成;构造交易双方各自的初始退款交易对;广播保证金交易以建立通道;
以交易双方的初始临时私钥为基础,依次循环生成第i笔交易所需的第i笔临时私钥和第i笔交易私钥,以构建对应的第i笔退款交易对进行交易;其中,第i笔临时私钥根据第i-1笔临时私钥生成;第i笔交易私钥根据第i笔临时私钥生成;第i笔退款交易对根据交易双方的第i笔交易私钥构建;
当交易双方中任一交易方广播的第i笔退款交易对符合通道关闭条件时,由另一交易方广播构建的第i笔违约救济交易以关闭通道;其中,另一交易方根据交易双方中任一交易方的第i-1笔临时私钥广播另一交易方的第i笔违约救济交易。
2.根据权利要求1所述的方法,其特征在于,所述利用交易双方各自的主私钥分别生成各自的初始交易私钥和初始临时私钥进一步包括:
针对交易双方中的任一交易方,获取该交易方随机初始数;
根据该交易方的主私钥和所述随机初始数利用指定解密算法生成初始临时私钥,并保存在本地;
将所述初始临时私钥映射至私钥空间,得到初始交易私钥。
3.根据权利要求1所述的方法,其特征在于,所述退款交易对包括承诺交易和可撤销支付交易;
所述构造交易双方各自的初始退款交易对进一步包括:
针对交易双方中的任一交易方,以该交易方的初始交易私钥和另一交易方的公钥生成多重签名地址,构造承诺交易和可撤销支付交易;其中,该交易方将其通道资金注入。
4.根据权利要求1所述的方法,其特征在于,所述以交易双方的初始临时私钥为基础,依次循环生成第i笔交易所需的第i笔临时私钥和第i笔交易私钥进一步包括:
所述交易双方将本地保存的初始临时私钥利用指定解密算法依次循环生成第i笔交易所需的第i笔临时私钥;
将所述第i笔临时私钥映射至私钥空间,得到第i笔交易私钥。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述另一交易方根据交易双方中任一交易方的第i笔临时私钥广播另一交易方的第i笔违约救济交易具体为:
交易双方中的任一交易方将该交易方的第i笔临时私钥发送给另一交易方;
另一交易方利用指定加密算法验证该交易方的第i笔临时私钥,若验证成功,则将利用该交易方的第i笔临时私钥替换本地保存的该交易方的第i-1笔临时私钥;
另一交易方利用该交易方的第i笔临时私钥映射得到该交易方的第i笔交易私钥,签名另一交易方的第i笔违约救济交易进行广播,以获取通道资金。
6.根据权利要求1所述的方法,其特征在于,所述当交易双方中任一交易方广播的第i笔退款交易对符合通道关闭条件时,由另一交易方广播构建的第i笔违约救济交易以关闭通道进一步包括:
当交易双方中任一交易方广播的第i笔退款交易对为已撤销的交易对时,判断符合通道关闭条件;
由另一交易方广播构建的与该交易方的第i笔退款交易对对应的第i笔违约救济交易以关闭通道。
7.根据权利要求5所述的方法,其特征在于,所述指定算法为RSA算法;所述指定解密算法为RSA解密算法;所述指定加密算法为RSA加密算法。
8.一种闪电网络的密钥管理装置,其特征在于,装置包括:
第一生成模块,适于利用指定算法为交易双方分别生成各自的主私钥和公钥;
通道建立模块,适于构建保证金交易;利用交易双方各自的主私钥分别生成各自的初始交易私钥和初始临时私钥;其中,初始交易私钥由初始临时私钥生成;构造交易双方各自的初始退款交易对;广播保证金交易以建立通道;
第二生成模块,适于以交易双方的初始临时私钥为基础,依次循环生成第i笔交易所需的第i笔临时私钥和第i笔交易私钥,以构建对应的第i笔退款交易对进行交易;其中,第i笔临时私钥根据第i-1笔临时私钥生成;第i笔交易私钥根据第i笔临时私钥生成;第i笔退款交易对根据交易双方的第i笔交易私钥构建;
通道关闭模块,适于当交易双方中任一交易方广播的第i笔退款交易对符合通道关闭条件时,由另一交易方广播构建的第i笔违约救济交易以关闭通道;其中,另一交易方根据交易双方中任一交易方的第i-1笔临时私钥广播另一交易方的第i笔违约救济交易。
9.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7中任一项所述的闪电网络的密钥管理方法对应的操作。
10.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-7中任一项所述的闪电网络的密钥管理方法对应的操作。
CN202110896473.4A 2021-08-05 2021-08-05 闪电网络的密钥管理方法及装置 Pending CN115706662A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110896473.4A CN115706662A (zh) 2021-08-05 2021-08-05 闪电网络的密钥管理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110896473.4A CN115706662A (zh) 2021-08-05 2021-08-05 闪电网络的密钥管理方法及装置

Publications (1)

Publication Number Publication Date
CN115706662A true CN115706662A (zh) 2023-02-17

Family

ID=85178912

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110896473.4A Pending CN115706662A (zh) 2021-08-05 2021-08-05 闪电网络的密钥管理方法及装置

Country Status (1)

Country Link
CN (1) CN115706662A (zh)

Similar Documents

Publication Publication Date Title
JP6908700B2 (ja) 情報保護のためのシステム及び方法
DK3268914T3 (en) DETERMINING A COMMON SECRET FOR SECURE EXCHANGE OF INFORMATION AND Hierarchical, Deterministic cryptographic keys
AU2019416333B2 (en) Blockchain management system
CN109889497B (zh) 一种去信任的数据完整性验证方法
US10938549B2 (en) System and method for information protection
US10700850B2 (en) System and method for information protection
KR20200066258A (ko) 정보 보호를 위한 시스템 및 방법
KR20200066260A (ko) 정보 보호를 위한 시스템 및 방법
WO2019119632A1 (zh) 基于区块链的多账本转账方法、电子装置及可读存储介质
CN111615810A (zh) 获取数字签名的数据的计算机实现方法和系统
Ghuli et al. A review on blockchain application for decentralized decision of ownership of IoT devices
EP3857814A1 (en) Computer-implemented system and method for transferring access to digital resource
US11811945B2 (en) Blockchain identities
CN108768975A (zh) 支持密钥更新和第三方隐私保护的数据完整性验证方法
CN114760054A (zh) 基于数字钱包的密钥管理方法、装置及存储介质
CN118160275A (zh) 阈值签名方案
CN109873828B (zh) 资源管理方法、装置、设备和存储介质
CN115868141A (zh) 用于数字签名的单轮多方计算的技术
CN112352399A (zh) 用于使用物理上不可克隆函数在板上生成密码密钥的方法
CN111385096A (zh) 一种区块链网络、签名处理方法、终端及存储介质
CN115706662A (zh) 闪电网络的密钥管理方法及装置
Zarepour-Ahmadabadi et al. A new gradual secret sharing scheme with diverse access structure
US20220345312A1 (en) Zero-knowledge contingent payments protocol for granting access to encrypted assets
US20220067727A1 (en) Method for operating a distributed database system, distributed database system, and industrial automation system
Vijayakumaran An introduction to bitcoin

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