Inside Sabertooth
Learn how Sabertooth uses 3ds Max to create 3D interactive projects, including HBO Go’s Game of Thrones interactive experience
  • 1/3
You are here: Forum Home / Autodesk 3ds® Max® / MaxScript / encryptFile is NOT safety
  RSS 2.0 ATOM  

encryptFile is NOT safety
Rate this thread
 
50593
 
Permlink of this thread  
avatar
  • Anubis
  • Posted: 17 December 2010 08:56 AM
  • Location: Sofia
  • Total Posts: 433
  • Joined: 30 August 2009 01:50 PM

Yes, the hackers use openEncryptedFile function
and after a few days all your work go for nothing.

How you fight with piracy?
Please suggest me another file encryption protection.

Thanks in advance for all your help!

Anubis



Max 9 through 2009, XP-Pro x64 SP2
ASUS EAH3450 Series (Driver 8.470).
Core 2 Duo E8400 3GHz, 4Gb Ram, DX9.0c.

Replies: 2
/userdata/avatar/avatar_14884.gif

The only way to prevent piracy is to not release your tool. Given enough time all released protection schemes can be broken. Also, are you using the version:1 parameter to use the updated encryption code supported in 3ds Max 9 SP1 and later?

-Eric

Author: PiXeL_MoNKeY

Replied: 17 December 2010 10:30 AM  
/img/forum/dark/default_avatar.png

Thanks for the reply.
Hehe… I know that never will have stable cure against piracy :)

Yes, I use version:1 parameter and it is in encryption of MS to MSE file (encryptScript() function), and I hope no one hack mse-key, else, if thats true… the situation become more complicated. So, am talk about encrypted files that we create with encryptFile() and read them with openEncryptedFile(). And as the mxs-help suggest to build script license system using encrypted files as .lic file, but this solution totally fails in practice. The openEncryptedFile() is not a secret function, and as I see, its not a big deal to write a script to pass enumerated keys to it and loop while succeed.

Well, what I have in mind for now is to try to write my license file as serializated binary with dotNet.
Still not sure is this will solve the problem, so I’ll appreciate any suggestion about.

Author: Anubis

Replied: 17 December 2010 01:17 PM  
avatar
  • SONIC3D
  • Posted: 04 January 2011 02:24 AM

Version 1 algorithm is also unsafe technically and proved.Once I have explained the scheme in Autodesk AREA long time ago with warning and other authorizing solution suggestted.But since it’s very sensitive to Autodesk.The post was deleted 15 minutes after I post it.So I will only give out suggestion here this time.No more decryption detail.

1.If you wanna protect your source code.Try bundle it with C++ plugin written with MaxSDK.Execute your maxscript code on the fly.And don’t forget to pack your plugin dll with a stronger packer program.

2.If you wanna protect your data.Then don’t encrypt it via encryptFile because that cause you exposed the key when you decrypting it.(Think if your source code is decrypted,your key passed as parameter in decryptFile function is also exposed.)So try implement the file streaming in C++ plugin,too.

I know it’s hard for artists who hardly learnd maxscript programming to move deeper for developping complicate plugins in C++.But that makes your code really harder to analyze and reverse engineering.



Replies: 1
/img/forum/dark/default_avatar.png

Thanks for your reply and suggestion.

Well, from that I afraid, C++ is a bit harder for me.
At the moment I digging for solution with C#.

Thanks again,
Anubis

Author: Anubis

Replied: 05 January 2011 03:07 AM  
avatar
  • SONIC3D
  • Posted: 06 January 2011 09:57 PM

And there is another idea about protect your code.That’s the socalled obfuscating.And it’s useful to your C# code,too.Because .Net code is also reversable.

The idea is simple.That after you finished your job.replace the variable,function name blah blah.. to meaningless word like aa,abc,a1,a2…
There are lots of .Net obfuscator on internet.But since there is no one for maxscript.You can implement this idea by simply replace variable,function name by your hand in the whole source.
It’s a bit tired to do this.And it makes the logic analyzing a lot more hard for code stealer.



Replies: 1
/img/forum/dark/default_avatar.png

’obfuscating’ is new word/term to me,
but i know and understand the technique.

Thanks for the tip!

Author: Anubis

Replied: 07 January 2011 02:52 AM