gpt4 book ai didi

java通过受信任的服务器交换公钥

转载 作者:搜寻专家 更新时间:2023-11-01 03:41:57 25 4
gpt4 key购买 nike

我想构建一个中继服务器,它可以安全地在 2 个对等点之间中继消息(用于 nat 遍历目的)以进行 P2P 通信。特别是,我引用了此 document 中图表中的步骤用于交换 key ......

特别是,它说“用 B 的公钥编码的 A 的公钥”,反之亦然。然而,我偶然发现了一个问题:当我使用两个 key 都是 1024 位时,当我试图使用公钥对另一个进行编码时,我实际上得到了 illegalblocksizeexception

阅读其他问题时,一些人回答说公众可以使用 RSA 加密的数据大小是有限制的。我可以知道是否有一些细节我可能遗漏了,在图中被省略了,或者我做错了事,试图交换 key ......

最佳答案

RSA 公钥无法加密长度超过其模数位长的数据。因此,一个1024位的RSA公钥最多只能加密1024位的数据。一个 1024 位的公钥文件将大于 1024 位,因为模数只是总数据的部分。因此,一个 1024 位的 RSA 公钥不能加密另一个 1024 位的 RSA 公钥。

更重要的是:您不应该用任何东西来加密公钥。公钥就是 - 公开;就其内容而言,无需保密。如果您希望“保佑”公钥适合特定用途,请使用具有某种意义的私钥对其进行签名。或者更好的是,从您的协议(protocol)的所有参与者都信任的证书颁发机构颁发公钥证书。

关于java通过受信任的服务器交换公钥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12244327/

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