An effective intrusion-resilient mechanism for PLCs against data tampering attacks

本文介绍了一种利用PLC可编程特性的数据保护方法,结合数据认证与恢复机制,通过RFunc函数集和LCG随机数生成器确保数据安全。文章详细阐述了基于伪随机数的消息摘要算法和RC5加密的数据恢复策略。作者在多平台测试并验证了此方法的有效性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、摘要及引言

本文中,作者利用PLC的可编程特性,提出了一种保护PLC抵御数据篡改攻击的方法。该方法主要有两部分组成——数据认证机制和数据恢复机制。数据认证机制能够实时检测数据篡改攻击,数据恢复机制可以在短时间内将PLC从异常状态恢复到正常状态。

由于PLC资源有限,传统的数据认证算法无法使用PLC指令实现,因此作者提出了一种新的数据认证算法。该算法以要传输的数据和伪随机数为输入,生成消息摘要。当接收方收到数据后,会重新计算消息摘要,通过与收到的摘要作比较,接收方可以判断数据是否被篡改。如果不一样,说明数据被篡改,此时接收方会要求发送方使用RC5加密并重传数据,由于数据加密传输,因此无法被篡改。接收方收到加密数据后,解密并更新PLC状态,使PLC恢复正常。为了减小开销,只有在检测到篡改攻击后,才会加密要重传的数据。

二、数据认证

数据认证算法的关键之处在于数学函数集合RFunc以及线性同余法生成器LCG。

RFunc:使用PLC内置指令构建的函数的集合,如布尔运算、加减乘除、异或、绝对值等函数。

LCG:使用线性同余法生成随机数,公式如下:

摘要生成算法如下:

三、数据恢复

数据恢复是通过加密重传数据包来实现的,使用的加密算法为RC5。数据恢复算法如下:

四、测试

作者在来自不同厂商的19个PLC平台上实现并测试了本文提出的方法。此外,作者在天然气管道实验台上测试了方法的有效性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值