0

我正在使用服务器,服务器会给它的公钥,但它是用 PKCS#8 格式化的(所以 RSA/ECB/OAEP 与 SHA-1 和 MGF-1 填充),我发现的一切都颤振使用PKCS#1,带有标准填充。

服务器公钥也在 pem 文件中,因此获取密钥和使用 base64 解密密钥没有问题,但我找不到在密钥类型之间进行转换的方法。

此外,任何加密消息都需要使用 OAEP 填充发送,以便服务器理解它。

由于无法在服务器端更改加密(由于其他现有前端),我想知道这是否可能。

我试过simple_rsa

并查看了rsa_encrypt

但都不支持 OAEP 填充。

为澄清起见,公钥是由 cryptopp 使用 c++ 生成的。然后将其编码为 base64 并写入具有正确标头的 pem 文件。根据文档,它使用X509PublicKey docs。我不确定我是否遗漏了什么。

有没有办法通过flutter或native code来做到这一点,因为flutter可以运行native code,但是flutter code会是理想的吗?

4

0 回答 0