gpt4 book ai didi

javascript - RSA 消息太长 Javascript JSBN

转载 作者:行者123 更新时间:2023-11-29 14:57:44 24 4
gpt4 key购买 nike

我在 javascript 中使用 JSBN 来加密一组 facebook 数据字符串(消息),以安全地将它们发送到我的服务器(PHP)并在那里解密它们。

一些用户在类似的情况下遇到“消息太长”

"&fbemail='+fbemail+'&gender='+fbgender+'&birthday='+fbbirthday+'&name='+fbname+'&surname='+fbsurname+'&fbuser='+fbuserid"

我通过以下方式生成了一个私钥:
$privateKey = openssl_pkey_new(array(
'private_key_bits' => 1024,
'private_key_type' => OPENSSL_KEYTYPE_RSA,
));

为什么我会收到这条消息?消息不是那么长。

我看过以下帖子,但我不明白如何在 javascript 中使用 AES 而不会破坏 AES 密码。

RSA Encryption Problem [Size of payload data]

最佳答案

不生成对称 key 并加密完整消息?使用更大的 key 。 1024 位 key 只能加密 117 个字节而无需某种填充,但 2048 位 key 最多可以处理 245 个字节,而 4096 位 key 最多可以处理 501 个字节。这可以使您的脚本处理更大的重音名称(非 ASCII 字符每个字符使用两个或更多字节)。

我最终遇到了类似的问题,但 Thoman Pornin 回答 RSA Encryption Problem [Size of payload data]很好地解释了这种限制的原因。

在阅读(相同的)Thomas Pornin 对 Does RSA padding have to be unpredictable if the payload is? 的回答后,也放弃了尝试将消息分成几个加密 block 的尝试。

关于javascript - RSA 消息太长 Javascript JSBN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15206594/

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