首页 上一页 1 2 下一页 尾页

(已结贴)工控PLC擂台第62期-PLC程序的加密问题 点击:5026 | 回复:38



玻璃的心

    
  • 精华:43帖
  • 求助:2帖
  • 帖子:1192帖 | 5801回
  • 年度积分:0
  • 历史总积分:58062
  • 注册:2010年6月11日
发表于:2011-10-30 11:04:17
楼主

      我们知道,随着工控市场的竞争的越来越剧烈,各公司对自己的PLC程序的功能越来越完善,那么,我们这期擂台就是希望各位就自己最熟悉的一种PLC的程序的加密具体介绍一下,必须要有相关文字介绍和相关的图形,PLC品牌任意选择!



工控PLC擂台每周一期,本期待60期结束一周后结贴。奖项设置:一等奖2名:50MP,二等奖5名:10MP,三等奖10名:30积分。

MP介绍:gongkongMP即工控币,是中国工控网的用户积分与回馈系统的一个网络虚拟计价单位,类似于大家熟悉的QB,1个MP=1元人民币。

MP有什么用?兑换服务:以1个MP=1元来置换中国工控网的相关服务。 兑换现金:非积分获得的MP可兑换等值现金(满100MP后、用户可通过用户管理后台申请兑换)。

 



楼主最近还看过



gongkongzhy

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 26回
  • 年度积分:0
  • 历史总积分:307
  • 注册:2011年11月20日
发表于:2011-11-22 20:23:10
21楼

现在PLC加密的方法很多;但是有些PLC加密其实和没有加没有区别;

如果人家想搞你的程序还是可以的啊!

但是目前我知道有一家PLC是不行;南大傲拓PLC;想了解的可以到他们主页去看一下噢,!

spider_man

  • 精华:19帖
  • 求助:0帖
  • 帖子:158帖 | 451回
  • 年度积分:0
  • 历史总积分:7932
  • 注册:2011年3月08日
发表于:2011-11-22 22:43:32
22楼

                       西门子PLC密码三种保护级别和程序块加密方法

用户可以选择如下三种保护级别:

【*】保护级别1:符合默认值【*】保护级别2:只读访问方式【*】保护级别3:不可读写访问方式

用户可以在 S7 站进行硬件组态时设置一个 CPU 密码。打开 CPU 的属性对话框,属性对话框内保护级别 2(只读访问方式)和设置密码都是被推荐的。
不知道密码而无法输入密码的用户只能在 CPU 里读取程序,用户无法修改程序。


1: 设置 CPU 保护 块保护(Know_How_Protect)可用于自动生成的STEP 7块中。 用户如果忘记密码: 用户如果忘记了密码,将无法写入访问(或保护级别 3 的读取访问)到密码保护过的 CPU 中。 用户必须通过复位 CPU 并上传程序到 CPU 中来恢复访问。 注意:
修改过的数据被下载到 S7-CPU 中,密码才被激活。
为程序块 DBs, FBs FCs 设置块保护(Know_How_Protect)的方法。

序号

步骤

1

打开要编辑的块,在 LAD/STL/FBD 编辑器中选择 "File > Generate source..." ,准备生成源文件。

2

在打开的对话框中输入项目名称,如 "Protect_FB"

3

执行步骤2,弹出 "Generate source <项目名称>" 对话框。 选中需要转换的块,点击箭头按钮将其移至右侧 "Blocks Selected" 窗口中。 点击 OK 键进行确认后,生成STL 源文件。关闭 LAD/STL/FBD 编辑器。


01

4

生成的源文件存放在 Simatic Manager -> S7 program -> Sources 文件夹中,打开源文件。

5

在声明部分的 "TITLE" 语句下插入 "KNOW_HOW_PROTECT" 命令。

02

6

点击菜单 "File > Save" "File > Compile" 保存编译 STL 源文件。至此完成块的保护。

下表介绍如何去除块 (FBs, FCs and DBs) KNOW_HOW_PROTECT 保护功能:

序号

步骤

1

打开源文件

2

删除 "KNOW_HOW_PROTECT" 语句行或用双斜杠将其标记为注释

3

使用菜单命令 "File > Save" "File > Compile" 保存编译该 STL 源文件。

4

至此去除对该块的保护。

山东 小平

  • 精华:2帖
  • 求助:1帖
  • 帖子:47帖 | 6717回
  • 年度积分:0
  • 历史总积分:21131
  • 注册:2006年1月05日
发表于:2011-11-24 14:19:09
23楼
现在到处是解 密软件,加密似乎起不到想要的作用

hzhpl

  • 精华:0帖
  • 求助:3帖
  • 帖子:21帖 | 355回
  • 年度积分:2
  • 历史总积分:5311
  • 注册:2011年10月21日
发表于:2011-11-24 21:24:44
24楼
像西门子有些功能块本身都加密封装!

hzhpl

  • 精华:0帖
  • 求助:3帖
  • 帖子:21帖 | 355回
  • 年度积分:2
  • 历史总积分:5311
  • 注册:2011年10月21日
发表于:2011-11-24 22:22:10
25楼
而安川的Plc编程软件都不提供网络下载,需要授权!我打过上海总部电话,说要买!

djgyy

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 1200回
  • 年度积分:100
  • 历史总积分:20331
  • 注册:2020年6月23日
发表于:2011-12-05 15:41:12
26楼
加密要点: 
1、加密程序不能完全受到时间影响,比如,你采用日期判断的可能会应为plc长时间掉电导致日期识别错误,建议对时间进行判断,每4个小时记录一下时间,若下次判断时时间大于该时间则认为错误,小于时则认为错误,自动刷新时间或作出时间标签报警等
2、加密程序不要太死板,不要限制时间一到你就把程序封闭死,这样有可能导致现场设备损坏或现场人员伤害,到时叫你吃不了抖着走,你可以选择部分不涉及人生安全或设备安全的部分先停下来,然后提出报警,报警类型自己想,我一般是作为下次无法启动,本次已经启动的照常运行。 
3、加密程序解除要适当,你不要等到***时还要跑一道现场,那才叫晕,自己给自己下套。你可以选择一个空余di点作为解除点或者现场的一种特殊组合操作来解除也可以,当然最好是采用上位机授权码的方式, 
4、授权码也要注意,你的授权可以分多时间标签授权,比如有些用户不能按约定支付你全部费用的,你可以用授权延长1个月、3个月、半年的运行期,让用户始终受到你的制约。当然你得做得天衣无缝或让对方主要领导知道才好。 
5、加密最高境界-程序轰炸,加密程序已经执行完成,在遇到顽固型用户迟迟不支付费用的情况下就不在对他客气,利用程序轰炸方法将程序主要段删除,避免程序受到其他人员的***,这个方法需要特殊的plc来支持,如西门子s7300以上cpu。或者利用程序复制将空间填满等,或者发命令给上位机直接删除程序。 

dwb788

  • 精华:0帖
  • 求助:1帖
  • 帖子:5帖 | 57回
  • 年度积分:0
  • 历史总积分:185
  • 注册:2010年9月14日
发表于:2011-12-06 10:16:42
27楼
使用心捷的PLC                               。

dwb788

  • 精华:0帖
  • 求助:1帖
  • 帖子:5帖 | 57回
  • 年度积分:0
  • 历史总积分:185
  • 注册:2010年9月14日
发表于:2011-12-06 10:18:39
28楼

dwb788

  • 精华:0帖
  • 求助:1帖
  • 帖子:5帖 | 57回
  • 年度积分:0
  • 历史总积分:185
  • 注册:2010年9月14日
发表于:2011-12-06 10:21:00
29楼
第一次传图  好像传反了  。

welfare87

  • 精华:0帖
  • 求助:4帖
  • 帖子:44帖 | 2827回
  • 年度积分:0
  • 历史总积分:25853
  • 注册:2009年2月20日
发表于:2011-12-12 21:49:51
30楼

     西门子300通过STEP7软件的KNOW_HOW_PROTECT功能实现对您程序代码的加密保护。

     如果您双击鼠标打开经过加密的程序块时,您只能看到该程序块的接口数据(即IN, OUT 和 IN/OUT 等类型的参数)和注释信息,而程序块中的代码及代码的注释,临时/静态变量是不能被看到的。同时您也无法对加密保护的程序块做出任何改动。

      按照以下步骤实现程序块保护:

      1.打开程序编辑窗口LAD/FBD/STL;
      2.将要进行加密保护的程序块生成转换为源代码文件(通过选择菜单  File—>Generate source 生成);
      3.在LAD/FBD/STL 窗口中关闭您的程序块,并在SIMATIC Manager项目管理窗口的source文件夹中打开上一步所生成的source文件;

      4.在程序块的声明部分,TITLE行下面的一行中输入“ KNOW_HOW_PROTECT”;

      5.存盘并编译该source文件(选择菜单FileàSave,FileàCompile);

目的:  没有 STL source 源文件,无法对已经加密的程序块进行编辑。

取消对程序块的加密保护:
     1.打开程序块的Source源文件;
     2.删除文件中的KNOW_HOW_PROTECT;
     3.存盘并编译该source文件;
     4.现在程序块的加密保护已经取消。

 

weiqi

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 40回
  • 年度积分:0
  • 历史总积分:124
  • 注册:2005年1月23日
发表于:2011-12-12 22:41:26
31楼

同意 楼上我们做的东西从来不加密”

在程序调试过程中应该加密, 以防止不必要的麻烦,   当调试结束后我们应该提倡我们从来不加密”的理念

bydq

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 35回
  • 年度积分:0
  • 历史总积分:184
  • 注册:2005年9月16日
发表于:2011-12-13 21:20:51
32楼
学习了,特别是200的程序加密

玻璃的心

  • 精华:30帖
  • 求助:2帖
  • 帖子:962帖 | 5801回
  • 年度积分:0
  • 历史总积分:61250
  • 注册:2010年6月11日
发表于:2011-12-20 16:39:23
33楼

一等奖3名,40MP获得者:
青岛黄工            dingdan258


shne230            shne230


hzhpl                  hzhpl

 


二等奖6名,10MP获得者:


wyb2866255         wyb2866255


ye_w                    ye_w


bhdxzgp                bhdxzgp


spider_man            spider_man

caojie0723             caojie0723


dwb788                duwenbo7788

 


三等奖3名,30积分获得者:

 
welfare87          welfare87

 

djgyy                 djgyy


gongkongzhy      gongkongzhy

玻璃的心

  • 精华:30帖
  • 求助:2帖
  • 帖子:962帖 | 5801回
  • 年度积分:0
  • 历史总积分:61250
  • 注册:2010年6月11日
发表于:2011-12-20 16:46:16
34楼

一等奖3名,40MP获得者:
青岛黄工            dingdan258
shne230            shne230
hzhpl                  hzhpl

 
二等奖6名,10MP获得者:
wyb2866255         wyb2866255
ye_w                    ye_w
bhdxzgp                bhdxzgp
spider_man            spider_man

caojie0723             caojie0723
dwb788                duwenbo7788

 
三等奖3名,30积分获得者:
welfare87          welfare87 

djgyy                 djgyy
gongkongzhy      gongkongzhy

玻璃的心

  • 精华:30帖
  • 求助:2帖
  • 帖子:962帖 | 5801回
  • 年度积分:0
  • 历史总积分:61250
  • 注册:2010年6月11日
发表于:2011-12-20 16:48:04
35楼
引用 welfare87 的回复内容:     西门子300通过STEP7软件的KNOW_HOW_PROTECT功能实现对您程序代码的加密保护。      如果您双击鼠标打开经过加密的程序块时,您只能看到该程序块的接口数据(即IN, OUT 和 IN/OUT 等类型的参数)和注释信息,而程序块中的代码及代码的注释,临时/静态变量是不能被看到的。同时您也无法对加密保护的程序块做出任何改动。       按照以下步骤实现程序块保护:       1.打开程序编辑窗口LAD/FBD/STL;      2.将要进行加密保护的程序块生成转换为源代码文件(通过选择菜单  File—>Generate source 生成);      3.在LAD/FBD/STL 窗口中关闭您的程序块,并在SIMATIC Manager项目管理窗口的source文件夹中打开上一步所生成的source文件;       4.在程序块的声明部分,TITLE行下面的一行中输入“ KNOW_HOW_PROTECT”;       5.存盘并编译该source文件(选择菜单FileàSave,FileàCompile); 目的:  没有 STL source 源文件,无法对已经加密的程序块进行编辑。取消对程序块的加密保护:     1.打开程序块的Source源文件;      2.删除文件中的KNOW_HOW_PROTECT;      3.存盘并编译该source文件;      4.现在程序块的加密保护已经取消。  

这个应该是我看到的最早的加密方式,也是网上最好找到的!

玻璃的心

  • 精华:30帖
  • 求助:2帖
  • 帖子:962帖 | 5801回
  • 年度积分:0
  • 历史总积分:61250
  • 注册:2010年6月11日
发表于:2011-12-20 16:51:08
36楼
引用 gongkongzhy 的回复内容:现在PLC加密的方法很多;但是有些PLC加密其实和没有加没有区别;如果人家想搞你的程序还是可以的啊!但是目前我知道有一家PLC是不行;南大傲拓PLC;想了解的可以到他们主页去看一下噢,!



这个要看哪个层次的和层面的人,如果只是一般的维护的话,确实问题不是很大哦,但是诊断还是有程序好点,如果是开发层的话,那就区别很大,比如西门子的很多的块都是封装好的,不公开的,这个对于想模仿的开发者还是很大的壁垒的

玻璃的心

  • 精华:30帖
  • 求助:2帖
  • 帖子:962帖 | 5801回
  • 年度积分:0
  • 历史总积分:61250
  • 注册:2010年6月11日
发表于:2011-12-20 16:54:22
37楼
大家回答的度不错,本期擂台打此为止,欢迎大家继续参与我们以后各期擂台!

Dec

  • 精华:0帖
  • 求助:0帖
  • 帖子:18帖 | 109回
  • 年度积分:0
  • 历史总积分:425
  • 注册:2002年11月04日
发表于:2012-01-12 11:08:51
38楼

热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页