Как сделать Ruby, AES-256-CBC и PHP MCRYPT_RIJNDAEL_128 играют хорошо вместе

 bool IsProbablyGuid(string s)
    {
        int hexchars = 0;
        foreach(character c in string s)
        {
           if(IsValidHexChar(c)) 
               hexchars++;          
        }
        return hexchars==32;
    }
10
задан dondo 8 December 2009 в 05:01
поделиться

1 ответ

Я не знаю PHP, но, читая связанные вопросы на боковой панели, я вижу Преобразование функции дешифрования Ruby AES256 в PHP . Это включает ссылку на эту страницу , указывая, что 128 в MCRYPT_RIJNDAEL_128 относится к размеру блока шифрования, а не к размеру ключа. Вы заметите, что размер ключа, который вы передали между ruby ​​и PHP, в обоих случаях составляет 256 бит. Другими словами, это ожидаемое поведение, и вы уже используете больший ключ.

#!/usr/bin/ruby
require 'base64'

puts((Base64.decode64("RIvFgoi9xZaHS/0Bp0J9WDRyND6Z7jrd3btiAfcQ8Y0=").length * 8).to_s)

HTH

7
ответ дан 3 December 2019 в 19:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: