Joutsiniemi Anssi wrote:

The biggest problem rises, because I guess MBX file was in a first place ment
to be decompilable! It is really surprising that the compilation process only
looses the comments of the source code. As you know even the original
variable names, line numbers etc. remain in MBX's.
No, it is the way it is because it's based on the ideas of Kemeny's BASIC compiler which was simply a tokenizer that prepared code for being interpreted on the fly. It's true that it doesn't create very secure code and a serious hacker with some knowledge of compiler construction can read it, but most people who use BASIC aren't able to read the binary version. Personally, I think it's best not to give a monkey the keys to the banana plantation, but a curious monkey would find such knowledge interesting and enlightning.

So once you give information for compiling you actually open the gate other
way too. It's unavoidable drawback from this nearly looseless compiling. I
see the future of MB as a useful tool for creating UI, but I guess there is
still much more left.

Have to reconsider the pros and cons.
I guess I hadn't considered the possibility of being able to extend it by revealing how it works. There might be some value in that.

But since the cat's out of the bag anyway I guess I should consider building a code obfuscator to be used as a pre-compiling step, just to make it harder for hackers to read the source code. That wouldn't be hard to do because MapBasic doesn't need to be "neat" and human readable. Simply changing all the function and variable names to things like x001, x002, etc. would make it a pain to read and understand. And once I saw the decompiler code, I could probably come up with other annoying tricks to make it more difficult for the black hat hackers and wannabes to understand what the code does.

- Bill
_______________________________________________
MapInfo-L mailing list
[email protected]
http://www.directionsmag.com/mailman/listinfo/mapinfo-l

Reply via email to