Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    17

    protezione post distribuzione applicazione spring

    Salve prima di tutto mi scuso perché non sono sicuro di aver azzeccato la sezione,
    detto questo avrei una domanda.
    ho un'applicazione J2ee (spring + mysql sotto tomcat) ora dovrei installarla da un cliente che ha il server per farla girare nella sua intranet.
    mi chiedevo se fosse possibile (sicuramente ma non so come) fare alcune cose:
    1 proteggere il codice in modo tale che non possa essere cambiato modificato ne letto (ho creato il war senza i sorgenti ma le classi potrebbero sempre essere decompilate)
    2 evitare che venga reinstallata altrove
    3 fare in modo che dopo n giorni se non mi ha pagato blocco tutto, questo ovviamente prevede del codice java ma nn riesco a trovare un modo veramente efficace.

    vorrei almeno rendere la vita impossibile a chi nel caso ci volesse provare...qualsiasi suggerimento è ben accetto...posso intervenire sul bd sulle configurazioni di apache e sul codice.

    Grazie a tutti

  2. #2
    Utente di HTML.it L'avatar di MatCap83
    Registrato dal
    Jun 2005
    residenza
    Firenze
    Messaggi
    1,319

    Re: protezione post distribuzione applicazione spring

    Originariamente inviato da asso100
    1 proteggere il codice in modo tale che non possa essere cambiato modificato ne letto (ho creato il war senza i sorgenti ma le classi potrebbero sempre essere decompilate)
    2 evitare che venga reinstallata altrove
    3 fare in modo che dopo n giorni se non mi ha pagato blocco tutto, questo ovviamente prevede del codice java ma nn riesco a trovare un modo veramente efficace.
    Ciao, capisco perfettamente che vuoi rendere la vita impossibile, dopo tanto duro lavoro . Interessa anche a me la questione, e allora mi sono documentato un po' !! Io ti suggerirei:

    1. bloccare la lettura o la modifica di un file è possibile solo all'interno di un sistema operativo (a meno di non proteggere ad esempio un file compresso con una password). Su linux puoi agire con gli sticky bit, mentre su Win con i permessi, definendo chi può fare cosa. Dunque non è il tuo caso, perché il tuo cliente X potrebbe modificare i permessi a suo piacimento sul sistema operativo. A questo punto ti consiglio di usare un offuscatore di codice, che agisce sulle classi compilate, rendendo più complessa la loro lettura nel caso siano decompilate. Puoi usare ProGuard:

    http://proguard.sourceforge.net/

    e qui c'è una guida:

    http://dellabate.wordpress.com/2010/...-con-proguard/

    2. per questo la vedo più dura. La soluzione ideale sarebbe un sistema di licenziamento, del tipo "per installare o avviare il programma serve una chiave xxx" (come per i software commerciali, Windows su tutti). Non ho mai usato niente del genere, e ci sono molte soluzioni sul web anche se a pagamento . Ho trovato questa che sembra free:

    http://java.net/projects/truelicense
    http://truelicense.java.net/

    Qui c'è anche una lettura interessante:

    http://stackoverflow.com/questions/3...va-application

    e qui:

    http://stackoverflow.com/questions/1...a-java-program

    Potrebbe essere interessante implementare un proprio algoritmo per la generazione di una chiave, ovviamente avendo tempo e voglia a disposizione!

    3. Dovresti creare una versione trial dell'applicazione. True license dovrebbe andare bene anche per questo:

    http://truelicense.java.net/
    http://java.net/projects/truelicense

    Sul sito c'è scritto: "Licenses can be perpetual or temporary (valid within an arbitrary period).
    Shareware applications can configure secure on-demand creation of Free Trial Period (FTP) licenses."

    ciao
    "Nessuno mi ha visto farlo, e non puoi provarlo in nessun modo!" (Bart Simpson)

    >>> www.ombresulweb.com <<<

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.