La conoscenza dei dati decrittografati e crittografati è sufficiente per trovare la chiave?

7

Supponiamo che un utente malintenzionato conosca il contenuto crittografato, il contenuto decrittografato e l'algoritmo utilizzato: può ottenere la chiave utilizzata per crittografare il contenuto o semplifica la ricerca della chiave?

Penso che questo possa variare tra la crittografia simmetrica e asimmetrica e tra diversi algoritmi. Quindi quanto è sicuro questo scenario con algoritmi diversi se l'unica cosa che devo tenere segreta è la chiave?

Modifica

Chiedo questa domanda perché ho appena letto le FAQ di SpiderOak e, per quanto ho capito, non memorizzano né la password di un utente né la chiave di crittografia che viene deriver dalla password dell'utente. Tuttavia, devono assicurarsi che la password dell'utente sia quella giusta quando accede alla pagina Web.

Se non memorizzano la password e non memorizzano la chiave, l'unica possibilità di controllare se la password è corretta è quella di decodificare alcuni dati crittografati noti e verificare se il risultato è quello giusto.

es. al momento della registrazione potrebbero crittografare i dati CHECK e al momento del login potrebbero derivare una chiave dalla password inserita e decrittografare CHECK crittografato e vedere se è CHECK . In caso contrario, la chiave non era giusta, e quindi la password non era neanche.

C'è un altro modo in cui potrebbero farlo?

    
posta MinecraftShamrock 30.09.2014 - 21:26
fonte

1 risposta

7

Ciò a cui ti riferisci è un attacco con testo normale , in cui cerchi di capire la chiave confrontare le versioni crittografate e non crittografate di un campione di dati. Fortunatamente, praticamente tutti i principali algoritmi di crittografia attualmente in uso, incluso AES, non sono noti per essere suscettibili a questo tipo di attacco. Sapere che cosa decodifica qualcosa è completamente inutile per capire come va la chiave (a meno che, forse, il tuo approccio sia tentare di forzare la chiave).

Mentre Spideroak tecnicamente può usare il metodo che descrivi (cioè, codificare un file campione conosciuto), in realtà usa una procedura conosciuta come hashing in base al loro sito web. L'hash è una tecnica di memorizzazione delle password molto comune; in effetti viene utilizzato da quasi tutti i siti Web che elaborano gli accessi degli utenti. È un processo matematico che contiene alcuni dati (come una password) come input e genera una stringa unica di lunghezza fissa come output. È facile calcolare l'hash di alcuni dati, ma dato l'hash, è molto difficile capire quali fossero i dati originali. Ma finché fornisci gli stessi dati, l'hash uscirà sempre lo stesso.

Secondo Spideroak, quando crei un account, il tuo browser calcola l'hash bcrypt della tua password e invia l'hash a spideroak. Presumibilmente, quando si effettua il login, spideroak invia l'hash al browser e il browser utilizzerà l'hash di ciò che è stato digitato per verificare che corrisponda.

    
risposta data 30.09.2014 - 22:14
fonte

Leggi altre domande sui tag