gpt4 book ai didi

php - base64 需要修改

转载 作者:行者123 更新时间:2023-12-04 05:21:10 25 4
gpt4 key购买 nike

base64 的问题

$data = 'my data';
echo $encryptedData = base64_encode($data);

//输出:
bXkgZGF0YQ==

我在 token 中添加了更多字符
$encryptedData = $encryptedData . 'sdfsdfasdfsd';
echo $data = base64_decode($encryptedData);

//输出:
我的数据~Ç_jÇ_±

现在我得到了实际数据+垃圾数据。我不要 任何数据只有数据如果 token 有任何变化。有什么方法可以实现吗?

最佳答案

确保只能通过更改 $data 来更改 base64 编码的字符串。 ,您将需要添加验证 token 。

添加此类验证的一种简单方法是使用 key 散列,其中 key 是 secret 的:

$data = 'this product sells for 5 dollars';
$enc = base64_encode($data);
$token = base64_encode(hash_hmac('sha256', $enc, 'your secret key here', true));

$my_token = $token . ':' . $enc;

输出:
ZMkqZIa6UazMhbYDiPqjdS1NmU1ulh+Gi2tgWHRKKpQ=:dGhpcyBwcm9kdWN0IHNlbGxzIGZvciA1IGRvbGxhcnM=

当您收到此类 token 时,您首先在 : 上拆分然后使用第一部分(keyed hash)来验证第二部分(数据)的内容。只有匹配时,您才能(相对)确定数据未被篡改。

关于php - base64 需要修改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13678681/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com