Quale crittografia usare quando l'utente ha bisogno di memorizzare la chiave?

0

Recentemente sono entrato nelle sfide del codice, fatte dai miei amici, da me o da qualche altra fonte che ha a che fare con la sicurezza. Ora, ho il seguente scenario:

  <Login form>
       |
       |
[ Proccess login ] --> (Valid) --> [Create session in database]
       |                                        |
       |                                        |
       |                         [Encrypt session with a random key]
    (Invalid)                                   |
       |                                        |
       |                              <Encrypt and print key>
[Return to Login form]

Ora suggerisco all'utente di chiudere semplicemente il browser e torna a utilizzare l'app l'altro giorno.

  <Login form>
       |
       |
[ Proccess login ] --> (Valid) --> [Detect that the user already has a session]
       |                                                |
       |                                                |
       |                                       <Ask user for the key>
    (Invalid)                                           |
       |                                                |
       |                                 (Right key) <-----> (Wrong key)
[Return to Login form]            {Let the user in the app}     [Die]            

Come puoi vedere, ho bisogno di crittografare quella chiave e far sì che l'utente la memorizzi. Il che significa:

  • Basato su crittografia e decodifica tramite chiavi
  • Solo una chiave privata
  • Utilizzabile in ECMAScript e PHP

EDIT : penso di non averlo chiarito: non riesco a memorizzare la chiave. Quello che posso fare è questo:

[Generates key] --> [Encrypt common word] --> [Store encrypted word on database]

Quindi, quando l'utente tenta un tasto:

[Encrypt common word with the given key] --> <Same Result> --> Let user in
                 |
                 |
        <Different result> --> Die

C'è qualcosa che posso usare? Se sì, cosa?

    
posta MucaP 15.12.2017 - 21:30
fonte

0 risposte

Leggi altre domande sui tag