Forums > MaxMSP

How to unlock MXF

June 24, 2010 | 2:04 pm

I’ve done a MXF and I want to know if anyone is going to be able to open it if I distribute it.

The .mxf file is openable in Max, but I can’t unlock the patch.

If I open the mxf with textedit and copy the text I use the "New from clipboard" I don’t get anything.

Is there another ways to try to open it?


June 24, 2010 | 2:56 pm

You can edit the header of the file with a binary editor. Compare
it with a newly created .maxpat file. Copy the bits that make it
work.


June 24, 2010 | 3:32 pm

Ok, thanks.

I was able to open it but now I don’t see the bpatchers the main patch uses. They appear as empty and I can’t right-click and edit object… you know.

Looking in the inspector I can see the bpatcher name (something.maxpatch) correctly, but then the bpatcher is empty.

This doesn’t happen when I open the .mxf directly, the bpatchers open correctly.

Anyway to go further than this or maybe this is a good way to obfuscate a mxf files??


June 24, 2010 | 5:17 pm

if you made it in max5 then yes it is very hackable, including the "missing" bpatchers. send me the .mxf and i would be able to email you within minutes every one of the files you used to make the patch. (don’t actually do this, i know how but morally don’t do it). it’s an unfortunate side effect of the new version. items released in max4 were much more hackproof (but also had its backdoors). i think it’s the inclusion of presentation mode and new coding that throws off the old locked down patches which would show up as jumbled text if the textedit method was used.

this is mostly scare tactics though, if you’re distributing patches your main demographic is probably non-max users who wouldn’t know any of the techniques mentioned above in the first place. hacked patches shouldn’t be much of a concern (unless autechre gets ahold of it).


June 25, 2010 | 12:21 am

 
not sure why you say it was more hackproof in max 4? it could not have been easier.
 


June 25, 2010 | 12:49 am

I guess i could never figure it out myself. When i first started programming i wanted to take a glimpse inside of Cyann by Katsuhiro Chiba to see how he was doing similar things as me yet getting much better sounds and it was like Fort Knox.


June 25, 2010 | 7:17 am

If you’re serious about distribution and not having it reverse-engineered, look to other software which can wrap the .exe and .mxf and encrypt it (these are PC only):

http://www.oreans.com/index.php

http://www.molebox.com/

Still would like an option to encrypt built into the Build Collective/Application function, but we’ve talked through that one before… :)


June 25, 2010 | 9:05 am

Wait, they encrypt software and distribute software + the key to decrypt it? Isn’t it like pointless?


June 28, 2010 | 8:04 am

No, the file or files you tell it to encrypt aren’t decryptable, at least that’s the claim. In the case of the Oreans software, it encrypts the .mxf and turns it into a .bak file that is slightly larger. So you can’t reverse-engineer the patch via copy/paste within Max by hacking the .mxf. I haven’t used MoleBox, but I think it just makes one big .exe out of all the files you feed it, so the same should be true.

It’s also helpful for other programming languages—even if your program itself isn’t hackable, there may be lots of other files (images, sound, 3D models, etc) which have value. You probably don’t want even a paying customer to be able to get at them and re-distribute them…so you encrypt them too. Only your main application can access them in this state, just like the main .exe made as a standalone app with Max is the only thing which can access the encrypted .mxf. Again, that’s the claim…

The other part of all this is the ability to do licensing and hardware-locking, so that your program will only run on a specific machine, or on a USB key that has U3 capability. Might be a nice option for distribution—even with the extra cost and the delay for the buyer, they can run your program on any PC they want.

Interested to hear other people’s thoughts on this, especially if someone’s found good encrypting software for Mac… preferably simple and cheap :)


June 28, 2010 | 7:18 pm

Hi there!
My name is Enrico and I am writing from Venice, Italy.
I was reading with much excitement your post, since it seemed that you were able to take a peep into Cyan, and I was wondering if you were able to hack it at all…
I’d love to know, if so, if you’d be kind enough to share it, needless to say how much I’d appreciate that.
Thank you so much in any case,
take care

Enrico


June 28, 2010 | 8:54 pm

mmmm nobody here is going to post a hacked patch, this forum is far too polite and friendly a place :) It would be disrespectful to the person who created it, and if you want to see the guts you’ll have to work it out for yourself I think.


July 12, 2010 | 9:57 pm

Well, it seems there are no solution to encrypt the .mxf in OSX yet.

If someone ever discovers one, please share it!


July 15, 2010 | 10:15 pm

Would like to see if this solution would work, it’s free and cross-platform!

http://www.truecrypt.org/

Not sure the advantages or disadvantages, maybe this one takes more effort?

I suppose mounting one’s app as a "disk" would be doable, especially on a USB stick. Though not sure how one would go about licensing etc. Regardless, that might be an option for keeping the .mxf non-hackable…


July 15, 2010 | 10:37 pm

 
what always works for protecting your code is not distributing your work
but keeping it to yourself.

has disadvantage,s too, of course.

-110



t.a
April 29, 2014 | 12:43 am

As every one of us had this problem once in a while here is "complete" guide. Reverse-engineering an .mxf is pretty easy. As mentioned before open the .mxf file in a hex editor and change its heading (if you don’t know exactly what to do, just open a patch of your own, an compare them). Save the edited file as a .maxpat. Once you open the new .maxpat file you’ll be missing the bpatchers. Go to the .mxf and double click on the bpatchers and save each one as .maxpat file (with same name of course they already have) in the folder you have your hexedited .maxpat file.done!!

I have only tested the above on Max 5

Reverse engineering is as educational as every other part of programming so please no hard feelings if someone believes that protecting digital data by law is better than maths

EDIT: Forgot to mention though. This doesn’t work once there are custom-written externals. But it works for the main and all the subpatches. If someone can add more thoughts on that would be cool.

  • This reply was modified 6 months by  t.a.

April 29, 2014 | 12:19 pm

"so please no hard feelings if someone believes that protecting digital data by law is better than maths"

HAHA! Smartest(least asswipey too! ;D) thing i’ve seen written on these forums in a very long time :)



t.a
April 30, 2014 | 1:26 am

hahah yes, true to John Gilmore’s spirit

"That’s the kind of society I want to build. I want a guarantee — with physics and mathematics, not with laws — that we can give ourselves real privacy of personal communications."

:)

Sorry for the off topic


Viewing 17 posts - 1 through 17 (of 17 total)