一种基于区块链的v2g网络跨域交易安全方法
技术领域
1.本发明涉及一种智慧网联v2g系统业务交易结算的区块链构建方法,尤其涉及一种基于区块链的v2g网络跨域交易安全方法。
背景技术:
2.随着智能电网的蓬勃发展,电动汽车接入电网(v2g)作为智能电网中关键的服务,正迅速兴起。v2g技术既解决电动汽车大规模发展带来的充电压力问题,又可将电动汽车作为移动的、分布式储能单元接入电网,用于削峰填谷、应急安保、旋转备用等。但是由于v2g网络满足实时双向通信,在电动汽车和电网的交互过程中,可能会面临各种不安全因素的挑战,成为v2g网络发展的重大阻碍。因此,研究v2g系统交易安全方法是目前开展v2g技术研究的重点。区块链是一个特定的分布式共享数据库,它允许每笔交易都以可验证和永久的方式进行记录,这对创建分布式、透明和安全的v2g系统交易环境至关重要。因此提出基于区块链的v2g网络跨域交易安全方法。
技术实现要素:
3.为解决现有技术中存在的技术问题,本发明的目的在于提供一种基于区块链的v2g网络跨域交易安全方法。
4.为实现本发明的目的,本发明提供的技术方案如下:一种基于区块链的v2g网络跨域交易安全方法,包括如下步骤:步骤一,电动汽车向可信机构注册,可信机构为v2g系统中的电动汽车生成并分配公共参数和密钥,可信机构将相应的身份信息和证书cert存于区块链基础平台和数据库中;步骤二,a域电动汽车eva在接入a域电网时,区域管理中心ra在区块链上查询身份和证书的哈希值,当查询到数据库有符合的身份信息和证书时,结果为通过,允许电动汽车eva接入a域电网;步骤三,当a域电动汽车eva进入b域接入电网前,通过区块链来进行跨域信任传递,完成v2g跨域认证过程;步骤四,认证成功后,电动汽车eva接入b域电网进行电能输送,区块链节点接收b域电网端匿名发送的交易参数,将交易参数和电网端生成的第一个零知识证明以智能合约的形式记录到区块链上;区块链节点接收电网端匿名发送的担保费用,将担保费用和电网端生成的第二个零知识证明以智能合约的形式记录到区块链上;步骤五,区块链节点接收电动汽车端匿名发送的用于结算的支付凭证,将用于结算的支付凭证和电动汽车eva生成的第三个零知识证明以智能合约的形式记录到区块链上;步骤六,分别基于公知信息对录入的业务数据进行审核,若审核通过,则将担保费用记录上传到区块链上,若审核不通过,则删除业务数据;
步骤七,将上传的担保费用发送到区块链上的所有节点,以供节点对所述业务数据进行访问;在数据处理转发过程中采用排队论和先到先服务fcfs机制提升数据在节点内转发效率,并建立数据按需驱动传输模型和路由算法降低多次数据全网广播或点对点传输过程的延时;步骤八,基于区块链的智能合约,将支付凭证转化为对应数额的资金数据,将对应数额的资金数据发送给电动汽车eva,将担保费用数据发送给电网端,完成交易结算。
5.其中,步骤三中所述v2g跨域认证过程包括:a域和b域管理中心前期通过区块链证书服务器进行基于区块链证书域间认证,同时交换两个域认证系统的公开参数和公钥生成算法,a域为电动汽车eva生成会话密钥key并发送给身份认证服务器,身份认证服务器收到请求后,向本域内的安全仲裁申请签名信令,安全仲裁通过后,b域会将完整签名结果发送给电动汽车所在访问域的身份认证服务器,待其验证签名信息后将认证结果返回电动汽车eva;这时电动汽车eva可根据认证结果来访问b域电网中的充放电服务。
6.其中,步骤四中所述交易参数包括:担保费凭证、最大支付次数和用于区分电动汽车端和电网端的一次性公钥。
7.其中,步骤四中所述第一个零知识证明的内容包括:电网端当前的零知识余额等于第一哈希值、电网端生成的零知识金额等于第二哈希值、交易完成后电网端的零知识余额等于第三哈希值、第一私密参数大于第二私密参数、或者第一私密参数与第二私密参数的差值等于第三私密参数。
8.其中,步骤四中所述第二个零知识证明的内容包括:电网端使用的零知识金额等于第二哈希值、零知识金额存在于预生成的默克尔树中,电网端支付的担保费凭证等于第四哈希值;其中,步骤五中所述第三个零知识证明的内容包括:电动汽车端应得的零知识金额等于第五哈希值、智能合约中的担保费用凭证等于第四哈希值,第四私密数据等于第二私密参数与设定公开参数的乘积。
9.其中,所述的零知识金额是指一种使用哈希值表示的隐藏金额,其组成形式为:cash=sha256(value,serial_number,n),其中value是cash对应的金额数值;serial_number是cash唯一对应的序列号,序列号公布代表金额已被花费;n是用于防止暴力破解的私密随机数;零知识余额的使用和存入必须通过零知识证明验证,使用新的零知识余额代替旧的零知识余额;一旦零知识余额更新,旧余额的序列号serial_number会被公布,计算金额的sha256哈希值,并将它存储在result中,假定存在一个预定义的常数data_size;c#的代码如下:1)byte[] result;2)byte[] data = new byte[data_size];3)sha256 sham = new sha256managed();4)result = sham.computehash(data)。
[0010]
其中,所述v2g网络将地理区域进行划分,每个区域有一个证书授权中心ca,用于分析同一ca管理域内部或不同ca管理域之间的信任关系的建立和传递的过程;不同域的ca经过许可后,加入联盟链,构成联盟链的验证节点vp,加入联盟链的根ca是可信的,为vp生成根ca区块链证书,并将证书的hash值记入不易篡改的区块链内,作为各域的信任凭证。
[0011]
与现有技术相比,本技术具有如下技术效果:本发明利用了区块链技术不易篡改的特点,使用哈希算法对证书进行验证,减少了公钥算法签名与验证的次数,使得本发明效率高,可扩展性强。区块链技术的引入,为解决智能电网的安全问题提供了新的思路和方法。
附图说明
[0012]
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本技术的一部分,并不构成对本发明实施例的限定。
[0013]
图1本发明提供的方法流程图;图2基于区块链的v2g网络跨域认证模型图;图3基于哈希链的签名和认证算法模型图。
具体实施方式
[0014]
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0015]
电动汽车与电网的双向电力传输过程会产生大量的记录,控制中心可以通过分析这些记录以提供有价值的服务,但与此同时,这些记录同样会引起一系列隐私问题,而这些安全和隐私问题是v2g网络发展的重大阻碍。区块链技术在比特币等数字货币应用领域取得广泛成功,其相关设计理念和系统架构也为众多研究者们在探索跨域交易安全方面提供了新的思路。
[0016]
本发明利用了区块链技术不易篡改的特点,使用哈希算法对证书进行验证,减少了公钥算法签名与验证的次数,构造了基于身份密码体制的跨信任域认证方案,创新性地提出了v2g网络中高性能的跨域交易安全方案。本发明基于v2g网络跨域交易安全认证基于区块链双链认证技术;使用哈希算法将证书的hash值存放在区块链中进行查找;在每个信任域内,通过域内原有的认证方式实现用户和认证服务器的认证;在多域间联盟链框架下,多域管理中心之间前期通过区块链证书服务器进行基于区块链证书域间认证,同时交换两个域认证系统的公开参数和公钥生成算法。向本域内的安全仲裁申请签名信令,通过认证后,将完整签名结果发送给电动汽车所在访问域的身份认证服务器,返回电动汽车eva,实现电动汽车与对方域跨域服务器的认证;将各个域内用户的证书文件进行哈希运算,再将证书的哈希值存入区块链中;通过在区块链上存放文件的哈希值,以及提交该文件哈希值至区块链中的时间信息及有效期,证明证书文件的存在性与所有权。
[0017]
如图1所示,为本发明一种基于区块链的v2g网络跨域交易安全方法的实施例,其步骤包括:一种基于区块链的v2g网络跨域交易安全方法,包括如下步骤:步骤一,电动汽车向可信机构注册,可信机构为v2g系统中的电动汽车生成并分配公共参数和密钥,可信机构将相应的身份信息和证书cert存于区块链基础平台和数据库
中;步骤二,a域电动汽车eva在接入a域电网时,区域管理中心ra在区块链上查询身份和证书的哈希值,当查询到数据库有符合的身份信息和证书时,结果为通过,允许电动汽车eva接入a域电网;步骤三,当a域电动汽车eva进入b域接入电网前,通过区块链来进行跨域信任传递,完成v2g跨域认证过程;步骤四,认证成功后,电动汽车eva接入b域电网进行电能输送,区块链节点接收b域电网端匿名发送的交易参数,将交易参数和电网端生成的第一个零知识证明以智能合约的形式记录到区块链上;区块链节点接收电网端匿名发送的担保费用,将担保费用和电网端生成的第二个零知识证明以智能合约的形式记录到区块链上;步骤五,区块链节点接收电动汽车端匿名发送的用于结算的支付凭证,将用于结算的支付凭证和电动汽车eva生成的第三个零知识证明以智能合约的形式记录到区块链上;步骤六,分别基于公知信息对录入的业务数据进行审核,若审核通过,则将担保费用记录上传到区块链上,若审核不通过,则删除业务数据;步骤七,将上传的担保费用发送到区块链上的所有节点,以供节点对所述业务数据进行访问;在数据处理转发过程中采用排队论和先到先服务fcfs机制提升数据在节点内转发效率,并建立数据按需驱动传输模型和路由算法降低多次数据全网广播或点对点传输过程的延时;步骤八,基于区块链的智能合约,将支付凭证转化为对应数额的资金数据,将对应数额的资金数据发送给电动汽车eva,将担保费用数据发送给电网端,完成交易结算。
[0018]
如图2所示,步骤三中v2g跨域认证过程包括:a域和b域管理中心前期通过区块链证书服务器进行基于区块链证书域间认证,同时交换两个域认证系统的公开参数和公钥生成算法。a域为电动汽车eva生成会话密钥key,发送给身份认证服务器,身份认证服务器收到认证请求后,向本域内的安全仲裁申请签名信令,通过认证后,b域会将完整签名结果发送给电动汽车所在访问域的身份认证服务器,待其验证签名信息后将认证结果返回电动汽车eva;这时电动汽车eva可根据认证结果来访问b域电网中的充放电服务。
[0019]
其中,基于区块链的v2g网络跨域交易安全方法的跨域认证算法如下:1)input:cert,key2)output:验证结果pass/fail3)chaincodestubstub= cert.getstub();4)byte[]ojectbytes = stub.getstate(accumulator.class.getsimplename());5)accumulatoracc= deserialize(ojectbytes);6)boolean verifypass= acc.verifymembership(cert,key,acc.getn());7)if(modpow(cert,acc.getn()).comparteto(a)==0){8)returnpass;9)}10)returnfail;
其中,步骤四的第一个零知识证明的内容包括:电网端当前的零知识余额等于第一哈希值、电网端生成的零知识金额等于第二哈希值、交易完成后电网端的零知识余额等于第三哈希值、第一私密参数大于第二私密参数、或者第一私密参数与第二私密参数的差值等于第三私密参数。
[0020]
其中,第二个零知识证明的内容包括:电网端使用的零知识金额等于第二哈希值、零知识金额存在于预生成的默克尔树中,电网端支付的担保费凭证等于第四哈希值;其中,第三个零知识证明的内容包括:电动汽车端应得的零知识金额等于第五哈希值、智能合约中的担保费用凭证等于第四哈希值,第四私密数据等于第二私密参数与设定公开参数的乘积。
[0021]
其中,所述交易参数,包括:担保费凭证、最大支付次数和用于区分电动汽车端和电网端的一次性公钥;其中,所述的零知识金额是指一种使用哈希值表示的隐藏金额,其组成形式为:cash=sha256(value,serial_number,n),其中value是cash对应的金额数值;serial_number是cash唯一对应的序列号,序列号公布代表金额已被花费;n是用于防止暴力破解的私密随机数。零知识余额的使用和存入必须通过零知识证明验证,使用新的零知识余额代替旧的零知识余额。一旦零知识余额更新,旧余额的序列号serial_number会被公布。计算金额的sha256哈希值,并将它存储在result中,假定存在一个预定义的常数data_size。
[0022]
c#的代码如下:1)byte[] result;2)byte[] data = new byte[data_size];3)sha256 sham = new sha256managed();4)result = sham.computehash(data);其中,交易哈希链生成的具体步骤包括:生成一个随机数值hn,然后对hn进行哈希运算,得到hn-1=h(hn);以此类推,依次得到hn-2,hn-3,
……
,h1,0,构成整条哈希链;n表示哈希链的长度。如图3所示。
[0023]
其中,所述v2g网络将地理区域进行划分,每个区域有一个证书授权中心ca,用于分析同一ca管理域内部或不同ca管理域之间的信任关系的建立和传递的过程;不同域的ca经过许可后,加入联盟链,构成联盟链的验证节点vp,加入联盟链的根ca是可信的,为vp生成根ca区块链证书,并将证书的hash值记入不易篡改的区块链内,作为各域的信任凭证。
[0024]
最后应当说明的是:上述实施例只是用于对本发明的举例和说明,而非意在将本发明限制于所描述的实施例范围内。此外本领域技术人员可以理解的是,本发明不局限于上述实施例,根据本发明教导还可以做出更多种的变型和修改,这些变型和修改均落在本发明所要求保护的范围内。
技术特征:
1.一种基于区块链的v2g网络跨域交易安全方法,其特征在于,包括如下步骤:步骤一,电动汽车向可信机构注册,可信机构为v2g系统中的电动汽车生成并分配公共参数和密钥,可信机构将相应的身份信息和证书cert存于区块链基础平台和数据库中;步骤二,a域电动汽车ev
a
在接入a域电网时,区域管理中心r
a
在区块链上查询身份和证书的哈希值,当查询到数据库有符合的身份信息和证书时,结果为通过,允许电动汽车ev
a
接入a域电网;步骤三,当a域电动汽车ev
a
进入b域接入电网前,通过区块链来进行跨域信任传递,完成v2g跨域认证过程;步骤四,认证成功后,电动汽车ev
a
接入b域电网进行电能输送,区块链节点接收b域电网端匿名发送的交易参数,将交易参数和电网端生成的第一个零知识证明以智能合约的形式记录到区块链上;区块链节点接收电网端匿名发送的担保费用,将担保费用和电网端生成的第二个零知识证明以智能合约的形式记录到区块链上;步骤五,区块链节点接收电动汽车端匿名发送的用于结算的支付凭证,将用于结算的支付凭证和电动汽车ev
a
生成的第三个零知识证明以智能合约的形式记录到区块链上;步骤六,分别基于公知信息对录入的业务数据进行审核,若审核通过,则将担保费用记录上传到区块链上,若审核不通过,则删除业务数据;步骤七,将上传的担保费用发送到区块链上的所有节点,以供节点对所述业务数据进行访问;在数据处理转发过程中采用排队论和先到先服务fcfs机制提升数据在节点内转发效率,并建立数据按需驱动传输模型和路由算法降低多次数据全网广播或点对点传输过程的延时;步骤八,基于区块链的智能合约,将支付凭证转化为对应数额的资金数据,将对应数额的资金数据发送给电动汽车ev
a
,将担保费用数据发送给电网端,完成交易结算。2.根据权利要求1所述的一种基于区块链的v2g网络跨域交易安全方法,其特征在于,步骤三中所述v2g跨域认证过程包括:a域和b域管理中心前期通过区块链证书服务器进行基于区块链证书域间认证,同时交换两个域认证系统的公开参数和公钥生成算法,a域为电动汽车ev
a
生成会话密钥key并发送给身份认证服务器,身份认证服务器收到请求后,向本域内的安全仲裁申请签名信令,安全仲裁通过后,b域会将完整签名结果发送给电动汽车所在访问域的身份认证服务器,待其验证签名信息后将认证结果返回电动汽车ev
a
;这时电动汽车ev
a
可根据认证结果来访问b域电网中的充放电服务。3.根据权利要求1所述的一种基于区块链的v2g网络跨域交易安全方法,其特征在于,步骤四中所述交易参数包括:担保费凭证、最大支付次数和用于区分电动汽车端和电网端的一次性公钥。4.根据权利要求1所述的一种基于区块链的v2g网络跨域交易安全方法,其特征在于,步骤四中所述第一个零知识证明的内容包括:电网端当前的零知识余额等于第一哈希值、电网端生成的零知识金额等于第二哈希值、交易完成后电网端的零知识余额等于第三哈希值、第一私密参数大于第二私密参数、或者第一私密参数与第二私密参数的差值等于第三私密参数。5.根据权利要求1所述的一种基于区块链的v2g网络跨域交易安全方法,其特征在于,步骤四中所述第二个零知识证明的内容包括:
电网端使用的零知识金额等于第二哈希值、零知识金额存在于预生成的默克尔树中,电网端支付的担保费凭证等于第四哈希值。6.根据权利要求1所述的一种基于区块链的v2g网络跨域交易安全方法,其特征在于,步骤五中所述第三个零知识证明的内容包括:电动汽车端应得的零知识金额等于第五哈希值、智能合约中的担保费用凭证等于第四哈希值,第四私密数据等于第二私密参数与设定公开参数的乘积。7.根据权利要求4-6中任一项所述的一种基于区块链的v2g网络跨域交易安全方法,其特征在于,所述的零知识金额是指一种使用哈希值表示的隐藏金额,其组成形式为:cash=sha256(value,serial_number,n),其中value是cash对应的金额数值;serial_number是cash唯一对应的序列号,序列号公布代表金额已被花费;n是用于防止暴力破解的私密随机数;零知识余额的使用和存入必须通过零知识证明验证,使用新的零知识余额代替旧的零知识余额;一旦零知识余额更新,旧余额的序列号serial_number会被公布,计算金额的sha256哈希值,并将它存储在result中,假定存在一个预定义的常数data_size;c#的代码如下:1)byte[] result;2)byte[] data = new byte[data_size];3)sha256 sham = new sha256managed();4)result = sham.computehash(data)。8.根据权利要求1所述的一种基于区块链的v2g网络跨域交易安全方法,其特征在于,所述v2g网络将地理区域进行划分,每个区域有一个证书授权中心ca,用于分析同一ca管理域内部或不同ca管理域之间的信任关系的建立和传递的过程;不同域的ca经过许可后,加入联盟链,构成联盟链的验证节点vp,加入联盟链的根ca是可信的,为vp生成根ca区块链证书,并将证书的hash值记入不易篡改的区块链内,作为各域的信任凭证。
技术总结
本发明公开了一种基于区块链的V2G网络跨域交易安全方法,包括如下步骤:步骤一,电动汽车向可信机构注册;步骤二,A域电动汽车EV
技术研发人员:张剑 李磊 刘伟东 刘小琛 谢秦 李丹 李晓辉 梁彬
受保护的技术使用者:国网天津市电力公司 国家电网有限公司 天津大学
技术研发日:2022.02.09
技术公布日:2022/3/8