【技术实现步骤摘要】
一种Modbus TCP协议的安全加固方法
[0001]本专利技术属于工业控制系统通信协议安全领域,具体是涉及一种Modbus TCP 协议的安全加固方法。
技术介绍
[0002]工业控制系统是包括监控和数据采集系统、分布控制系统等多种类型控制系统的总称,由多个自动化控制组件以及对实时数据进行采集和监控的过程控制组件共同组成。工业控制系统广泛应用于电力、石油石化、核能、航空、铁路等多个行业中,是维持国家关键基础设施稳定运行的重要部分。
[0003]早期的工业控制系统有其专用的软硬件,独立运行,与外界设备隔离,相对封闭,设计系统架构时主要考虑其实用性和稳定性,未考虑其安全性。
[0004]Modbus协议由Modicon公司于1979年发表,因其公开发表、结构简单、易于开发等特性,成为工业控制系统中最常用的通信协议。Modbus协议是一项应用层报文传输协议,包括ASCII、RTU、TCP三种报文类型,通讯端口是502 号端口。其中,Modbus TCP协议基于以太网接口,采用主从站通信方式进行面向连接的可靠通信 ...
【技术保护点】
【技术特征摘要】 【专利技术属性】
1.一种Modbus TCP协议的安全加固方法,其特征在于,包括如下步骤:S1:Modbus TCP客户端和服务器进行密钥协商,客户端和服务器分别生成公钥和私钥K
cpub
、K
cpri
、K
spub
、K
spri
,并交换公钥。客户端生成对称密钥key,加密后发送给服务器,以便实现对数据包的加/解密。S2:通过实时获取Modbus TCP客户端中的时钟信息得到时间戳信息TS
ci
,在客户端发出的请求信息M
req
前添加该字段,形成带时间戳的请求信息TS
ci
|M
req
。其中c表示客户端client,i表示客户端和服务器之间的第i次通信,i的取值为正整数。S3:使用哈希算法对S2中生成的带时间戳的请求信息TS
ci
|M
req
进行计算,生成特定长度的摘要信息Digest
ci
=(TS
ci
|M
req
)
hash
。S4:使用客户端私钥K
cpri
加密摘要信息,生成签名[Digest
ci
]
Kcpri
,将生成的签名字段添加在带时间戳的请求信息后,形成带时间戳和数字签名的请求信息M
ci
=TS
ci
|M
req
|[Digest
ci
]
Kcpri
。S5:使用对称密钥key加密带时间戳和数字签名的请求信息,形成完整的Modbus TCP请求信息M
reqfinal
={M
ci
}
key
,将请求信息发送给服务器。S6:服务器接受到请求消息后,用对称密钥key将请求信息解密为TS
ci
|M
req
|[Digest
ci
]
Kcpri
。S7:将[Digest
ci
]
Kcpri
用客户端公钥K
cpub
进行解密,还原带时间戳请求消息的摘要信息Digest
ci
=(TS
ci
|M
req
)
hash
。S8:利用请求消息中前半部分带时间戳的请求数据TS
ci
|M
req
通过哈希算法进行计算,计算出摘要信息Digest
si
=(TS
ci
|M
req
)
hash
,并将Digest
ci
与还原的Digest
si
进行比较,若相同则进行步骤9,不相同则丢弃数据包,并向客户端返回错误信息。S9:将请求数据包中的时间戳信息TS
ci
与当前系统时钟信息相比,若时间间隔小于一定的消息传输时间间隔阈值,则进行步骤10;否则,说明该数据包可能受到攻击,丢弃数据包,并向客户端返回错误信息。S10:依次检测请求消息M
req
技术研发人员:江钰杰,汪京培,汪慕峰,赵成成,车欣,程鹏,陈积明,
申请(专利权)人:浙江大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。