Pokud by jsi chtěl jít do extrému, tak můžeš zkusit do své aplikace implementovat prvky whitebox cryptography. To je metoda která umožní "schovat" šifrovací klíč třeba od AES do kódu tak že ani vlastnictí zdrojáku nepomůže, pokud nějak chytře nahákuješ kusy kódu na dešifrování tak by jsi teoreticky mohl udělat zdroják který nejde lousknout respektive nepoběží bez "krabice", a krabice může chtít tahat data ze sítě a nebo si vynutit vykonání určité činnosti a tu kontrolovat.
Příklad na generování zdrojáku dekryptoru AES pro konkréní klíč:
http://files.rsdn.ru/45067/aesig.zipvytvoří decryptor který dešifruje AES podle tebou zadaného klíče, sice je to v c ale asi by nebyl problém předělat to tak aby to generovalo javu. Samozřejmě je také možné to použít na vlastní FUD crypter těmi kdo dělají malware. Souborek doporučuji zálohovat, je to masíčko

Exáčům nevěřit, zdroják je ale ok...
Prakticky se to dá použí na implementaci DRM a možná i pro vynucení funčnosti uzlu v síti p2p tak aby je to donutilo uploadovat, ale tuto možnost zatím prověřuji. Třeba udělat stavový automat a stavy nějak hnát šifrovaně přes tu krabici a výstup použít k verifikaci chování, nevím.
Jinak spolu s obfuskátorem získáte něco horšího než BLOB a přitom to můžete šířit pod GPL...