Ricerca del metodo di crittografia [chiuso]

-1

Ho un sistema blackbox il cui codice è nascosto all'utente finale. Questo è l'intento comunque, so che alcuni potrebbero violarlo, ma generalmente è chiuso.

È in esecuzione su PHP e ho bisogno di esportare un database a scopo di backup. Questo database contiene alcuni dati che non voglio manomettere all'utente, quindi l'idea è ovvia: crittografare il file di dati.

Posso usare RSA, ma non sono sicuro se sia il migliore, considerando che le chiavi private e pubbliche sarebbero incorporate nel codice. Posso anche proteggere con password un zip contenente il file di dati. Ci sono forse altri metodi di cui non sono a conoscenza.

Ecco uno stupido diagramma artistico ASCII di ciò che voglio

 /*

+----------black-box system-----------+
|                                     |
|   +----------+      ??????????????  |  +-------------+
|   | SQL DUMP | ===> ? ENCRYPTION ? ==> # BACKUP FILE #
|   +----------+      ??????????????  |  +-------------+
|                                     |         v
|   +----------+      ??????????????  |  +-------------+
|   | SQL DUMP | <=== ? DECRYPTION ? <== # BACKUP FILE #
|   +----------+      ??????????????  |  +-------------+
|                                     |
+-------------------------------------+

*/

Il file dovrebbe essere nuovamente leggibile dall'app, per la funzionalità di "ripristino dal backup".

Per favore, suggerisci come proteggere il file. Grazie.

    
posta MightyPork 31.10.2014 - 19:31
fonte

1 risposta

2

Il tuo modello è casual, quindi potresti anche lanciare una moneta. Non essere sarcastico, ma se memorizzi le chiavi in codice e stai condividendo la chiave tra tutti gli utenti della tua app, e il tuo obiettivo è solo quello di oscurare i dati da manomissioni casuali, allora non importa. Scegli un codice simmetrico (ad esempio il codice AES-128) e sii pronto. È comunemente supportato e anche veloce su hardware moderno.

Assicurati di non commercializzare la funzionalità come "sicura". È casuale anti-manomissione, ma non sicuro.

    
risposta data 31.10.2014 - 20:05
fonte

Leggi altre domande sui tag