Frage

Leider so viele Fragen zu halten, zu fragen, aber Sie Jungs scheinen immer zu sein, so nett und hilfsbereit ...

Ich brauche eine Anwendung zu tun, dass die Einfuhren von Daten aus einer Datei. Zum Beispiel Benutzer wählt eine Datei und die Anwendung Importen einige Daten in der Datenbank.

Aber ich habe nachgedacht, und diese Art von App führt zu einem Problem der Integrität und Authentizität von Dateien. Wenn ein Benutzer die Datei ändert, wird die Anwendung nicht, diese Informationen zu benutzen. Und wenn eine Datei nicht aus einer Quelle gut bekannt ist, ist die Anwendung diese Datei nicht verwenden kann.

Wie mache ich diese Art der Sache?

P. S .: Ich bin mit C # .NET

War es hilfreich?

Lösung

Authentifizierung und Integrität sind durch digitale Signaturen zur Verfügung gestellt.

Follow driis' Rat, wenn Sie das Dateiformat zu steuern.

Alternativ kann, wenn die XML-Datei ist, verwenden Sie einen XML Signature .

Mit C # / NET:.

Andere Tipps

Wenn Sie die Quelldatei-Format steuern kann, können Sie eine digitale Signatur einbetten. Wenn Sie die Unterschrift auf einem Hash der Dateiinhalte stützen, dann können Sie sicher sein, dass die Datei von einer vertrauenswürdigen Quelle stammt, und das hat nicht manipuliert wurde.

Es hängt davon ab, wie stark Sie diesen Schutz wollen.

Zum Beispiel können Sie eine XML-Datei (für die menschliche Lesbarkeit), die einen Hash-Knoten irgendwo hat, die den Hash der Originaldatei enthält (+ Salz). Dies kann durch das Programm aktualisiert werden, aber der Benutzer kann eine härtere Zeit haben, was das Schlüsselmittel herauszufinden. Wenn das Programm die Datei geöffnet wird, berechnet er den Hash und prüft, ob es das gleiche ist wie die in der Datei geschrieben ist.

Sie können sogar noch einen Schritt weiter nehmen und digitale Signaturen verwenden, aber das ist viel komplizierter.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top