lanman und nt password berechnen

Status
Nicht offen für weitere Antworten.

clemente

Mitglied
Hallo,

ich benötige eine Klasse, mit der ich aus einem Klartext Passwort ein verschlüsseltes nt/lanman password berechnen kann.
Das ganze wird ein Passwortmanagement Tool.

Kennt / hat irgend jemand dazu eine Implementierung? Oder weiß jemand, wie diese Verschlüsselungen funktionieren?

Vielen Dank,
Clemente
 

MPW

Top Contributor
Ne, hab leider keine Ahnung davon, aber wozu willst du das wissen, um du musst sie doch in unverschluesselter Form eingeben. Wie du sie verschluesselt auf die Platte speicherst spielt doch dann keine Rolle, da dein Programm sie eh auch wieder decodieren muss. Ich empfehle also einfach Standartverschluesselung.
 

clemente

Mitglied
Hallo,

klaro, der User gibt sein Passwort unverschlüsselt ein. Die Passwörter, Userinfos etc. liegen aber nicht in einer Datei, sondern kommen von einem zentralen LDAP Server.

Über die diversen Betriebsystemeigenen (Windows/Linux) Tools kann jeder User sein Kennwort ändern, hat bei meinem Szenario aber einen entschiedenden Nachteil: Insgesamt existieren für jeden User drei Kennwörter, die sich leider nicht zusammenlegen und von einem LDAP verwaltet werden können. Daher möchte ich ein Tool machen, daß plattformunabhängig die Kennwörter auf allen drei Servern synchron ändert.
Die Linux Servereien laufen prächtig, weil mit handelsüblichem MD5 verschlüsselt.
Der Sambaserver benötigt allerdings die nicht sehr schönen NT/LANMAN Hashes, von deren genauem Aufbau ich nur eine ungefähre Vorstellung habe. Baut wohl auf DES auf... Windows wird sich wohl nicht dazu bewegen lassen, nicht MS-Standards (haha) zu verwenden :-(

Lange Rede kurzer Sinn: Damit ich die Kennwörter verschlüsselt am Server hinterlgen kann, muß ich die Biester irgendwie verschlüsseln.
Entschlüsselt muß nichts werden, geht auch gar nicht. Beim Authentifizieren wird das zu testende Kennwort auch verschlüsslet und die Chiffren miteinander verglichen.

Viele Grüße,
Clemens
 

MPW

Top Contributor
Achso, dass war mir nicht so klar, bzw. hast du nicht so ganz klar gemacht, sry, dazu weiss ich nix;-)
 
G

Guest

Gast
Nach vieler unfruchtbarer Recherche habe ich einen Workaround gemacht.
Vielleicht interessiert es ja jemanden...

Dafür notwendig ist ein Linuxrechner mit laufendem Apache und Perl. Natürlich ist das ganze leicht auf PHP, JSP, Python und alles modifizierbar, was apache, tomcat p.ä. so ausführen kann.

In den smbldap-tools befindet sich ein Kommandozeilenprogram "mkntpwd".
Dieses wird von einem Perl Miniscript aufgerufen:

Code:
#!/bin/perl
use CGI qw(:standard);
$cleartext = param("password");
print $cleartext . "\n";
open(README, "mkntpwd -L " . $cleartext  . " |");
while (<README>) { print $_; }
close(README);
$pid = open(README, "mkntpwd -N " . $cleartext  . " |");
while (<README>) { print $_; }
close(README);
exit (0);

Das Java Programm kann sich die Hashes jetzt folgendermaßen besorgen:
Code:
	private String[] getSmbHashes(String cleartext) {
		URL url;
		try {
			url = new URL("http://server3/perl/test.pl?password=" + cleartext);
			InputStream is = url.openStream();
			BufferedReader br = new BufferedReader(new InputStreamReader(is));
			String clearText = br.readLine();
			String lanManHash = br.readLine();
			String ntHash = br.readLine();
			String[] result = {clearText, lanManHash, ntHash};
			return result;
		} catch (MalformedURLException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		return null;
	}

Die Methode liefert entweder einen Array mit Klartext, LanMan, NTPass zurück oder null.

Viel Spaß kann man sich zu so einem Flickenwerk wohl nicht wünschen...
Wenn jemand hierüber stolpert und eine schönere Lösung hat: Ich bin dankbar!

Clemente
 

clemente

Mitglied
Sorry, das anonyme Posting oben kommt natürlich von mir :)
Mit dem Modul Crypt::irgendwas kann Perl auch ohne mkntpwd nt und lanman hashes berechnen.
 

clemente

Mitglied
Und jetzt habe ich noch eine reine Java Implementierung.
Falls sie jemand haben will, bitte e-mail an mich.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E To count password and username access possibility Allgemeine Java-Themen 10
I Password Based Enctryption mit JCE Allgemeine Java-Themen 2
W UNC Pfade mit password und username Allgemeine Java-Themen 9
Encera Größe eines Objektes in Byte berechnen Allgemeine Java-Themen 2
bittedanke Wie benötigte Bits berechnen (Huffmankodierung) Allgemeine Java-Themen 7
C Koordinaten LONG/LAT eines neuen Punktes in bestimmter Entfernen und Winkel berechnen Allgemeine Java-Themen 3
ReinerCoder Kombinationsmöglichkeiten der Textfelder berechnen Allgemeine Java-Themen 14
S Mittelwert anhand eines Stream berechnen Allgemeine Java-Themen 5
MiMa Prüfziffer einer EAN Nummer berechnen Allgemeine Java-Themen 4
C Java Script Pause berechnen Allgemeine Java-Themen 5
D Kgv aller Paare aus einem Array mit n integer berechnen Allgemeine Java-Themen 5
MaxG. Best Practice Alle Kombinationen berechnen Allgemeine Java-Themen 3
Aruetiise Funktion(y = mx+n) in String speichern und berechnen Allgemeine Java-Themen 9
N Das große O berechnen Allgemeine Java-Themen 2
A OOP Problem beim Berechnen der größten Fläche eines Ringes Allgemeine Java-Themen 19
N Kombinationen beliebiger Größe berechnen Allgemeine Java-Themen 1
The Pi Anzahl der Gewichtscheiben berechnen Allgemeine Java-Themen 11
B Hirsch-Index berechnen Allgemeine Java-Themen 11
B Umfang berechnen für Polygone Allgemeine Java-Themen 18
C pplet Mitelwert Berechnen Allgemeine Java-Themen 0
J Primzahlen berechnen Allgemeine Java-Themen 13
K F-Verteilung FINV in Java berechnen Allgemeine Java-Themen 4
A Helligkeit eines Bildes berechnen Allgemeine Java-Themen 1
P Methoden Alle Kombinationen aus 2 Karten berechnen Allgemeine Java-Themen 2
C mp3-Lied Dauer berechnen Allgemeine Java-Themen 1
L Winkel eines Vektors berechnen [Anfängerprob] Allgemeine Java-Themen 5
R Threads Taskzeit berechnen Allgemeine Java-Themen 12
S Eclipse Entfernung berechnen Allgemeine Java-Themen 16
T Kreis und sekant schnittpunkt berechnen mit latitude longitude Allgemeine Java-Themen 4
B Java Diffentialgleichungen berechnen Allgemeine Java-Themen 3
W 2D-Grafik Kontrast eines Bildes berechnen Allgemeine Java-Themen 6
T Taylorpolynom berechnen Allgemeine Java-Themen 14
S Erste Schritte Mittelsenkrechte berechnen Allgemeine Java-Themen 3
P Matrix Kurtosis berechnen Allgemeine Java-Themen 40
S Werte aus 2 eindimensionale boolean arrays mithilfe von logischen operatoren berechnen Allgemeine Java-Themen 6
S Teiler Berechnen Allgemeine Java-Themen 6
Kr0e Differenzen von Bildern berechnen - Remote control Allgemeine Java-Themen 2
D md5 berechnen für BufferedImage Allgemeine Java-Themen 5
J bewegliche Feiertage berechnen Allgemeine Java-Themen 7
W Rechnungsbetrag berechnen Allgemeine Java-Themen 2
reibi Checksumme für ein File berechnen Allgemeine Java-Themen 12
M Integral berechnen Allgemeine Java-Themen 5
D Primzahlen berechnen funktioniert nicht Allgemeine Java-Themen 2
S Algorithmus um nächst folgende Primzahl zu berechnen Allgemeine Java-Themen 7
Developer_X Prozentdifferenz berechnen. Allgemeine Java-Themen 13
M Kombinationen über rekursiven Algorithmus berechnen? Allgemeine Java-Themen 10
M Monatliche Zeitspannen berechnen Allgemeine Java-Themen 3
Ark Arkussinus effizient berechnen Allgemeine Java-Themen 12
Iron Monkey Potenzzahlen mit shiftLeft berechnen? Allgemeine Java-Themen 13
N Rechenzeit berechnen? Allgemeine Java-Themen 3
H Schrifthöhe berechnen / Swing Allgemeine Java-Themen 5
T ungerade zahlen berechnen Allgemeine Java-Themen 3
X Suche Java Klasse die Feiertage berechnen kann Allgemeine Java-Themen 2
G ganzzahlige Potenz schnell berechnen Allgemeine Java-Themen 4
M Lautstärke von Audiosignal live berechnen Allgemeine Java-Themen 7
S CRC wert berechnen ergibt 0 ? Allgemeine Java-Themen 9
data89 Die Größe eines Strings in Byte berechnen? Allgemeine Java-Themen 12
T Arbeitsstunden berechnen Allgemeine Java-Themen 8
M Date Range auswerten und die Monate berechnen Allgemeine Java-Themen 2
V Setter zum Berechnen nutzen? Allgemeine Java-Themen 5
G Richtung berechnen anhand Koordinaten Allgemeine Java-Themen 3
P Dauer (Tage, Stunden, Minuten, Sekunden) berechnen Allgemeine Java-Themen 5
D Mittelwert einer Menge von Doubles berechnen Allgemeine Java-Themen 3
P Winkel berechnen. Allgemeine Java-Themen 3
0 Alle Teiler einer Zahl performant berechnen? Allgemeine Java-Themen 9
B Was würdet ihr dafür berechnen? Allgemeine Java-Themen 7
T MessageDigest von einem char[] berechnen Allgemeine Java-Themen 7
S den zweit niedrigsten wert in einem array berechnen Allgemeine Java-Themen 2
E CRC 8 Berechnen Allgemeine Java-Themen 1
M Math-String-Formel berechnen lassen Allgemeine Java-Themen 4
B Ellipsen Kreisbahnen berechnen! Allgemeine Java-Themen 11
M Alle möglichen Kombinationen von mehreren Objekten berechnen Allgemeine Java-Themen 6
J an und bn berechnen Allgemeine Java-Themen 5
F Datum mit anzahl tagen berechnen Allgemeine Java-Themen 3
B Differenz in Monaten berechnen --- DateDiff()? Allgemeine Java-Themen 12
B Distance berechnen! Allgemeine Java-Themen 7
D Feiertage berechnen Allgemeine Java-Themen 8
F vergangene Zeit berechnen Allgemeine Java-Themen 6
R Zeitspannen berechnen Allgemeine Java-Themen 7
N 2 hoch 100 berechnen Allgemeine Java-Themen 8
P Punkt berechnen Allgemeine Java-Themen 4
C x-te Wurzel berechnen Allgemeine Java-Themen 2
M Formel in einem String während Laufzeit berechnen. Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben