La memorizzazione della chiave privata e delle chiavi pubbliche nella stessa directory sul server è consigliata, come fa OwnCloud?

1

Questo è raccomandato o una buona / normale pratica? Penso di no.
Perché ho visto che OwnCloud memorizza tutte le chiavi di crittografia in una directory sul server. Una directory contiene le chiavi private e una tutte le chiavi pubbliche.

Ma la loro documentazione dice della loro crittografia: "Ma dovresti assicurarti di non perdere mai questa password, perché è l'unico modo per recuperare i file degli utenti."
doc.owncloud.org/server/6.0/admin_manual/configuration/configuration_encryption.html

Questo mi sembra totalmente sbagliato e poco professionale.
O c'è una buona ragione per cui entrambi sono memorizzati lì?

link Tutte le chiavi si trovano nella directory dei dati principale, non in una directory delle chiavi speciali da qualche altra parte

    
posta Daniel Ruf 22.06.2014 - 00:32
fonte

3 risposte

2

La chiave pubblica può essere distribuita arbitrariamente senza alcun impatto sulla sicurezza. L'archiviazione delle chiavi pubbliche con le chiavi private è assolutamente soddisfacente , ad esempio OpenPGP sta facendo lo stesso. Almeno Linux archivia i suoi certificati X.509 nella sottocartella in /etc/ssl - questo rende la gestione dei diritti un po 'più semplice; ma una volta che hai accesso a una chiave privata, sai dove trovare la chiave pubblica (che è "dietro l'angolo").

La domanda è: dove memorizzare le chiavi private . Il server alla fine ha bisogno di accedere alla chiave, se la si archivia da qualche altra parte, è necessario assicurarsi che il software possa trovarla (e quindi anche un hacker può farlo). Se non ti fidi del tuo server, sei perso comunque.

Dove la crittografia lato server può aiutarti è se memorizzi i dati su un'altra terza parte inaffidabile (Dropbox, Amazon EWS, ...). Il tuo server affidabile crittografa i dati e tutti i terzi possono vedere i dati crittografati.

Crittografia lato client rimuoverebbe la necessità di memorizzare la chiave privata sul server. Ma questo avrebbe delle implicazioni sulle applicazioni che usano standard come WebDAV, CalDAV, CardDAV, che non sono a conoscenza della crittografia lato client. Questo è il motivo per cui tutto ciò che owncloud fa è (simmetricamente) crittografare la chiave privata con la password dell'utente: questo è sempre noto al sistema non appena qualcuno si connette, indipendentemente dal protocollo utilizzato.

    
risposta data 22.06.2014 - 09:51
fonte
1

Bene, le chiavi pubbliche vanno bene per immagazzinarle. Ecco perché sono pubblici. Ad ogni modo, dovresti separare le chiavi private e assicurarti che nessun altro possa accedervi. Quindi probabilmente memorizzarli su un altro server sarebbe una buona pratica.

    
risposta data 22.06.2014 - 00:41
fonte
0

È così con gli algoritmi asimmetrici esistenti che la chiave privata include una copia della chiave pubblica o consente la sua ricostruzione efficiente. Pertanto, dove sono le chiavi private, ci sono anche le chiavi pubbliche. In ogni caso, le chiavi pubbliche sono pubbliche, quindi possiamo presumere che tutti li abbiano, compresi potenziali aggressori, e indipendentemente da dove li mettete in primo piano. Mantenere le chiavi pubbliche e private "separate" non ha senso: puoi tenere separati solo i dati privati. La chiave pubblica, essendo pubblica, non può essere separata da qualsiasi cosa .

Vuoi mettere le chiavi pubbliche in una directory perché le chiavi pubbliche sono pubbliche e una directory è un modo per pubblicarle.

Potresti avere chiavi private in una directory se quella directory è anche un repository per i dati privati dell'utente, come verrebbe chiamato nel mondo Microsoft / Active Directory il profilo di roaming dell'utente. Spetta alla directory mantenere i diritti di accesso appropriati in modo che solo quell'utente specifico possa accedere ai propri dati privati; la memorizzazione della chiave privata può inoltre essere ulteriormente protetta con crittografia basata su password.

Ora tutto ciò significa che un server AD per un dominio Microsoft è davvero un componente hardware molto delicato, e faresti meglio a tenerlo al sicuro dagli aggressori. Lo stesso vale per OwnCloud o qualsiasi altro sistema che memorizza dati sensibili per l'utente. Ciò è inevitabile se le funzionalità di base del sistema consentono effettivamente di rendere disponibili tali dati sensibili agli utenti di roaming.

    
risposta data 22.06.2014 - 00:51
fonte