Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Ruby: Общие вопросы > Шифрование AES-256-ECB RUBY vs PHP


Автор: zingan 20.5.2010, 13:46
Посоветуйте плиз, - не совпадают результаты шифрования
В чём я не прав?

Вот алгоритм на PHP

$strEncryptionKey = "ABCDEF1234567890ABCDEF1234567890";
$strPlainToken="Hello World!";
$hCrypt = mcrypt_module_open('rijndael-256','','ecb','');
mcrypt_generic_init($hCrypt,$strEncryptionKey,'123 4567890ABCDEF1234567890ABCDEF');
$strEncryptedToken = mcrypt_generic($hCrypt,$strPlainToken);
mcrypt_generic_deinit($hCrypt);
mcrypt_module_close($hCrypt);
echo "<br>strEncryptedToken=".$strEncryptedToken;
$strBase64Token = base64_encode($strEncryptedToken);
echo "<br> strBase64Token=".$strBase64Token;

и его желаемый аналог на RUBY

strEncryptionKey = 'ABCDEF1234567890ABCDEF1234567890'
strPlainToken = 'Hello World!'
require 'openssl'
strEncryptedToken =''
c = OpenSSL::Cipher::Cipher.new("AES-256-ECB").encrypt
c.key = strEncryptionKey
c.iv = '1234567890ABCDEF1234567890ABCDEF'
strEncryptedToken = c.update(strPlainToken)
strEncryptedToken << c.final
require 'base64'
strBase64Token = Base64.encode64(strEncryptedToken)
print '<br><br> strBase64Token ='+strBase64Token +'<br>' 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)