发明内容
本发明的主要目的在于提供一种区块链拍卖方法、区块链拍卖设备、计算机可读存储介质及区块链系统,旨在解决相关技术在进行区块链拍卖时隐私性较差、通信轮数多、拍卖效率低和可验证性较差的问题。
为实现上述目的,本发明提供的一种区块链拍卖方法,应用于区块链系统中的竞拍节点,所述区块链系统还包括验证节点以及拍卖节点,所述方法包括:
获取所述拍卖节点公布的系统公共参数,并利用所述系统公共参数计算报价数据对应的报价承诺值;
利用所述报价承诺值生成追踪密钥集,并利用所述追踪密钥集生成所述报价数据对应的报价合法证明结果;
对所述报价承诺值和所述报价合法证明结果进行签名操作,得到并公布最终报价结果。
可选地,在所述利用所述系统公共参数计算报价数据对应的报价承诺值之前,还包括:
向所述拍卖节点进行拍卖报名,并向所述拍卖节点发送拍卖押金;
生成拍卖临时私钥,并利用所述系统公共参数和所述拍卖临时私钥生成对应的拍卖临时公钥。
可选地,所述利用所述系统公共参数计算报价数据对应的报价承诺值,包括:
获取所述报价数据,并生成拍卖随机数;
利用所述报价数据、所述系统公共参数和所述拍卖随机数,按照承诺值计算规则计算所述报价承诺值。
可选地,所述利用所述报价承诺值生成追踪密钥集,并利用所述追踪密钥集生成所述报价数据对应的报价合法证明结果,包括:
获取所述拍卖节点发送的拍卖信息;
当所述拍卖信息符合第一预设条件时,计算第一差值,并利用所述第一差值生成所述追踪密钥集;
利用所述追踪密钥集生成环签名公钥集,并利用所述环签名公钥集、所述第一差值和所述报价承诺值进行可追踪区间证明操作,得到所述报价合法证明结果;
当所述拍卖信息符合第二预设条件时,计算所述第一差值和第二差值,并分别计算所述第一差值对应的第一追踪密钥集和所述第二差值对应的第二追踪密钥集;
利用所述第一追踪密钥集生成第一环签名公钥集,并利用所述第二追踪密钥集生成第二环签名公钥集;
利用所述第一环签名公钥集、所述第一差值和所述报价承诺值进行可追踪区间证明操作,得到所述报价数据对应的第一报价合法证明结果;
利用所述第二环签名公钥集、所述第二差值和所述报价承诺值进行可追踪区间证明操作,得到所述报价数据对应的第二报价合法证明结果;
利用所述第一报价合法证明结果和所述第二报价合法证明结果构建所述报价合法证明结果。
可选地,所述计算第一差值,并利用所述第一差值生成所述追踪密钥集,包括:
利用所述报价数据和所述拍卖信息计算所述第一差值,并将所述第一差值按照预设展开规则进行展开,得到多个第一子差值;
生成各个所述第一子差值分别对应的各个第一随机数,并利用所述第一随机数和所述系统公共参数生成追踪密钥集。
可选地,所述利用所述追踪密钥集生成环签名公钥集,并利用所述环签名公钥集、所述第一差值和所述报价承诺值进行可追踪区间证明操作,得到所述报价合法证明结果,包括:
利用所述拍卖随机数和各个所述第一随机数计算第二随机数;
利用所述第一随机数计算第一子承诺值和第二子承诺值;
利用所述第一子承诺值和所述第二子承诺值生成子公钥集,并利用所述子公钥集构建公钥集;
利用所述追踪密钥集、所述第二随机数、所述公钥集和所述报价承诺值计算目标随机数;
利用所述追踪密钥集、所述第一子承诺值和所述第二子承诺值计算所述环签名公钥集;
利用所述环签名公钥集、所述第二随机数、所述第一随机数、所述报价承诺值、所述追踪密钥集、所述公钥集进行多环签名操作,得到多环签名结果;其中,所述多环签名结果对应的生成元由所述系统公共参数和所述目标随机数构成;
利用所述多环签名结果、所述报价承诺值、所述第二随机数、所述公钥集和所述追踪密钥集生成可追踪区间证明结果,并将所述可追踪区间证明结果确定为所述报价合法证明结果。
可选地,所述对所述报价承诺值和所述报价合法证明结果进行签名操作,得到最终报价结果,包括:
利用所述拍卖临时私钥对所述报价承诺值和所述报价合法证明结果进行签名操作,得到数字签名结果;
利用所述数字签名结果和所述报价合法证明结果生成所述最终报价结果。
本发明还提供了一种区块链拍卖方法,应用于区块链系统中的验证节点,所述区块链系统还包括竞拍节点以及拍卖节点,所述竞拍节点用于执行上述的区块链拍卖方法。所述方法包括:
获取所述竞拍节点公布的最终报价结果;
利用所述竞拍节点对应的拍卖临时公钥对所述最终报价结果进行重复报价检验;
对所述最终报价结果进行合法性验证。
可选地,所述对所述最终报价结果进行合法性验证,包括:
对所述最终报价结果中的数字签名结果进行签名合法性验证;
当所述签名合法性验证通过时,对所述最终报价结果中的报价合法证明结果进行验证;
当所述验证通过时,对所述最终报价结果进行报价合法性验证。
可选地,还包括:
当检测到第一竞拍节点的拍卖质疑信息时,获取所述第一竞拍节点对应的第一报价数据和第一拍卖随机数;
利用所述第一报价数据和所述第一拍卖随机数进行质疑合法性验证;
当所述质疑合法性验证通过时,否决拍卖。
本发明还提供了一种区块链拍卖方法,应用于区块链系统中的拍卖节点,所述区块链系统还包括竞拍节点以及验证节点,所述竞拍节点用于执行上述的区块链拍卖方法。所述方法包括:
生成拍卖私钥以及对应的拍卖公钥,利用所述拍卖公钥组成系统公共参数并公布所述系统公共参数;
获取各个所述竞拍节点发送的最终报价结果,并利用所述拍卖私钥计算各个所述最终报价结果对应的报价数据;
在所述报价数据中确定目标报价数据,并公布所述目标报价数据对应的报价信息。
可选地,所述利用所述拍卖私钥计算各个所述最终报价结果对应的报价数据,包括:
提取所述最终报价结果中的公钥集和追踪密钥集;
利用所述拍卖私钥和所述追踪密钥集计算中间值;
当所述中间值与所述公钥集中的第一子承诺值相等时,将所述第一子承诺值对应的第一子差值确定为0;
当所述中间值与所述公钥集中的第二子承诺值相等时,将所述第二子承诺值对应的所述第一子差值确定为1;
利用各个所述第一子差值计算所述报价数据。
可选地,所述在所述报价数据中确定目标报价数据,包括:
在所述报价数据中确定最高报价数据,判断所述最高报价数据的数量是否为1;
若所述数量为1,则将所述最高报价数据确定为所述目标报价数据;
若所述数量不为1,则判断拍卖轮数是否达到轮数上限;
若所述拍卖轮数未达到所述轮数上限,则更新拍卖信息并发起新一轮拍卖;
若所述拍卖轮数达到所述轮数上限,则按照目标报价数据确定规则从各个所述最高报价数据中确定所述目标报价数据。
可选地,还包括:
计算所述目标报价数据对应的第一验证中间值和第二验证中间值;
利用所述第一验证中间值和所述第二验证中间值进行零知识证明操作,得到零知识证明结果,并将所述零知识证明结果加入所述报价信息。
本发明还提供了一种区块链拍卖设备,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现上述竞拍节点执行的区块链拍卖方法,或实现上述验证节点执行的区块链拍卖方法,或实现上述拍卖节点执行的区块链拍卖方法。
本发明还提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现上述竞拍节点执行的区块链拍卖方法,或实现上述验证节点执行的区块链拍卖方法,或实现上述拍卖节点执行的区块链拍卖方法。
本发明还提供了一种区块链系统,包括竞拍节点、验证节点和拍卖节点,其中:
所述竞拍节点用于执行上述竞拍节点执行的区块链拍卖方法;
所述验证节点用于执行上述验证节点执行的区块链拍卖方法;
所述拍卖节点用于执行上述拍卖节点执行的区块链拍卖方法。
本发明提供的区块链拍卖方法,应用于区块链系统中的竞拍节点,区块链系统还包括验证节点以及拍卖节点,方法包括:获取拍卖节点公布的系统公共参数,并利用系统公共参数计算报价数据对应的报价承诺值;利用报价承诺值生成追踪密钥集,并利用追踪密钥集生成报价数据对应的报价合法证明结果;对报价合法证明结果进行签名操作,得到并公布最终报价结果。
可见,该方法应用于区块链系统中的竞拍节点,而区块链系统中还包括验证节点以及拍卖节点。竞拍节点利用拍卖节点公布的系统公共参数计算报价承诺值,并根据该报价承诺值生成追踪密钥集,利用追踪密钥集生成报价合法证明结果对应的可追踪区间证明方法具有隐私性,即零知识性,可以保证除拍卖者以外的其他节点无法追踪到竞拍节点的报价数据。而基于系统公共参数进行后续步骤,因此公布的最终报价结果可以允许拍卖节点解密并计算得到报价数据,实现了拍卖的功能。同时,利用追踪密钥集生成的报价合法证明结果可以被进行合法性的验证,保证了拍卖的可验证性,避免了拍卖节点的舞弊,而拍卖节点无需通过多次通信进行多次比价进而确定目标报价数据,减少了通信轮数,提高了拍卖效率。该方法既实现了拍卖过程中各个竞拍节点的隐私保护,又实现了对拍卖的验证,避免了拍卖节点的舞弊,解决了相关技术在进行区块链拍卖时隐私性较差、通信轮数多、拍卖效率低和可验证性较差的问题。
此外,本发明还提供了区块链拍卖设备、计算机可读存储介质及区块链系统,同样具有上述有益效果。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明提供一种区块链拍卖方法,应用于区块链系统中的竞拍节点,区块链系统还包括验证节点和拍卖节点。请参考图1,图1为本发明实施例提供的一种区块链拍卖方法流程示意图。该方法包括:
S101:获取拍卖节点公布的系统公共参数,并利用系统公共参数计算报价数据对应的报价承诺值。
竞拍节点为参与拍卖的节点,其数量为多个,具体数量本实施例不做限定。拍卖节点用于发起拍卖,本实施例中,系统公共参数由拍卖节点公布,其中包括有拍卖节点的拍卖公钥,利用系统公共参数进行后续步骤得到的最终报价结果可以由拍卖节点进行解析并得到竞拍节点的报价数据。报价数据为竞拍节点的报价,其大小需要符合拍卖节点的拍卖要求,具体数值本实施例不做限定。
请参考图2,图2为本发明实施例提供的一种区块链系统的结构示意图。区块链系统10中包括验证节点12、拍卖节点13和竞拍节点11。在一次拍卖中,仅能存在一个拍卖节点13,可以存在多个竞拍节点11和若干个验证节点12。
在获取系统公共参数和报价数据后,利用系统公共参数计算该报价数据对应的报价承诺值。需要说明的是,各个竞拍节点的承诺值计算规则均相同。本申请中所涉及的承诺值与相关技术中的金额承诺的原理与功能相同,在此不再赘述。本实施例并不限定承诺值规则的具体内容,可以根据实际需要进行选择和设置。例如可以为Pedersen承诺(Pedersencommitment),其对于数据或者金额a,使用离散对数问题的结构,将a绑定在承诺值
Com=gx·ha
上,在交易过程中只公开金额的承诺值Com,实现了保密的金额传输,保证了信息的隐私。其中G为椭圆曲线群参数,g为生成元,g∈G,h为拍卖公钥,x为拍卖随机数。
S102:利用报价承诺值生成追踪密钥集,并利用追踪密钥集生成报价数据对应的报价合法证明结果。
在得到报价承诺值后,利用其生成追踪密钥集。在得到追踪密钥集后,利用追踪密钥集进行可追踪区间证明操作,生成报价合法证明结果。该可追踪区间证明方法具有隐私性,即零知识性,可以保证除拍卖者以外的其他节点无法追踪到竞拍节点的报价数据。可追踪区间证明(Traceable range proof)是一种通过中心的陷门结构,给出某个金额数量属于指定的区间的证明体系,对于普通验证用户,该证明满足零知识性(不泄露隐私信息);而中心可以通过证明求解出具体的数额,实现了监管或确认等功能。在本实施例中,中心即为拍卖节点。
本实施例中,通过生成报价合法证明结果,可以保护竞拍节点的隐私,避免隐私泄漏。而基于系统公共参数进行后续步骤,因此公布的最终报价结果可以允许拍卖节点解密并计算得到报价数据,实现了拍卖的功能。同时,由于可追踪区间证明方法的合法性可以被验证,因此保证了拍卖的可验证性,避免了拍卖节点的舞弊,兼顾了可验证性与隐私性。
S103:对报价承诺值和报价合法证明结果进行签名操作,得到并公布最终报价结果。
在得到报价合法证明结果后,将其与报价承诺值一起进行签名操作,得到最终报价结果,并通过公布最终报价结果的方式完成报价。本实施例并不限定签名操作的具体方式,例如可以用长期私钥进行签名,并公开长期公钥;或者可以生成临时私钥,并公开临时公钥。签名操作可以允许验证节点进行重复报价检验,避免出现重复报价。
本实施例中,竞拍节点仅需进行一次通信即可完成报价的全部过程,不需要拍卖节点多次通信以进行比价等操作,减少了通信轮数和所需的事件,提高了拍卖效率。
应用本发明实施例提供的区块链拍卖方法,利用拍卖节点公布的系统公共参数计算报价承诺值,并根据该报价承诺值生成追踪密钥集,利用追踪密钥集生成报价合法证明结果对应的可追踪区间证明方法具有隐私性,即零知识性,可以保证除拍卖者以外的其他节点无法追踪到竞拍节点的报价数据。而基于系统公共参数进行后续步骤,因此公布的最终报价结果可以允许拍卖节点解密并计算得到报价数据,实现了拍卖的功能。同时,利用追踪密钥集生成的报价合法证明结果可以被进行合法性的验证,保证了拍卖的可验证性,避免了拍卖节点的舞弊,而拍卖节点无需通过多次通信进行多次比价进而确定目标报价数据,减少了通信轮数,提高了拍卖效率。该方法既实现了拍卖过程中各个竞拍节点的隐私保护,又实现了对拍卖的验证,避免了拍卖节点的舞弊,解决了相关技术在进行区块链拍卖时隐私性较差、通信轮数多、拍卖效率低和可验证性较差的问题。
基于上述实施例,本实施例将说明一种具体的区块链拍卖方法。本实施例中,共有n个竞拍节点,各个竞拍节点可以用Pi表示,i=1,...,n。
进一步,在进行拍卖之前,可以在区块链节点中确定竞拍节点,并完成缴纳押金等操作,在链上完成全部的拍卖工作。具体的:
向拍卖节点进行拍卖报名,并向拍卖节点发送拍卖押金;
本实施例并不限定拍卖报名的具体方法,在拍卖报名过后向拍卖节点发送拍卖押金,以便完成押金缴纳的操作。具体的,押金可以为数字货币、数字资产或其他交易对象,可以用UTXO表示,UTXO指的是当前区块链上已确认但未花费的数字货币,即未花费的一笔钱。
生成拍卖临时私钥,并利用系统公共参数和拍卖临时私钥生成对应的拍卖临时公钥。
在拍卖报名后,为了保证隐私性,避免使用竞拍节点的长期私钥和长期公钥进行拍卖,隐私生成拍卖临时私钥,并利用系统公共参数和拍卖临时私钥生成对应的拍卖临时公钥。
本实施例中,系统公共参数由拍卖节点公布,其中包括有拍卖节点的拍卖公钥。优选的,系统公共参数中可以包括椭圆曲线群参数,利用椭圆曲线群参数生成拍卖临时公钥。具体的,系统公共参数可以用(G,g,h)表示,其中G为椭圆曲线群参数,g为生成元,g∈G,h为拍卖公钥。拍卖临时私钥可以用SKi表示,因此拍卖临时公钥可以利用
计算得到,其中PKi为拍卖临时公钥。拍卖临时公钥可以在生成后公布,或者可以发送给拍卖节点,由拍卖节点统一对所有竞拍节点的拍卖临时公钥进行公布,以便验证节点对各个竞拍节点的最终报价结果进行多重报价检测。
在本实施例中,报价承诺值的计算过程包括S1011和S1012两个步骤,其中:
S1011:获取报价数据,并生成拍卖随机数。
在获取报价数据之前,还可以获取拍卖节点发送的拍卖信息,以便确定起拍价、拍卖金额上限以及开始拍卖时间和介质拍卖时间等信息。由于设置有起拍价和拍卖金额上限,因此获取的报价数据应处于起拍价和拍卖金额上限之间。在获取报价数据后,生成拍卖随机数,以便利用拍卖随机数计算报价数据的报价承诺值,保护竞拍节点的隐私。
S1012:利用报价数据、系统公共参数和拍卖随机数,按照承诺值计算规则计算报价承诺值
在得到报价数据和拍卖随机数后,按照承诺值计算规则计算报价承诺值。
在本实施例中,可以按照
计算报价承诺值,其中,ci为报价承诺值,xi为拍卖随机数,bi为报价数据。
在得到报价承诺值后,利用其生成追踪密钥集并生成报价合法证明结果,其中:
S1021:获取拍卖节点发送的拍卖信息。
在获取拍卖信息后,从中解析出起拍价和拍卖金额上限。需要说明的是,由于可追踪区间证明智能证明整次方幂的区间,而无法直接证明任意普通区间,因此,根据拍卖信息中起拍价和拍卖金额上限的差值的不同,需要进行不同的可追踪区间证明操作。在本实施例中,可以利用a表示起拍价,利用A表示拍卖金额上限。
S1022:当拍卖信息符合第一预设条件时,计算第一差值,并利用第一差值生成追踪密钥集。
当A-a=2k时,可以确定拍卖信息符合第一预设条件,由于拍卖信息为整次方幂区间,因此仅执行一次可追踪区间证明即可,即证明bi-a∈[0,2k-1]。在确定拍卖信息符合第一预设条件时,计算第一差值并利用其生成追踪密钥集,具体的:
S10221:利用报价数据和拍卖信息计算第一差值,并将第一差值按照预设展开规则进行展开,得到多个第一子差值。
本实施例中,第一差值为报价数据与起拍价之间的差值,即bi-a。在得到第一差值后将其按照预设展开规则进行展开,得到多个第一子差值。第一展开规则的具体内容本实施例不做限定,在本实施例中,采用二进制展开规则作为预设展开规则,即按照
bi-a=bi,0+2bi,1+...+2jbi,j+...+2k-1bi,k-1
进行展开,得到多个第一子差值。其中bi,j即为第一子差值。
S10222:生成各个第一子差值分别对应的各个第一随机数,并利用第一随机数和系统公共参数生成追踪密钥集。
在得到第一子差值后,为每个第一子差值生成一个对应的第一随机数,并利用第一随机数和系统公共参数生成追踪密钥集。本实施例中,可以按照
计算得到追踪密钥集,其中
为追踪密钥集,s
j为第一随机数。
S1023:利用追踪密钥集生成环签名公钥集,并利用环签名公钥集、第一差值和报价承诺值进行可追踪区间证明操作,得到报价合法证明结果。
在得到追踪密钥集后,利用其生成对应的环签名公钥集,并进行可追踪区间证明操作,得到报价合法证明结果。其中,得到报价合法证明结果的过程,包括:
S10231:利用拍卖随机数和各个第一随机数计算第二随机数。
本实施例中,利用
βi=xi-s0-...-sk-1
计算得到第二随机数,其中,βi为第二随机数。
S10232:利用第一随机数计算第一子承诺值和第二子承诺值。
在进行可追踪区间证明之前,需要生成公钥集,以便得到环签名公钥集,进而进行多环签名操作。生成公钥集时,需要计算各个第一随机数对应的第一子承诺值和第二子承诺值,具体的,可以利用
计算第一子承诺值和第二子承诺值,其中,di,j为第一子承诺值,di,j'为第二子承诺值。
S10233:利用第一子承诺值和第二子承诺值生成子公钥集,并利用子公钥集构建公钥集。
本实施例中,按照
Li,j={di,j,di',j}
得到子公钥集,其中,Li,j为子公钥集,并按照
Li={Li,0,...,Li,k-1}
得到公钥集,其中,Li为公钥集。
S10234:利用追踪密钥集、第二随机数、公钥集和报价承诺值计算目标随机数。
本实施例中,按照
ei=H(ci,Li,LTKi,βi)
计算目标随机数,其中,ei为目标随机数,H为随机数算法,其具体内容本实施例不做限定,例如可以为哈希算法。
S10235:利用追踪密钥集、第一子承诺值和第二子承诺值计算环签名公钥集。
在得到目标随机数后,按照
S10236:利用环签名公钥集、第二随机数、第一随机数、报价承诺值、追踪密钥集、公钥集进行多环签名操作,得到多环签名结果。
本实施例中,按照
进行多环签名操作,得到多环签名结果。其中,τ
i为多环签名结果,RSIG为多环签名算法。需要说明的是,多环签名结果对应的生成元由系统公共参数和目标随机数构成,具体的,使用
作为生成元。
S10237:利用多环签名结果、报价承诺值、第二随机数、公钥集和追踪密钥集生成可追踪区间证明结果,并将可追踪区间证明结果确定为报价合法证明结果。
在本实施例中,按照
生成可追踪区间证明结果,其中,πi为可追踪区间证明结果,并将其确定为报价合法证明结果。
在另一种可能的实施方式中,拍卖信息中的起拍价和拍卖金额上限的差值不为整次方幂,在这种情况下需要进行两次证明,具体的:
S1024:当拍卖信息符合第二预设条件时,计算第一差值和第二差值,并分别计算第一差值对应的第一追踪密钥集和第二差值对应的第二追踪密钥集。
当2
k-1<A-a<2
k时,可以确定拍卖信息符合第二预设条件。此时利用拍卖信息计算第一差值和第二差值,其中b
i-a为第一差值,A-b
i为第二差值,并计算对应的第一追踪密钥集
和第二追踪密钥集/>
需要说明的是,本步骤中的第一差值和第一追踪密钥集的计算方法与S1022步骤中的第一差值和第一追踪密钥集相同。
S1025:利用第一追踪密钥集生成第一环签名公钥集,并利用第二追踪密钥集生成第二环签名公钥集。
在得到第一追踪密钥集和第二追踪密钥集后,分别生成对应的第一环签名公钥集
和第二环签名公钥集/>
S1026:利用第一环签名公钥集、第一差值和报价承诺值进行可追踪区间证明操作,得到报价数据对应的第一报价合法证明结果。
本实施例中,第一报价合法证明结果为πi。
S1027:利用第二环签名公钥集、第二差值和报价承诺值进行可追踪区间证明操作,得到报价数据对应的第二报价合法证明结果。
在本实施例中,将第二差值按照预设展开规则进行展开,并进行上述证明过程,最终得到第二报价合法证明结果,第二报价合法证明结果为π
i',
其中,L
i'为第二公钥集,/>
为第二追踪密钥集,β
i'为第四随机数,τ
i'为第二多环签名结果,
S1028:利用第一报价合法证明结果和第二报价合法证明结果构建报价合法证明结果。
在得到第一报价合法证明结果和第二报价合法证明结果后,利用其构建报价合法证明结果(πi,πi')。
本实施例中,第一报价合法证明结果与第二报价合法证明结果的生成过程请参照上述说明,本实施例在此不再赘述。需要说明的是,在一种可能的实施方式中,由于只需执行一次可追踪区间证明即可完成可追踪以及保密的功能,为了提高拍卖的效率,可以在两次证明过程中仅采用一次可追踪区间证明,另一次采用普通区间证明。
在得到报价合法证明结果后,对其进行签名操作,具体的:
S1031:利用拍卖临时私钥对报价承诺值和报价合法证明结果进行签名操作,得到数字签名结果。
在得到报价合法证明结果后,利用拍卖临时私钥进行签名操作。在本实施例中,按照:
σi=SIG(SKi,mi),mi=(ci,πi,πi')
进行签名操作,得到数字签名结果,其中,σi为数据签名结果,SIG表示签名操作。
S1032:利用数字签名结果和报价合法证明结果生成最终报价结果。
本实施例中,利用Qi表示最终报价结果,Qi=(mi,σi)。在得到最终报价结果后将其公布,进而完成报价。
基于上述实施例,区块链系统中还包括验证节点,验证节点用于对最终报价结果进行验证。本发明还提供了一种区块链拍卖方法,具体的,请参考图3,图3为本发明实施例提供的另一种区块链拍卖方法流程示意图,包括:
S301:获取竞拍节点公布的最终报价结果。
S302:利用竞拍节点对应的拍卖临时公钥对最终报价结果进行重复报价检验。
需要说明的是,在每一轮拍卖中,每一个竞拍节点仅能进行一次报价,即只能公布一个最终报价结果。在获取到某一竞拍节点公布的最终报价结果后,利用该竞拍节点的拍卖临时公钥对已有的报价进行检查,判断该竞拍节点是否已经进行过一次报价,若是,则确定出现重复报价检验,此时可以不将该最终报价结果上链。若未出现则确定没有出现重复性报价。本实施例中,可以在通过重复性报价后进入S303步骤。
S303:对最终报价结果进行合法性验证。
本实施例并不限定合法性验证的具体内容,例如可以对最终报价结果中的报价合法证明结果进行合法性验证,在报价合法证明结果通过合法性验证后,可以确定最终报价结果通过合法性验证。在最终报价结果通过合法性验证后,可以将其进行上链。
基于上述实施例,本实施例将说明一种具体的合法性验证方法,S303步骤可以包括如下步骤:
S3031:对最终报价结果中的数字签名结果进行签名合法性验证。
在本实施例中,先对最终报价结果中的数字签名结果进行签名合法性验证,以保证最终报价结果没有被伪造。签名合法性验证的具体方法和过程本实施例不做限定。
S3032:当签名合法性验证通过时,对最终报价结果中的报价合法证明结果进行验证。
在签名合法性验证通过时,说明签名合法,最终报价结果有效,因此对最终报价结果中的报价合法证明结果进行验证。具体的:
验证
是否成立,若成立,则验证通过。
S3033:当验证通过时,对最终报价结果进行报价合法性验证。
利用
计算目标随机数ei。并利用
在得到目标随机数和环签名公钥集后,使用
作为生成元,验证多环签名结果τ
i的合法性,在多环签名的合法性验证通过时,确定通过报价合法性验证。
基于上述实施例,验证节点还可以在出现拍卖质疑时进行质询,具体的:
步骤1:当检测到第一竞拍节点的拍卖质疑信息时,获取第一竞拍节点对应的第一报价数据和第一拍卖随机数;
当某一竞拍节点有异议时,即认为自身的报价大于拍卖节点公布的最高出价而未被拍卖节点公布时,可以法中拍卖质疑信息。本实施例中,当检测到某一个竞拍节点发送的拍卖质疑信息时,将该节点确定为第一竞拍节点,并获取第一竞拍节点对应的第一报价数据和第一拍卖随机数,以便在本地进行验证。
步骤2:利用第一报价数据和第一拍卖随机数进行质疑合法性验证;
由于获取了第一竞拍节点的第一报价数据和第一拍卖随机数,因此验证节点可以对其进行质疑合法性验证,即验证
是否成立。若成立,则确定第一竞拍节点的报价数据合法,确定质疑合法性验证通过。
步骤3:当质疑合法性验证通过时,否决拍卖。
当质疑合法性验证通过时,说明第一竞拍节点的报价数据合法,而拍卖节点并未采用该报价数据,则可以确定拍卖者存在作恶行为,因此否决本次拍卖。
基于上述实施例,区块链系统中还包括拍卖节点。本发明还提供了一种区块链拍卖方法,具体的,请参考图4,图4为本发明实施例提供的另一种区块链拍卖方法流程示意图,包括:
S401:生成拍卖私钥以及对应的拍卖公钥,利用拍卖公钥组成系统公共参数并公布系统公共参数。
在本实施例中,可以生成拍卖陷门作为拍卖私钥,并利用椭圆曲线群上的生成元计算拍卖私钥对应的拍卖公钥。具体的,可以利用
h=gy∈G
计算拍卖公钥,其中,y为拍卖私钥,h为拍卖公钥,g为生成元,g∈G,G为椭圆曲线群参数。在得到拍卖私钥和拍卖公钥后,利用其组成系统公共参数(G,g,h),并公布系统公共参数。需要说明的是,系统公共参数应当于发起拍卖时生成并公布。
S402:获取各个竞拍节点发送的最终报价结果,并利用拍卖私钥计算各个最终报价结果对应的报价数据。
在获取到各个竞拍节点发送的最终报价结果后,利用拍卖私钥对最终报价结果进行解析并计算各个最终报价结果对应的报价数据。由于各个最终报价结果基于系统公共参数生成,而系统公共参数包括了拍卖节点的拍卖公钥,因此可以利用拍卖私钥对其进行解析。
S403:在报价数据中确定目标报价数据,并公布目标报价数据对应的报价信息。
在解析过后,在各个报价数据中确定目标报价数据,目标报价数据各个报价数据中的最大值。在确定目标报价数据之后,可以公布对应的报价信息以公布拍卖获胜者,报价信息的具体内容本实施例不做限定,例如可以为目标报价数据和其对应的临时拍卖公钥,或者还可以包括其他信息,例如目标报价数据为最高出价的合法性证明。
基于上述实施例,本实施例将说明一种具体的报价数据计算方法。S402步骤包括:
S4021:提取最终报价结果中的公钥集和追踪密钥集。
在获取最终报价结果Q
i后,提取其中的公钥集L
i={L
i,0,...,L
i,k-1}和追踪密钥集
S4022:利用拍卖私钥和追踪密钥集计算中间值。
在本实施例中,利用拍卖私钥和追踪密钥集计算中间值
/>
S4023:当中间值与公钥集中的第一子承诺值相等时,将第一子承诺值对应的第一子差值确定为0。
在本实施例中,当满足
时,将第一子承诺值对应的第一子差值确定为0,即bi,j=0。
S4024:当中间值与公钥集中的第二子承诺值相等时,将第二子承诺值对应的第一子差值确定为1。
在本实施例中,当满足
时,将第二子承诺值对应的第一子差值确定为1,即bi,j=1。
S4025:利用各个第一子差值计算报价数据。
在得到各个第一子差值后,按照
即可计算得到最终报价结果Qi对应的报价数据bi。
基于上述实施例,本实施例将说明一种具体的目标报价数据确定方法。S403步骤包括:
S4031:在报价数据中确定最高报价数据,判断最高报价数据的数量是否为1。
需要说明的是,目标报价数据一定是最高报价数据。因此在确定目标报价数据之前,需要确定最高报价数据,并判断其数量是否为一个。
S4032:若数量为1,则将最高报价数据确定为目标报价数据。
若最高报价数据的数量为1,则说明本轮报价中存在一个最高的报价数据,因此将其确定为目标报价数据。
S4033:若数量不为1,则判断拍卖轮数是否达到轮数上限。
若最高报价数据的数量不为1,说明存在多个最高报价数据,无法直接确定出目标报价数据,因此可能需要继续进行新一轮拍卖,以便得到目标报价数据。而为了防止一直进行拍卖无法停止,可以设置轮数上限,在当最高报价数据的数量不为1时,判断该拍卖的拍卖轮次是否达到论述上限。
S4034:若拍卖轮数未达到轮数上限,则更新拍卖信息并发起新一轮拍卖。
若拍卖轮数并未达到轮数上限时,可以更新拍卖信息并发起新一轮拍卖,以便重新进行拍卖,进而确定目标报价数据。
S4035:若拍卖轮数达到轮数上限,则按照目标报价数据确定规则从各个最高报价数据中确定目标报价数据。
当拍卖轮数以达到论述上限时,则无法继续进行拍卖,因此按照目标报价数据确定规则,从各个最高报价中确定目标报价数据。目标报价数据确定规则的具体内容本实施例不做限定,例如可以为随机确定规则。
基于上述实施例,在公布目标报价数据对应的报价信息时,还可以同时公布最高出价者出价确实为目标报价数据的合法性证明。具体的:
步骤11:计算目标报价数据对应的第一验证中间值和第二验证中间值。
在本实施例中,当目标报价数据为bl时,按照
计算第一验证中间值,其中,ul为第一验证中间值。并按照
计算第二验证中间值,其中,TKl为第二验证中间值。
步骤12:利用第一验证中间值和第二验证中间值进行零知识证明操作,得到零知识证明结果,并将零知识证明结果加入报价信息。
利用第一验证中间值和第二验证中间值进行零知识证明操作,即为给出
的零知识证明结果。本实施例中,可以生成验证随机数r,并按照
计算得到零知识证明结果(f,z),在得到零知识证明结果后将其加入报价信息并进行公布。在公布后,其他节点只需判断
是否成立即可判断最高出价者出价是否确实为目标报价数据,当上式成立时,则确定最高出价者出价确实为目标报价数据。
下面对本发明实施例提供的区块链拍卖装置进行介绍,该区块链拍卖装置应用于区块链系统中的竞拍节点,区块链系统还包括验证节点和拍卖节点,下文描述的区块链拍卖装置与上文描述的区块链拍卖方法可相互对应参照。
请参考图5,图5为本发明实施例提供的一种区块链拍卖装置的结构示意图,包括:
报价承诺值计算模块510,用于获取拍卖节点公布的系统公共参数,并利用系统公共参数计算报价数据对应的报价承诺值;
报价合法证明结果生成模块520,用于利用报价承诺值生成追踪密钥集,并利用追踪密钥集生成报价数据对应的报价合法证明结果;
最终报价结果生成模块530,用于对报价承诺值和报价合法证明结果进行签名操作,得到并公布最终报价结果。
可选地,还包括:
报名模块,用于向拍卖节点进行拍卖报名,并向拍卖节点发送拍卖押金;
临时公私钥生成模块,用于生成拍卖临时私钥,并利用系统公共参数和拍卖临时私钥生成对应的拍卖临时公钥。
可选地,报价承诺值计算模块510,包括:
拍卖随机数生成单元,用于获取报价数据,并生成拍卖随机数;
报价承诺值计算单元,用于利用报价数据、系统公共参数和拍卖随机数,按照承诺值计算规则计算报价承诺值。
可选地,报价合法证明结果生成模块520,包括:
拍卖信息获取单元,用于获取拍卖节点发送的拍卖信息;
第一密钥集生成单元,用于当拍卖信息符合第一预设条件时,计算第一差值,并利用第一差值生成追踪密钥集;
第一证明单元,用于利用追踪密钥集生成环签名公钥集,并利用环签名公钥集、第一差值和报价承诺值进行可追踪区间证明操作,得到报价合法证明结果;
第二密钥集生成单元,用于当拍卖信息符合第二预设条件时,计算第一差值和第二差值,并分别计算第一差值对应的第一追踪密钥集和第二差值对应的第二追踪密钥集;
环签名公钥集生成单元,用于利用第一追踪密钥集生成第一环签名公钥集,并利用第二追踪密钥集生成第二环签名公钥集;
第一报价合法证明结果生成单元,用于利用第一环签名公钥集、第一差值和报价承诺值进行可追踪区间证明操作,得到报价数据对应的第一报价合法证明结果;
第二报价合法证明结果生成单元,用于利用第二环签名公钥集、第二差值和报价承诺值进行可追踪区间证明操作,得到报价数据对应的第二报价合法证明结果;
第二证明单元,用于利用第一报价合法证明结果和第二报价合法证明结果构建报价合法证明结果。
可选地,第一密钥集生成单元,包括:
第一子差值计算子单元,用于利用报价数据和拍卖信息计算第一差值,并将第一差值按照预设展开规则进行展开,得到多个第一子差值;
密钥集生成子单元,用于生成各个第一子差值分别对应的各个第一随机数,并利用第一随机数和系统公共参数生成追踪密钥集。
可选地,第一证明单元,包括:
第二随机数计算子单元,用于利用拍卖随机数和各个第一随机数计算第二随机数;
子承诺值计算子单元,用于利用第一随机数计算第一子承诺值和第二子承诺值;
公钥集构建子单元,用于利用第一子承诺值和第二子承诺值生成子公钥集,并利用子公钥集构建公钥集;
目标随机数计算子单元,用于利用追踪密钥集、第二随机数、公钥集和报价承诺值计算目标随机数;
环签名公钥集计算子单元,用于利用追踪密钥集、第一子承诺值和第二子承诺值计算环签名公钥集;
多环签名子单元,用于利用环签名公钥集、第二随机数、第一随机数、报价承诺值、追踪密钥集、公钥集进行多环签名操作,得到多环签名结果;其中,多环签名结果对应的生成元由系统公共参数和目标随机数构成;
可追踪区间证明子单元,用于利用多环签名结果、报价承诺值、第二随机数、公钥集和追踪密钥集生成可追踪区间证明结果,并将可追踪区间证明结果确定为报价合法证明结果。
可选地,最终报价结果生成模块530,包括:
数字签名单元,用于利用拍卖临时私钥对报价承诺值和报价合法证明结果进行签名操作,得到数字签名结果;
生成单元,用于利用数字签名结果和报价合法证明结果生成最终报价结果。
下面对本发明实施例提供的区块链拍卖装置进行介绍,该区块链拍卖装置应用于区块链系统中的验证节点,区块链系统还包括竞拍节点和拍卖节点,下文描述的区块链拍卖装置与上文描述的区块链拍卖方法可相互对应参照。
请参考图6,图6为本发明实施例提供的另一种区块链拍卖装置的结构示意图,包括:
最终报价结果获取模块610,用于获取竞拍节点公布的最终报价结果;
重复报价检验模块620,用于利用竞拍节点对应的拍卖临时公钥对最终报价结果进行重复报价检验;
合法性验证模块630,用于对最终报价结果进行合法性验证。
可选地,合法性验证模块630,包括:
签名验证单元,用于对最终报价结果中的数字签名结果进行签名合法性验证;
正确性验证单元,用于当签名合法性验证通过时,对最终报价结果中的报价合法证明结果进行验证;
合法性验证单元,用于当验证通过时,对最终报价结果进行报价合法性验证。
可选地,还包括:
质疑信息获取模块,用于当检测到第一竞拍节点的拍卖质疑信息时,获取第一竞拍节点对应的第一报价数据和第一拍卖随机数;
质疑合法性验证模块,用于利用第一报价数据和第一拍卖随机数进行质疑合法性验证;
否决模块,用于当质疑合法性验证通过时,否决拍卖。
下面对本发明实施例提供的区块链拍卖装置进行介绍,该区块链拍卖装置应用于区块链系统中的拍卖节点,区块链系统还包括竞拍节点和验证节点,下文描述的区块链拍卖装置与上文描述的区块链拍卖方法可相互对应参照。
请参考图7,图7为本发明实施例提供的另一种区块链拍卖装置的结构示意图,包括:
系统公共参数公布模块710,用于生成拍卖私钥以及对应的拍卖公钥,利用拍卖公钥组成系统公共参数并公布系统公共参数;
报价数据计算模块720,用于获取各个竞拍节点发送的最终报价结果,并利用拍卖私钥计算各个最终报价结果对应的报价数据;
目标报价数据确定模块730,用于在报价数据中确定目标报价数据,并公布目标报价数据对应的报价信息。
可选地,报价数据计算模块720,包括:
提取单元,用于提取最终报价结果中的公钥集和追踪密钥集;
中间值计算单元,用于利用拍卖私钥和追踪密钥集计算中间值;
第一确定单元,用于当中间值与公钥集中的第一子承诺值相等时,将第一子承诺值对应的第一子差值确定为0;
第二确定单元,用于当中间值与公钥集中的第二子承诺值相等时,将第二子承诺值对应的第一子差值确定为1;
报价数据计算单元,用于利用各个第一子差值计算报价数据。
可选地,目标报价数据确定模块730,包括:
数量判断单元,用于在报价数据中确定最高报价数据,判断最高报价数据的数量是否为1;
第一目标报价数据确定单元,用于若数量为1,则将最高报价数据确定为目标报价数据;
拍卖轮数判断单元,用于若数量不为1,则判断拍卖轮数是否达到轮数上限;
新一轮拍卖发起单元,用于若拍卖轮数未达到轮数上限,则更新拍卖信息并发起新一轮拍卖;
第二目标报价数据确定单元,用于若拍卖轮数达到轮数上限,则按照目标报价数据确定规则从各个最高报价数据中确定目标报价数据。
可选地,还包括:
验证中间值计算模块,用于计算目标报价数据对应的第一验证中间值和第二验证中间值;
零知识证明模块,用于利用第一验证中间值和第二验证中间值进行零知识证明操作,得到零知识证明结果,并将零知识证明结果加入报价信息。
下面对本发明实施例提供的区块链拍卖设备进行介绍,下文描述的区块链拍卖设备与上文描述的区块链拍卖方法可相互对应参照。
请参考图8,图8为本发明实施例提供的一种区块链拍卖设备的结构示意图。在本实施例中,区块链拍卖设备800可以是PC(Personal Computer,个人电脑),也可以是智能手机、平板电脑、掌上电脑、便携计算机等终端设备。
可选地,该区块链拍卖设备800可以是组成CDN网络或者区块链网络的节点。
该区块链拍卖设备800可以包括存储器801、处理器802和总线803。
其中,存储器801至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器801在一些实施例中可以是区块链拍卖设备800的内部存储单元,例如该区块链拍卖设备800的硬盘。存储器801在另一些实施例中也可以是区块链拍卖设备800的外部存储设备,例如区块链拍卖设备800上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器801还可以既包括区块链拍卖设备800的内部存储单元也包括外部存储设备。存储器801不仅可以用于存储安装于区块链拍卖设备800的应用软件及各类数据,例如区块链拍卖程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器802在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器801中存储的程序代码或处理数据,例如执行区块链拍卖程序01等。
该总线803可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,区块链拍卖设备800还可以包括网络接口804,网络接口804可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该区块链拍卖设备800与其他电子设备之间建立通信连接。
可选地,该区块链拍卖设备800还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在区块链拍卖设备800中处理的信息以及用于显示可视化的用户界面。
图8仅示出了具有组件801-803以及区块链拍卖程序01的区块链拍卖设备800,本领域技术人员可以理解的是,图8示出的结构并不构成对区块链拍卖设备800的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
下面对本发明实施例提供的计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的区块链拍卖方法可相互对应参照。
本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的区块链拍卖方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。