LonTalk-SA协议认证方法技术

技术编号:35818668 阅读:24 留言:0更新日期:2022-12-03 13:43
LonTalk

【技术实现步骤摘要】
LonTalk

SA协议认证方法


[0001]本专利技术涉及楼宇自动化通信协议设备认证和数据保密安全


技术介绍

[0002]楼宇自动化系统是智能建筑中的关键部分,主要对智能建筑中的所有机电设施和能源设备实现高度 自动化和智能化的集中管理。互联网与传统总线的结合,提高了传统总线效率,但同时也将互联网中存在 的安全问题引入到楼宇自动化系统中,例如攻击者能够很容易的对工控系统中传输的数据进行篡改、重放、 窃听等攻击。
[0003]LonTalk是一种针对控制网络进行优化的协议。最初由Echelon公司开发,通过双绞线、电力线、光 纤等媒介连接设备,此协议广泛应用于工业控制、家庭自动化、楼宇系统(如照明和暖通空调)。该协议 现已被ISO/IEC 14908采用为开放的国际控制网络标准协议,规定了针对智能电网、智能建筑和智能城市 等场景的多功能控制网络协议栈。
[0004]随着技术的发展,现在越来越多的文章指出楼宇自动化系统中的LonTalk认证协议存在漏洞。文献 [J.Ng,S.L.Keoh,Z.Tang,and H.Ko,SEABASS:Symmetric

keychain encryption and authentication forbuilding automation systems,in 2018IEEE 4th World Forum on Internet of Things(WF

IoT),2018,219
‑<br/>224]和 文献[P.Jovanovic and S.Neves,Dumb crypto in smart grids:Practical cryptanalysis of the open smart gridprotocol,IACR Cryptology ePrint Archive,VOL.2015,2015,428]指出LonTalk认证协议存在以下几点安全 缺陷:(1)所使用的身份认证协议只支持验证发送方的身份,无法检查接收方的身份。并且只能由发送 端发起挑战

应答请求,而接收端不可以,协议只能进行单向认证。(2)设备之间用于身份认证的密钥只 有48位,无法避免暴力破解攻击。(3)只有部分数据段被用作哈希计算,地址信息和其他头部信息都不 受保护。(4)数据是以明文传送的,所以可能会导致机密数据的泄漏。(5)因为发送方要一直与接收端 进行身份认证,所以无法建立通信会话。
[0005]文献[X.Yan and W.Bo,A Security Extension to LonWorks/LonTalk Protocol,International Journal ofDigital Content Technology and its Applications,VOL.7,NO.6,2013,790

780]提出一种新的LonSec协议, 此协议使用SHA

1和AES加密方式对数据进行加密操作,从而可以保证数据的保密性和完整性,并且此 协议使用改进后的Needham

Schroeder协议提供密钥分发机制。但是目前已有相关研究证实可以非暴力破 解SHA

1算法,并且发送端设备没有对第三方服务器进行身份认证,无法保证反馈消息的真实性。其次, 消息传输的过程没有加入时间戳机制,无法保证协议可以避免受到重放攻击。

技术实现思路

[0006]本专利技术的目的是提供一种LonTalk

SA协议认证方法。
[0007]本专利技术是LonTalk

SA协议认证方法,其步骤为:
步骤(1)当A与B进行身份认证的时候,A生成随机数X和N
A
,A将两个随机数和A、B的身份ID用主密钥加 密,将ID
A
与加密后的数据包一起发送给服务器;步骤(2)当Server收到来自A的消息,用主密钥K
AS
进行解密;解密后,Server使用K
BS
加密A发来的两个 随机数,并且加入时间戳TS1;将N
A
和发送给B的加密数据包组合起来用主密钥K
AS
加密发送给A;步骤(3)A收到Server返回的信息后,用主密钥K
AS
解密后发现N
A
没有发生变化,确定没有发生篡改攻击; 然后A将Server给B发送的数据包、ID
A
和ID
B
组合在一起发送给B;步骤(4)B收到消息后,用主密钥K
BS
进行解密,得到A生成的两个随机数和时间戳TS1,通过时间戳查看 是否遭到重放攻击;此时,B也生成两个随机数Y和N
B
;B将ID
A
、ID
B
、Y、N
B
和N
A
组合在一起,用主密钥 K
BS
加密,最后将ID
B
和加密的数据包一起发送给Server;步骤(5)Server收到来自B的消息,用密钥K
BS
进行解密。Server用密钥K
AS
对Y、N
B
、N
A
组合在一起的消 息进行加密,并且加入时间戳TS2;最后用K
BS
将N
B
和给A发送的加密消息加密后发送给B;步骤(6)B收到Server的消息后,用K
BS
进行解密,查看N
B
是否被篡改;然后B将剩余数据发送给A;步骤(7)A收到来自B的消息后,用主密钥K
AS
进行解密,获得随机数Y和时间戳TS2,查看时间戳是否超出 预设的时间范围;将Y与X进行异或操作,生成会话密钥K;A将N
A
、N
B
进行哈希操作;将N
A
、N
B
、哈希值 组合在一起,用会话密钥K进行加密发送给B;步骤(8)B同样使用X与Y进行异或操作生成会话密钥K;B使用会话密钥K对消息进行解密,并且重新计算N
A
、 N
B
的哈希值,与A发送消息的哈希值进行对比,如果哈希值相同则说明B对A的认证成功;并且B计算N
B
、N
A
的哈希值,用会话密钥K对N
B
、N
A
、哈希值进行加密发送给A;步骤(9)A收到消息后,用会话密钥K进行解密,并且计算N
B
,N
A
的哈希值,与B发来的哈希值进行对比, 如果相同,则说明A对B的认证成功。
[0008]本专利技术的有益之处在于:(1)抗恶意指令:该类攻击是指攻击者向节点发送恶意数据包,使恶意指令破坏系统。但是,在 LonTalk

SA认证协议中攻击者无法获取本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.LonTalk

SA协议认证方法,其特征在于,其步骤为:步骤(1)当A与B进行身份认证的时候,A生成随机数X和N
A
,A将两个随机数和A、B的身份ID用主密钥加密,将ID
A
与加密后的数据包一起发送给服务器;步骤(2)当Server收到来自A的消息,用主密钥K
AS
进行解密;解密后,Server使用K
BS
加密A发来的两个随机数,并且加入时间戳TS1;将N
A
和发送给B的加密数据包组合起来用主密钥K
AS
加密发送给A;步骤(3)A收到Server返回的信息后,用主密钥K
AS
解密后发现N
A
没有发生变化,确定没有发生篡改攻击;然后A将Server给B发送的数据包、ID
A
和ID
B
组合在一起发送给B;步骤(4)B收到消息后,用主密钥K
BS
进行解密,得到A生成的两个随机数和时间戳TS1,通过时间戳查看是否遭到重放攻击;此时,B也生成两个随机数r和N
B
;B将ID
A
、ID
B
、Y、N
B
和N
A
组合在一起,用主密钥K
BS
加密,最后将ID
B
和加密的数据包一起发送给Server;步骤(5)Server收到来自B的消息,用密钥K
BS
...

【专利技术属性】
技术研发人员:冯涛吴毅方君丽蒋泳波谢鹏寿
申请(专利权)人:兰州理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1