PHP-код:
mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $to_encrypt, MCRYPT_MODE_ECB);
Мне нужен соответствующий код powershell, который может дать тот же результат.
Я уже пробовал ConvertTo-SecureString/ ConvertFrom-SecureString.
Код Powershell (не создает правильное шифрование):
$api_code = "214e3854a1ec5433ae986d1e5d40c436"
$params = @{"controller" = $controller; "action"= $action; "all"= $TRUE; }
[Byte[]] $key = $api_code[0..$api_code.length]
$param_object = $params | ConvertTo-SecureString -AsPlainText -Force
$param_aes = $param_object | ConvertFrom-SecureString -key $key
Зашифрованная строка выходит другой. Есть ли параметр, который мне не хватает? Или есть другой модуль?
$param_aes
, вы, кажется, предполагаете, что вам нужно шифрование AES... Однако (и это распространенная ошибка) MCRYPT_RIJNDAEL_256 НЕ AES, только MCRYPT_RIJNDAEL_128. - person Narf   schedule 23.06.2015256
вMCRYPT_RIJNDAEL_256
относится к размеру блока, а не к длине ключа? - person Mathias R. Jessen   schedule 23.06.2015RijndaelManaged
в MSDN, опубликовал ответ - person Mathias R. Jessen   schedule 23.06.2015