Esiste la possibilità di crittografare con diverse chiavi pubbliche e decrittografare con qualcuno di loro?

1

Devo implementare il seguente scenario:

  1. l'applicazione genera string - "Hello world"
  2. chiedi all'utente la sua chiave pubblica
  3. l'utente fornisce la sua chiave pubblica all'applicazione (nessuna violazione della privacy)
  4. L'applicazione
  5. crittografa questa stringa con entrambe le chiavi pubbliche: è la chiave pubblica (dell'applicazione) e la chiave pubblica dell'utente.
  6. l'applicazione memorizza la stringa crittografata nel database.
  7. una volta che l'utente vuole mostrare i dati - prende la stringa crittografata e decrittala con la sua chiave privata
  8. la stessa cosa per l'applicazione.
posta Evgeny 08.11.2018 - 15:10
fonte

1 risposta

2

PGP ha un metodo per gestirlo che (nel tuo caso) andrebbe qualcosa del tipo:

Per proteggere i dati:

  1. L'applicazione conosce la chiave pubblica dell'utente (Ku)
  2. L'applicazione genera "Hello world."
  3. L'applicazione genera una buona chiave di crittografia simmetrica (Ks)
  4. L'applicazione utilizza Ks per crittografare "Hello world."
  5. L'applicazione crea una copia di K che è crittografata con Ku
  6. L'applicazione crea una copia di Ks crittografata con la chiave pubblica dell'applicazione (Ka)
  7. L'applicazione memorizza la stringa crittografata e entrambe le password crittografate

Per recuperare i dati:

  1. L'applicazione fornisce la copia di Ks crittografata con Ku
  2. L'utente lo decripta usando la sua chiave privata
  3. L'applicazione utilizza K decrittografato per decrittografare i dati e visualizzarli per l'utente.

Poiché esiste una copia di K crittografata con Ka, l'applicazione può decrittografare i dati senza l'utente finché è disponibile la chiave privata dell'applicazione.

EDIT:

Poiché @CBHacking indicato nei commenti, è altamente si consiglia di trovare un sistema crittografico già collaudato che soddisfi le proprie esigenze. Roll-your-own crypto è un modo semplice per fare errori imbarazzanti. Parlando come qualcuno che ha implementato il primo archivio di password non in chiaro nella mia azienda, ci sono un sacco di opzioni create da persone che capiscono questo materiale molto meglio di noi.

    
risposta data 08.11.2018 - 16:29
fonte

Leggi altre domande sui tag