CN111901109B - 基于白盒的通信方法、装置、设备和存储介质 - Google Patents
基于白盒的通信方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN111901109B CN111901109B CN202010774257.8A CN202010774257A CN111901109B CN 111901109 B CN111901109 B CN 111901109B CN 202010774257 A CN202010774257 A CN 202010774257A CN 111901109 B CN111901109 B CN 111901109B
- Authority
- CN
- China
- Prior art keywords
- white
- communication
- master key
- key
- module
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 286
- 238000000034 method Methods 0.000 title claims abstract description 84
- 230000006855 networking Effects 0.000 claims description 23
- 230000015654 memory Effects 0.000 claims description 20
- 238000012795 verification Methods 0.000 claims description 12
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 8
- 238000003745 diagnosis Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Lock And Its Accessories (AREA)
Abstract
本申请提出一种基于白盒的通信方法、装置、设备和存储介质,包括:控制所述第一白盒模块利用所述主密钥生成的第一通信密钥,对原始通信数据进行加密,得到加密通信数据,以及,利用所述加密通信数据,生成第一通信报文;将所述第一通信报文发送至第二电子控制单元。本申请有利于提高车辆通信安全。
Description
技术领域
本申请涉及一种车辆技术领域,尤其涉及一种基于白盒的通信方法、装置、设备和存储介质。
背景技术
在电子控制单元利用密钥对通信数据进行加解密的过程中,黑客可以入侵部分电子控制单元,观测电子控制单元加解密时的内部数据,从而盗取密钥信息。
发明内容
本申请实施例提供一种基于白盒的通信方法、装置、设备和存储介质,以解决相关技术存在的问题,技术方案如下:
第一方面,本申请实施例提供了一种基于白盒的通信方法,应用于第一电子控制单元,第一电子控制单元包括第一白盒模块,第一白盒模块配置有目标车辆的主密钥,方法包括:
控制第一白盒模块利用主密钥生成的第一通信密钥,对原始通信数据进行加密,得到加密通信数据;
利用加密通信数据,生成第一通信报文;
将第一通信报文发送至第二电子控制单元。
第二方面,本申请实施例提供一种基于白盒的通信方法,应用于第二电子控制单元,第二电子控制单元包括第二白盒模块,第二白盒模块中配置有目标车辆的主密钥,通信方法包括:
接收第一通信报文;
控制第二白盒模块根据第一通信报文,获取加密通信数据;
至少利用主密钥生成的第一通信密钥,对加密通信数据进行解密,得到原始通信数据。
第三方面,本申请实施例提供一种基于白盒的通信装置,应用于第一电子控制单元,第一电子控制单元包括第一白盒模块,第一白盒模块配置有目标车辆的主密钥,装置包括:
加密通信数据生成模块,用于控制第一白盒模块利用主密钥生成的第一通信密钥,对原始通信数据进行加密,得到加密通信数据;
第一通信报文生成模块,用于利用加密通信数据,生成第一通信报文;
第一通信报文发送模块,用于将第一通信报文发送至第二电子控制单元。
第四方面,本申请实施例提供一种基于白盒的通信装置,应用于第二电子控制单元,第二电子控制单元包括第二白盒模块,第二白盒模块中配置有目标车辆的主密钥,通信装置包括:
第一通信报文接收模块,用于接收第一通信报文;
加密通信数据获取模块,用于控制第二白盒模块根据第一通信报文,获取加密通信数据;
原始通信数据获取模块,用于利用主密钥生成的第一通信密钥,对加密通信数据进行解密,得到原始通信数据。
第五方面,本申请实施例提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,以使至少一个处理器能够执行上述基于白盒的通信方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储计算机指令,当计算机指令在计算机上运行时,上述各方面任一种实施方式中的方法被执行。
上述技术方案中的优点或有益效果至少包括:将车辆主密钥设置于白盒模块中,电子控制单元可以调用白盒模块完成对通信数据的加密,由白盒模块保护主密钥和加密通信数据的过程,可以提高车内通信的安全性。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本申请进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。
图1为根据本申请实施例的基于白盒的通信方法的流程图一;
图2为根据本申请实施例的基于白盒的通信方法的流程图二;
图3为根据本申请实施例的基于白盒的通信方法的流程图三;
图4为根据本申请实施例的基于白盒的通信方法的流程图四;
图5为根据本申请实施例的基于白盒的通信方法的流程图五;
图6为根据本申请实施例的基于白盒的通信方法的示例图一;
图7为根据本申请实施例的基于白盒的通信方法的示例图二;
图8为根据本申请实施例的基于白盒的通信方法的示例图三;
图9为根据本申请实施例的基于白盒的通信装置的结构框图一;
图10为根据本申请实施例的基于白盒的通信装置的结构框图二;
图11是用来实现本申请实施例的基于白盒的通信方法的电子设备的框图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本申请的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
图1示出根据本申请一实施例的基于白盒的通信方法的流程图。该基于白盒的通信方法应用于第一电子控制单元(Electronic Control Unit,ECU),第一电子控制单元包括第一白盒模块,第一白盒模块配置有目标车辆的主密钥,如图1所示,该基于白盒的通信方法可以包括:
S101、控制第一白盒模块利用主密钥生成的第一通信密钥,对原始通信数据进行加密,得到加密通信数据。
S102、利用加密通信数据,生成第一通信报文。
S103、将第一通信报文发送至第二电子控制单元。
在本申请实施例中,白盒模块采用白盒密码技术,能够抵抗白盒攻击。白盒攻击是指攻击者对设备终端拥有完全的控制能力,能够观测和更改程序运行时的内部数据。这种攻击环境称为白盒攻击环境。白盒模块可以用于保护密钥安全。
本申请实施例,将车辆主密钥设置于白盒模块中,电子控制单元可以调用白盒模块完成对通信数据的加密,由白盒模块保护主密钥和加密通信数据的过程,可以提高车内通信的安全性。并且,该方式无需额外增加特殊硬件(如安全芯片)来输出通信密钥和加密通信,也无需依赖公钥基础设施(Public Key Infrastructure,PKI)和认证中心(Certificate Of Authority,CA)的证书,适配性更好,部署更加灵活。
在一种实施方式中,参见图2,步骤S101中利用主密钥生成第一通信密钥,包括:
S201、生成第一随机数;
S202、利用主密钥对第一随机数进行加密,得到第一初始码;
S203、利用第一随机数和第一初始码,生成第一通信密钥;
步骤S102中利用加密通信数据,生成第一通信报文,包括:利用加密通信数据和第一初始码,生成第一通信报文。
作为接收方的第二电子控制单元,具备相同的车辆主密钥,因此,第二电子控制单元可以利用车辆主密钥和第一通信报文中的第一初始码,还原第一通信密钥,进而利用第一通信密钥解密第一通信报文中的加密通信数据。巧妙地利用了初始码,使得接收方可以获知通信密钥,实现了车内通信的通信,又避免了通信密钥的泄露,提高了车内通信的安全性。
在一种实施方式中,步骤S203包括:利用第一随机数的哈希值(Hash)和第一初始码的哈希值(Hash),生成第一通信密钥。
哈希,为Hash的音译。哈希算法可以将把任意长度的输入通过散列算法变换成固定长度的输出。并且,Hash算法具有难以找到逆向规律的特点。
因此,利用第一随机数的哈希值和第一初始码的哈希值得到第一通信密钥,可以得到固定长度的通信密钥,并且降低恶意方推测计算规律。
可选地,步骤S101中生成通信密钥的场景包括:在第一电子控制单元启动时生成通信密钥,以及,第一电子控制单元每加密预设次数的通信数据后重新生成通信密钥。
在一种实施方式中,第一白盒模块还配置有白盒根密钥,参见图3,图1所示的方法,还包括:
S301、接收来自车联网设备的主密钥密文,其中,主密钥密文为车联网设备的白盒模块利用白盒根密钥对待配置主密钥进行加密所生成的;
可选地,车联网设备可以利用第二随机数和车架号生成主密钥,然后利用根密钥加密主密钥,得到主密钥密文。
S302、控制第一白盒模块利用白盒根密钥对主密钥密文进行解密,得到待配置主密钥,并根据待配置主密钥,配置第一白盒的主密钥。
利用白盒根密钥对车辆主密钥进行加密后,再分发至白盒模块进行车辆主密钥配置,避免了车辆主密钥在白盒模块之外的泄露,提高了车辆主密钥安全性。
在一种实施方式中,图1所示的方法,参见图3,图1所示的方法还包括:
S303、控制第一白盒模块利用主密钥和指定数据,得到第二通信报文;可选地,指定数据为车架号;
S304、向车联网设备返回第二通信报文,使车联网设备根据解密第二通信报文得到的指定数据确定配置结果。
其中,车联网设备可以为远程信息处理器(TelematicsBOX,TBox),TBox为带有通讯功能的模块,可以和后台***或手机APP等通信。
白盒模块在配置主密钥后,利用主密钥生成的通信密钥返回车联网设备,以供车联网设备判断配置效果,从而保证各电子控制单元配置的主密钥为一致,保证车内加密通信的正常进行。
在一种实施方式中,参见图4,在步骤S101利用主密钥生成的第一通信密钥前,图1所示的方法,还包括:
S401、将第一电子控制单元的运行环境签名输入第一白盒模块,运行环境签名包括第一电子控制单元识别码、产品序列号和车架号中的至少一项;
S402、控制第一白盒模块按照预设的加密方法,对运行环境签名进行加密,得到校验信息,如果校验信息和预存的目标运行环境的校验参考信息不一致,则确定第一白盒模块失效。如果校验信息和预存的目标运行环境的校验参考信息一致,则正常启动所述第一白盒模块。
在控制白盒模块运行前,白盒模块需要启动运行环境签名校验,避免恶意方获得了白盒,以及主密钥,可以通过自建运行环境,运行白盒,解密破解VMK的情况,提高了基于白盒通信的安全性。
本申请实施例具备下述特点:
1、白盒模块为各电子控制单元提供一致的通信数据加***接口。
2、电子控制单元上根密钥采用白盒模块保护,使其在生成、保存和使用时,都不会泄露根密钥信息。
3、电子控制单元上的主密钥,一车一密钥,可动态更新同步,并采用根密钥进行保护。
4、通信密钥,可由数据发送消息的电子控制单元周期性动态生成,并采用主密钥进行保护。
5、白盒模块采用电子控制单元信息签名进行合法运行环境检验,实现白盒模块运行权限保护。
本申请实施例具备有益效果:对电子控制单元没有安全芯片、硬件安全模块(Hardware Security Module,HSM)和TrustZone等特殊硬件要求;不采用SSL(SecureSocket Layer)/TLS(Transport Layer Security)协议,电子控制单元上无需依赖公钥基础设施(Public Key Infrastructure,PKI)和认证中心(Certificate Of Authority,CA)的证书部署,也无电子控制单元上CA私钥证书保护问题。本申请实施例可以应用于车内以太网加密通信方案,适配性好,部署灵活。
参见图5,本申请实施例提供一种基于白盒的通信方法,应用于第二电子控制单元,第二电子控制单元包括第二白盒模块,第二白盒模块中配置有目标车辆的主密钥,通信方法包括:
S501、接收第一通信报文;
S502、控制第二白盒模块根据第一通信报文,获取加密通信数据;
S503、至少利用主密钥生成的第一通信密钥,对加密通信数据进行解密,得到原始通信数据。
在一种实施方式中,图5所示的方法,还包括:控制第二白盒模块根据第一通信报文,获取第一初始码;
步骤S501至少利用主密钥生成第一通信密钥,包括:
(1)利用主密钥对第一初始码进行解密,得到第一随机数;
(2)利用第一初始码和第一随机数,得到第一通信密钥。
在一种实施方式中,第二白盒模块还配置有白盒根密钥,图5所示的方法,还包括:
(1)接收来自车联网设备的主密钥密文,其中,主密钥密文为车联网设备的白盒模块利用白盒根密钥对待配置主密钥进行加密所生成的;
(2)控制第二白盒模块利用白盒根密钥对主密钥密文进行解密,得到待配置主密钥,并根据待配置主密钥,配置第二白盒模块的主密钥。
在一种实施方式中,图5所示的方法,还包括:
(1)控制第二白盒模块利用主密钥和指定数据,得到第二通信报文;
(2)向车联网设备返回第二通信报文,使车联网设备根据解密第二通信报文得到的指定数据确定配置结果。
在一种实施方式中,在步骤S501接收第一通信报文前,图5所示的方法,还包括:
(1)将第一电子控制单元的运行环境签名输入第一白盒模块,运行环境签名包括第一电子控制单元识别码、产品序列号和车架号中的至少一项;
(2)控制第二白盒模块按照预设的加密方法,对运行环境签名进行加密,得到校验信息,如果校验信息和预存的目标运行环境的校验参考信息不一致,则确定第二白盒模块失效。
下述提供本申请实施例提供的基于白盒的通信方法的一具体示例。
一、参见表1,表1中示出电子控制单元内包括的密钥,包括:根密钥、车辆主密钥、通信密钥和初始码。上述密钥均设于电子控制单元的白盒模块内。
表1
二、参见图6,图6为本示例提供的通信密钥生成和加密通信的示例图。
(一)、作为发送方的第一电子控制单元执行下述步骤:
S601、生成随机数;
S602、使用车辆主密钥加密随机数获得初始码;
S603、根据初始码的哈希值、随机数的哈希值生成通信密钥;
S604、使用通信密钥加密通信数据,并在加密数据后填充初始码,得到通信报文;
S605、发送通信报文至第一电子控制单元。
其中,上述步骤S601~S604为作为发送方的第一电子控制单元通过调用白盒模块所实现的。
其中,通信密钥的更新策略为:每次启动后生成,每n次加密后更新。
(二)、作为接收方的第二电子控制单元执行下述步骤:
S606、从通信报文中获取初始码,计算通信密钥;
S607、使用通信密钥解密加密通信数据,获取原始通信数据。
其中,上述步骤S606~S607为作为接收方的第二电子控制单元通过调用白盒模块所实现。
(三)参见表2,表2列出通信报文包括的数据项以及数据项的数据长度。
表2
三、参见图7,图7为车辆主密钥更新同步的示例图。
(一)通过诊断工具(Diag Tools)下发车辆主密钥同步命令至车联网设备,诊断工具为用于为车辆进行主密钥同步的工具,具体过程包括:
S701、诊断工具发送安全认证请求至车联网设备。
S702、车联网设备根据安全认证请求,返回安全认证应答至诊断工具。
S703、诊断工具根据安全认证应答,返回主密钥同步指令至车联网设备。
(二)车联网设备根据主密钥同步指令生成主密钥,具体过程包括:
S704、车联网设备接收到主密钥同步指令时,生成第二随机数。
S705、车联网设备根据第二随机数和车架号(也称为车辆识别号码,VehicleIdentification Number,VIN)生成主密钥。例如,一个车辆配置一个车架号,电子控制单元和车联网设备已写入当前车辆的车架号。
S706、车联网设备利用根密钥对主密钥进行加密,得到主密钥密文。
S707、车联网设备将主密钥密文分发至车内各电子控制单元。
(三)各电子控制单元根据主密钥密文,完成主密钥配置,具体过程包括:
S708、各电子控制单元控制白盒模块利用根密钥解密主密钥密文,得到待配置的主密钥进行配置。
S709、各电子控制单元控制白盒模块利用主密钥生成通信密钥,以根据通信密钥对车架号进行加密,得到第二通信报文。可选地,生成通信密钥和第二通信报文的方式可以参考本示例中白盒模块的相关内容。第二通信报文中可以包括车架号的密文和生成通信密钥过程中产生的初始码。
S7010、各电子控制单元发送第二通信报文至车联网设备。
(四)由车联网设备基于第二通信报文确定同步结果,具体过程包括:
S7011、车联网设备根据各电子控制单元返回的第二通信报文,解密出各电子控制单元所返回的车架号。若一致,则判断主密钥同步成功;若不一致,则判断主密钥同步不成功。
S7012、车联网设备将主密钥同步结果发送诊断工具。
因车内加密通信是以各ECU的主密钥一致为前提,当主密钥不一致时,接收方将无法正常解密数据。所以主密钥更新应在安全可控的环境中,例如出厂前、车辆维修更换零部件时,采用诊断触发进行,并确认各ECU同步完成。
参见图8,图8为TBOX和车内各个ECU通信的示例图,各个ECU可以包括中央网关(Central gateway,CGW)和各域控制器。车联网设备连接中央网关,中央网关连接各域控制器。域控制器可以为信息域控制器(Information Domain Control Module,IDCM)、车身域控制器(Body Domain Control Module,BDCM)或自动驾驶域控制器(Auto-driving DomainControl Module,ADCM)等。域控制器可以连接相关的ECU,例如IDCM连接车辆传感器平台VSP。
四、本示例提供白盒模块的根密钥的生成方式,包括:采用编译工具编译白盒模块的过程中,使用随机数自动生成白盒根密钥。并且,编译生成白盒模块后,需由HHT安全运维人员监控确认过程和结果。之后,将编译好的白盒模块,集成到电子控制单元中。
其中,白盒的编译生成过程和运行过程,根密钥始终不可见,也无法读取。
上述根密钥生成方式,降低了根密钥生成过程被可知、可视和可读取的风险,避免了根密钥生成过程中被泄露或盗用。
五、本示例提供白盒模块启动时的检验过程,检验过程包括:白盒模块启动时,读取硬件环境签名后,判断是否与实际硬件环境的一致。如不一致,判断白盒模块失效,以保护白盒模块的运行权限。
其中,在白盒模块的硬件环境签名为将电子控制单元的芯片ID号、SN和VIN,加密后所存储的信息。
可选地,加密的方式为经PKI后台采用HHT私钥签名加密。
可选地,在白盒模块中存入硬件环境签名的过程应处于受HHT管控的安全可靠的环境中,例如限制在产线或车辆换件时。
六、综合上述示例,将车辆内电子控制单元和白盒模块的内容归纳如下:
(一)白盒模块,包括:
1、加密通信管理程序,其提供电子控制单元信息签名和写入,各电子控制单元间主密钥生成与同步;
2、加密通信库,其提供基于根密钥的加解密接口,基于主密钥的加解密接口,通信密钥生成,以及基于通信密钥的加解密接口;
(二)电子控制单元(ECU):通过运行加密管理程序,并调用加密通信库将通信数据加解密,从而实现各电子控制单元之间的网络加密通信。
(三)车内网络通信加密方法包括下列步骤:根密钥生成与白盒模块部署;电子控制单元上白盒软件模块合法运行环境检测;各电子控制单元之间主密钥生成与同步;电子控制单元间通信密钥生成与加密通信。
图9示出根据本申请一实施例的基于白盒的通信装置900的结构框图,该通信装置900应用于第一电子控制单元,第一电子控制单元包括第一白盒模块,第一白盒模块配置有目标车辆的主密钥,基于白盒的通信装置900包括:
加密通信数据生成模块901,用于控制第一白盒模块利用主密钥生成的第一通信密钥,对原始通信数据进行加密,得到加密通信数据;
第一通信报文生成模块902,用于利用加密通信数据,生成第一通信报文;
第一通信报文发送模块903,用于将第一通信报文发送至第二电子控制单元。
在一种实施方式中,加密通信数据生成模块901,包括:
第一随机数生成子模块,用于生成第一随机数;
第一初始码生成子模块,用于利用主密钥对第一随机数进行加密,得到第一初始码;
第一通信密钥第一生成子模块,用于利用第一随机数和第一初始码,生成第一通信密钥;
第一通信报文生成模块902用于利用加密通信数据和第一初始码,生成第一通信报文。
在一种实施方式中,第一通信密钥第一生成子模块用于利用第一随机数的哈希值和第一初始码的哈希值,生成第一通信密钥。
在一种实施方式中,第一白盒模块还配置有白盒根密钥,装置还包括:
第一主密钥密文接收模块,用于接收来自车联网设备的主密钥密文,其中,主密钥密文为车联网设备的白盒模块利用白盒根密钥对待配置主密钥进行加密所生成的;
第一主密钥配置模块,用于控制第一白盒模块利用白盒根密钥对主密钥密文进行解密,得到待配置主密钥,并根据待配置主密钥,配置第一白盒的主密钥。
在一种实施方式中,该通信装置900还包括:
第二通信报文生成模块,用于控制第一白盒模块利用主密钥和指定数据,得到第二通信报文;
第二通信报文返回模块,用于向车联网设备返回第二通信报文,使车联网设备根据解密第二通信报文得到的指定数据确定配置结果。
在一种实施方式中,该通信装置900还包括:
运行环境签名输入模块,用于将第一电子控制单元的运行环境签名输入第一白盒模块,运行环境签名包括第一电子控制单元识别码、产品序列号和车架号中的至少一项;
校验模块,用于控制第一白盒模块按照预设的加密方法,对运行环境签名进行加密,得到校验信息,如果校验信息和预存的目标运行环境的校验参考信息不一致,则确定第一白盒模块失效。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
图10示出根据本申请一实施例的基于白盒的通信装置1000的结构框图。该通信装置1000应用于第二电子控制单元,第二电子控制单元包括第二白盒模块,第二白盒模块中配置有目标车辆的主密钥,如图10所示,该通信装置1000可以包括:
第一通信报文接收模块1001,用于接收第一通信报文;
加密通信数据获取模块1002,用于控制第二白盒模块根据第一通信报文,获取加密通信数据;
原始通信数据获取模块1003,用于利用主密钥生成的第一通信密钥,对加密通信数据进行解密,得到原始通信数据。
在一种实施方式中,该通信装置1000还包括:
第一初始码获取模块,用于控制第二白盒模块根据第一通信报文,获取第一初始码;
加密通信数据获取模块1003,包括:
第一随机数生成子模块,用于利用主密钥对第一初始码进行解密,得到第一随机数;
第一通信密钥第二生成子模块,用于利用第一初始码和第一随机数,得到第一通信密钥。
在一种实施方式中,第二白盒模块还配置有白盒根密钥,该通信装置1000还包括:
第二主密钥密文接收模块,用于接收来自车联网设备的主密钥密文,其中,主密钥密文为车联网设备的白盒模块利用白盒根密钥对待配置主密钥进行加密所生成的;
第二主密钥配置模块,用于控制第二白盒模块利用白盒根密钥对主密钥密文进行解密,得到待配置主密钥,并根据待配置主密钥,配置第二白盒模块的主密钥。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
图11示出根据本申请一实施例的电子设备的结构框图。如图11所示,该电子设备包括:存储器1110和处理器1120,存储器1110内存储有可在处理器1120上运行的指令。处理器1120执行该指令时实现上述实施例中的基于白盒的通信方法。存储器1110和处理器1120的数量可以为一个或多个。该电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
该电子设备还可以包括通信接口1130,用于与外界设备进行通信,进行数据交互传输。各个设备利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器1120可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器***)。该总线可以分为地址总线、数据总线、控制总线等。
可选的,在具体实现上,如果存储器1110、处理器1120及通信接口1130集成在一块芯片上,则存储器1110、处理器1120及通信接口1130可以通过内部接口完成相互间的通信。
应理解的是,上述处理器可以是中央处理器(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced RISC machines,ARM)架构的处理器。
本申请实施例提供了一种计算机可读存储介质(如上述的存储器1110),其存储有计算机指令,该程序被处理器执行时实现本申请实施例中提供的方法。
可选的,存储器1110可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储根据基于白盒的通信方法的电子设备的使用所创建的数据等。此外,存储器1110可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器1110可选包括相对于处理器1120远程设置的存储器,这些远程存储器可以通过网络连接至基于白盒的通信方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本申请的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或多个(两个或两个以上)用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。
应理解的是,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (16)
1.一种基于白盒的通信方法,其特征在于,应用于第一电子控制单元,所述第一电子控制单元包括第一白盒模块,所述第一白盒模块配置有目标车辆的主密钥,所述方法包括:
控制所述第一白盒模块利用所述主密钥生成的第一通信密钥,对原始通信数据进行加密,得到加密通信数据;
利用所述加密通信数据,生成第一通信报文;
将所述第一通信报文发送至第二电子控制单元;
其中,所述利用所述主密钥生成第一通信密钥,包括:
生成第一随机数;
利用所述主密钥对所述第一随机数进行加密,得到第一初始码;
利用所述第一随机数和所述第一初始码,生成第一通信密钥;
所述利用所述加密通信数据,生成第一通信报文,包括:利用所述加密通信数据和所述第一初始码,生成第一通信报文。
2.根据权利要求1所述的方法,其特征在于,所述利用所述第一随机数和所述第一初始码,生成第一通信密钥,包括:
利用所述第一随机数的哈希值和所述第一初始码的哈希值,生成第一通信密钥。
3.根据权利要求1所述的方法,其特征在于,所述第一白盒模块还配置有白盒根密钥,所述方法还包括:
接收来自车联网设备的主密钥密文,其中,所述主密钥密文为所述车联网设备的白盒模块利用白盒根密钥对待配置主密钥进行加密所生成的;
控制所述第一白盒模块利用所述白盒根密钥对所述主密钥密文进行解密,得到所述待配置主密钥,并根据所述待配置主密钥,配置所述第一白盒的主密钥。
4.根据权利要求3所述的方法,其特征在于,还包括:
控制所述第一白盒模块利用所述主密钥和指定数据,得到第二通信报文;
向所述车联网设备返回所述第二通信报文,使所述车联网设备根据解密所述第二通信报文得到的所述指定数据确定配置结果。
5.根据权利要求1所述的方法,其特征在于,在利用所述主密钥生成的第一通信密钥前,所述方法还包括:
将所述第一电子控制单元的运行环境签名输入所述第一白盒模块,所述运行环境签名包括第一电子控制单元识别码、产品序列号和车架号中的至少一项;
控制所述第一白盒模块按照预设的加密方法,对所述运行环境签名进行加密,得到校验信息,如果所述校验信息和预存的目标运行环境的校验参考信息不一致,则确定所述第一白盒模块失效。
6.一种基于白盒的通信方法,其特征在于,应用于第二电子控制单元,所述第二电子控制单元包括第二白盒模块,所述第二白盒模块中配置有目标车辆的主密钥,所述通信方法包括:
接收第一通信报文;
控制所述第二白盒模块根据所述第一通信报文,获取加密通信数据;
至少利用所述主密钥生成的第一通信密钥,对所述加密通信数据进行解密,得到原始通信数据;
还包括:控制所述第二白盒模块根据所述第一通信报文,获取第一初始码;
所述至少利用所述主密钥生成第一通信密钥,包括:
利用所述主密钥对所述第一初始码进行解密,得到第一随机数;
利用所述第一初始码和所述第一随机数,得到所述第一通信密钥。
7.根据权利要求6所述的方法,其特征在于,所述第二白盒模块还配置有白盒根密钥,所述方法还包括:
接收来自车联网设备的主密钥密文,其中,所述主密钥密文为所述车联网设备的白盒模块利用白盒根密钥对待配置主密钥进行加密所生成的;
控制所述第二白盒模块利用所述白盒根密钥对所述主密钥密文进行解密,得到所述待配置主密钥,并根据所述待配置主密钥,配置所述第二白盒模块的主密钥。
8.一种基于白盒的通信装置,其特征在于,应用于第一电子控制单元,所述第一电子控制单元包括第一白盒模块,所述第一白盒模块配置有目标车辆的主密钥,所述装置包括:
加密通信数据生成模块,用于控制所述第一白盒模块利用所述主密钥生成的第一通信密钥,对原始通信数据进行加密,得到加密通信数据;
第一通信报文生成模块,用于利用所述加密通信数据,生成第一通信报文;
第一通信报文发送模块,用于将所述第一通信报文发送至第二电子控制单元;
其中,所述加密通信数据生成模块,包括:
第一随机数生成子模块,用于生成第一随机数;
第一初始码生成子模块,用于利用所述主密钥对所述第一随机数进行加密,得到第一初始码;
第一通信密钥第一生成子模块,用于利用所述第一随机数和所述第一初始码,生成第一通信密钥;
所述第一通信报文生成模块用于利用所述加密通信数据和所述第一初始码,生成第一通信报文。
9.根据权利要求8所述的装置,其特征在于,所述第一通信密钥第一生成子模块用于利用所述第一随机数的哈希值和所述第一初始码的哈希值,生成第一通信密钥。
10.根据权利要求8所述的装置,其特征在于,所述第一白盒模块还配置有白盒根密钥,所述装置还包括:
第一主密钥密文接收模块,用于接收来自车联网设备的主密钥密文,其中,所述主密钥密文为所述车联网设备的白盒模块利用白盒根密钥对待配置主密钥进行加密所生成的;
第一主密钥配置模块,用于控制所述第一白盒模块利用所述白盒根密钥对所述主密钥密文进行解密,得到所述待配置主密钥,并根据所述待配置主密钥,配置所述第一白盒的主密钥。
11.根据权利要求10所述的装置,其特征在于,还包括:
第二通信报文生成模块,用于控制所述第一白盒模块利用所述主密钥和指定数据,得到第二通信报文;
第二通信报文返回模块,用于向所述车联网设备返回所述第二通信报文,使所述车联网设备根据解密所述第二通信报文得到的所述指定数据确定配置结果。
12.根据权利要求8所述的装置,其特征在于,还包括:
运行环境签名输入模块,用于将所述第一电子控制单元的运行环境签名输入所述第一白盒模块,所述运行环境签名包括第一电子控制单元识别码、产品序列号和车架号中的至少一项;
校验模块,用于控制所述第一白盒模块按照预设的加密方法,对所述运行环境签名进行加密,得到校验信息,如果所述校验信息和预存的目标运行环境的校验参考信息不一致,则确定所述第一白盒模块失效。
13.一种基于白盒的通信装置,其特征在于,应用于第二电子控制单元,所述第二电子控制单元包括第二白盒模块,所述第二白盒模块中配置有目标车辆的主密钥,所述通信装置包括:
第一通信报文接收模块,用于接收第一通信报文;
加密通信数据获取模块,用于控制所述第二白盒模块根据所述第一通信报文,获取加密通信数据;
原始通信数据获取模块,用于利用所述主密钥生成的第一通信密钥,对所述加密通信数据进行解密,得到原始通信数据;
还包括:
第一初始码获取模块,用于控制所述第二白盒模块根据所述第一通信报文,获取第一初始码;
所述加密通信数据获取模块,包括:
第一随机数获取子模块,用于利用所述主密钥对所述第一初始码进行解密,得到第一随机数;
第一通信密钥第二生成子模块,用于利用所述第一初始码和所述第一随机数,得到所述第一通信密钥。
14.根据权利要求13所述的装置,其特征在于,所述第二白盒模块还配置有白盒根密钥,所述装置还包括:
第二主密钥密文接收模块,用于接收来自车联网设备的主密钥密文,其中,所述主密钥密文为所述车联网设备的白盒模块利用白盒根密钥对待配置主密钥进行加密所生成的;
第二主密钥配置模块,用于控制所述第二白盒模块利用所述白盒根密钥对所述主密钥密文进行解密,得到所述待配置主密钥,并根据所述待配置主密钥,配置所述第二白盒模块的主密钥。
15.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
16.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010774257.8A CN111901109B (zh) | 2020-08-04 | 2020-08-04 | 基于白盒的通信方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010774257.8A CN111901109B (zh) | 2020-08-04 | 2020-08-04 | 基于白盒的通信方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111901109A CN111901109A (zh) | 2020-11-06 |
CN111901109B true CN111901109B (zh) | 2022-10-04 |
Family
ID=73245568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010774257.8A Active CN111901109B (zh) | 2020-08-04 | 2020-08-04 | 基于白盒的通信方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111901109B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259933B (zh) * | 2021-06-15 | 2023-08-29 | 北京天融信网络安全技术有限公司 | 一种密钥更新的方法、网关、控制装置、电子设备及介质 |
CN116506120B (zh) * | 2023-06-25 | 2023-09-29 | 鼎铉商用密码测评技术(深圳)有限公司 | 密钥加载方法、密钥***以及可读存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6353537B2 (ja) * | 2013-12-02 | 2018-07-04 | マスターカード インターナショナル インコーポレーテッド | セキュアエレメントを用いずにユーザおよび移動装置のセキュアな認証を実行するための方法およびシステム |
KR20150074414A (ko) * | 2013-12-24 | 2015-07-02 | 현대자동차주식회사 | 펌웨어 업그레이드 방법 및 그 시스템 |
CN108243181A (zh) * | 2017-10-09 | 2018-07-03 | 北京车和家信息技术有限公司 | 一种车联网终端、数据加密方法及车联网服务器 |
CN108123794A (zh) * | 2017-12-20 | 2018-06-05 | 上海众人网络安全技术有限公司 | 白盒密钥的生成方法和加密方法、装置及*** |
CN108183796A (zh) * | 2017-12-29 | 2018-06-19 | 北京梆梆安全科技有限公司 | 利用白盒库文件和白盒密钥文件进行加解密的方法及装置 |
CN108989024B (zh) * | 2018-06-29 | 2023-04-14 | 百度在线网络技术(北京)有限公司 | 控制ecu间通信的方法、装置、设备以及相应车辆 |
-
2020
- 2020-08-04 CN CN202010774257.8A patent/CN111901109B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111901109A (zh) | 2020-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11212087B2 (en) | Management system, key generation device, in-vehicle computer, management method, and computer program | |
CN110460439A (zh) | 信息传输方法、装置、客户端、服务端及存储介质 | |
WO2021120871A1 (zh) | 认证密钥协商方法、装置、存储介质及设备 | |
US20180227120A1 (en) | Management device, management system, key generation device, key generation system, key management system, vehicle, management method, key generation method, and computer program | |
CN112913189B (zh) | 一种ota升级方法及装置 | |
US11424933B2 (en) | Method and apparatus for exchanging messages | |
CN111901109B (zh) | 基于白盒的通信方法、装置、设备和存储介质 | |
US10581811B2 (en) | Method and system for asymmetric key derivation | |
US20230229775A1 (en) | Firmware data verification device and method, and firmware updating device, method and system | |
CN113438205B (zh) | 区块链数据访问控制方法、节点以及*** | |
CN114297114B (zh) | 加密卡及其数据交互方法、装置及计算机可读存储介质 | |
CN114338091B (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN108848094B (zh) | 数据安全验证方法、装置、***、计算机设备及存储介质 | |
CN115314284B (zh) | 一种基于可信执行环境的公钥认证可搜索加密方法及*** | |
WO2020030536A1 (en) | Method of managing private cryptographic keys | |
CN109450899A (zh) | 密钥管理方法及装置、电子设备、存储介质 | |
CN112055071B (zh) | 一种基于5g的工业控制安全通信***及方法 | |
CN113783879A (zh) | 载具控制方法、***、载具、设备及介质 | |
EP3800825A1 (en) | Method and device for configuring alias credential | |
CN109361511A (zh) | 数据传输方法、网络设备及计算机存储介质 | |
EP4221072A1 (en) | System and method for flexible post-quantum trust provisioning and updating | |
CN114900292B (zh) | 一种预计算***、预计算数据处理方法及装置 | |
CN116132134A (zh) | 一种数据传输方法、装置、电子设备及存储介质 | |
CN116167060A (zh) | 可信只读存储器***及可信基板管理控制器*** | |
JP2017108212A (ja) | 鍵生成方法、鍵生成システム、及びコンピュータプログラム |
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 |