Hashlib unicode etc.

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
PPoe
User
Beiträge: 2
Registriert: Samstag 18. April 2015, 14:30

Hallo zusammen,
vorweg: Python ist absolutes Neuland für mich, bitte nicht zu viel Kritik :P
Ich habe folgendes Problem mit Umlauten:

Code: Alles auswählen

#!/usr/bin/python
# -*- coding: UTF-8 -*-

char = u"ä"
print(hashlib.md5(char.encode('utf-8')).hexdigest())
Egal was ich mache, es klappt nicht. Wenn ich es wie oben laufen lasse bekomme ich zwar keinen Fehler, aber es wird nicht der korrekte md5hash berechnet. (vllt der von '\xe4'?)
Bin hier langsam am verzwifeln, hoffe ihr könnt mir helfen :)

mfg PPoe
BlackJack

@PPoe: Zwei Fragen: 1. Wie ist der Quelltext kodiert, also ist der tatsächlich UTF-8 und 2. Warum denkst Du das Ergebnis sei falsch? Was kommt denn heraus und was wäre Deiner Meinung nach richtig und warum?

Der richtige Wert wäre übrigens 8419b71c87a225a2c70b50486fbee545.
PPoe
User
Beiträge: 2
Registriert: Samstag 18. April 2015, 14:30

@BlackJack: Schande über mein Haupt und seist du gepriesen! Ich habe aus Faulheit immer einen Online-md5-Generator zum prüfen verwendet, anscheinend den falschen... Problem hat sich in Luft aufgelöst, vielen Dank!

MfG. PPoe
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

MD5 ist übrigens kaputt. Ich hoffe mal du nutzt es nur zur Spielerei und nicht für irgendwas ernsthaftes.
Antworten