Situazioni che richiedono la protezione dei file contro la manomissione quando sono archiviati su un computer degli utenti

-1

Sto creando un "Sistema di archiviazione Pokémon" con un modello Client / Server e, come parte di ciò, stavo pensando di memorizzare un file di inventario sul computer degli utenti che non desidero essere modificato tranne che dal mio programma. Un'alternativa a questo sarebbe invece di memorizzare il file di inventario sul server e controllarne la modifica inviando comandi al server, ma mi chiedevo se ci sono situazioni che richiedono l'archiviazione di file su un computer degli utenti dove la modifica sarebbe indesiderabile e se sì come proteggi i file? Stavo pensando AES con una sorta di checksum?

    
posta Joel 04.09.2012 - 21:22
fonte

3 risposte

8

Logicamente è impossibile - se il computer client ha tutte le informazioni per modificare l'inventario, allora ha tutte le informazioni necessarie per modificare l'inventario.

Puoi rendere più difficile la crittografia dei dati e nascondere la chiave all'interno del tuo programma, memorizzare parti della chiave in luoghi diversi e calcolare parti basate su alcuni calcoli è popolare. Ma alla fine dipende da quanto tempo / sforzo ci metteranno dentro. Se questo è solo un gioco per bambini, allora la crittografia semplice lo farà - se stai facendo il gioco d'azzardo online per il grande $$$ allora non lo farà!

    
risposta data 04.09.2012 - 21:32
fonte
2

I was thinking AES with some sort of checksum?

No. Se qualcuno decompone il tuo Software, otterrà la chiave e sarà in grado di modificare la somma di controllo. L'unico modo per proteggere questi dati dalla modifica è archiviarli sul tuo server.

Se si installa su un computer di cui non si ha il controllo, si supponga che il proprietario del computer abbia accesso a ALL il codice sorgente installato (e possa modificarlo).

    
risposta data 04.09.2012 - 21:42
fonte
2

È una gara di hacking che non puoi vincere, ma puoi rendere interessante il concorso firmando e / o crittografando i dati. Se è coinvolto un server remoto, il telecomando può eseguire la firma e la verifica.

Inoltre, considera che è necessario prevenire altre cose che la fabbricazione o l'alterazione - i "buoni" file di inventario potrebbero essere condivisi (o venduti), archiviati e riutilizzati, o molti altri tipi di abuso creativo.

Ricorda che il link più debole è quello che verrà attaccato. Se i tuoi metodi di firma e verifica sono abbastanza buoni, gli hacker indirizzeranno semplicemente la forma decodificata / non firmata dei dati che devono esistere per poter essere utilizzata.

    
risposta data 04.09.2012 - 21:57
fonte

Leggi altre domande sui tag