使用Java和RSA加密网络流量

时间:2010-11-01 18:33:52

标签: java rsa encryption

我想知道如何处理家庭作业。

我必须用Java开发一个简单的服务器和客户端,我已经完成了。接下来,我必须使用带有以下给定密钥的RSA加密此服务器和客户端之间的流量。

Client Public Key: (5, 10142789312725007)
Client Private Key: (8114231289041741, 10142789312725007)
Server Public Key: (5, 10142701089716483)
Server Private Key: (6085620532976717, 10142701089716483)

Java是否具有允许我轻松完成此操作的内置功能?

谢谢!

3 个答案:

答案 0 :(得分:2)

以下是一些可能有用的链接:

A Java implementation of RSA

Java Class - RSA Implementation

  

生成N位公共和私有   RSA密钥并用于加密和解密   随机消息。

Using RSA encryption with Java - tutorial

答案 1 :(得分:2)

是的,Java有built-in support for RSA可以让你轻松完成。

它还支持任意精度整数including a modPow operation,使您可以自己轻松实现RSA加密。

老实说,简单地使用BigInteger实现RSA可能比学习Java Cryptography Architecture以使用内置RSA实现更容易。

答案 2 :(得分:0)

您应该能够使用Java附带的Java Cryptographic Extension。

为了使给定的数字,RSA密钥将它们转换为BigInteger并将它们“馈送”为RSAPrivateKeySpec分配。 RSAPublicKeySpec。 使用KeyFactory,您可以将* Spec设置为可以与Java中的所有加密函数一起使用的常规公钥和私钥。