Come creare un formato che è molto difficile da decodificare? [chiuso]

0

Sto imparando a conoscere i formati di file. Ho un'applicazione che farà analisi e avrà alcune informazioni personali. Devo fare in modo che solo alcune persone siano in grado di accedere ai dati e anche quelle persone ottengono un accesso molto limitato in base a un API che fornirò. Sto pensando alla crittografia e all'uso di un formato proprietario per rendere difficile la decodificazione di qualsiasi cosa. La crittografia consentirà solo alle persone con la chiave di accedere ai dati e il formato del file impedirà alle persone di esaminare direttamente i dati e utilizzando solo un API della piattaforma. Anche se non ne sono molto informato, ho sentito che è relativamente semplice il reverse engineering dei formati di file. Voglio creare un formato di file che sarà difficile da decodificare in modo che l'applicazione sia sicura. Si prega di darmi dei suggerimenti su cosa contribuirà a rendere difficile la decodifica di un formato. Inoltre, ci sono metriche che aiutano a conoscere la sicurezza di un algoritmo contro l'attacco di reverse engineering?

    
posta kneelb4darth 21.05.2017 - 17:40
fonte

2 risposte

4

I am thinking about encryption as well as using a proprietary format to make it difficult to reverse engineer anything..... I want to create a file format that will be difficult to reverse engineer so that application is safe.

Un formato di file difficile da decodificare è molto più difficile da implementare correttamente nell'applicazione rispetto a un semplice formato di file. Ciò significa che testare l'applicazione sarà più difficile, strano e difficile da riprodurre. Inoltre probabilmente verranno introdotti bug rilevanti per la sicurezza senza che qualcuno se ne accorga perché il codice per supportare un formato complesso è più difficile da esaminare rispetto al codice che supporta un formato semplice.
Per questo motivo l'applicazione non sarà più sicura ma in realtà meno sicura.

In breve: non cercare di raggiungere la sicurezza aggiungendo complessità non necessaria. Invece mantenerlo semplice e fare affidamento su crittografia correttamente implementata per la sicurezza, dal momento che si desidera comunque utilizzare la crittografia.

    
risposta data 21.05.2017 - 18:04
fonte
2

Creare un formato di file difficile da decodificare è qualcosa a cui non dovresti mirare perché è probabile che sia inutilmente dispendioso in termini di tempo e alla fine inefficace.

Se un utente ha accesso all'applicazione, è spesso banale decodificare il formato alterando piccole quantità di dati nell'applicazione e osservando le modifiche nel file. Devi aspettarti che questo sia più facile degli eseguibili offuscati di reverse engineering.

Se temi che gli utenti possano estrarre dati sensibili dai file a cui hai dato accesso, devi pensare troppo al design della tua applicazione. Questo non è qualcosa che può essere risolto con l'offuscamento.

    
risposta data 21.05.2017 - 18:12
fonte