CN113300836B - 一种基于区块链和ecc的车载网络报文认证方法及系统 - Google Patents

一种基于区块链和ecc的车载网络报文认证方法及系统 Download PDF

Info

Publication number
CN113300836B
CN113300836B CN202110440956.3A CN202110440956A CN113300836B CN 113300836 B CN113300836 B CN 113300836B CN 202110440956 A CN202110440956 A CN 202110440956A CN 113300836 B CN113300836 B CN 113300836B
Authority
CN
China
Prior art keywords
ecu
key
block chain
mac
sender
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.)
Active
Application number
CN202110440956.3A
Other languages
English (en)
Other versions
CN113300836A (zh
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.)
Jinan University
Original Assignee
Jinan University
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 Jinan University filed Critical Jinan University
Priority to CN202110440956.3A priority Critical patent/CN113300836B/zh
Publication of CN113300836A publication Critical patent/CN113300836A/zh
Application granted granted Critical
Publication of CN113300836B publication Critical patent/CN113300836B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3252Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/72Signcrypting, i.e. digital signing and encrypting simultaneously
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本发明公开了一种基于区块链和ECC的车载网络报文认证方法及系统,该方法包括以下步骤:建立车载区块链网络并完成ECU连接区块链;车载ECU基于ECC初始化公、私钥对,并将公钥作为共享信息存储至区块链;通信双方ECU通过区块链中共享信息进行Diffie‑Hellman密钥交换,协商出共享密钥;利用共享密钥以及ECIES加密方案,发送方对车载网络报文进行签名,接收方对报文进行验签。考虑与现有ECU的兼容性,本发明利用联盟链完成ECU的身份认证,实现在不安全的车内总线上快速协商出共享密钥,对报文进行实时认证。

Description

一种基于区块链和ECC的车载网络报文认证方法及系统
技术领域
本发明涉及椭圆曲线密码学数字签名技术领域,具体涉及一种基于区块链和椭圆曲线加密算法(ECC)的车载网络报文认证方法及系统。
背景技术
近年来,智能汽车得到迅速发展,安全性成为车内通信的主要关键点。其中,ECU之间CAN总线通信一直遭受安全缺陷的困扰,例如处理时间长,缺乏机密性、完整性和真实性设计。现有中心化的密钥分发与存储效率低、处理时间长,容易发生单点故障。同时,CAN总线缺乏对报文的加密和安全认证机制,难以保证ECU报文的完整性和真实性。尤其在面对车载网络中千万甚至上亿的报文数据传输时,需要面临巨量资源的消耗来进行身份认证。
发明内容
为了克服现有技术存在的缺陷与不足,本发明提供一种基于区块链和ECC的车载网络报文认证方法及系统,考虑与现有ECU的兼容性,本发明通过使用椭圆曲线加密算法(ECC)在不安全车内总线上协商共享密钥对报文进行签名以及验证,其中,区块链技术作为一种分布式安全密钥供应和交换方案实现ECU实时身份验证,解决CAN总线无法对消息源进行标识的问题,增强车载网络对ECU的认证能力。
为了达到上述目的,本发明采用以下技术方案:
一种基于区块链和ECC的车载网络报文认证方法,包括下述步骤:
建立车载区块链网络并完成ECU连接区块链;
ECU基于椭圆曲线加密算法初始化公、私钥对,并将公钥作为共享信息存储至区块链;
发送方ECUA与接收方ECUB通过区块链中共享信息进行Diffie-Hellman密钥交换,协商出共享密钥;
利用共享密钥以及ECIES加密方案,发送方ECUA对车载网络报文进行签名,接收方ECUB对报文进行验签。
作为优选的技术方案,所述ECU具有唯一标识id且id作为共享信息存储至区块链,在与其他ECU通信时,调用区块链的智能合约以完成数据的上链查询。
作为优选的技术方案,所述ECU基于椭圆曲线加密算法初始化公、私钥对,具体步骤包括:
公钥采用一致的配置参数产生,私钥由ECU随机产生,其中Q=k*G,Q表示公钥,k表示私钥,G为配置参数集合中基点;
ECU保存私钥k,公钥Q和配置参数作为共享信息存储至区块链,ECC运用有限域上椭圆曲线所形成的循环子群,所述配置参数为集合{p,a,b,G,n,h},其中,p表示用于控制值域范围的大质数,参数a、b为椭圆曲线方程的形态参数,基点G为椭圆曲线上任意取得的基准点坐标,n表示子群阶,h表示子群辅助因子。
作为优选的技术方案,所述发送方ECUA与接收方ECUB通过区块链中共享信息进行Diffie-Hellman密钥交换,协商出共享密钥,具体步骤包括:
发送方ECUA和接收方ECUB分别将自己的公钥QA和QB发送给对方;
发送方ECUA和接收方ECUB查询区块链网络的ECU节点身份认证系统,确定ECU节点与公钥是否匹配,发送方ECUA调用智能合约查询区块链,验证接收方ECUB的id和公钥QB的一致性;
判定ECU节点与公钥匹配时,发送方ECUA和接收方ECUB分别用自己的私钥和对方的公钥计算出相同的共享密钥。
作为优选的技术方案,所述发送方ECUA和接收方ECUB分别用自己的私钥和对方的公钥计算出相同的共享密钥,具体步骤包括:
发送方ECUA计算点P(Px,Py)=kA*QB与接收方ECUB计算点P(Px,Py)=kB*QA相等,点P中x坐标Px即为共享密钥,其中,kA表示发送方ECUA的私钥,QB表示接收方ECUB的公钥,kB表示接收方ECUB的私钥,QA表示发送方ECUA的公钥。
作为优选的技术方案,所述发送方ECUA对车载网络报文进行签名,具体步骤包括:
利用共享密钥和任意大于Hash长度的随机参数S1计算密钥导出函数KDF,保留MAC密钥KM用于后续的签名;
利用生成的MAC密钥KM和任意大于Hash长度的随机参数S2,以及带密钥的Hash函数MAC对发送信息m进行签名,生成MAC标签d=MAC(KM,m||S2),||表示将两个字符串拼接;
ECUA发送明文信息m、MAC标签d以及随机参数S1和S2至ECUB
所述接收方ECUB对报文进行验签,具体步骤包括:
ECUB收到ECUA发来的明文信息m、MAC标签d以及随机参数S1和S2
利用共享密钥和随机参数S1计算密钥导出函数KDF,保留MAC密钥KM
利用生成的MAC密钥KM、随机参数S2和明文信息m生成MAC标签d'=MAC(KM,m||S2);
比较ECUB生成的MAC标签d'与收到的MAC标签d,若相等,则判定收到的信息m是ECUA发送,完成对报文的身份认证。
本发明还提供一种基于区块链和ECC的车载网络报文认证系统,包括:车载区块链网络建立模块、初始化模块、公钥共享存储模块、密钥交换模块、签名模块和验签模块;
所述车载区块链网络建立模块用于建立车载区块链网络并完成ECU连接区块链;
所述初始化模块用于基于椭圆曲线加密算法初始化公、私钥对;
所述公钥共享存储模块用于将公钥作为共享信息存储至区块链;
所述密钥交换模块用于进行Diffie-Hellman密钥交换,发送方ECUA与接收方ECUB通过区块链共享信息进行Diffie-Hellman密钥交换,协商出共享密钥;
所述签名模块用于对车载网络报文进行签名,所述验签模块用于报文进行验签;
利用共享密钥以及ECIES加密方案,发送方ECUA对车载网络报文进行签名,接收方ECUB对报文进行验签。
作为优选的技术方案,所述密钥交换模块设有发送方公钥发送单元、接收方公钥发送单元、匹配验证单元和共享密钥计算单元;
所述发送方公钥发送单元、接收方公钥发送单元将发送方、接收方的公钥QA和QB分别发送给对方;
所述匹配验证单元用于确定ECU节点与公钥是否匹配,发送方ECUA和接收方ECUB查询区块链网络的ECU节点身份认证系统,发送方ECUA调用智能合约查询区块链,验证接收方ECUB的id和公钥QB的一致性;
所述共享密钥计算单元用于计算出发送方与接收方相同的共享密钥,判定ECU节点与公钥匹配时,发送方ECUA和接收方ECUB分别用自己的私钥和对方的公钥计算出相同的共享密钥。
作为优选的技术方案,所述发送方ECUA对车载网络报文进行签名,具体步骤包括:
利用共享密钥和任意大于Hash长度的随机参数S1计算密钥导出函数KDF,保留MAC密钥KM用于后续的签名;
利用生成的MAC密钥KM和任意大于Hash长度的随机参数S2,以及带密钥的Hash函数MAC对发送信息m进行签名,生成MAC标签d=MAC(KM,m||S2),||表示将两个字符串拼接;
ECUA发送明文信息m、MAC标签d以及随机参数S1和S2至ECUB
所述接收方ECUB对报文进行验签,具体步骤包括:
ECUB收到ECUA发来的明文信息m、MAC标签d以及随机参数S1和S2
利用共享密钥和随机参数S1计算密钥导出函数KDF,保留MAC密钥KM
利用生成的MAC密钥KM、随机参数S2和明文信息m生成MAC标签d'=MAC(KM,m||S2);
比较ECUB生成的MAC标签d'与收到的MAC标签d,若相等,则判定收到的信息m是ECUA发送,完成对报文的身份认证。
本发明与现有技术相比,具有如下优点和有益效果:
(1)本发明采用联盟链网络进行ECU节点身份认证的技术方案,解决CAN总线无法对消息源进行标识的问题,增强车载网络对ECU的认证能力。
(2)本发明采用基于联盟链网络的分布式密钥存储方案,利用联盟链的不可篡改性、高效性以及公开性,解决车载网络中通信密钥的存储问题。
(3)本发明采用椭圆曲线密算法与Diffie-Hellman密钥交换协议的方案,解决车载网络中通信密钥的安全分发问题,实现ECU间通信报文的高效签名和验签,保证ECU间可信通信。
附图说明
图1为本发明基于区块链和ECC的车载网络报文认证方法的流程示意图;
图2为本发明的车载网络拓扑结构示意图;
图3为本发明Diffie-Hellman密钥交换的流程示意图;
图4为本发明MAC码签名过程的流程示意图;
图5为本发明MAC码验证过程的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例1
如图1所示,本发明提供一种基于区块链和ECC的车载网络报文认证方法,包括下述步骤:
S1:建立车载区块链网络并完成ECU(Electronic Control Unit)连接区块链;
如图2所示,ECU具有唯一标识id且id作为共享信息存储至区块链,在与其他ECU通信时,调用区块链的智能合约以完成数据的上链查询;
S2:车载ECU基于椭圆曲线加密算法ECC初始化公、私钥对,并将公钥作为共享信息存储至区块链;
在本实施例中,对于公、私钥对(Q,k),公钥Q使用一致的配置参数产生,私钥k为一个小于p的整数,由ECU随机产生,其中Q=k*G,G是配置参数集合中基点G(Gx,Gy);ECU只保存私钥k,公钥Q和配置参数作为共享信息存储至区块链;ECC运用有限域上椭圆曲线所形成的循环子群,配置参数为集合{p,a,b,G,n,h},其中大质数p用来控制值域范围,参数a、b为椭圆曲线方程y2=x3+ax2+b的形态参数,基点G(Gx,Gy)为椭圆曲线上任意取得的基准点坐标,子群阶n为满足n*G=0的最小正整数,子群辅助因子为h=1/n|E(Fp)|,E(Fp)是对椭圆曲线取余y2%p=(x3+ax2+b)%p;
本实施例采用ECC密码体系并使用区块链作为密钥的分布式存储与配置,其优点在于:ECC密码体系密钥量小,安全性高,非常适合在车内环境使用;利用区块链的分布式技术,为车内密钥的分发与存储提供更安全、高效的方式。
S3:通信双方ECU通过区块链中共享信息进行Diffie-Hellman密钥交换,协商出共享密钥;
具体的,ECUA、ECUB为相互通信的ECU节点,其通过区块链中已存储的公钥和ECU的id进行Diffie-Hellman密钥交换,协商出共享密钥,如图3所示,其步骤如下:
S31:ECUA和ECUB分别将自己的公钥QA和QB发送给对方,其中QA=kA*G,QB=kB*G;
S32:ECUA和ECUB查询区块链网络的ECU节点身份认证系统,从而确定ECU节点与公钥是否匹配;
具体的,区块链网络采用联盟链,注册至区块链网络的ECU节点均为可信节点,快速完成分布式ECU节点身份认证:ECUA调用智能合约查询区块链,验证ECUB的id和公钥QB的一致性;
在本实施例中,若恶意ECUX伪装为ECUA并发送自己的id和公钥QX=kX*G与ECUB协商密钥,将出现如下情况:
1、如果恶意节点发送的是自己的id,那么ECUB在链上查不到这个id,因为在初始化时恶意节点没有注册到区块链上,ECUB直接拒绝这次协商;
2、如果恶意节点发送的是ECUA的id和自己的公钥QX,ECUB查询链上ECUA的id和其公钥QA,发现QA不等于QX,所以拒绝这次协商,故恶意节点不能伪造通信;
3、如果恶意节点发送的是ECUA的id和公钥,虽然可以完成协商密钥的流程,但是恶意节点并没有ECUA的私钥kA,故计算不出共享密钥。
利用区块链作为身份认证系统,其优点在于:分布式区块链系统为ECU节点提供了快速、实时身份认证。
S33:步骤S32的ECU节点与公钥匹配的情况下,ECUA和ECUB分别用自己的私钥和对方的公钥计算出相同的共享密钥。
具体的,发送方ECUA计算点P(Px,Py)=kA*QB=kA*kB*G与接收方ECUB计算点P(Px,Py)=kB*QA=kB*kA*G相等,P中x坐标Px即为共享密钥。本实施例在网络中传播的是公钥Q=k*G,已知Q是很难推知得出私钥k的,只有通信双方能计算出共享密钥。
S4:利用共享密钥以及ECIES加密方案,发送方ECUA对车载网络报文进行签名,接收方ECUB对报文进行验签。
具体的,通信双方ECU对报文进行签名和验签过程采用消息认证码(MAC),进行网络报文认证;
步骤S4中发送方对车载网络报文进行签名的方法,如图4所示,其步骤如下:
利用共享密钥Px和任意大于Hash长度的随机参数S1计算密钥导出函数KDF,KE||KM=KDF(Px||S1),保留MAC密钥KM用于后续的签名,KE加密密钥直接抛弃,按照密码学工具KDF函数定义,导出的二进制串,规定截取其某个长度的串作为加密密钥,剩余部分作为MAC签名密钥;
利用生成的MAC密钥KM和任意大于Hash长度的随机参数S2,以及带密钥的Hash函数MAC对发送信息m进行签名,生成MAC标签d=MAC(KM,m||S2),||表示将两个字符串拼接起来;
ECUA发送明文信息m、MAC标签d以及随机参数S1和S2至ECUB
具体的,步骤S4中接收方对报文进行验签,如图5所示,其步骤如下:
ECUB收到ECUA发来的明文信息m、MAC标签d以及随机参数S1和S2
利用共享密钥Px和随机参数S1计算密钥导出函数KDF,KE||KM=KDF(Px||S1),保留MAC密钥KM
利用生成的MAC密钥KM、随机参数S2和明文信息m生成MAC标签d'=MAC(KM,m||S2);
比较ECUB生成的MAC标签d'与收到的MAC标签d,若相等,则判断收到的信息m确实是ECUA发送,其他人不可伪造,完成对报文的身份认证。在本实施例中,比较ECUB生成的MAC标签d'与收到的MAC标签d是否相同的目的在于:若恶意节点截取了此信息(S1,S2,m,d),理论上需要KM才能更改此信息,而KM又需要共享密钥Px导出,Px由私钥k*公钥Q导出。故恶意节点只有掌握了通信双方任意一方私钥k才能作恶(但是此k只有ECU自己知道),否则它不能更改报文(S1,S2,m,d)中任意的数据使得接收方验证签名时有:d’=d,因此,接收方算出来的d'与发送方的d相等时,可以信任此次通信的安全性;否则此次通信不可信,直接抛弃。
实施例2
本发明还提供一种基于区块链和ECC的车载网络报文认证系统,包括:车载区块链网络建立模块、初始化模块、公钥共享存储模块、密钥交换模块、签名模块和验签模块;
在本实施例中,车载区块链网络建立模块用于建立车载区块链网络并完成ECU连接区块链;
在本实施例中,初始化模块用于基于椭圆曲线加密算法初始化公、私钥对;
在本实施例中,公钥共享存储模块用于将公钥作为共享信息存储至区块链;
在本实施例中,密钥交换模块用于进行Diffie-Hellman密钥交换,发送方ECUA与接收方ECUB通过区块链共享信息进行Diffie-Hellman密钥交换,协商出共享密钥;
在本实施例中,签名模块用于对车载网络报文进行签名,验签模块用于报文进行验签;
利用共享密钥以及ECIES加密方案,发送方ECUA对车载网络报文进行签名,接收方ECUB对报文进行验签。
在本实施例中,密钥交换模块设有发送方公钥发送单元、接收方公钥发送单元、匹配验证单元和共享密钥计算单元;
在本实施例中,发送方公钥发送单元、接收方公钥发送单元将发送方、接收方的公钥QA和QB分别发送给对方;
在本实施例中,匹配验证单元用于确定ECU节点与公钥是否匹配,发送方ECUA和接收方ECUB查询区块链网络的ECU节点身份认证系统,发送方ECUA调用智能合约查询区块链,验证接收方ECUB的id和公钥QB的一致性;
在本实施例中,共享密钥计算单元用于计算出发送方与接收方相同的共享密钥,判定ECU节点与公钥匹配时,发送方ECUA和接收方ECUB分别用自己的私钥和对方的公钥计算出相同的共享密钥。
在本实施例中,发送方ECUA对车载网络报文进行签名,具体步骤包括:
利用共享密钥和任意大于Hash长度的随机参数S1计算密钥导出函数KDF,保留MAC密钥KM用于后续的签名;
利用生成的MAC密钥KM和任意大于Hash长度的随机参数S2,以及带密钥的Hash函数MAC对发送信息m进行签名,生成MAC标签d=MAC(KM,m||S2),||表示将两个字符串拼接;
ECUA发送明文信息m、MAC标签d以及随机参数S1和S2至ECUB
所述接收方ECUB对报文进行验签,具体步骤包括:
ECUB收到ECUA发来的明文信息m、MAC标签d以及随机参数S1和S2
利用共享密钥和随机参数S1计算密钥导出函数KDF,保留MAC密钥KM
利用生成的MAC密钥KM、随机参数S2和明文信息m生成MAC标签d'=MAC(KM,m||S2);
比较ECUB生成的MAC标签d'与收到的MAC标签d,若相等,则判定收到的信息m是ECUA发送,完成对报文的身份认证。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (7)

1.一种基于区块链和ECC的车载网络报文认证方法,其特征在于,包括下述步骤:
建立车载区块链网络并完成ECU连接区块链;
ECU基于椭圆曲线加密算法初始化公、私钥对,并将公钥作为共享信息存储至区块链;
发送方ECUA与接收方ECUB通过区块链中共享信息进行Diffie-Hellman密钥交换,协商出共享密钥;
利用共享密钥以及ECIES加密方案,发送方ECUA对车载网络报文进行签名,接收方ECUB对报文进行验签;
所述发送方ECUA对车载网络报文进行签名,具体步骤包括:
利用共享密钥和任意大于Hash长度的随机参数S1计算密钥导出函数KDF,保留MAC密钥KM用于后续的签名;
利用生成的MAC密钥KM和任意大于Hash长度的随机参数S2,以及带密钥的Hash函数MAC对发送信息m进行签名,生成MAC标签d=MAC(KM,m||S2),||表示将两个字符串拼接;
ECUA发送明文信息m’、MAC标签d以及随机参数S1和S2至ECUB
所述接收方ECUB对报文进行验签,具体步骤包括:
ECUB收到ECUA发来的明文信息m’、MAC标签d以及随机参数S1和S2
利用共享密钥和随机参数S1计算密钥导出函数KDF,保留MAC密钥KM
利用生成的MAC密钥KM、随机参数S2和明文信息m’生成MAC标签d'= MAC(KM,m’||S2);
比较ECUB生成的MAC标签d'与收到的MAC标签d,若相等,则判定收到的明文信息m’是ECUA发送,完成对报文的身份认证。
2.根据权利要求1所述的基于区块链和ECC的车载网络报文认证方法,其特征在于,所述ECU具有唯一标识id且id作为共享信息存储至区块链,在与其他ECU通信时,调用区块链的智能合约以完成数据的上链查询。
3.根据权利要求1所述的基于区块链和ECC的车载网络报文认证方法,其特征在于,所述ECU基于椭圆曲线加密算法初始化公、私钥对,具体步骤包括:
公钥采用一致的配置参数产生,私钥由ECU随机产生,其中Q=k*G,Q表示公钥,k表示私钥,G为配置参数集合中基点;
ECU保存私钥k,公钥Q和配置参数作为共享信息存储至区块链,ECC运用有限域上椭圆曲线所形成的循环子群,所述配置参数为集合{p, a, b, G, n, h},其中,p表示用于控制值域范围的大质数,参数 a、b为椭圆曲线方程的形态参数,基点 G为椭圆曲线上任意取得的基准点坐标,n表示子群阶,h表示子群辅助因子。
4.根据权利要求1所述的基于区块链和ECC的车载网络报文认证方法,其特征在于,所述发送方ECUA与接收方ECUB通过区块链中共享信息进行Diffie-Hellman密钥交换,协商出共享密钥,具体步骤包括:
发送方ECUA和接收方ECUB分别将自己的公钥QA和QB发送给对方;
发送方ECUA和接收方ECUB查询区块链网络的ECU节点身份认证系统,确定ECU节点与公钥是否匹配,发送方ECUA调用智能合约查询区块链,验证接收方ECUB的id和公钥QB的一致性;
判定ECU节点与公钥匹配时,发送方ECUA和接收方ECUB分别用自己的私钥和对方的公钥计算出相同的共享密钥。
5.根据权利要求4所述的基于区块链和ECC的车载网络报文认证方法,其特征在于,所述发送方ECUA和接收方ECUB分别用自己的私钥和对方的公钥计算出相同的共享密钥,具体步骤包括:
发送方ECUA计算点P(Px,Py)= kA *QB与接收方ECUB计算点P(Px,Py)= kB *QA相等,点P中x坐标Px即为共享密钥,其中,kA表示发送方ECUA的私钥,QB表示接收方ECUB的公钥,kB表示接收方ECUB的私钥,QA表示发送方ECUA的公钥。
6.一种基于区块链和ECC的车载网络报文认证系统,其特征在于,包括:车载区块链网络建立模块、初始化模块、公钥共享存储模块、密钥交换模块、签名模块和验签模块;
所述车载区块链网络建立模块用于建立车载区块链网络并完成ECU连接区块链;
所述初始化模块用于基于椭圆曲线加密算法初始化公、私钥对;
所述公钥共享存储模块用于将公钥作为共享信息存储至区块链;
所述密钥交换模块用于进行Diffie-Hellman密钥交换,发送方ECUA与接收方ECUB通过区块链共享信息进行Diffie-Hellman密钥交换,协商出共享密钥;
所述签名模块用于对车载网络报文进行签名,所述验签模块用于报文进行验签;
利用共享密钥以及ECIES加密方案,发送方ECUA对车载网络报文进行签名,接收方ECUB对报文进行验签;
所述发送方ECUA对车载网络报文进行签名,具体步骤包括:
利用共享密钥和任意大于Hash长度的随机参数S1计算密钥导出函数KDF,保留MAC密钥KM用于后续的签名;
利用生成的MAC密钥KM和任意大于Hash长度的随机参数S2,以及带密钥的Hash函数MAC对发送信息m进行签名,生成MAC标签d=MAC(KM,m||S2),||表示将两个字符串拼接;
ECUA发送明文信息m’、MAC标签d以及随机参数S1和S2至ECUB
所述接收方ECUB对报文进行验签,具体步骤包括:
ECUB收到ECUA发来的明文信息m’、MAC标签d以及随机参数S1和S2
利用共享密钥和随机参数S1计算密钥导出函数KDF,保留MAC密钥KM
利用生成的MAC密钥KM、随机参数S2和明文信息m’生成MAC标签d'= MAC(KM,m’||S2);
比较ECUB生成的MAC标签d'与收到的MAC标签d,若相等,则判定收到的明文信息m’是ECUA发送,完成对报文的身份认证。
7.根据权利要求6所述基于区块链和ECC的车载网络报文认证系统,其特征在于,所述密钥交换模块设有发送方公钥发送单元、接收方公钥发送单元、匹配验证单元和共享密钥计算单元;
所述发送方公钥发送单元、接收方公钥发送单元将发送方、接收方的公钥QA和QB分别发送给对方;
所述匹配验证单元用于确定ECU节点与公钥是否匹配,发送方ECUA和接收方ECUB查询区块链网络的ECU节点身份认证系统,发送方ECUA调用智能合约查询区块链,验证接收方ECUB的id和公钥QB的一致性;
所述共享密钥计算单元用于计算出发送方与接收方相同的共享密钥,判定ECU节点与公钥匹配时,发送方ECUA和接收方ECUB分别用自己的私钥和对方的公钥计算出相同的共享密钥。
CN202110440956.3A 2021-04-23 2021-04-23 一种基于区块链和ecc的车载网络报文认证方法及系统 Active CN113300836B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110440956.3A CN113300836B (zh) 2021-04-23 2021-04-23 一种基于区块链和ecc的车载网络报文认证方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110440956.3A CN113300836B (zh) 2021-04-23 2021-04-23 一种基于区块链和ecc的车载网络报文认证方法及系统

Publications (2)

Publication Number Publication Date
CN113300836A CN113300836A (zh) 2021-08-24
CN113300836B true CN113300836B (zh) 2022-02-22

Family

ID=77320154

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110440956.3A Active CN113300836B (zh) 2021-04-23 2021-04-23 一种基于区块链和ecc的车载网络报文认证方法及系统

Country Status (1)

Country Link
CN (1) CN113300836B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113938304B (zh) * 2021-10-14 2024-02-13 吉林大学 一种基于can总线的数据加密传输方法
CN114244514B (zh) * 2022-02-21 2022-05-24 图灵人工智能研究院(南京)有限公司 一种基于车联网的数据安全处理方法
CN114710275B (zh) * 2022-03-28 2024-03-08 湖南科技大学 物联网环境下基于区块链的跨域认证和密钥协商方法
CN115242468B (zh) * 2022-07-07 2023-05-26 广州河东科技有限公司 一种基于rs485总线的安全通信系统及其方法
JP2024044158A (ja) * 2022-09-20 2024-04-02 株式会社デンソー 電子制御装置、鍵照合方法、鍵照合プログラム及び鍵管理システム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108881494B (zh) * 2018-08-10 2021-06-29 三门峡速达交通节能科技股份有限公司 基于车载网络和区块链的安全信息传输方法
US11356256B2 (en) * 2019-03-25 2022-06-07 Micron Technology, Inc. Secure vehicular part communication
CN111405011B (zh) * 2020-03-07 2022-11-25 北京工业大学 基于区块链的vanet中节点可信加入方法
CN111461720B (zh) * 2020-04-15 2024-03-22 Oppo广东移动通信有限公司 基于区块链的身份验证方法、装置、存储介质及电子设备
CN112039870B (zh) * 2020-08-28 2022-05-13 武汉见邦融智科技有限公司 基于区块链的面向隐私保护的车载网认证方法及系统

Also Published As

Publication number Publication date
CN113300836A (zh) 2021-08-24

Similar Documents

Publication Publication Date Title
CN113300836B (zh) 一种基于区块链和ecc的车载网络报文认证方法及系统
KR100956482B1 (ko) 알려지지 않은 두 통신 당사자 간의 신뢰성 있는 관계의 확립 방법, 그 관계 확립의 개시와 완성 방법, 통신 장치 및 컴퓨터 판독가능한 기록매체
CN110011795B (zh) 基于区块链的对称群组密钥协商方法
US11223486B2 (en) Digital signature method, device, and system
CN110995414B (zh) 基于国密算法在tls1_3协议中建立通道的方法
CN110020524B (zh) 一种基于智能卡的双向认证方法
CN111682938A (zh) 面向中心化移动定位系统的三方可认证密钥协商方法
CN110535626B (zh) 基于身份的量子通信服务站保密通信方法和系统
CN113630248B (zh) 一种会话密钥协商方法
CN109474436A (zh) 一种可否认认证方法和系统
CN112165386A (zh) 一种基于ecdsa的数据加密方法及系统
CN108449326A (zh) 一种异构可否认的认证方法和系统
CN114422135A (zh) 一种基于椭圆曲线的可验证的不经意传输方法
Limkar et al. A mechanism to ensure identity-based anonymity and authentication for IoT infrastructure using cryptography
CN116599659B (zh) 无证书身份认证与密钥协商方法以及系统
CN116318739B (zh) 一种电子数据交换方法及系统
CN114285546B (zh) 一种可用于车载自组网络中的异构签密通信方法
CN114285576B (zh) 一种非对的在线离线签密方法
CN110572788B (zh) 基于非对称密钥池和隐式证书的无线传感器通信方法和系统
CN109412815B (zh) 一种实现跨域安全通信的方法和系统
CN112423295A (zh) 一种基于区块链技术的轻量级安全认证方法及系统
CN113315636B (zh) 一种用于汽车ecu间安全通信的密钥交换方法
CN105515775B (zh) 一种高效且隐私保护的签密方法
Sugumar et al. Key Escrow with Certificateless Elliptic Curve Segmentation for Grouping of Shared Data in Mobile Networks.
CN113242548B (zh) 5g网络环境下的无线物联网设备通信密钥交换方法

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