Cancellatelo. :-) Seriamente, ci sono un certo numero di (per lo più
insoddisfacenti) soluzioni, con diversi livelli di "sicurezza".
Prima di tutto, ad ogni modo, non non si può rimuovere il permesso di
lettura, perché il codice sorgente deve essere leggibile
affinché sia compilato ed interpretato. (Tuttavia questo non significa
che il sorgente di uno script CGI sia leggibile sul web dalle persone,
ma solo dalle persone che hanno accesso al filesystem.) Dunque, dovete
lasciare i permessi al livello socialmente amichevole di 0755.
Alcune persone considerano questo un problema di sicurezza. Se i vostri
programmi compiono azioni insicure e si affidano a persone che non conoscono
il modo di sfruttare queste insicurezze, ciò non è sicuro.
Spesso per qualcuno è possibile determinare le insicurezze e
sfruttarle senza vedere il sorgente. La sicurezza attraverso l'oscuratezza,
il modo per chiamare il fatto di nascondere i vostri bug invece di
correggerli, è davvero qualcosa di poco sicuro.
Potete provare ad usare la cifratura attraverso filtri per il
sorgente (a partire dal Perl 5.8, i moduli Filter::Simple e
Filter::Util::Call sono inclusi nella distribuzione standard), ma ogni
discreto programmatore sarà in grado di decifrarlo. Potete
provare usando il compilatore e interprete di byte code descritto
più in basso, ma i curiosi potrebbero ancora decompilarlo.
Potete tentare di utilizzare il compilatore di codice nativo descritto
più sotto, ma i cracker potrebbero disassemblarlo. Queste cose
mettono in difficoltà, in varia misura, coloro i quali vogliono
impossessarsi del vostro codice, ma nessuno può nasconderlo
definitivamente (ciò è vero per qualsiasi linguaggio,
non solo Perl).
é molto facile recuperare il sorgente dei programmi Perl. Date
semplicemente in pasto il programma all'interprete perl ed utilizzate i moduli
nella gerarchia B:: . Il modulo B::Deparse dovrebbe essere in grado di
superare il maggior numero di tentativi di nascondere il sorgente. Di
nuovo, questo non riguarda solo Perl.
Se siete preoccupati che le persone traggano profitto dal vostro
codice, allora la conclusione è che niente darà più
sicurezza legale di una licenza restrittiva. Fornite una licenza al vostro
software e tempestatelo di frasi minacciose del tipo "Questo è
software inedito di proprietà della ditta XYZ. L'accesso ad esso
non vi dà il permesso di usarlo bla bla bla." Non siamo avvocati
naturalmente, dunque dovreste consultare un legale per essere sicuri
che la stesura della vostra licenza reggerà in tribunale.
|