È sicuro se criptico solo una piccola parte di un file

0

Sto scrivendo uno script in grado di crittografare i file in una cartella. Ci vogliono 30 secondi per crittografare un file da 1 GB, quindi mi chiedo se è sicuro quando crittografo alcuni bit di un file e lascia il resto non criptato? Voglio che lo script venga eseguito il più velocemente possibile.

    
posta Thành Long Bùi 10.09.2016 - 07:20
fonte

4 risposte

4

Questo dipende completamente dal contenuto del file. Se si tratta di un testo crittografato in cui la chiave per la decrittografia viene posizionata all'inizio del file, potrebbe essere sufficiente crittografare solo queste informazioni poiché è essenziale interpretare il resto dei dati. Ma nella maggior parte degli altri casi sarebbe probabilmente una cattiva idea criptare solo una parte.

Ad esempio, immagina che questo sia un documento contenente password in testo normale. In questo caso è ovvio che criptarne solo una parte sarebbe una cattiva idea, perché proteggerebbe solo un piccolo numero di password e lascerebbe il resto esposto. Ma anche con la maggior parte dei file video o audio è possibile recuperare la maggior parte del contenuto anche se alcune parti sono danneggiate (o crittografate).

    
risposta data 10.09.2016 - 07:57
fonte
2

Immagina di avere una foto e vuoi che nessuno la veda. Quindi apri un editor di immagini e ne offuschi solo una piccola parte.

Posso scommettere che tutti possono ancora indovinare cosa c'è nella foto.

Questo è esattamente quello che stai cercando di fare con la crittografia, e questo è anche il motivo per cui è una cattiva idea.

    
risposta data 04.11.2016 - 14:57
fonte
-1

L'hardware moderno con AES-NI può eseguire la crittografia AES alla velocità ben superiore a 1-2 GB / s . In confronto, il tuo hard disk probabilmente può scrivere solo a 50MB / s-100MB / s o SSD a circa 500MB / s-1GB / s. In altre parole, con la crittografia accelerata hardware correttamente implementata, è improbabile che la velocità di crittografia sia il collo di bottiglia qui.

Se hai un file enorme (decine di gigabyte o più grande) e vuoi essere in grado di modificare parti del file senza ricodificare / riscrivere l'intero file, questo è un problema completamente diverso. Per essere in grado di farlo in modo efficiente e sicuro, è necessario comprendere le modalità di crittografia a cifrario a blocchi . Vorresti che il tuo sistema di crittografia utilizzasse la modalità di crittografia che supporta in modo sicuro l'accesso casuale, come la modalità XTS. Si noti che la modalità di crittografia che supporta l'accesso casuale efficiente è spesso considerata da alcune persone non così strong come la modalità di crittografia dell'accesso seriale. Dovresti ricercare e considerare se le presunte debolezze della crittografia ad accesso casuale sono di interesse per il tuo particolare scenario.

Il modo più semplice per utilizzare la modalità di crittografia che supporta l'accesso casuale in modo efficiente consiste nel montare il file crittografato come dispositivo / disco di blocco utilizzando un software di crittografia del disco completo, come TrueCrypt / VeraCrypt, LUKS o BitLocker.

    
risposta data 10.09.2016 - 20:20
fonte
-3

30s non è un sacco di tempo, quindi lascia che cripta l'intero file, se possibile. Se congela il sistema operativo (supponendo che tu sappia cosa significa), allora lascia che cripta 512 megabyte, o circa 1/2 del file, in quel 30s. Mi sembra altrettanto sicuro e ti risparmia metà della memoria persa per i processi essenziali. Qualsiasi meno e si rischia che gli attaccanti ottengano queste informazioni. In breve, puoi crittografare una piccola parte del file, dato che decifri esattamente 1/2 dei byte in questo ordine:

 GARRISON
+ANANANAN
---------
 GNREIFOA

di cui GARRISON è una combinazione di lettere arbitrarie, ANANANAN è un arbitrario tasto di Vigesa a 2 lettere che ha una A in esso. Quello A garantisce che ogni altra lettera sia codificata su se stessa. Non raccomanderei l'uso di AAAANNNN, perché è sufficiente una parte sufficiente del testo in chiaro per decodificare il testo crittografato utilizzando un attacco in chiaro in chiaro. Più di questo è unnessecary, e (50+ MB) meno di questo rende più facile agli hacker di decifrare la crittografia. Sto usando il testo, ma come pensi di digitare 500 milioni (usando UTF-16, 1 miliardo in ASCII e UTF-8) nel blocco note ?! Usare un codice Vernam o uno XOR (non riusare la chiave) potrebbe essere adatto a ciò che descrivi. XORing di un messaggio non dovrebbe durare così a lungo

    
risposta data 04.11.2016 - 14:53
fonte

Leggi altre domande sui tag