安全地使用base64_encode

时间:2014-03-05 17:26:06

标签: php encoding base64 password-hash

我使用base64编码一个字符串。所以目前它可以有“/ + =”但这是一个问题,因为例如我上传了一个文件,其中编码了一部分文件名和base64_encode,并且内部可能有一个“/”并打破了这个过程。 所以我搜索了一下,发现这个函数而不是使用base64_encode

function base64_url_encode($input)
{
return strtr(base64_encode($input), '+/=', '-_,');
}

function base64_url_decode($input)
{
return base64_decode(strtr($input, '-_,', '+/='));
}

我有两个问题:

  • 编码功能将“+”替换为“ - ”,但“ - ”仍为“ - ”。因此,解码功能将“ - ”替换为“+”。但也可能是它应该保持“ - ”。这个功能有效吗?对我来说,这听起来像是一个有角色问题的功能。
  • 我使用私有加密功能来加密密码。此函数使用base64_encode。那么使用上面的函数会产生问题吗?如果加密密码当前包含“/”,可能会出现问题吗?

如果这个功能不好,还有什么选择?

很抱歉问这个,但我真的不会问这对我来说是否微不足道

0 个答案:

没有答案