Sto cercando di distribuire un'immagine VM Linux (con un kernel Linux modificato adatto alle esigenze del prodotto) che esegue alcuni software proprietari che già si trovano nella VM che distribuisco. L'obiettivo è consentire agli utenti di eseguire la VM in locale sui propri computer.
La mia domanda è: quali sono alcuni buoni modi per proteggere il mio software proprietario senza che sia troppo difficile per gli utenti onesti utilizzare il nostro software?
Sono consapevole che è sempre possibile decodificare tutto ciò che distribuisco, ma speravo ancora di aggiungere alcune misure per renderlo troppo noioso per l'utente malintenzionato.
Alcune delle idee che ho già:
- Firme crittografiche aggiunte alla VM o calcolate e caricate sul mio server per confrontarle con firme valide per rilevare la modifica del software.
- Chiavi di crittografia nascoste / offuscate nella partizione di avvio che a sua volta decrittografa il file system root.