Verschlüsselung von Daten

Status
Nicht offen für weitere Antworten.

Josty_de

Aktives Mitglied
Hallo zusammen,

kann mir jemand vielleicht mit einem kleinen Programm helfen, welches mir Daten vom Typ String, Integer und Date verschlüsselt? Die Daten werden aus einer DB (DB2-DB) gelesen (gleiche Datentypen), entschlüsselt, verarbeitet und dann wieder verschlüsselt und in eine andere Tabelle der DB zurückgeschrieben.

Gruss und danke schonmal
Markus
 
der orginal string heist zb : hallo
verschlüsselt: ibmmp
möglichkeit 1 cäserchefrierung:
jeder buchstabe wird durch einen anderen ersetz (leicht zu knacken)
möglichekeit 2: der char wert wird in bits verwandelt und mittels xor not usw verändert

als lektüre such dir ein assembler tutorial raus (vorteil der berschreibungen die ich dazu gelsen habe, war immer verschlüsselung.
des weiteren gibts da noch das javabuch kapitel 47 (www.javabuch.de)

wenn du weitere methoden zur verschlüsselung willst guck mal bei hackit rein (addy ka)
die meisten davon sind recht schlecht und eignen sich eigentlich nur um einen server zu sichern (geh mal davon aus, das es darum geht).

ansonsten frag mal mr google, der kennt sich da wunderbar aus.
 
Was soll das dann werden? Verschlüsselung mit vorchristlichen Methoden? Für sowas gibts deutlich modernere Methoden...
 
... für die Reaktionen und Antworten.

Es geht um folgendes:

Ich habe eine DB auf meinem loaklen Notebook. Da solche Geräte beliebt sind, werden sie gerne geklaut.
Dies kann man aber nicht immer verhindern.
Demnach will ich die Daten auf der DB verschlüsseln, bzw. wenn ich meine Java-Software aufrufe sollen die Daten entschlüsselt werden.

Dafür gibt es natürlich naive Methoden, wie das Char- oder String-weise modifizieren der Daten (Verschlüsselungswörter), man kann aber auch über öffentl. und/oder private Keys gehen.
Was gibt es noch?
Was bietet noch eine gute Performance, wenn bei jedem Einlesen die daten entschlüsselt werden, bzw. beim Speichern die Daten verschlüsselt werden.


Gruß
Markus
 
hi!

hat vielleicht nicht deine DB eine Funktion dafür?
Also um eine sichere verschlüßelung zu bekommen solltest du dich
auf bewährte mittel beschränken. Ich denke das Problem haben
schon andere vorher gehabt...dafür sollte es lösungen geben.

Verschlüsselungs-Algoritmen: IDEA, GOST, 3-DES es gibt noch mehr gute...


mfg
 
Hallo,

hört sich schon mal gut an.
Der Sinn ist ja der, dass man ohne das Java Programm und ohne Authentifizierung die Daten in der DB zwar sehen kann, jedoch nur verschlüsselt. Wie sieht es nur mit der Performance aus, wenn tausende von Datensätzen abgefragt und demnach entschlüsselt werden müssen. Was kann hier helfen. Vielleicht der Webserver?

Markus
 
Wenn du alle Daten in der DB verschlüsselst, kannst du zunächst mal herzlich wenig mit der DB anfangen, denn SQL-Abfragen auf ne komplett verschlüsselte DB wirste net hinbekommen. Bei Programmstart müsstest du alle Daten entschlüsseln und in temporäre Tabellen schreiben, die beim Runterfahren der DB/des PCs automatisch gelöscht werden, weil sie nur im RAM gehalten werden.
 
Danke für den Link, kann ich gut gebrauchen.



-> An "AlArenal"

Der Link ist klasse. Damit ist auch das Performance-Problem behoben.
Funktioniert recht einfach und ergiebig 🙂
Man sollte nur über den Schlüssel wachen


Markus
 
Das ist wohl wahr, aber wenn du die DB verschlüsselt hättest, hättest du es ja auch nicht anders machen können, denn den Schlüssel im Programm ablegen bringt ja auch nix. Einfach die .class-Datei dekompilieren und schön hätte jeder den Schlüssel.

Absolute Sicherheit gibts nunmal net.

Freut mich, dass ich helfen konnte.
 
Nochmal an "AlArenal":

Die Idee ist ja klasse, will sich aber auf DB2 nicht umsetzen lassen.
Die Unterverzeichnisse werden verschlüsselt.
Greife ich aber mit mienem Java-Programm darauf zu oder versuche mich über den DB2-Befehlszeilenprozessor dmit zu verbinden, wird die DB nicht gefunden.

Wie kann man trotzdem auf die DB zugreifen, wenn man auch als der User eingeloggt ist, der auch die Unterverzeichnisse mit Dateien verschlüsselt hat.


Gruß
Markus
 
*grübel*

Da stellt sich die Frage, ob DB2 da irgendwie am Betriebssystem vorbei auf Dateien zugreift...

http://www.aspg.com/megafaq.htm
Does MegaCryption work with DB2 files?
Yes, MegaCryption has a direct interface to DB2 files allowing columns or entire tables to be encrypted automatically using DB2 fieldproc exits.
(kann ich aber net mehr zu sagen, weil das Nav-Applet bei mri immer hops geht)

http://www.devx.com/getHelpOn/10MinuteSolution/17712/1954?pf=true

http://www-106.ibm.com/developerworks/db2/library/techarticle/benfield/0108benfield.html
 
Ich bin die Links durchgegangen...
Der IBM-Link scheint eine nette Alternative, wobei mir die Performance leiden wird.
Aber irgendwie finde ich keinen Link, der mir einfach nur eine Möglichkeit bietet auf DB2 Daten uzugreifen, wenn diese durch Win2000 oder XP verschlüsselt sind.


Markus
 
Hi!

Wenn du die Verschlüsselung von XP/2000 benutzt, also die des NTFS,
kannst ja nur du als User diese Daten auch lesen. Dazu müßtest du
ja die abgelegten Datenbank dateien unter eingenschaften entsprechend
einstellen.

Das problem ist echt, was ich auch hatte, das mir mal mein win abeschmiert ist
und ich die daten vergessen konnte. Aber soweit ich weiß kann man sich die wieder
entschlüsseln lassen irgendwie! Hoffen wir mal das es nicht passiert!

mfg
 
Hallo,

danke für den Tipp, nur...

Ich habe den DB2-Ordner mit sämltichen Subfolders und Dateien als User "xy" verschlüsselt. Auch die vollen Rechte auf diese Verzeichnisse und Dateien sind gegeben.
Wenn ich aber das Java Programm starte und mich als User "xy" connecten möchte (bin auch als User xy eingeloggt), bekomme ich keine Verbindung....E/A Fehler

Habe ich was vergessen?

Markus
 
Um mit einem Java Programm auf eine DB2 DB zuzugreifen, wobei die Daten über EFS verschlüsselt sind, muß man nur die DB2-Dienste mit dem gleichen User starten lasse, der die DB2-Dateien und Unterverzeichnisse verschlüsselt hat.

Eigentlich recht einfach.

Gruß
Markus
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben