预约试听:15323438773
  


技术分享

News

大神通常如何对PLC程序进行加密和解密?

日期: 2020-11-19
浏览次数: 38
大神通常如何对PLC程序进行加密和解密?

  众所周知,很多品牌的PLC程序都是可以用软件解密的,所以一旦解密,程序在别人眼里就非常透明的显示出来,把设备卖给别人,把PLC程序作为一个整体锁起来是不切实际的,这样甲方就无法维护;保密和维权是中国市场经久不衰的话题。其实德国工程师从来不把自己的程序作为一个整体加密,而是使用其他方法,在出现故障时不会影响诊断,还能保护自己的核心机密。今天,我将向您介绍这些方法,供您参考。

  使用西门子安全可编程控制器或薄涂1的专有技术功能

  西门子安全PLC是西门子主要安全功能的产物,性能毋庸置疑,安全PLC的程序块加密后无法破解;可以很好的保护核心。作为西门子的最新产品,薄涂公司的版权保护也是其主要功能之一。KNOWHOW功能是软件和硬件的双重加密。未加密的块可以正常监控,没有密码甚至无法下载到其他PLCs因此,使用薄涂的专有技术功能不仅可以将程序移交给甲方方便维护,还可以保护其核心程序不被窃取。

  用高级语言二写一些重要的流程程序

  除了最基础的LAD梯形图编程、FBD功能块编程、STL语句表编程,西门子还有很多其他的方式,比如PCS7的CFC、sfc还有SCL,S7-GRAPH等等。对于这些语言,一般工控人员很难全部掌握,所以模仿难度大大提高。因此,非常关键的过程程序可以用这些语言编写,它们的核心可以得到很好的保护。

  (1)采用编程方法

  a)使用模块化程序结构,使用符号名和参数化编写子程序块;b)尽量采用后台数据块和多后台数据传输方式;

  c)经常使用间接寻址编程;

  d)对于复杂系统的控制程序,特别是一些带有顺序控制或配方控制的程序,可以考虑数据编程,即通过数据的变化来改变系统的控制逻辑或控制顺序。

  用户应尽量采用上述先进的编程方法,使系统保护加密程序嵌入到已编程的程序中,不易被发现和复制。

  (2)主动保护方法

  a)使用系统的时钟;

  b)使用程序卡或CPU的ID号和序列号;

  c)使用EEPROM的反写功能和一些需要设置的内存保持功能;

  d)使用系统提供的定时器功能;

  e)在用户程序的数据块中设置密码;

  f)在软件上设置逻辑陷阱;g)可以把编程时犯的错误改过来。

  (3)被动保护方法

  a)在内存容量利用权限的情况下,不要删除被认为无用的程序;

  b)把开发者的logo留在数据块里,以便日后侵权时可以取证。

  (4)应用防盗技术的注意事项

  a)在用户程序中嵌入保护程序要自然,不要突然添加一个程序,尽量简化代码,变量的符号名要与程序段中嵌入的变量一致;

  b)往往一种保护加密方式是不够的,要多种方式一起使用。这些保护程序一旦被激活,对系统造成的后果应该尽可能不同,产生所谓的“地雷效应”,从而增加窃取程序的难度、时间和成本,让抄袭者在短时间内束手无策;

  c)保护程序的原始代码。如果程序需要交付,交付的程序应经过适当的技术处理,不影响用户对设备的维护,如删除一些符号名,采用上传的程序或数据块;

  d)做严格测试,避免保护程序不完善导致误操作带来不必要的麻烦,同时降低售后服务成本。

  使用通信功能3

  在实际应用中,经常会出现一些需要系统之间(多个PLC之间、PLC与第三方仪表之间)进行数据交换的问题。无论是西门子产品之间,还是西门子产品与第三方产品之间,都建议使用通信方案,而不是模拟或开关量之间的信号互联方案。对于前者,模仿者只能看到一条硬件通讯线。至于通过通信交换了多少数据,模仿者必须花精力去研究具体的用户程序才能搞清楚;至于后者,开发者省力,模仿者一眼就能看出来。

  一般设计变频器或伺服电机等程序的方式有很多种,可以通过线路直接控制,也可以通过通讯控制。如果使用通讯,会增加复制程序的难度。例如,可编程控制器对伺服驱动器有多种控制,较简单的可以是脉冲直接控制或模拟控制。这种方式很容易复制。如果用通讯控制,程序会复杂很多。另外,如果模仿者对消息不熟悉,很难复制。

  有时控制系统由若干个子控制系统组成,从而形成多CPU加人机接口网络。PPI网络常见于西门子S7-200产品,MPI网络常见于S7-300400产品,通常是人机界面和CPU之间的数据交换,我们还可以在CPU的用户程序中添加一些基本的S7通信功能,无需配置(S7-200可以使用NETRNETW指令,S7-300400可以使用X_PUTX_GET指令,定期或不定期地在CPU之间交换少量数据,通过这些数据实现子系统控制逻辑的互锁。对于这样一个系统来说,模仿者分析某个子系统的程序并不是很容易。4型面板人机界面

  自动化系统尽量使用面板式人机界面,而不是单按钮指示灯。很多人机界面在没有源程序的情况下只有备份和恢复功能,完全可以实现维护功能,并且对HMI程序保密。对于一个PLC系统,即使有源程序但缺少HMI部分的标记,也很难模仿。

  而且开发者可以在面板的屏幕上添加厂商标识、联系方式等明显的信息,模仿者不能照原样复制。

  如果模仿者要复制程序,他必须重写操作面板的程序,甚至PLC的程序,而开发者可以使用面板和PLC数据接口的一些特殊功能区域(如西门子面板的区域指针或VB脚本)来控制PLC的程序执行。没有HMI源程序,这样一个PLC程序只能通过猜测和在线监控获得PLC内部变量变化的逻辑,费时费力,大大增加了复制和拷贝的难度。

  采用非标准人机界面5

  德国工程师愿意用这种方法。

  在国内,大部分工程师愿意使用WINCC、INTOUCH或组态王等。但其实除了这些软件,还有一种更高的编写方法,就是用VB编写自己的程序,对于软件与PLC的接口,可以选择LIBNODAVE或者其他库等。这样写出来的人机界面有很多优点,首先没有版权问题,因为VB软件是免费的。而对于WINDOW系统的升级,只需要添加几个文件。不像WINCC,如果窗口升级,需要修改很多文件。大部分人都不能修改,更不能复制;没有很好的计算机编程知识就不能轻易修改,没有PLC或者工艺基础只有很好的计算机知识就不能修改。作者用S7-300做了这样的系统,但我的目的不是保密,而是甲方的要求,坐出来的系统完全符合自己的风格,很舒服。

  最后要告诫大家,不要过度消耗中国工业市场的诚信,合理利用PLC技术保护核心机密,而不是过度用于其他目的。中国工业市场的完整性需要每个人的努力才能得到改善。


News / 推荐新闻 More
2021 - 05 - 12
工业机器人零基础PLC编程的九大步骤科学的PLC编程步骤其实很简单,但往往大多数工程师就是认为简单而忽略很多细节。细节的忽略,必然会在以后出现问题。想避免日后的问题,只有好好的遵守规则,没有规矩不成方圆,plc编程一样有其自身的规矩。第一步:阅读产品说明书第一步看起来再简单不过了,但很多工程师都做不到。仔细阅读说明书是编程的第一步,首先要阅读安全守则,知道哪些执行机构可能会对人身造成伤害,哪些机构间最容易发生撞击,当发生危险时如何解决,这些最致命的问题都在安全守则中,阅读产品说明书是必不可少的一项。此外,关于设备每个元件的特性,使用方法,调试方法也在说明书中,不去阅读,即使程序正确,如果元件没有调试好,设备一样不能工作。再有,所有的电路图、气动液压回路图、装配图也在说明书中,需要阅读它才能知道每种元件可以做何种改造呢。第二步:根据说明书,检查I/O检查I/O,俗称“打点”。检查I/O的方法...
2021 - 05 - 11
机器视觉的主要应用领域随着深度学习、三维视觉技术、高精度成像技术和机器视觉互联技术的发展,机器视觉的性能优势得到进一步提升,其应用领域也向多维拓展。下面我们就来看看机器视觉的主要应用领域吧。一、机器视觉机器视觉起源于上世纪 50 年代—— Gilson 提出了 “光流” 的概念,在相关统计模型的基础上发展了逐像素计算模型,标志着二维图像统计模型的发展。机器视觉是用机器代替人眼进行测量和判断。机器视觉系统通过机器视觉产品将捕捉到的物体转换成图像信号,再传输给专用的图像处理系统,获得被捕捉物体的形状信息,并根据像素分布、亮度、颜色等信息将其转换成数字信号;图像系统对这些信号进行各种操作,提取目标的特征,然后根据识别结果控制现场设备的动作。二、机器视觉的主要应用领域01.汽车制造行业以往汽车制造质量主要依靠三坐标测量,效率低、耗时长、数据缺乏,只能离线测量。机器视觉引入了非接触测量技术,并逐渐发...
2021 - 04 - 29
学了PLC,我可以做什么?会PLC编程可以说是现在很多电工必备的能力之一。PLC编程只是一种简单的电工应用技术,单独的电工技术在社会上没什么好处。很多电工不需要进入工厂,如工地、房地产公司,但与工厂内的电工本质上没有区别。进入工厂并不代表工资不高的人。这种心态仍然需要纠正。图片PLC的主要应用场所是工厂,只有与工厂打交道才能取得成绩。PLC在学校内初期被归纳为电气自动化这个专业,电气自动化,研究对象是工厂内部的机械控制。现在很多民用场所已经使用PLC,但作用和工厂内的控制是一样的。PLC的入门很简单,但几乎所有的电工都可以通过短时间的学习掌握,但很深入,也不容易。每一行都有困难之处。市场上精通大中型PLC的人才也不多。大部分人只是肤浅地掌握了小PLC的皮毛。图片要想做精锐的PLC,真的要做很多项目。要写很多梯型图才能达到目的。至少要在工厂混三到五年才能敢说才敢说没有什么PLC编程项目可以难...
2021 - 04 - 23
机器视觉系统的关键技术机器视觉系统是综合现代计算机、光学、电子技术的高科技系统,通过计算机对系统摄取的视频和图像进行处理与分析,对得到的信息做出相应的判断,进而发出对设备的控制指令。机器视觉系统根据其具体应用而千差万别,视觉系统本身也可能有多种不同的形式,包括图像采集(含光源、光学成像、数字图像获取与传输)图像处理与分析等环节。机器视觉系统关键技术如下:(1)照明光源 照明直接作用于系统的原始输入,对输入数据质量的好坏有直接的影响。由于被测对象、环境和检测要求千差万别,因而不存在通用的机器视觉照明设备,需要针对每个具体的案例来设计照明的方案,要考虑物体和特征的光学特性、距离、背景,根据检测要求具体选择光的强度、颜色和光谱组成均匀性、光源的形状、照射方式等。目前使用的照明光源主要包括高频荧光灯、卤素灯和LED等。 (2)镜头 机器视觉系统中,镜头相当于人的眼睛,其主要作用是将目标的光学图像聚...
技术分享
 
2021 / 05 / 12
工业机器人零基础PLC编程的九大步骤科学的PLC编程步骤其实很简单,但往往大多数工程师就是认为简单而忽略很多细节。细节的忽略,必然会在以后出...
 
联系方式

深圳市龙华新区观澜第三工业区观中街5号联为科技园

1505031685@qq.com

15323438773 杨老师  

0755-29495142

预约免费试听
  • 您的姓名:
  • *
  • 公司名称:
  • 地址:
  • 电话:
  • *
  • 传真:
  • E-mail:
  • 邮政编码:
  • 留言主题:
  • 详细说明:
  • *
     
联为智能教育专业打造自动化教育产、学、研一体化平台,成为智能制造教育领导者。联为plc培训班精心打造专业培训实操基地,专门为学员研发一批教学设备,包括机器人学习教学连线,plc培训学习教学连线,工业机器人培训、plc编程培训等专业的教学设备,让学员真正理论实践一体,学以致用,从实践交流中体会知识的精髓,来一场完美的职业转身。
扫码学习
深圳联为智能教育感谢您的关注!
plc学习
在线直播间
plc培训班
小胡老师
Copyright ©2005 - 2013 深圳市联为智能教育有限公司


犀牛云提供企业云服务
5
电话
  • 15323438773
6
二维码
回到顶部