基于Mimblewimble的链下匿名支付通道方法及系统

文档序号:27764431发布日期:2021-12-04 00:34阅读:241来源:国知局
基于Mimblewimble的链下匿名支付通道方法及系统
基于mimblewimble的链下匿名支付通道方法及系统
技术领域
1.本技术涉及信息安全技术领域,特别涉及一种基于mimblewimble的链下匿名支付通道方法及系统。


背景技术:

2.区块链作为一种分布式数据存储方案,具有不可伪造、可追溯、公开、透明、集体维护等特点,近年来在各个行业得到了广泛的应用。比特币是中本聪于2008年提出的去中心化支付系统,作为区块链技术最成功的应用,比特币自诞生之日起就具有强大的吸引力。然而,比特币系统每秒只能处理不超过7笔交易,交易速度慢,且确认时间长,迫切需要提高比特币的交易速度。同时,区块链为了验证每笔交易的真实性和正确性,将用户之间发生的每一笔交易都存储在网络中,并添加到区块中,导致区块链的交易吞吐量较低,可扩展性差。此外,将每笔交易放在链上可能会导致一些隐私问题,攻击者能够通过区块链中公开的交易单,分析用户身份并对发起攻击。
3.mimblewimble是由一位匿名学者在2016年提出的一种对比特币区块链系统进行隐私增强的保护技术,它结合了包括保密交易、聚合签名、范围证明等在内的几种密码学技术,实现了良好的隐私。闪电网络是近几年学者针对比特币网络确认时间长、扩展性差等问题提出的概念。闪电网络由点对点网络组成,是运行在比特币和其他区块链之上的第二层技术,实现了在无需信任对方及可信第三方的情况下实时海量的交易网络。经常有交易来往的双方可以通过向通道内提前存入固定的金额以创建支付通道,支付通道允许各方在保持链上交易安全性的同时在链外执行交易来减轻区块链的负担。然而,尽管闪电网络将大部分交易改为在链下进行,但在链上作为证据提交的开启和关闭通道的操作依然能够暴露用户的大量隐私信息。
4.作为一种区块链隐私增强技术,mimblewimble以其能够同时隐藏交易双方的身份和交易金额等特点,已经被多种新型数字货币所应用,如grin等。然而,mimblewimble技术在手续费和交易确认时间方面存在一定的缺陷。两个问题是最突出的。一是仍需要向矿工支付高额的手续费,以确保交易被记录在链,二是矿工需要对交易单中的承诺和金额的零知识证明进行验证,以确保交易的真实性,这会导致较长的交易确认时间。这些缺陷限制了该技术的广泛应用。


技术实现要素:

5.本技术旨在至少在一定程度上解决相关技术中的技术问题之一。
6.为此,本技术的一个目的在于提出一种基于mimblewimble的链下匿名支付通道方法,该方法能够在确保匿名,即交易双方和交易金额均不透露的情况下,提高比特币网络的可扩展性,减少交易的确认时间和交易手续费。
7.本技术的另一个目的在于提出一种基于mimblewimble的链下匿名支付通道系统。
8.为达到上述目的,本技术一方面实施例提出了一种基于mimblewimble的链下匿名
支付通道方法,包括以下步骤:打开通道步骤:确定存入的最低金额,通过向通道内分别存入大于所述最低金额的硬币以开启支付通道,并且在存款时,大于所述最低金额的部分作为随机金额,且所述随机金额被解构以无法花费;更新通道状态步骤:基于底层mimblewimble的交易方式,根据协商的本轮交易金额生成预交易,并且基于所述预交易生成交易,及进行交易聚合,其中,在进行交易聚合时,除聚合付款方生成的预交易和收款方生成的交易外,同时聚合收款方当前拥有的余额;关闭通道步骤:在交易双方按照当前最新的余额分配状态进行退款后,关闭所述支付通道。
9.为达到上述目的,本技术另一方面实施例提出了一种基于mimblewimble的链下匿名支付通道系统,包括:打开模块,用于确定存入的最低金额,通过向通道内分别存入大于所述最低金额的硬币以开启支付通道,并且在存款时,大于所述最低金额的部分作为随机金额,且所述随机金额被解构以无法花费;更新模块,用于基于底层mimblewimble的交易方式,根据协商的本轮交易金额生成预交易,并且基于所述预交易生成交易,及进行交易聚合,其中,在进行交易聚合时,除聚合付款方生成的预交易和收款方生成的交易外,同时聚合收款方当前拥有的余额;关闭模块,用于在交易双方按照当前最新的余额分配状态进行退款后,关闭所述支付通道。
10.本技术实施例的基于mimblewimble的链下匿名支付通道方法及系统,可用于提高区块链的可扩展性和快速交易,实现用户间的快速、大量的小额支付,提高区块链的可扩展性,具有以下有益效果:
11.1)可以实现交易的匿名性。匿名性体现在两个方面:隐藏支付金额和支付双方。支付金额方面,除使用pedersen承诺提供的盲化因子,保证存入的硬币数量只有交易双方知道外,本方案还添加了一个随机金额,保证只有存款人知道自己存入的具体金额,甚至支付通道内的合作方也无法知晓。打开支付通道后,链下交易转移到双方建立的支付通道内执行,不会上传到区块链,最终只有打开和关闭通道的交易操作会在链上显示。由于区块链系统是基于mimblewimble的,已经上传至区块链的交易会不断聚合并进行混币操作,这种混合大量交易的操作使得攻击者无法通过单个交易来分析出交易双方的身份,能够有效保证用户身份的匿名性。
12.2)可以实现硬币防盗窃攻击。双方在存入两人协商的固定金额以开启支付通道的同时,还分别存入了一个随机金额。这个额外金额只有存款者本人知道,对支付通道的另一方是保密的,只有在退款并关闭通道时才会揭露,避免交易双方在锁定硬币后,由于交易逆转而无法使用支付通道进行链下交易。
13.3)可以实现防止广播旧交易攻击。每次执行更新通道操作后,交易双方需向通道内的合作方交换上一轮交易中使用的盲化因子,这使得如果有任意一方想要通过广播旧交易从中作恶,以拒绝付款,另一方则可以通过盲化因子递归地构建作恶者的承诺交易,并将作恶者通道内的金额没收,归自己所有。
14.本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
15.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得
明显和容易理解,其中:
16.图1为根据本技术一个实施例的基于mimblewimble的链下匿名支付通道方法流程图;
17.图2为根据本技术一个实施例的基于mimblewimble的链下匿名支付通道方法流程框架图;
18.图3为根据本技术一个实施例的基于mimblewimble的链下匿名支付通道系统结构示意图。
具体实施方式
19.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本技术,而不能理解为对本技术的限制。
20.本技术将mimblewimble隐私保护技术和闪电网络结合,能在保护区块链用户隐私的同时,提高区块链的可扩展性和交易速度。任何使用mimblewimble技术的区块链用户能够与其经常进行交易的另一方通过协商,开启一个两者之间的链下支付通道,并将原来需要在链上进行的大量交易转移到链下进行,而在链上只保存开启和关闭通道的两笔交易,这种方式能够在确保安全性的同时,大大减少区块链的负担。在这个解决方案中,用户在开启在通道时首先协商每个人向通道内存入金额的最小值,除此之外,每个人需要再存入一个额外的随机金额,以防恶意攻击者能够通过已知的金额打开用户的承诺,增强输入承诺的安全性。通道开启后,两人使用mimblewimble保密交易的交易形式进行链下交易,并在每次交易后对交易进行聚合。关闭通道时,通道按照双方当前的金额分配方式为两用户退款,任何用户在任何时间均可以发起退款。
21.mimblewimble系统主要包括几个基本的组件:承诺方案comm、聚合签名sig和非交互式零知识证明系统ii。
22.(1)承诺方案:选用循环群中基于离散对数假设的pedersen承诺,c=v*h+k*g。
23.令承诺方案为comm=(setup,commit,vercom),包含以下算法:
24.setup算法是承诺初始化算法,将承诺参数com
p
作为输入,输出三个内容,承诺值域v
p
、密钥值域k
p
和承诺值域c
p

25.commit算法将承诺生成算法,其将一个承诺值v∈v
p
和一个随机数k∈k
p
作为输入,输出一个承诺c∈c
p
。该承诺的值为v,随机数为k。
26.vercom算法是承诺验证算法,将元组(c,v,k)作为输入,如果c是一个有效承诺,则输出1,否则输出0。
27.(2)聚合签名:聚合签名包括sig=(keygen,sign,agg,versig),选用grin项目中使用的schnorr签名。
28.keygen算法为密钥生成算法,将sig
p
作为输入,用于生成一个私钥sk∈sk
p
和一个公钥pk∈pk
p

29.sign算法为签名算法,将sig
p
,私钥sk和消息m作为输入,输出用私钥sk对消息m的签名sig。
30.agg算法为签名聚合算法,算法将两个消息l0和l1产生的签名sig0和sig1进行聚
合,并生成聚合签名sig。
31.versig算法为签名验证算法,用于验证签名的正确性和真实性。
32.(3)非交互式零知识证明系统ii
33.在本技术中,使用非交互式零知识证明系统对方案中的承诺和金额进行验证,但不泄露任何知识。一方面,该证明系统能够在不打开承诺的情况下对承诺值进行验证,另一方面,方案中交易的金额必须保证在一个固定的范围内。选用当前流行的防弹证明,该证明系统包括ii=(setup,prv,ver)。
34.setup算法为初始化算法,用于生成参数crs并提供模拟可提取的有效的证明提取器。
35.prv算法为证明算法,用于生成一个零知识证明π。
36.vet算法为验证算法,用于验证证明的真实性。
37.链下匿名支付通道方案用于实现一个双向支付通道,主要包括几个部分:
38.硬币:每个硬币c均包含硬币金额v和硬币密钥k,只有同时拥有两者的用户才能花费该枚硬币。
39.交易:在支付通道中,交易允许创建通道的两方自由分配通道内的存款。一般来说,交易由三部分组成:输入硬币tx.in,输出硬币tx.out和一个证明p,表示为tx=(c,c

,p)。p是一个三元组包括(ke,sig,π),其中,sig为对交易进行的签名,ke为交易内核,用于验证交易签名是否正确,π是范围证明的输出。
40.预交易:预交易允许一方将资金转移到与他合作的支付通道中的另一方。与交易类似,预交易也包括三个属性,输入硬币ptx.in、输出找零硬币ptx.out和支付给接收者的硬币ptx.pay。
41.链下交易方案:令p:=(com
p
,sig
p
,crs),链下交易方案主要包含以下算法:
42.(tx,k)

compose(p,(c1,v1,k1),(c2,v2,k2)):合并算法compose将两枚硬币作为输入,输出交易tx,用于交易双方开通支付通道进行链下支付,交易双方调用合并算法,并将一定金额存入通道。
43.(c

,v

,k

),(c

,v

,k

)

decompose(p,(c,v,k),v

):分解算法de

compose将一枚硬币作为输入,输出两枚金额分别为v

和v

的硬币,输出金额总和应等于输入硬币金额v,用于将金额为v的硬币分解为两枚有效的硬币c

和c


44.(ptx,k’)

send(p,(c,v,k),v

):发送算法send将一枚硬币c和发送金额v

作为输入,输出一个预交易ptx和硬币密钥k’。当发送者希望进行交易来更新通道内存款的分配值时,发送者首先调用send算法进行交易。
45.(tx,k

)

receive(p,ptx,v

,(c,v,k)):接收算法receive将预交易ptx,与ptx.pay相等的交易金额v

和一枚硬币c作为输入,输出一个最终交易tx和密钥k

。接收者使用该算法对接收到的预交易进行更新,并转换成最终的有效交易。
46.tx

agg(p,tx0,tx1):交易聚合算法agg将两笔交易tx0和tx1作为输入,并对两笔交易进行聚合,输出聚合后的交易tx。
47.(c
f1
,v
f1
,k
f1
),(c
f2
,v
f2
,k
f2
)

refund(p,(c1,v1,k1),(c2,v2,k2),tx,
48.(c
′1,v
′1,k
′1),(c
′2,v
′2,k
′2)):退款算法refund将四枚硬币c1,c2,c
′1,c
′2和交易tx作为输入,输出两枚最终硬币c
f1
和c
f2
。当通道内的用户想要关闭通道并取出当前通道内
的余额时,通道双方通过调用退款算法进行退款,并关闭通道。
49.下面参照附图描述根据本技术实施例提出的基于mimblewimble的链下匿名支付通道方法及系统。
50.首先将参照附图描述根据本技术实施例提出的基于mimblewimble的链下匿名支付通道方法。
51.图1为根据本技术一个实施例的基于mimblewimble的链下匿名支付通道方法流程图。
52.如图1所示,该基于mimblewimble的链下匿名支付通道方法包括以下步骤:
53.在步骤s101中,打开通道步骤:确定存入的最低金额,通过向通道内分别存入大于最低金额的硬币以开启支付通道,并且在存款时,大于最低金额的部分作为随机金额,且随机金额被解构以无法花费。
54.可选地,在本技术的一个实施例中,打开通道步骤具体包括:确定交易双方协商打开支付通道的最低金额;按照预设的选择策略从拥有的金额中选择大于最低金额的金额,同时附带随机金额一起存入支付通道;执行预设的构建算法,检查存入硬币的有效性,确保存入支付通道内的硬币合法且没有进行双花行为,并且大于两者的约定值;在交易双方将硬币存入支付通道后,生成存款交易;执行预设的解构算法,将存入的硬币分解为第一枚有效硬币和第二枚有效硬币,其中,第一枚有效硬币的金额为两人协商的最低金额,第二枚有效金额为随机金额;在交易双方均向支付通道内存入了大于最低金额的硬币后,判定支付通道开启成功,确定当前状态和可用硬币的当前密钥。
55.具体地,结合图2所示,在一个具体实施例中,打开通道步骤具体由六个步骤实现:
56.步骤1:双方协商打开支付通道的金额v
init
,并计划将后续两者间的大量交易转移到链下进行。
57.步骤2:双方根据一定的选择策略,从自己拥有的钱中选择大于步骤1中协商的最小金额v
init
,同时附带存入一个仅存款者知晓的随机金额v

a
和v

b
,将其存入支付通道。随机金额仅用于保护自己的存款承诺交易无法被轻易打开,不能在支付通道内通过交易进行转移。
58.步骤3:执行构建算法(如表1),首先检查存入硬币的有效性,并确保存入支付通道内的硬币是合法且没有进行双花行为的,并且金额大于两者的约定值v
init

59.表1构建算法
60.[0061][0062]
步骤4:双方将硬币存入通道,生成存款交易tx
fund

[0063]
步骤5:双方执行解构算法(如表2),将存入的硬币分解为两枚有效硬币(c

,v

,k

)和(c

,v

,k

),其中一枚的金额为两人协商的金额v
init
,另一枚的金额为存入的随机金额。该操作确保他们就当前通道状态下的金额达成一致,并分配他们目前可以花费的金额。
[0064]
表2解构算法
[0065][0066]
步骤6:双方均向支付通道内存入了大于固定大小v
init
的硬币金额,支付通道开启成功,当前状态为state0,两人可用硬币的当前密钥为k
a,0
和k
b,0

[0067]
在步骤s102中,更新通道状态步骤:基于底层mimblewimble的交易方式,根据协商的本轮交易金额生成预交易,并且基于预交易生成交易,及进行交易聚合,其中,在进行交易聚合时,除聚合付款方生成的预交易和收款方生成的交易外,同时聚合收款方当前拥有的余额。
[0068]
可选地,在本技术的一个实施例中,更新通道状态步骤进一步包括:确定付款方与收款方协商当前状态对应的本轮交易金额;在付款方执行发送算法构造预交易时,获取需要支付给付款方的交易金额和找零给自己的金额,同时,付款方为本需要支付给付款方的交易金额生成对应的密钥;付款方将构造的预交易发送给收款方;在收款方执行接受算法时,检查本轮所接收的预交易的正确性,并生成一个新交易,并且接收方对本轮产生的交易及自己当前状态下的余额硬币进行聚合,并生成本轮最终交易;在收款方发布本轮最终交易之后,付款方和收款方交换上一个状态中使用的密钥。
[0069]
具体地,在上述实施例的基础上,更新通道状态阶段和链上的交易阶段类似,具体由六个步骤实现:
[0070]
步骤7:付款方与收款方协商当前状态为state
i
时,本轮的交易金额v
i

[0071]
步骤8:付款方执行发送算法(如表3)构造预交易,其输出包含两个部分,需要支付给付款方的交易金额v
i
和找零给自己的金额v

,同时,付款方为v
i
生成一个密钥k

i

[0072]
表3发送算法
[0073][0074]
步骤9:付款方将构造的预交易ptxi发送给收款方。
[0075]
步骤10:收款方执行接受算法(如表4)首先检查本轮所接收预交易的正确性,并生成一个新交易tx

i
,其中,新交易的密钥k
i
只有收款方本人知道。接着,接收方对本轮产生的交易ptx
i
、tx

i
以及自已当前状态下的余额硬币c
b,i
‑1进行聚合,以保证交易规模固定,而非随着交易的进行和链下分配金额的不断变化而线性增长,并生成本轮的最终交易tx
i

[0076]
表4接收算法
[0077]
[0078][0079]
步骤11:收款方发布本轮最终交易tx
i

[0080]
步骤12:付款方和收款方交换上一个状态state
i
‑1中使用的密钥k
a,i
‑1和k
b,i
‑1。
[0081]
在步骤s103中,关闭通道步骤:在交易双方按照当前最新的余额分配状态进行退款后,关闭支付通道。
[0082]
可选地,在本技术的一个实施例中,关闭通道步骤包括:在支付通道内的任意一交易方向区块链广播交易进行退款,并执行退款算法;确定交易双方揭示打开通道时存储的包含随机金额的硬币,将通道内双方随机金额和当前通道内的余额合并后退换给交易双方。
[0083]
可选地,在本技术的一个实施例中,在执行退款算法之后,还包括:检查当前通道双方的分配余额是否正确有效,并且检查本轮最终交易是否为最新的交易。
[0084]
可选地,在本技术的一个实施例中,关闭通道步骤还包括:若检查无效,则诚实的交易方可通过递归硬币密钥和每轮的交易金额将作恶者的硬币没收,并转移给自己。
[0085]
具体地,在上述实施例的基础上,关闭通道阶段具体由三个步骤实现:
[0086]
步骤13:支付通道内的任意一方向区块链广播交易tx
i
进行退款,并执行退款算法(如表5)。检查当前通道双方的分配余额c
a,i
和c
b,i
是否正确有效,并且检查tx
i
是否为最新的交易。
[0087]
表5退款算法
[0088]
[0089][0090]
步骤14:交易双方揭示打开通道时存储的包含随机金额的硬币c

a
和c

b
,若检查有效,则将通道内双方随机金额和当前通道内的余额c
a,i
和c
b,i
合并后退换给双方;若检查无效,则诚实的交易方可通过递归硬币密钥{k
x,0
,k
x,1
,,...,k
x,i
‑1}和每轮的交易金额{v0,v1,,...,v
i
‑1}将作恶者的硬币没收,并转移给自已。
[0091]
步骤15:关闭通道。
[0092]
综上,本技术的包括打开通道、更新通道状态和关闭通道三部分。打开通道:交易双方首先协商存入的最低金额,并通过向通道内分别存入大于该金额的硬币以开启支付通道,在存款时,大于最低金额的部分作为随机金额,被解构出来无法花费,仅作为保护因子分别存于交易双方,链下支付通道开启后,双方可将后续的大量交易转移到链下进行,从而减轻区块链的负担。更新通道状态:和底层mimblewimble的普通交易方式类似,包括协商本轮交易金额、生成预交易、生成交易和交易聚合四个步骤,其中交易聚合除聚合付款方生成的预交易和收款方生成的交易外,同时聚合收款方当前拥有的余额,以保证交易容量大小固定。关闭通道:交易双方按照当前最新的余额分配状态进行退款,并关闭通道。
[0093]
根据本技术实施例提出的基于mimblewimble的链下匿名支付通道方法,通过
mimblewimble的底层密码学技术能够保证交易的匿名性,从而保证开启链下支付通道后交易双方间的匿名。存入的随机金额保证了恶意攻击者无法通过穷举打开承诺,以窃取用户的硬币。此外,交易双方在每轮交易结束后,会交换上轮交易中使用的硬币密钥,以防止广播旧交易。
[0094]
其次参照附图描述根据本技术实施例提出的基于mimblewimble的链下匿名支付通道系统。
[0095]
图3为根据申请一个实施例的基于mimblewimble的链下匿名支付通道系统结构示意图。
[0096]
如图3所示,该基于mimblewimble的链下匿名支付通道系统包括:打开模块100、更新模块200和关闭模块300。
[0097]
其中,打开模块100,用于确定存入的最低金额,通过向通道内分别存入大于最低金额的硬币以开启支付通道,并且在存款时,大于最低金额的部分作为随机金额,且随机金额被解构以无法花费。更新模块200,用于更新通道状态,通过基于底层mimblewimble的交易方式,根据协商的本轮交易金额生成预交易,并且基于预交易生成交易,及进行交易聚合,其中,在进行交易聚合时,除聚合付款方生成的预交易和收款方生成的交易外,同时聚合收款方当前拥有的余额。关闭模块300,用于在交易双方按照当前最新的余额分配状态进行退款后,关闭支付通道。
[0098]
可选地,在本技术的一个实施例中,打开模块,具体用于,确定交易双方协商打开支付通道的最低金额;按照预设的选择策略从拥有的金额中选择大于最低金额的金额,同时附带随机金额一起存入支付通道;执行预设的构建算法,检查存入硬币的有效性,确保存入支付通道内的硬币合法且没有进行双花行为,并且大于两者的约定值;在交易双方将硬币存入支付通道后,生成存款交易;执行预设的解构算法,将存入的硬币分解为第一枚有效硬币和第二枚有效硬币,其中,第一枚有效硬币的金额为两人协商的最低金额,第二枚有效金额为随机金额;在交易双方均向支付通道内存入了大于最低金额的硬币后,判定支付通道开启成功,确定当前状态和可用硬币的当前密钥。
[0099]
可选地,在本技术的一个实施例中,更新模块,具体用于,确定付款方与收款方协商当前状态对应的本轮交易金额;在付款方执行发送算法构造预交易时,获取需要支付给付款方的交易金额和找零给自己的金额,同时,付款方为本需要支付给付款方的交易金额生成对应的密钥;付款方将构造的预交易发送给收款方;在收款方执行接受算法时,检查本轮所接收的预交易的正确性,并生成一个新交易,并且接收方对本轮产生的交易及自己当前状态下的余额硬币进行聚合,并生成本轮最终交易;在收款方发布本轮最终交易之后,付款方和收款方交换上一个状态中使用的密钥。
[0100]
可选地,在本技术的一个实施例中,关闭模块,具体用于,在支付通道内的任意一交易方向区块链广播交易进行退款,并执行退款算法;确定交易双方揭示打开通道时存储的包含随机金额的硬币,将通道内双方随机金额和当前通道内的余额合并后退换给交易双方。
[0101]
需要说明的是,前述对基于mimblewimble的链下匿名支付通道方法实施例的解释说明也适用于该实施例的基于mimblewimble的链下匿名支付通道系统,此处不再赘述。
[0102]
根据本技术实施例提出的基于mimblewimble的链下匿名支付通道系统,通过
mimblewimble的底层密码学技术能够保证交易的匿名性,从而保证开启链下支付通道后交易双方间的匿名。存入的随机金额保证了恶意攻击者无法通过穷举打开承诺,以窃取用户的硬币。此外,交易双方在每轮交易结束后,会交换上轮交易中使用的硬币密钥,以防止广播旧交易。
[0103]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0104]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0105]
尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1