Protect pyboard from reading the code
Protect pyboard from reading the code
Is it possible to protect python code from being read via USB or any other way?
Re: Protect pyboard from reading the code
If you ship the python modules already compiled, then people won' t be able to access the source.
A Micropython decompiler is probably feasible.
In general, you should not waste time trying to prevent reverse engineering, although it depends what the exact application is (and hence motivation).
A Micropython decompiler is probably feasible.
In general, you should not waste time trying to prevent reverse engineering, although it depends what the exact application is (and hence motivation).
Re: Protect pyboard from reading the code
In order to do this you should read up on "read protection" in the datasheet.
If the device is not read-protected, then its trivial to read the entire contents of flash using DFU. With read-protection enabled, you can't.
Disabling read-protection does a complete erase of flash.
If the device is not read-protected, then its trivial to read the entire contents of flash using DFU. With read-protection enabled, you can't.
Disabling read-protection does a complete erase of flash.
Re: Protect pyboard from reading the code
Thanks, that's what I'm looking for )dhylands wrote:In order to do this you should read up on "read protection" in the datasheet.
If the device is not read-protected, then its trivial to read the entire contents of flash using DFU. With read-protection enabled, you can't.
Disabling read-protection does a complete erase of flash.
Re: Protect pyboard from reading the code
in case of someone is interested in such protection: https://github.com/xyb/upy-stm-flash/blob/master/rdp.py
The only question I have - if I will set Level 2 - will micropython and my code work on such system?
The only question I have - if I will set Level 2 - will micropython and my code work on such system?
Re: Protect pyboard from reading the code
If you choose to use level 2 then DFU and JTAG are both disabled, which means that your code will need to provide a mechanism to reflash should you ever wish to change the onboard firmware for any reason.