Domanda

Ci dispiace continuare a chiedere tante domande, ma voi ragazzi sempre sembrano essere così gentile e disponibile ...

Ho bisogno di fare un po 'di applicazione che le importazioni dati da un file. Per esempio, l'utente seleziona un file e l'applicazione importa alcuni dati nel database.

Ma ci ho pensato, e questo tipo di applicazione porta ad un problema di integrità e l'autenticità dei file. Se un utente modifica il file l'applicazione non è autorizzato a utilizzare tali informazioni. E se un file non è da una fonte ben nota, l'applicazione non può utilizzare quel file.

Come faccio a fare questo genere di cose?

P.S .: Sto usando C # .NET

È stato utile?

Soluzione

L'autenticazione e l'integrità sono forniti da firme digitali.

Segui il consiglio driis' se controlli il formato del file.

In alternativa, se il file è XML, utilizzare un XML Signature .

.

con C # / NET:

Altri suggerimenti

Se è possibile controllare il formato del file di origine, è possibile incorporare una firma digitale. Se si basa la firma su un hash del contenuto del file, allora si può essere sicuri che il file proviene da una fonte attendibile, e che è non è stato manomesso.

Dipende da quanto forte si vuole questa protezione.

Ad esempio, è possibile avere un file xml (per migliorare la leggibilità umana), che ha un nodo hash da qualche parte che contiene l'hash del file originale (+ sale). Questo può essere aggiornato dal programma, ma l'utente può avere più difficoltà a capire che cosa significa chiave. Quando il programma si apre il file, calcola l'hash e controlla se è lo stesso di quello scritto nel file.

Si può anche fare un passo avanti e utilizzare le firme digitali, ma questo è molto più complicato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top