md5 in Python anders als in PHP

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.
Benutzeravatar
Kuttengeier
User
Beiträge: 27
Registriert: Freitag 17. August 2007, 07:04

md5 in Python anders als in PHP

Beitragvon Kuttengeier » Donnerstag 5. Juni 2008, 06:56

Hi,

ich möchte einen md5wert ausgeben. Als beispiel: "lol". In Python scheint der jedoch anders als in PHP zu sein.

PHP: 9cdfb439c7876e703e307864c9167a15
Python: c7951283431eedddf677f934b7eba72d

Mein Python code:
[code=]import md5
m = md5.new()
m.update("lol")
print m.hexdigest()[/code]

Es ist ziemlich wichtig, dass die beiden Codes identisch sind.

Würde mich über Hilfe freuen.

Kuttengeier
Zuletzt geändert von Kuttengeier am Donnerstag 5. Juni 2008, 08:44, insgesamt 1-mal geändert.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Beitragvon Hyperion » Donnerstag 5. Juni 2008, 07:14

Eigentlich sollte so etwas ja nicht passieren - oder habe ich md5 falsch verstanden?

Könnte es ggf. etwas mit der Kodierung der Zeichen zu tun haben, die Du in die Funktion gibst? Sind die in Python und PHP identisch?

Ansonsten gib uns doch mal das BSP aus PHP, damit wir ggf. vergleichen können.
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Beitragvon veers » Donnerstag 5. Juni 2008, 07:27

[veers@castle ~]$ php
<?=md5("lol");?>
9cdfb439c7876e703e307864c9167a15

[veers@castle ~]$ python
Python 2.5.2 (r252:60911, Feb 23 2008, 21:20:32)
[GCC 4.2.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import hashlib
>>> h = hashlib.md5()
>>> h.update("lol")
>>> h.hexdigest()
'9cdfb439c7876e703e307864c9167a15'


Scheint zu tun ;)
My Website - 29a.ch
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
Benutzeravatar
Kuttengeier
User
Beiträge: 27
Registriert: Freitag 17. August 2007, 07:04

Beitragvon Kuttengeier » Donnerstag 5. Juni 2008, 07:33

Danke, hat geklappt :)

Kuttengeier
Zuletzt geändert von Kuttengeier am Donnerstag 5. Juni 2008, 08:44, insgesamt 1-mal geändert.
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Donnerstag 5. Juni 2008, 08:40

Und wo lag der Fehler?

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
Kuttengeier
User
Beiträge: 27
Registriert: Freitag 17. August 2007, 07:04

Beitragvon Kuttengeier » Donnerstag 5. Juni 2008, 08:42

Keine Ahnung. Vielleicht das Falsche Objekt.

Kuttengeier
Benutzeravatar
tux21b
User
Beiträge: 18
Registriert: Mittwoch 15. Februar 2006, 23:20
Wohnort: Linz.at
Kontaktdaten:

Beitragvon tux21b » Donnerstag 5. Juni 2008, 09:51

oder falsche Funktion?

Code: Alles auswählen

>>> from md5 import md5
>>> md5('lol').hexdigest()
'9cdfb439c7876e703e307864c9167a15'
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Donnerstag 5. Juni 2008, 09:54

Egal wie ich es mache, es kommt immer das selbe heraus, was ja auch richtig ist:

Code: Alles auswählen

import md5
import hashlib

print md5.md5('lol').hexdigest()

m = md5.new()
m.update("lol")
print m.hexdigest()

print hashlib.md5("lol").hexdigest()

h = hashlib.md5()
h.update("lol")
print h.hexdigest()

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Beitragvon BlackVivi » Donnerstag 5. Juni 2008, 18:04

Encodings?... Könnte ich mir am ehesten vorstellen.
Benutzeravatar
Joghurt
User
Beiträge: 877
Registriert: Dienstag 15. Februar 2005, 15:07

Beitragvon Joghurt » Dienstag 10. Juni 2008, 21:12

Ich vermute ein newline am Ende des Strings. Also z. B. eine Zeile einer Datei eingelesen und davon die MD5 berechnet.

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]