Per crittografia multipla, c'era una domanda precedente: Is crittografia multipla una buona idea?
Per sapere come si decodifica correttamente - di solito si guarda l'output e si decide se ha senso. Ad esempio, ha il formato file di un file gif / jpeg / zip? Se fosse un testo semplice, è tutto ASCII o correttamente codificato UTF-8? Ignorando i punti codice non ASCII, solo 96 dei 256 possibili valori di un byte sono stampabili. Quindi se decifrassi il messaggio di immondizia con la chiave sbagliata e il messaggio è lungo 1000 caratteri, la probabilità che tutti siano lettere ASCII stampabili per caso sarà solo (96/256) 1000 o circa 1 in 10 400 . Anche permettendo a UTF-8 i personaggi devono essere in determinate combinazioni; ad es., se il primo byte è della forma 1110xxxx
(dove ogni x potrebbe essere un 1 o uno 0), ciò significa che i due caratteri successivi devono essere entrambi la forma 10xxxxxx
per essere unicode appropriato). Questo genere di cose raramente accade per caso.
C'è spesso anche padding (che richiede un certo formato nel testo in chiaro), checksum o codici di autenticazione dei messaggi che aiutano a distinguere i dati inutili dalla chiave sbagliata, dai dati reali.
EDIT: Se hai crittografato un file due volte con due diversi tasti (simmetrici) k1 e k2 e hai provato a decifrare c = E (k1, E '(k2, m)), non c'è un modo in cui potresti solo brutalizzare -force indovina k1 semplicemente esaminando l'output di D (k1 ', c), che apparirà casuale per qualsiasi pattern. Dovresti forza bruta, k1 e k2 simultaneamente per capire le proprietà di m.
Tuttavia, è estremamente impossibile indovinare una chiave privata ad alta entropia dalla forza bruta. La quantità di lavoro per la forza bruta di una chiave AES a 128 bit è di circa 2 128 , ad esempio, un miliardo (10 9 ) computer che testano un trilione (10 12 ) chiavi al secondo per 1000 anni avrebbe solo 1 su 10 milioni di possibilità di trovare la chiave giusta. Quindi il guadagno derivante dalla crittografia multipla in questo scenario non sembra essere molto.
D'altra parte, se hai una crittografia asimmetrica con una chiave pubblica nota, puoi verificare rapidamente se la chiave privata indovinata è corretta - puoi crittografare un messaggio con la chiave pubblica conosciuta e quindi decrittarla con la tua chiave privata per recuperare il messaggio originale?