Hallo allemaal,
Ik zit met een encryptie/decryptie probleem. Het geval is dat ik met delphi een string ge-encrypt moet opslaan in de database. Deze string wordt daarna weer ge-decrypt door PHP uitgelezen.
Verschillende encryptie methoden heb ik inmiddels gebruikt, echter geen blijkt zowel onder delphi als php dezelfde waarden terug te geven.
In dit geval gebruik ik de encryptie methode 'DES' waar ik wel wat informatie over heb gevonden. Na zoeken op het web kwam ik op de site http://www.crypto-central.com/index.html een DES component tegen.
De volgende invoer heb ik gegeven voor dit component onder Delphi 5:
Text to encrypt: boggles the inivisble monkey will rule the world
Resultaat is:
eZdgNHLnoQkFGGTAiCBLZvnv7UwTCg52b7R3IDTlyDF663UtBRaIQ6gt-5kPgQsj9OQeA6VYDBY
Voor php ik heb de mcrypt module geinstalleerd, en ik zie deze ook staan onder phpinfo().
De volgende code gebruik ik onder php om een string te encrypten/decrypten
En het resultaat is:
vsš 3hÄ96/09vJgKtf3DUERmU8L+lCiAiKbkgLlXp6HxGftw4nWCc7/jvFsVnVonv/EydPv/
Zoals je kan zien komen de waarden niet overeen. Ook worden de waarden niet goed gedecrypt in de andere programmeertaal.
Ik heb nu echt alles geprobeerd maar krijg het niet voorelkaar, heeft iemand een voorzetje of een oplossing. Zit echt met mijn handen in het haar. Het mag eventueel ook wel een ander encryptie methode zijn!
Alvast bedankt.
Ik zit met een encryptie/decryptie probleem. Het geval is dat ik met delphi een string ge-encrypt moet opslaan in de database. Deze string wordt daarna weer ge-decrypt door PHP uitgelezen.
Verschillende encryptie methoden heb ik inmiddels gebruikt, echter geen blijkt zowel onder delphi als php dezelfde waarden terug te geven.
In dit geval gebruik ik de encryptie methode 'DES' waar ik wel wat informatie over heb gevonden. Na zoeken op het web kwam ik op de site http://www.crypto-central.com/index.html een DES component tegen.
De volgende invoer heb ik gegeven voor dit component onder Delphi 5:
Text to encrypt: boggles the inivisble monkey will rule the world
code:
1
2
3
| DES1.LoadIVString('Init Vector'); DES1.InitialiseString('This is a very secret key'); DES1.EncString(edtTestText.Text, TempStr); |
Resultaat is:
eZdgNHLnoQkFGGTAiCBLZvnv7UwTCg52b7R3IDTlyDF663UtBRaIQ6gt-5kPgQsj9OQeA6VYDBY
Voor php ik heb de mcrypt module geinstalleerd, en ik zie deze ook staan onder phpinfo().
De volgende code gebruik ik onder php om een string te encrypten/decrypten
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
| <? $text = "boggles the inivisble monkey will rule the world"; $key = "This is a very secret key"; $iv_size = mcrypt_get_iv_size(MCRYPT_DES, MCRYPT_MODE_ECB); $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND); $enc = mcrypt_encrypt(MCRYPT_DES, $key, $text, MCRYPT_MODE_ECB, $iv); echo "$enc<br>"; $crypttext = mcrypt_decrypt(MCRYPT_DES, $key, $enc, MCRYPT_MODE_ECB, $iv); echo "$crypttext<br>"; ?> |
En het resultaat is:
vsš 3hÄ96/09vJgKtf3DUERmU8L+lCiAiKbkgLlXp6HxGftw4nWCc7/jvFsVnVonv/EydPv/
Zoals je kan zien komen de waarden niet overeen. Ook worden de waarden niet goed gedecrypt in de andere programmeertaal.
Ik heb nu echt alles geprobeerd maar krijg het niet voorelkaar, heeft iemand een voorzetje of een oplossing. Zit echt met mijn handen in het haar. Het mag eventueel ook wel een ander encryptie methode zijn!
Alvast bedankt.