IV生成/长度通过编码被破坏

时间:2014-09-09 15:31:36

标签: php encoding utf-8 mcrypt

我正在尝试使用mcrypt来加密/解密我通过POST传递的字符串 当我生成IV时,我得到正确的长度(16),用strlen验证。 mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC), MCRYPT_RAND);

当我这样做时,我将隐藏输入中的IV提交到该页面上的其他页面 echo strlen($_POST['iv'])我得到30以上的数字 虽然,字符串看起来与它的长度为16的位置相同 这是编码问题吗?如何在我加密那些的页面中修复IV(以及可能是我所有其他编码值)?

1 个答案:

答案 0 :(得分:0)

我能够通过在每个相应页面上使用base64_*编码/解码值来解决这个问题