In short, you can't. The only thing you can do is to attempt to detect the
presence of the debugger (and any modules of the B:: namespace) and terminate your script if found. This is not as trivial as it might seem.
Additionally, you'd need to at least obfuscate things sufficiently, so that people will
give up before they succeed (for example because it's just not worth it)...
The only way to make it reasonably difficult for people to work around
your mechanisms is to distribute a modified perl binary, statically
linked with the decrypting source filter module (written is XS). With anything else it's
trivial to get at your decrypted Perl source and simply disable the debugger detection.
(But even with a modified perl binary, it's only a matter of how much
time someone is willing to invest to crack your 'protection'...)
Generally - as you can infer from the Anonymous Monk's reaction - trying to hide your source is widely frowned upon in the community, so you probably won't get a lot of help here...
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||