È possibile eseguire un ambiente java crittografato?

0

Ho visto che le macchine virtuali in virtualbox o VMware possono essere crittografate in modo che nessuno all'esterno possa accedere al disco, al ram o alla cache della CPU poiché l'intero hardware viene emulato e crittografato. Mi chiedo se sia possibile con un ambiente java.

Voglio creare un ambiente java computing sicuro a cui non è possibile accedere dall'esterno da nessuno sullo stesso hardware. ad esempio, un server condiviso. se questo è possibile, in caso affermativo come dovrei installarlo?

    
posta user1768940 11.01.2015 - 16:21
fonte

2 risposte

3

Se un utente malintenzionato ha accesso come root a una macchina, può leggere tutta la memoria, eseguire operazioni di debug, decodificare il codice byte java, ecc. Non esiste un modo pratico per impedire a un utente malintenzionato di ottenere una chiave segreta nascosta nella RAM da qualche parte.

In definitiva, da qualche parte si stanno andando a memorizzare i file di classe in una JVM in esecuzione. Se un utente malintenzionato ha accesso fisico alla macchina su cui è in esecuzione, può accedere ai file di classe.

    
risposta data 14.01.2015 - 02:40
fonte
0

Non vedo alcun beneficio nel crittografare la JVM a meno che tu non abbia sviluppato uno personalizzato che immagino non sia il tuo caso. Quindi presumo che tu voglia proteggere 'encrypt' il lato server della tua applicazione java su un server condiviso, non sulla stessa JVM.

Detto questo, per proteggere la tua applicazione java hai fondamentalmente due parti di cui occuparti:

  • Assicurando gli artefatti e in sostanza le classi compilate, una delle tecniche usate è l'offuscamento del codice.
  • Protezione I dati che l'applicazione deve manipolare utilizzando la crittografia e l'hashing.

Per entrambi i punti sono sicuro che con google non rimarrai deluso:)

    
risposta data 11.01.2015 - 19:37
fonte

Leggi altre domande sui tag