AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Daten verschlüsseln

Ein Thema von Eichhoernchen · begonnen am 29. Jul 2007 · letzter Beitrag vom 29. Jul 2007
Antwort Antwort
Eichhoernchen

Registriert seit: 22. Apr 2004
Ort: Hagen
322 Beiträge
 
Turbo Delphi für Win32
 
#1

Daten verschlüsseln

  Alt 29. Jul 2007, 14:25
Ich würde gerne in meinem Programm die Laufzeitdaten, die vom User hinzugefügt werden verschlüsselt auf der Festplatte speichern, und beim Programmstart wieder einlesen.
D.h. ich müsste ein festes Passwort haben, jedoch wo soll ich das Speichern, das kann ich ja schlecht als Konstante in den Quellcode schreiben, das würde ja sogar ich knacken können. Des weiteren, soll die Datei von jedem PC auf dem mein Programm läuft gelesen werden können. Der PC verfügt nicht über Internet und daher kann der Schlüssel nicht auf einem Server liegen.

Okay erstmal stellt sich die Frage, welches Verschlüsselungsverfahren. Wie sollte ich den Key aufbauen, sodass er sicher ist.

Und natürlich meine Hauptfrage: wie speicher ich den Schlüssel relativ sicher?


Ich bin echt Neuling auf dem Gebiet.

Vielen Dank für eure Hilfe.
Jan
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#2

Re: Daten verschlüsseln

  Alt 29. Jul 2007, 14:40
Hi

am besten speicherst du das Passwort im Kopf. Geht das nicht dann auf einer externen Hardware wie eine SmartCard die ist einbruchssicher (zumindestens für den normalsterblichen). Geht das auch nicht dann auf einem USB Stick den der User am Mann trägt.

Aber niemals hardcoded in der Software und für alle daten aller User deiner Software mit dem gleichen Schlüssel. Das suggeriert nur Sicherheit wo keine ist. Das ist sogar schlimmer als garnicht zu verschlüsseln. Denn es gilt: mit einem scharfen Messer schneidet man sich nicht. Wenn der User also weis das seine Daten ungeschützt sind so wird er nötigenfalls eine externe und sichere Verschlüsselung benutzen, mit einem eigenen Passwort in seinem Kopf gespeichert. Denkt aber der User das deine Software seine Daten schützt so vertraut er darauf das niemand sie knacken kann. Das ist aber eine irrige Annahme da ja der Hacker nur einmalig deine Software knacken muß um an alle Daten aller deiner Benutzer ranzukommen. Das sind dann also effektiv nicht 0% Sicherheit sondern sogar -100% Sicherheit oder 100% Unsicherheit.

Gruß Hagen
  Mit Zitat antworten Zitat
Eichhoernchen

Registriert seit: 22. Apr 2004
Ort: Hagen
322 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Daten verschlüsseln

  Alt 29. Jul 2007, 15:01
hmmm mist... das mit den externen Medien scheidet aus, dass soll ja nur ein kleines Programm sein für ne Community.
Gibt es keine Weg einen Schlüssel im Programm zu hinterlegen und diesen aber irgendwie durch Funktionen immer wieder erstellen zu lassen, sodass man nicht so einfach dahinter kommt. Sicher wird das nie volle Sicherheit geben aber in einer kleinen Community werden es wohl nicht viele schaffen sowas zu knacken. Aber immerhin sieht man den Daten nicht an, was hinter ihnen Steckt.

Also sehe ich das richtig, man könnte nur per knacken der Echse an das Passwort kommen und nicht über die verschlüsselten Daten, wenn das Passwort/Verfahren gut gewählt ist?
man könnte das Passwort ja auch in einem Logo hinterlegen, was im Programm sichtbar ist, so per Steganographie oder so, das würde das ganze doch ziemlich erschweren oder? Da muss man ja erstmal drauf kommen.
Jan
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#4

Re: Daten verschlüsseln

  Alt 29. Jul 2007, 15:22
Wenn das Verfahren eines ist das per mathemartischen Beweisen als sicher bewiesen wurde dann heist dies nur
"der einzigste Angriff auf ein solches Verfahren hat die Komplexität einer Brute Force Attacke".
Man muß also alle möglichen Passwörter durchprobieren um an die Daten zu kommen.

Nun wir schützen also ein Geheimniss = Daten mit einem viel kürzeren Geheimniss==Passwort. Wenn das Passwort in der EXE steht und diese frei analysiert werden kann dann ist das so als ob das Passwort hinten auf deiner Kreditkarte steht. Ist das sicher ?

Es gibt keinen Weg sicher ein Passwort durch reine Software zu schützen wenn die Software komplett lesbar ist. Und ein kompilierter Source der eine binäre EXE erzeugt spiegelt diese binäre EXE wieder wie auch diese EXE diesen Source wiederspiegelt. Wenn du aus deinem Source herauslesen kannst wie das Passwort lautet so kann das jeder andere auch aus der EXE. Es gehört ein bischen mehr Wissen dazu aber wirklich nur ein bischen.

Die Lösung ist einfach: der Benutzer gibt ein eigenes Passwort vor der Ver/Entschlüsselung seiner Daten ein.
Ist das nicht praktikabel weil du möchtest das Benutzer A eine Datei für Benutzer B verschüsseln soll ohne das Benutzer A das Passwort von B kennen muß, so musst du mit a-symmetrischen Verfahren arbeiten, also RSA, Diffie Hellman, ElGamal, Elliptische Kurven usw. In diesem Falle benötigt man bei der Ver-schlüsselung von Daten kein Passwort aber bei der Ent-schlüsselung dieser Daten benötigt der Empfänger sein Passwort um diese Daten zu lesen.

Gruß Hagen
  Mit Zitat antworten Zitat
Eichhoernchen

Registriert seit: 22. Apr 2004
Ort: Hagen
322 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Daten verschlüsseln

  Alt 29. Jul 2007, 15:59
Das Problem überhaupt ist, dass für den Benutzer B immer nur ein Teil der Daten von Benutzer A einsehbar sein sollen, den Rest soll das Programm im Hintergrund versteckt verarbeiten, der Benutzer B hat also nur ungefährliche Daten von Benutzer A, die aber intern im Programm verknüpft sind zu den vollen Angaben, die die Nutzer aber nicht einsehen sollen, mit denen aber gearbeitet werden muss.

Dann wäre es ja blöd würde jeder ein Passwort haben und theoretisch alles entschlüsseln können, so würde jeder an alle Daten kommen, daher darf der Benutzer kein Passwort wissen.
Aber das ist wahrscheinlich ohne andere Datenträger unmöglich, richtig?
Jan
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz