为S7-300和ET200 CPU程序加密,你会几种方法?
发布时间:2024-11-26
第一种:在硬件配置中激活CPU的在线访问功能
【一】STEP7在线功能的密码保护是为了阻止对CPU的访问,使用密码保护可以:(1)保护CPU中的用户程序和数据防止未经授权的更改(写保护)(2)保护用户程序中的专有知识(读保护)(3)阻止可能损害进程的在线功能【二】想要激活CPU的密码保护需要进行以下操作:(1)在硬件组态中双击CPU打开CPU的属性。(2)选择"保护"选项卡并在这里设置所需的保护等级。(3)为保护等级3(读/写保护)设定一个密码(4)点击OK按钮关闭对话框同时编译并保存硬件组态。(5)将硬件组态下载至CPU。说明:根据所设定的保护等级,每个在线功能在执行前都会进行检查以确保所选择的保护等级下该功能是否允许执行,因此,从保护等级2开始,在执行特定功能前必须输入访问密码。根据设定保护等级,可以执行诊断功能并读取变量声明表。例如,保护等级3允许读取诊断缓冲区,可以通过"PLC > Access Authorization > Setup"直接调出输入密码的对话框,除非SIMATIC Manager会话终止或则使用 "PLC > Access Authorization > Cancel"取消密码输入,否则不会出现进一步的密码查询。
第二种:通过SFC109激活CPU在线访问功能
【一】通过在程序中调用系统功能块SFC 109 "PROTECT"来更改CPU的保护等级 ,通过SFC109 的MODE参数选择"PROTECT",可以选择3种级别的保护等级:(1)以MODE=0调用SFC 109:设置保护等级为 1,如果禁用密码授权,可以通过以MODE=0 调用 SFC 109 将其启用。(2)以MODE=1调用SFC 109:设置保护等级为 2,这意味着具有有效密码的用户可以删除通过调用 SFC 109 设置的写保护,如果启用密码授权,可以通过以MODE=1 调用 SFC 109 将其禁用。(3)以MODE=12 调用 SFC 109:设置保护等级为 3,无需密码授权。 这意味着如果设置了读写保护, 即使拥有有效的密码也不能将其禁用。 如果以MODE=12 调用 SFC 109是在建立授权连接后,则调用SFC 109 调用对该连接无效。【二】注意:(1)以MODE=12 调用 SFC 109 “PROTECT” 仅适用于固件版本 V3.2.7 的 S7-300 CPU 和固件版本V3.3.7ET 200 CPU。 使用参数 MODE=12,无需密码授权便可设置保护级等级为 3。 下图显示了以参数“W#16#C”(对应于 MODE=12)调用SFC 109 “PROTECT”,用以在没有密码授权的情况下设置保护等级 3(读/写保护)。第三种:加密块保护(STEP7 V5.5以上)
在 STEP7 V5.5 版本中,可以提供块保护的加密功能,在离线和在线情况下,加密功能和功能块程序代码。【一】下面描述了如何使用 “S7 Block Privacy” 程序进行对块的保护加密的步骤。(1)使用 STEP7 V5.5 的块的保护加密功能,必须先安装“S7 Block Privacy”程序。(2)安装完成后,在SIMATIC Manager“Tools>Block protection...”,选择“ Block Protection”功能。(3)在 SIMATIC Manager 中选中块文件夹,主菜单中选择“Tools>Block protection”功能。或者选中块文件夹后,右键弹出菜单中选择“ Block protection”功能。(4)在“S7 Block Privacy”对话窗口,打开层次树,显示使用“ S7 Block Privacy ”程序进行保护的块的列表。“ S7 Block Privacy ”仅可以加密 FBs 和 FCs。(5)右键点击块,在弹出菜单中选择加密功能 “ Encrypt block ..”。(6)在“ Block Encyrption ”对话窗口,必须输入至少12个字符密码,在下一行重新输入密码,点击 ok 确认。注意:上图中检查 “ Also encrypt decompilation information ”选项是启用的,如果没有启用此选项,在加密之后,将不能再次取消加密此功能块。程序代码将yongjiu加密。(7)点击 “ OK ”确认信息,当打开块的加密功能,将不能再次查询与编辑程序代码。注意:加密完成后,只有通过输入密码后,允许再次对块进行代码编辑,建议保存好密码。(8)如果想一次加密多个块, 选中左侧复选框,将所有块一次全部加密,点击块文件夹左侧复选框,选择所有的文件,然后重复完成 4~7步骤。【二】在 SIMATIC Manager 上,被加密的块将被标记成红色和一个钥匙图示,下面将描述取消加密块的步骤。(1)在SIMATIC Manager上,选中块文件夹,在主菜单中选择“ Tool>Block protection ”功能。或者右键点击块文件夹,在弹出菜单中点击“ User protection ...”功能。(2)在“ S7 Block Privacy ”对话窗口,打开层次树,选中想取消加密的块。(3)右键点击块,选择 “取消加密”。(4)当出现“ Block Encryption ”对话窗口,输入密码后点击 OK 确认。(5)关闭“ S7 Block Privacy ”程序,被选中的块已经取消加密并且可以编辑程序。第四种:在源程序中输入KNOW_HOW_PROTECT
STEP 7 为程序提供 KNOW_HOW_PROTECT 保护功能。为要保护的块生成一个源。在此源块中,在声明部分中输入了关键字“KNOW_HOW_PROTECT”。该块在编译源代码后受到保护。如果打开使用此保护功能的块时,仅块接口参数 (IN, OUT 和 IN/OUT 参数) 和块注释可见,而无法显示程序代码、临时/静态变量和网段注释。(保护源程序对象为:FC、FB和DB)
展开全文
其他新闻
- 西门子博途驱动器库资源,新版合集下载! 2024-11-26
- 西门子、施耐德、ABB、三菱和欧姆龙等工业巨头涨价之后,到底有多赚? 2024-11-26
- 一份七月生效的西门子涨价通知函,请查收! 2024-11-26
- 你Zui爱的西门子PLC加密方式是哪种? 2024-11-26
- 西门子声明:将退出俄罗斯市场,并停止一切生产活动 2024-11-26
- 西门子工控产品全线涨价,有国产品牌神同步! 2024-11-26
- Zui新西门子ET200SP中文手册大全 2024-11-26
- 教你玩转西门子 S7-1200 数组 2024-11-26
- 图解西门子安全型I/O模块全局去钝化! 2024-11-26
- SINAMICS S210,三位一体全集成! 2024-11-26