Zum Inhalt springen

Datenbanken und String-Verschlüsselung


Empfohlene Beiträge

Geschrieben

Hi!

Ich habe 2 Fragen an euch, auf die ich für mein erstes grösseres Projekt in der Arbeit unbedingt eine Antwort brauche.

1. Womit kann ich am besten Daten die ich aus einer Datenbank ausgelesen habe anzeigen, wenn ich vor der Abfrage nicht weiss wieviele Datensätze ich zurückgeliefert bekomme, ich müsste ja ewig viele Textfelder kreieren, nur um die Eventualität auszuschliessen, dass ich nicht alle Daten anzeigen kann.

2.. Gibt es eine Möglichkeit, Strings zu verschlüsseln? Es muss nichts aufwendiges sein, ich möchte nur ein paar Kennwörter in einer Datei speichern, und es wäre nicht sehr QM konform, wenn man die Datei einfach öffnen könnte und sich die anschauen kann.

Habt ihr eventuell ein Beispiel für mich?

Vielen Dank

BMAS

Geschrieben

Also zu 1. würde ich dir raten alle Daten in eine Tabelle zu schreiben. Denn Tabellen werden "dynamisch" erstellt. Das heißt, das sie fast unendlich lang werden können.(wenn das dein Speicher zulässt)

Peeter

Geschrieben
Original geschrieben von BMAS

1. Womit kann ich am besten Daten die ich aus einer Datenbank ausgelesen habe anzeigen, wenn ich vor der Abfrage nicht weiss wieviele Datensätze ich zurückgeliefert bekomme, ich müsste ja ewig viele Textfelder kreieren, nur um die Eventualität auszuschliessen, dass ich nicht alle Daten anzeigen kann.

JTable auf einer JScrollpane

Original geschrieben von BMAS

2.. Gibt es eine Möglichkeit, Strings zu verschlüsseln? Es muss nichts aufwendiges sein, ich möchte nur ein paar Kennwörter in einer Datei speichern, und es wäre nicht sehr QM konform, wenn man die Datei einfach öffnen könnte und sich die anschauen kann.

Habt ihr eventuell ein Beispiel für mich?

String pwd = "pass";

java.security.MessageDigest digest = java.security.MessageDigest.getInstance("MD5");

digest.update(pwd.getBytes());

byte[] md5hash = digest.digest();

Bei MD5 kann man aber die Verschlüsselung nicht rückgängig machen, sondern nur die verschlüsselten byte[] vergleichen.

Ansonsten suche mal bei google nach java + jce

Gruß Jaraz

Geschrieben

Neija es werden ca. 16000 Datensätze, à 13 Feldern von noch unbestimmter Grösse, ich denke da reicht der Speicher schon aus.

Ich habe gerade in der API nachgeschaut, meinst du JTable?

Geschrieben
Original geschrieben von Daragon

Zu 2:

Notfalls kannst du noch von Hand eine

erstellen. Die einfachste ist die Caeser

Verschlüsselung. Du zählst einfach alle

Buchstaben einen Hoch. Den kannst du

dann auch ein wenig Variieren zB den ersten

5zeichen hoch, den zweiten dann 3runter usw.

Da es nun wirklich nicht schwer ist Java zu decompilen, würde ich davon abraten. Wenn es nur darum geht die Passwörter irgendwie "zu verunstalten", kannst du es natürlich so machen.

Gruß Jaraz

Geschrieben

Nein, ich habe mir das Projekt nochmal ein wenig durch den Kopf gehen lassen, ich glaube ich werde das anders machen, es kein Kennwort in dem Sinne geben, es wird nur abgeglichen wer an der Domäne angemeldet ist und welche Rechte er hat (dann müssen sich die Benutzer kein weiteres Kennwort merken *g*). Also werde ich in das File nur reinschreiben:

[Admin]

Benutzer1

Benutzer2

[superuser]

Benutzer4

Benutzer7

Benutzer8

[user]

Benutzer3

Benutzer5

Benutzer6

Benutzer9

etc.

Wie sollte ich sowas am besten verschlüsseln?

PS: Ich muss es dann natürlich auch wieder entschlüsseln können, um die Benutzernamen abgleichen zu können.

Geschrieben
Original geschrieben von BMAS

PS: Ich muss es dann natürlich auch wieder entschlüsseln können, um die Benutzernamen abgleichen zu können.

Wenn ich das richtig verstanden habe, brauchst Du das nicht wieder zu entschlüsseln. Du läßt das MD5 über den Benutzer laufen und vergleichst dann das "verschlüsselte" Ergebnis mit den "verschlüsselten" Einträgen der Datei.

Korrigiert mich, falls ich da falsch liege.

Sillium

Geschrieben

@Jaraz

Wäre auch eine Idee, so blöd es klingt, aber darüber habe ich noch gar nicht nachgedacht...

@sillium

Hmm, klingt logisch...

Gibt es irgendwo ein Tutorial für das MD5?

Geschrieben

Hat jemand vielleicht ein Beispiel für mich, wie ich einen String mit MD5 verschlüsseln und wieder entschlüsseln kann? :(

Geschrieben

Hallo,

ist doch gut, wenn man keinen Code-Schnipsel den man irgendwann mal gemacht hat wegschmeißt... :marine


class md5 {

	public static void main(String[] args) {

		try {

		String plainPassword = "pillepalle";


		java.security.MessageDigest md = java.security.MessageDigest.getInstance("MD5");

		md.update(plainPassword.getBytes());

		String h = new String (md.digest());

		System.out.println(h);

		} catch (java.security.NoSuchAlgorithmException nsae) {

			// any exception will be handled here

		}

	}	

}

Entschlüsseln geht übrigens nicht.

Du kannst nur das eingegeben Passwort ebenfalls verschlüsseln und dann mit dem gespeicherten vergleichen.

Gruß Jaraz

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...