Come posso proteggere le chiavi di crittografia nel codice? [duplicare]

0

Ho file sul server che è crittografato con AES. Sto sviluppando app iOS e Android per decodificare ed elaborare quei file nel telefono o nel tablet. Per decodificare i file sulle app client, devo usare / memorizzare le stesse chiavi AES nell'app. Ciò significa che devo inserire le mie chiavi AES nel codice in modo da poter utilizzare direttamente dal dispositivo di origine o di spedizione sul dispositivo client in modo da poter memorizzare lì. Mantenere / spedire le chiavi di crittografia nel codice è una cattiva idea, ma ho bisogno di quelle chiavi per elaborare i file.

Come posso conservare in modo sicuro le chiavi nel mio codice? O c'è un altro modo per ottenere le mie chiavi AES nel client in modo da poter decifrare i file?

    
posta Walt S. 11.08.2015 - 20:31
fonte

1 risposta

1

Hai ragione ad essere sospettoso di questo processo. Le app Android sono super facili da decompilare , quindi dovresti pensare che qualsiasi chiave che è incorporata nell'app possa anche essere pubblicato in un blog pubblico.

Senza ulteriori informazioni sul motivo per cui è necessario crittografare i file di dati, è difficile dare consigli dettagliati. Un modo usuale per risolvere problemi simili è utilizzare la crittografia a chiave pubblica. Ogni app cliente genera la propria chiave pubblica e quando richiede i dati dal server, il server la crittografa in modo specifico per quel client, utilizzando la propria chiave pubblica.

A meno che non ci siano dettagli che rendono il tuo problema più complesso, è possibile farlo utilizzando le librerie PGP standard per generare chiavi client e crittografare / decrittografare i file.

    
risposta data 11.08.2015 - 20:48
fonte

Leggi altre domande sui tag