Ben 3DES CBC modunda şifreli bir şifreli var, ve ben bazı sorun şifresini yaşıyorum. Ben aşağıdaki bilgileri (gerçek değerler) var:
<?php
// Three 16 character long keys
$key1 = '1234567890123456';
$key2 = '6543210987654321';
$key3 = '6549873210456123';
// The initialisation vector
$ivec = '0102030405060708';
// A token which looks something like this
$token = '2ad82e09e3b4e7c491e4bb9fb7c606e1';
?>
I this blog post bulunan PHP Sınıf kapalı benim şifre çözme fonksiyonunu göre. Bu şuna benzer:
<?php
function decrypt($key,$iv,$token) {
$td = mcrypt_module_open('tripledes', '', 'cbc', '');
$iv = substr($iv, 0, mcrypt_enc_get_iv_size($td));
$expected_key_size = mcrypt_enc_get_key_size($td);
$key = substr(md5($key), 0, $expected_key_size);
mcrypt_generic_init($td, $key, $iv);
$decrypted_string = trim(mdecrypt_generic($td, base64_decode($token)));
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return $decrypted_string;
}
?>
Ancak, algoritma içine üç anahtar beslemek için nasıl emin değilim. .. Öyle gibi onları birbirine zincirleme denedim: $ anahtarı1 $ key2 $ key3, ve tersten, ama boşuna.
Herhangi bir yardım mutluluk duyacağız.