原创不易,请勿抄袭。
前段时间无意写的一篇文章,关于S7-200的PLC解密的,没想到写完后引起了大家的争议,很多人说这是工控人的保护自己的最后一道手段。
对于中国的混乱市场,我已无力吐槽。
各有各的难处吧,我不赞同加密的原因只是因为我曾经深受其害,付完尾款后乙方像收保护费一样每年过来收一笔钱,出现故障也只能等待乙方处理,乙方心情好了1天到达现场,心情不好3天也是他们,耽误的生产时间造成的问题可不仅仅是维修设备这一点点钱,尤其是大型企业那环环相扣的工艺要求,一个环节断了造成的影响可能是一整个系统的停机,这更侧面反映着维修人员的水平,甲方的痛楚可比那微不足道的尾款大多了,甚至乙方能逼得甲方把设备扔了重新调试一套新的设备,你信吗?
很多人问我博途怎么加密与解密?本来我不想写这篇文章,但技术是无罪的。

好吧!其实自西门子S7-300的安全PLC起,西门子的PLC已经无法解密了,至少目前为止我不知道有什么办法能将本文的加密方法解开:如果有的话,可能是硬解吧,即是用计算机通过写字典的方式多次尝试密码,直到找到密码为止。如果有高手知道其他办法的话,请告诉我,也让我学习一下,谢谢。
我们看一下西门子的程序块的专有技术保护(Know-How-Protect)
这是博途软件专有的,是软硬件结合的一种加密方式,从这种方式上可以看出西门子对于版权的保护下了大功夫;程序块的Know-How-Protect主要是保护电脑中存储的S7-1200项目文件内容,保护作者的知识产权。没有Know-How-Protect密码的人员无法看到被保护程序块的具体内容。
您可以对自己编写的OB、FB、FC进行技术保护,具体步骤如下:

·a、在项目树中选中您要保护的程序块



如果您希望禁止保护功能,在图8中输入密码即可;如果您希望更新密码,则在下列窗口中输入新密码:

程序块的复制保护功能
所谓复制保护就是可以绑定CPU或存储卡的序列号,程序只能下载到所绑定的CPU或存储卡中。OB,FB,FC,DB均可以使用复制保护功能。
注意:只有TIAProtalv11或更高版本支持该功能。
具体步骤如下:
1.选中需要复制保护的块,鼠标右键,在弹出窗口中选择“属性”(见图6)

2.弹出“属性”对话框:选择“保护”,定义“复制保护“功能(见图7)

3.“复制保护”功能有三个选项供选择:未绑定;绑定存储卡序列号;绑定CPU序列号;默认选择为“未绑定”(见图8)

4.选择“下载到设备或存储卡时插入序列号”或者选择“输入序列号”:(见图9)

·a、在下载到设备或存储卡时,插入序列号:选择此选项时,无需手动输入序列号,下载到CPU后,系统会自动读取需要绑定的CPU的序列号或存储卡的序列号。
o对于及以前固件版本,如果没有源程序,而是用上载的程序再下载到其他同型号的CPU或卡中,就会出现不能复制的提示,CPU也会停机(见图10)。此时复制保护功能才起到真正的保护的作用。如果有源程序,还是可以对不同的卡或不同的CPU下载程序的,复制保护功能就失去了意义。

o对于固件版本,在原先动态绑定功能基础上添加了额外的防拷贝密码保护,随后下载带有动态绑定的块时,必须输入可用于下载块的密码(即使有源程序)。此功能用于方便授权人员在防拷贝保护下的大量下载,如图11所示。注意:STEP7V13SP1或以上版本支持此功能。

·b、请输入序列号:选择此选项时,需要手动输入需要绑定的序列号。如果手动输入序列号并下载到CPU中,即使有源程序,只要更换CPU或存储卡,与绑定的序列号不一致,都无法正常下载,报“违反存储卡(或违反CPU)绑定”,下载过程被终止,CPU停机。
注意:如果“复制保护”功能与“专有技术功能”同时使用,需要先设置复制保护功能,再定义专有技术保护。否则”复制保护”功能将变为灰色将无法设置(见图12)

复制保护功能是否可以被取消?
·如果没有使用“专有技术保护”功能,只使用“复制保护”功能,上载后的程序可以选择“未绑定”后重新下载,取消复制保护功能。
·如果选择了“专有技术保护”,复制保护功能将无法从上载的程序中取消。除非有源程序并且知道专有技术保护密码。
你是怎么看待PLC的加密解密的?
喜欢的话请点赞并分享,您的支持是我坚持下去的动力!送人玫瑰,手有余香!