Sicurezza dell'uso di password o anche passphrase per crittografare i file

12

È sempre appropriato utilizzare password reali per crittografare i file da inviare con mezzi non sicuri.

Per mondo reale, intendo una password memorabile e memorizzabile da una semplice persona?

Sto implicando che al fine di crittografare in modo sicuro un file è necessario seguire questa guida:

  • Usa una password casuale lunga con abbastanza bit di entropia per fornire una chiave simmetrica sicura.
  • Pensa attentamente alla sensibilità dei dati relativa a Legge di Moore (ovvero, qual è l'impatto se questi dati vengono letti in 10 anni da ora dai computer più avanzati)
  • Pensa attentamente a come trasmettere la password a una parte autorizzata (consegna offline della password)

Alla luce di ciò, sospetto che la crittografia asimmetrica dei file sia molto meglio in termini di sicurezza rispetto alla crittografia simmetrica delle password a parità di tutte le altre cose.

    
posta Andrew Russell 13.07.2011 - 13:39
fonte

5 risposte

10

Stai pensando a due cose:

  • Principio di Kerckhoff . L'idea principale è che la chiave deve essere il segreto. Se qualsiasi parte del tuo sistema richiede che l'algoritmo rimanga sconosciuto, il tuo sistema si trova in un grosso problema. Il termine per qualsiasi sistema che richiede la segretezza dell'algoritmo è "sicurezza per oscurità" ed è deriso come terribile, perché è terribile. Le agenzie per la sicurezza nazionale se la cavano perché hanno anche assicurato che anche con l'hardware classificato, il principio di Kerckhoff si applica ancora. Questo è il motivo per cui quando John Walker ha iniziato a consegnare le strisce di codice ai sovietici, non avevano l'hardware, quindi hanno convinto i nordcoreani a prendere il Pueblo USS . L'NSA sapeva che i macchinari sequestrati sarebbero stati inutili senza il materiale per la chiavetta, non sapendo che i sovietici stavano ottenendo un set completo di codici per la maggior parte della marina statunitense.

  • La entropia della tua password. Shannon ha determinato che l'entropia delle parole inglesi varia tra 0,6 e 1,3 bit per carattere. Ciò significa che se hai bisogno di 40 bit di entropia per la tua chiave e selezioni parole inglesi, avrai bisogno di frasi di frase comprese tra 31 e 67 lettere. Questo è dietro la ragione per cui la gente chiede di tomaia & lettere minuscole insieme a cifre e simboli: per aumentare l'entropia.

risposta data 14.07.2011 - 03:24
fonte
7

Una password che può essere memorizzata da una persona media è, per sua natura, insicura: perché deve essere abbastanza breve da essere memorabile, semplicemente non può essere abbastanza lunga da fornire protezione contro qualcosa di diverso da un casuale, attacco manuale. Anche una passphrase memorabile ha un grado di insicurezza legato alla conoscenza dell'attaccante della vittima, e ciò non include il problema di assicurare che la passphrase sia condivisa in modo sicuro tra mittente e destinatario. (Qualsiasi metodo di protezione della passphrase può essere applicato anche ai file da crittografare: si potrebbe sostenere che anziché proteggere la passphrase, è sufficiente proteggere i file stessi.)

Penso che sarebbe ragionevole usare password o passphrase "reali" solo nei casi in cui i file da proteggere non siano particolarmente sensibili e limitare l'accesso è semplicemente un'azione token.

    
risposta data 13.07.2011 - 15:53
fonte
5

I am implying that in order to securely encrypt a file you must follow this guidance:

  • Use a long random password with enough bits of entropy to give a secure symmetric key.
  • Think carefully about data sensitivity relative to Moore's Law(i.e. what is the impact if this data is read in 10 years from now by the more advanced computers)
  • Think carefully about how to transmit the password to an authorized party (offline delivery of password)

Sono d'accordo con questo. Ma non penso anche che sia eccessivamente ingombrante.

Pensa di concedere a qualcuno l'accesso a casa tua: se c'è un lucchetto, generalmente devi dare loro una copia di una chiave. Le alternative sono:

  • non bloccare la casa (alcune persone nelle aree rurali lo fanno)
  • nascondere una copia di una chiave in un luogo oscuro e dire a qualcuno dove si trova
  • crea un metodo oscuro per ottenere l'ingresso (ad esempio qualche leva strana da qualche parte che sblocca una porta o una finestra ... in pratica, sarebbe sufficiente un blocco combinato meccanico / elettronico)

Se fossi preoccupato per la sicurezza, e volevo concedere un accesso frequente a casa mia a un parente o amico, farei lo sforzo di dare loro una chiave.

Allo stesso modo, se dovessi scambiare spesso documenti con qualcun altro, e tutto ciò che avevo era un sistema protetto da password (al contrario dello storage sicuro o della crittografia a chiave pubblica), sceglierei un lungo, nonmemorabile password casuale, e fare lo sforzo di trasmettere questa password a loro in un canale fuori banda, ad es per telefono o pubblicando un documento via Web in un luogo oscuro per un periodo di tempo molto breve.

    
risposta data 13.07.2011 - 16:11
fonte
4

La legge di Moore può essere neutralizzata usando una derivazione a chiave lenta. Ad esempio, PBKDF2 trasforma una password in una chiave applicando molte iterazioni di una funzione simile a un hash. È possibile ottimizzare il numero di iterazioni in modo che l'operazione sia ancora tollerabile sul computer (ad esempio, non richiede più di un secondo). Il vantaggio dell'attaccante è quindi il prodotto della sua pazienza e della sua relativa ricchezza: se l'attaccante può avere un (gruppo di) computer (i) che è 1000 volte più potente della tua stessa macchina, e se il computer è pronto per investire una dozzina di giorni (1000000 secondi) di calcolo per rompere il tuo schema di crittografia, quindi l'aggressore sarà in grado di provare circa 1 miliardo di potenziali password. È possibile memorizzare le password con un'entropia più alta di quella (ad esempio le password costituite da due lettere, quindi due cifre, quindi due lettere, quindi due cifre, come "qw04qr29" o "fm17zz05", sono memorizzabili e provengono da uno spazio di circa 4,5 miliardi di password possibili).

Sul lato positivo, il vantaggio dell'attaccante non dipende più dalla legge di Moore, purché si mantenga aggiornato il numero di iterazione (questo può essere un problema per i segreti a lungo termine, ad esempio un utente malintenzionato che tenta di crackare un codice crittografato file che ha copiato dieci anni fa). Dal lato oscuro, gli utenti tipici hanno la tendenza ad essere deludenti quando si tratta di memorizzare password apparentemente "semplici", o di astenersi, per esempio, scrivendole su una nota adesiva.

La crittografia asimmetrica non risolve il problema, ma lo sposta semplicemente: come proteggi la chiave privata dell'utente? Una possibile soluzione è quella di memorizzare un "master secret" (ad esempio una chiave privata asimmetrica dell'utente) in un dispositivo che limita arbitrariamente il tasso di "ipotesi" da parte di un utente malintenzionato. Può trattarsi di una smartcard che si spegne semplicemente dopo tre codici PIN errati. Questo può essere un server che autentica gli utenti con una password ma consente solo dieci tentativi all'ora.

    
risposta data 13.07.2011 - 16:06
fonte
4

In the light of this, I would suspect that asymmetric encryption of files are very much better in security terms than symmetric password encryption all other things being equal.

Il problema è che altre cose non sono uguali. L'uso di un codice asimmetrico richiede lunghezze della chiave molto più lunghe, la crittografia è di ordini di grandezza più costosa e le modalità di cifratura in streaming non sono ben definite o standard. Ricorda che l'entropia di una chiave asimmetrica n bit è molto inferiore alla chiave simmetrica di dimensioni simili, mentre il calcolo necessario per la crittografia è molto maggiore.

    
risposta data 13.07.2011 - 21:33
fonte

Leggi altre domande sui tag