code protection?
mike56
Posts: 22
I love the propeller but one thing that keeps me from using it in a commercial design is code protection.
How are people protecting their firmware and is parallax going to release code protection in the next propeller?
How are people protecting their firmware and is parallax going to release code protection in the next propeller?
Comments
Prop II looks like it will have a one-time programmable 32-bit word (fusible ROM) that could be used to hold a unique serial number or decoding key. There's no guarantee that this will actually be included in the final Prop II, so I wouldn't count on it. There will not be any on-chip flash memory or EEPROM ... you can count on that.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Composite NTSC sprite driver: http://forums.parallax.com/showthread.php?p=800114
NTSC & PAL templates: http://forums.parallax.com/showthread.php?p=803904
That's always the question. Since there's no existing commercial protection scheme that's proof from existing commercial reverse-engineering shops, it all comes down to making it hard enough for the casual thief to steal your product so they don't bother, yet not pricing your product out of the marketplace by trying to protect against the professional thieves. At a certain point, it's more cost effective to put the money into product development and support so you'll always have a better product than the thieves who will be trying to sell last years' model and your customers will pay a premium for your product rather than the copy-cats' because you support your products well.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, RamBlade, TwinBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80), MoCog (6809)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
Plus if we all released our work for free, we'd all be living in mansions created by robots, sipping our favorite drink that came from the food replicator(invented and released for free of coarse)...
But because we all want to "feed our children" or whatever (so many use that excuse)
we have to live in a world of "step on others, or get stepped on"
Soon, tho.. finally people will see and understand that the infinite future starts with self-sacrifice.
(if you keep your inventions, ideas, and programs up to date and provide support for them, you might find that you don't need to 'hide' your code.)
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
TERMS OF USE: MIT License
"Permission is hereby granted, free of charge, to any pers...........................
..............................OMITTED FOR FORUM...............................................
.................. OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. "
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, RamBlade, TwinBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80), MoCog (6809)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
Suzuki SV1000S motorcycle
Post Edited (Leon) : 6/24/2009 12:45:55 PM GMT
To Parallax, if you are planning on only a 32 bit key is that going to be secure? I know Chip was talking about using a random number generator to increase the key size but to be useful that will have to be stored in the eeprom which means if anyone wants too they will find it. This means that we are back to a 32 bit key which I would guess to be pretty insecure since all the encryption routines I've heard of need a lot more bits than that. (and all of that should be taken with a grain of salt because the only thing I know about encryption is what I read in a couple of hours on wikipedia)
The people at Parallax have had real world experience with intellectual property theft and protection and they're convinced that there is no absolute code protection and it's foolish to spend much effort in trying to accomplish it. The 32 bit fusible ROM is something that is doable and relatively cheap to implement the way the chip is designed and has other uses as well. A 32 bit key is adequate to protect against casual theft.
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
Suzuki SV1000S motorcycle
Post Edited (Leon) : 6/24/2009 1:52:21 PM GMT
Crypto is easy, but getting it right is very, very hard. One mistake and it's just a lot of wasted effort.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Composite NTSC sprite driver: http://forums.parallax.com/showthread.php?p=800114
NTSC & PAL templates: http://forums.parallax.com/showthread.php?p=803904
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
Suzuki SV1000S motorcycle
I am sure something similar can be done for the prop eprom, and a 32 bit serial number would provide additional security. Not the ultimate in security, but enough to prevent casual copying.
Jimmy
After copying the fram content to internal hub memory a loader reads the keys and decrypt the hub content (of course the loader is not encrypted). The loader is a pasm I2C multi-master/slave driver running in one cog with built in block-copy/move and read-and-decrypt/encrypt-and-write functions (once read the key·is stored internally·for further uses). An other application downloaded just to ram have the job to transfer the program from PC to the FRAM and preset the counter values (the key) the very first time. If you have other micros on board you can do that through the I2C while holding the prop in reset. Of course you must prevent downloading to prop ram otherwise the keys can be read and after that the fram content decrypted.