Releasing with distillery is safe against decompiling?

I’ve tried to decompile beam files in my release built by distillery in prod environment, and succeeded.

Following this document(http://erlang.org/doc/man/compile.html), if beam is compiled with debug_info, it can be decompiled.

I want to prevent decompiling, but I can’t find any information about debug_info option in distilliery.

Do you have any idea about this issue?

Oh, sorry. I did beam_disasm:file("./Elixir.MyApp.beam") and it’s not related to debug_info.
It always possible to disassemble beam file.
Can’t I block it?

There’s this on the same topic: Public API source, private implementation?

Disassembling is always possible.

Remember, disassembling is just reading the raw bytes of the files and giving them human readable representations. Not more, not less.

If you really wan’t to avoid disassembling by a third party, you are not allowed to give away the files away.

3 Likes