【问题标题】:Using Bouncy Castle RSA Java使用 Bouncy Castle RSA Java
【发布时间】:2011-10-29 18:21:24
【问题描述】:

我在使用 Bouncy Castle RSA 库完成学校作业时需要帮助,但它看起来非常复杂,我正在努力学习并需要一些指导。

对于我的任务,我只需要生成一个公钥和私钥。然后加密一个消息块并进行定时测量。然后对解密执行相同的操作。

有人能指出我正确的方向吗? 加密库很大,我对如何去做感到困惑。

非常感谢。

PS:基本上我需要生成密钥对,使用随机生成的不同密钥对执行加密和解密。

我会感谢任何指导,谢谢

【问题讨论】:

  • 你绝对需要使用充气城堡吗?因为我推荐 GNU Crypto,更容易学习和管理,而且 Google 上有很多教程
  • 您需要使用充气城堡吗?鉴于您的要求,标准 Java 库也应该可以工作。请添加“作业”标签。
  • 没有充气城堡不是必需的。 GNU Crypto 是用于 java 的吗? Java 是必需的,因为我的团队成员不了解 C/C++ 或 Python 等脚本语言。也感谢您的回复。我还添加了作业标签,我很抱歉。
  • 你看过this。也许这就是你所需要的......
  • @home 谢谢。对于像我这样的初学者来说,这看起来更舒服。非常感谢您的帮助。

标签: java cryptography rsa bouncycastle


【解决方案1】:

通常使用 Java,您会在 java.security.*javax.crypto.* 包中使用 Java Cryptography API。

BouncyCastle 包含此 API 的提供者(即实现),但对于 RSA,随 JRE 提供的提供者也应该没问题。 (BouncyCastle 还拥有自己的 API,可以通过其他方式执行操作。)

您将需要 KeyPairKeyPairGenerator 类来生成密钥,并需要 Cipher 类来进行实际的加密和解密操作。

对于计时测量,重复加密/解密数千次以获得可靠的数据。

【讨论】:

  • 谢谢,这对我有很大帮助。我还有一个问题,当我使用 KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");我得到一个未处理的异常类型 NoSuchAAlgorithmException
  • 阅读有关异常处理的信息 - 这不是特定于密码学的。您需要在 try 块中捕获这些异常,或者在方法的 throws 子句中声明它们(然后在其他地方捕获它们)。但是请阅读一些有关此的 Java 书籍,此评论是对异常处理的广泛处理的缩写。
猜你喜欢
  • 2015-03-22
  • 2012-04-25
  • 1970-01-01
  • 1970-01-01
  • 2012-07-05
  • 1970-01-01
  • 2011-07-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多