Ho un kit RPG in Unity Store e volevo aggiungere una certa protezione ai consumatori per quando vogliono salvare praticamente qualsiasi informazione. Dagli ingranaggi che il personaggio indossa per l'inventario, le bombe, le chiavi, i luoghi in cui gli oggetti sono stati spostati ecc. Ho già tutto ciò che funziona è che stavo usando il serializzatore Unity C # ma ho incontrato il problema quando ho deserializzato quando aggiungo altro a la classe che contiene le informazioni salvate. Quindi ho usato JsonUtility, ho trasformato la classe salvata in dati Json e l'avrei messa in PlayerPrefs ma volevo offrire una protezione extra per i consumatori, quindi ho esaminato AES e Asymmetrical Encryption.
Questa è la mia corsa veloce verso il basso e, a partire da ora, quando salvi i miei dati:
1) Genero una stringa casuale per la mia "chiave" con AES.
2) I Simmetrically Encrypt my data (AES).
3) Poi, in modo asimmetrico, crittografo la "chiave" AES.
4) Archivia la "chiave" asimmetrica crittografata e i dati crittografati AES in PlayerPrefs.
Mi sento però da quando ho archiviato la chiave "Asymmetrically Encrypted" in PlayerPrefs che detiene ancora la stessa quantità di sicurezza di se stessi per memorizzare la "chiave" AES generata in modo casuale in PlayerPrefs poiché la chiave è lì per qualsiasi inversione processo.
Sono corretto nel pensarlo? C'è un passaggio che mi manca o che devo cambiare?