# sicheres hardgecodetes passwort?



## dotlens (13. Jun 2005)

hallo leute

hab in meinem programm für gewisse funktionen einen passwort-schutz eingebaut. das heisst, nut priviligierte user können diese funktionen benutzen.
da das passwort aber hardgecodet ist, ist es nicht sonderlich schwierig dieses herauszufinden. (dekompilieren und source anschauen)

wie kann ich verhinden das das passwort sichtbar für andere ist?

danke und gruss


----------



## KISS (13. Jun 2005)

mit reinen javamitteln garnicht, ein relativ sicherer weg ist die application als signiertes jar auszuliefern und in einem keystore die schluessel zu speichern oder besser noch nur die hashes eines passworts. wirklich sicher geht es nur ueber externe authentifizierungssysteme


----------



## Bleiglanz (13. Jun 2005)

kodier doch einfach den MD5 hash "hart", dann kann keiner das wirkliche pw herauslesen

und vergleichen tust du MD5(eingabe) mit diesem konstanten wert

dann ist der Aufwand schon um einiges grösser...


----------



## dotlens (13. Jun 2005)

die ideen sind wirklich gut 

nun wirds etwas kniffliger:
ich brauche in meinem progi ein pw verschlüsselte daten zu entschlüsseln. dieser schlüssel dürfen die progi user aber nicht kennen.
auch wenn ich ihn als MD5 hash hart code kann man das nachschauen und sich selbst ein progi basteln, welches die geheimen Daten entschlüsselt.


----------



## KISS (13. Jun 2005)

wie gesagt, 100% sicher geht nicht mit reinem java, ansonnsten keystore anschauen, eventuell auch eine klasse basteln welche sehr kompliziert den schluessel zusammensetzt und diese obfuscaten, rein cryptomathematisch macht das allerdings keinen unterschied


----------



## Gast (22. Nov 2007)

hallo, kann mir jemand helfen, ich kann kein java sondern mache nur html programmierung, für meine private homepage möchte ich gerne ein passwort einbauen so das nur 2 bestimmte leute darauf zugriff haben, leider weis ich aber gar nicht wie so was geht


----------



## HoaX (22. Nov 2007)

und was hat jetzt java mit html zu tun? btw kannst du dass auch nicht in html machen, da html keine programmiersprache ist. frag doch einfach deinen hoster. den bezahlst du ja für sowas


----------



## Guest (22. Nov 2007)

dotlens hat gesagt.:
			
		

> die ideen sind wirklich gut
> 
> nun wirds etwas kniffliger:
> ich brauche in meinem progi ein pw verschlüsselte daten zu entschlüsseln. dieser schlüssel dürfen die progi user aber nicht kennen.
> auch wenn ich ihn als MD5 hash hart code kann man das nachschauen und sich selbst ein progi basteln, welches die geheimen Daten entschlüsselt.



Das Problem wirst du bei allem haben was du mit Java-Mitteln erstellt haben. Da dein Programm entweder das Passwort kennen muss, oder aber den Weg wie das Passwort zu entschlüsseln ist. Wenn einer kriminelle Energien hat und da was machen will, dann wird ihn beides nicht abhalten. Wer deinen Code schon dekodiert um das Passwort raus zu kriegen sollte auch kein Problem haben deinen Verschlüsselungsalgorythmus umzukehren und das verschlüsselte Passwort entschlüsseln zu können. 

Ist einfach so. Ob du dann MD5 nimmst, das mit 128bit verschlüsselt und von Java unterstützt wird, oder ob du dir einen eigenen Verschlüsselungsalgorythmus schreibst macht dann am Ende keinen Unterschied reproduzierbar sind sie alle. 

100%ige Sicherheit haste eh nie und wenn du mehr als die bereits genannten Möglichkeiten haben willst wirst du wohl auf andere Tools gehen müssen.

Eine dritte Möglichkeit wäre übrigens noch das Passwort in einer verschlüsselten Datei mit im JAR-File zu speichern, doch auch der Algorythmus für die Verschlüsselung der Datei muss irgendwo hinterlegt werden im Programm.


----------



## Guest (22. Nov 2007)

Gast hat gesagt.:
			
		

> hallo, kann mir jemand helfen, ich kann kein java sondern mache nur html programmierung, für meine private homepage möchte ich gerne ein passwort einbauen so das nur 2 bestimmte leute darauf zugriff haben, leider weis ich aber gar nicht wie so was geht



HTML-Programmierung gibt es nicht, da HTML keine Programmiersprache ist und auch entsprechend keine Möglichkeiten in diese Richtung besitzt.


----------



## Gast (22. Nov 2007)

ich kann aber java elemente in html einbauen und da wüsste ich gerne wie ich so was machen kann


----------



## maki (22. Nov 2007)

> ich kann aber java elemente in html einbauen und da wüsste ich gerne wie ich so was machen kann


Du meinst Jaca*Script*, oder genauer, ECMAScript, das ist etwas anderes als Java.

Kurz gesagt: Du bist im falschen Forum


----------



## tfa (22. Nov 2007)

Anonymous hat gesagt.:
			
		

> Wer deinen Code schon dekodiert um das Passwort raus zu kriegen sollte auch kein Problem haben deinen Verschlüsselungsalgorythmus umzukehren und das verschlüsselte Passwort entschlüsseln zu können.
> 
> Ist einfach so. Ob du dann MD5 nimmst, das mit 128bit verschlüsselt und von Java unterstützt wird, oder ob du dir einen eigenen Verschlüsselungsalgorythmus schreibst macht dann am Ende keinen Unterschied reproduzierbar sind sie alle.



Echt? Du kannst sichere Hash-Funktionen knacken? Das zeig mir mal.


----------



## The_S (22. Nov 2007)

Bei ungünstig gewählten Werten (wie es von Usern häufig der Fall ist), lässt sich ein Hash-Wert genauso leicht wie eine Verschlüsselung mit einer Wörterbuch-Attacke knacken.


----------



## DonIvanCorleone (22. Nov 2007)

ja aber nur weil man Brutforce technisch alle Kurzwortvarianten durchspielt und guckt wann es passt, aber einen schönen Hash wie z.B. MD5, SHA1 oder meinet wegen auch einen Chaum van Heijst und Pfitzmann Hash mit einem 512 Bit Schlüssel oder auch 1024 Bit Schlüssel und einer Passwortlänge von sagen wir..... 10 Buchstaben...... na ich weiß nicht, die Info bekommt man nun wirklich nicht durch Brutforce raus, bzw. kann man das auch nicht "zurückrechnen", wäre ja noch schöner wenns ginge, dann können sich so manche Hashsysteme gleich die Kugel geben..


----------



## tfa (22. Nov 2007)

Ja, durch Brute-Force (Ausprobieren aller Möglichkeiten). Aber eine Hash-Funktion ist nicht umkehrbar (bzw. sollte nicht es nicht sein).


----------



## The_S (22. Nov 2007)

Joa, dagegen sagt auch keiner was. Aber jenachdem wer den Wert, aus dem der Hash-Wert gebildet werden soll, aussucht (meistens ein User), kommt es schon häufiger vor, dass über BrutForce bzw. Wörterbuchattacken der Hash "geknackt" werden kann.


----------



## tfa (22. Nov 2007)

Dann sind wir uns einig. Ich dachte nur, unser Gast meinte, er könne MD5 einfach so umkehren. Und das geht eben nicht.


----------



## DonIvanCorleone (22. Nov 2007)

Eine Sache habe ich vergessen "Rainbow-Tables" die können MD5 cracken. Aber beschäftigt habe ich mich nie damit also keine Ahnung wie das geht etc. Aber bei allen anderen SHA1 etc. sollte das nicht funktionieren.


----------



## The_S (22. Nov 2007)

http://de.wikipedia.org/wiki/Rainbow_Table


----------

