Sto implementando un'app mobile che utilizza l'algoritmo di crittografia AES per crittografare alcuni valori critici inviati a un server remoto (in pratica, la password dell'utente) e quindi decrittografato sul lato server utilizzando la stessa chiave privata. Funziona perfettamente ora, ma sono un po 'preoccupato di come memorizzare / ottenere la chiave privata.
Al momento ho diviso la chiave privata (che è codificata) in 3 oggetti stringa e, quando necessario, li concatenò. Temo che non si tratti di una soluzione valida, poiché qualsiasi utente malintenzionato potrebbe semplicemente decodificare il file binario e con un po 'di pazienza ottenere le tre parti.
Le domande sono:
-
Quale sarebbe un buon approccio che almeno renderebbe difficile l'hacker a conoscere la chiave privata?
-
Sarebbe utile utilizzare una chiave privata in base a un evento (ad esempio, la data corrente) invece di memorizzarla?