mam następujący skrypt:
<?php
class SymmetricCrypt
{
// Klucz do szyfrowania i odszyfrowywania
private static $msSecretKey = "SECRECT KEY"; // Wektor inicjalizacji
private static $msHexaIv = "hdu8374hr96128b5d4b4f7b2fe7f7f05"; // Użyj algorytmu szyfrującego Rijndael
private static $msCipherAlgorithm = MCRYPT_RIJNDAEL_128
;
// Funkcja szyfruje łańcuch otwartego tekstu otrzymany w parametrze
// i zwraca wynik w postaci szesnastkowej
public static function Encrypt
($plainString) {
// spakuj $hexaIV do postaci dwójkowego łańcucha
$binary_iv = pack("H*", SymmetricCrypt
::$msHexaIv); // zaszyfruj $source
$binary_encrypted_string = mcrypt_encrypt(
SymmetricCrypt::$msCipherAlgorithm,
SymmetricCrypt::$msSecretKey,
$plainString,
MCRYPT_MODE_CBC,
$binary_iv);
// Przekształć $binaryEncryptedString na postać szesnastkową
$hexa_encrypted_string = bin2hex($binary_encrypted_string); return $hexa_encrypted_string;
}
// Funkcja odszyfrowuje szesnastkowy łańcuch otrzymany w parametrze
// i zwraca wynik w postaci szesnastkowej
public static function Decrypt
($encryptedString) {
// spakuj $hexaIV do postaci dwójkowego łańcucha
$binary_iv = pack("H*", SymmetricCrypt
::$msHexaIv); // przekształć łańcuch z postaci szesnastkowej na tablicę bajtów
$binary_encrypted_string = pack("H*", $encryptedString); // Odszyfruj $binaryEncryptedString
$decrypted_string = mcrypt_decrypt(
SymmetricCrypt::$msCipherAlgorithm,
SymmetricCrypt::$msSecretKey,
$binary_encrypted_string,
MCRYPT_MODE_CBC,
$binary_iv);
return $decrypted_string;
}
} //koniec klasy
?>
niestety jest w nim błąd (IMG:
http://forum.php.pl/style_emoticons/default/sad.gif)
czy mógłby mi kto wskazać ten błąd??
nie ropoznaje funkcji mcrypt_encrypt, rozszerzenia php_mcrypt.dll które jest zainstalowane poprawnie(odkomentowane w php.ini, php_mcrypt.dll jest w windows/system32)
Ten post edytował jessica99 2.08.2007, 15:37:41