如何在Android中使用elGamal加密密钥?

如何在Android中使用elGamal加密密钥?,android,kotlin,cryptography,sjcl,Android,Kotlin,Cryptography,Sjcl,我使用node.js上的SJCL.js创建了以下密钥对 var keyPair = sjcl.ecc.elGamal.generateKeys(sjcl.ecc.curves.c384); 我知道我也需要安卓系统中的elGamal。 我想实现一个聊天功能,通过该功能,发送的每个文本聊天都将使用接收方的公钥进行加密 如何使用这些elGamal公钥在Android中执行加密(以及分别解密的私钥)? 到目前为止,我刚刚找到了对RSA密钥的支持。安装Bouncy Castle。可能您必须使用轻量级加密

我使用node.js上的SJCL.js创建了以下密钥对

var keyPair = sjcl.ecc.elGamal.generateKeys(sjcl.ecc.curves.c384);
我知道我也需要安卓系统中的elGamal。 我想实现一个聊天功能,通过该功能,发送的每个文本聊天都将使用接收方的公钥进行加密

如何使用这些elGamal公钥在Android中执行加密(以及分别解密的私钥)?
到目前为止,我刚刚找到了对RSA密钥的支持。

安装Bouncy Castle。可能您必须使用轻量级加密API(即直接使用Bouncy类)。@MaartenBodewes:我认为Bouncycastle不支持椭圆曲线ElGamal,只支持mod p ElGamal。哦,在这种情况下,我想知道我是如何实现它的。可能使用直接EC计算,这些是可以确定的。谢谢你的回答。我不需要在Android中创建密钥,因为它们是在node.js服务器上创建的。但是,我需要对提供的字符串执行加密和解密操作。在完成一些研究之后,bouncycastle中支持一些曲线。