Internet PLC Forum
General => Technical support => Topic started by: Prayuktibid on June 22, 2017, 09:20:19 PM
-
Hello folks,
I am using Trilogi PLC FDMD88-10 model and I am using it for Industrial purpose. So I would like to know how can I secure my code for confidential purpose such that no one can copy, view my code. what are the procedure to authenticate my Code?
Please suggest me. Thank you.
-
Your code is automatically protected from downloading by any user once it is transferred to the PLC. There is no backdoor means to recover the program from the PLC. That is the feature of these OEM PLCs. However you do need to backup your program properly because if you lose the source program we will not be able to help you recover the program.
Given the low cost of SD card, some OEM would put a copy of the actual program inside a password-protected ZIP file and attach the SD card to the control panel. Only the OEM knows the password to unzip the program. That ensure that a secure copy of the source code follows the machine but only the OEM can access the program.
-
Thank you very much for your Kind Information.
-
My best suggestions on how to product one's PLC programming from being stolen or used by others is to write the program using the following guide lines:
- Use no comments either in ladder logic or in custom functions
- Never use the # Define mechanism in custom functions to provide meaningful names for variables
- If you need to access DM[] as 32-bit variables, then never use the DM32[n] syntax. Always access it as two 16-bit values.
- Write all custom functions as a block of code with no indentations or delimiters. Attempt to make the code margins even or perhaps in the shape of a tree.
- If you use a subroutine, don't give it a name just invoke it as "call 3".
- Don't use for/next or while/endwhile statements, just use as many GOTO statements as possible. You don't want anyone to be able to guess that you have a bit of code that might run in a bit of a loop.
- Don't use if..elif..elif..elif..else..endif only use nested if..else..if..else..if..else..endif..endif..endif (nested if statements). And if possible nest the if statements as deeply as possible.
- Name all INPUT, OUTPUT, RELAY, COUNTER and TIMER items with names like INPUT1, INPUT2 and OUPUT3. If you give any of these things useful names, some causal user might guess what you are doing.
I am certain that their are more creative ideas on how to obfuscate your work, but these will get you a long way.
Best regards,
Gary D*ckinson
[/list]