Logo UGIdotNET

Discussione 'Protezione codice sorgente'

# Pubblicato il 09 lug 2002 10.32 - Rispondi
ettore carraro
Protezione codice sorgente
Mi pare di aver capito che il codice intermedio prodotto con i linguaggi supportati dal .NET framework (Intermediate Language) permette facilmente di ricostruirne il codice sorgente da cui deriva (in un linguaggio a piacere, anche se con simbolismi al posto dei nomi reali delle variabili) usando del software di reverse engineering. In tal modo chiunque, con estrema facilita', puo' risalire a pezzi di codice sorgente per riutilizzarli a suo piacimento in altri programmi. Software di reverse engineering esiste da sempre, ma con il codice intermedio del .NET framework se ne ricaverebbero sorgenti molto piu' fruibili di prima. E' previsto qualche meccanismo che possa proteggere l'investimento di chi e' il detentore legittimo dei diritti d'autore del codice originale? Esiste un modo per garantirsi l'autenticita' del codice?
# Pubblicato il 09 lug 2002 10.39 - Rispondi
Fabio Santini
Re: Protezione codice sorgente
Per proteggere il codice IL presente all'interno di assembly è possibile utilizzare la tecnica di Obfuscation. Esistono oggi disponibili alcuni prodotti chiamati Obfuscator che si occupano sostanzialmente di modificare l'IL in modo da non essere più leggibile da un eventuale disassemblatore.
Puoi trovare alcuni Obfuscator ai sequenti link:

http://www.preemptive.com/dotfuscator/index.html

http://www.wiseowl.com/products/Products.aspx

http://www.lesser-software.com/en/content/products/LSW%20DotNet-Tools/LSW_DotNet_IL-Obfuscator.htm
# Pubblicato il 15 lug 2002 14.14 - Rispondi
Marco Zampaglione
Re: Protezione codice sorgente
Volevo solo aggiungere due riflessioni (domande) a questo argomento:

nel caso dei servizi Web il codice IL che implementa la logica interna viene protetto dal server aziendale (o per lo meno così dovrebbe essere...). Potrebbe questo, alla luce dei problemi di protezione del codice, favorire i componenti remoti (... servizi esterni alla intranet) piuttosto che quelli distribuibili localmente?

Avrebbe ancora senso scrivere le parti più delicate della logica applicativa (quelle che non si vorrebbe fossero decifrate) con codice non gestito e quindi tramite l'interoperabilità utilizzare tale codice dal codice gestito .NET?
# Pubblicato il 11 lug 2002 19.46 - Rispondi
Marco Magistrali
Re: Protezione codice sorgente
Molto interessante questa domanda,
ma se creo uno strong assembly (con l' utility sn.exe) ho ancora il problema di una protezione ulteriore per evitare che si riesca a risalire al codice?
# Pubblicato il 12 lug 2002 8.49 - Rispondi
Alberto Tronchin
Re: Protezione codice sorgente
Mi pare che le domande di Ettore fossero 2:
-"E' previsto qualche meccanismo che possa proteggere l'investimento di chi e' il detentore legittimo dei diritti d'autore del codice originale?"
-"Esiste un modo per garantirsi l'autenticita' del codice?"

Nel primo caso l'utilizzo dei tool di Obfuscation risolvono il problema, ma per quanto riguarda l'autenticità del codice, è possibile sfruttare i certificati, giusto ?

Aggiungo un altra domanda: è ancora sensato porsi il problema di dover rendere illeggibile il codice IL ? La scelta di MS di fornire in distribuzione anche il codice sorgente non è forse in linea con i presupposti dell'open-source (dai quali MS era molto distante, prima di .NET) ?

© 2001 User Group Italiano UGIdotNET. Tutti i diritti riservati. Note legali. - Partita IVA 01927050185