使用Java中的公钥加密数据的标准方法

时间:2014-11-06 12:20:29

标签: java encryption

我的应用程序必须通过公共频道将文件发布到多个客户端。我一直在做以下过程来加密它

  1. 生成对称密钥以加密数据。
  2. 然后使用RSA公钥加密此密钥并发布。
  3. 考虑到此应用程序的所有客户端都有应用程序的RSA公钥,在发布文件之前是否有加密文件的标准格式?

1 个答案:

答案 0 :(得分:1)

显然,加密有几种标准格式。最受欢迎的标准格式之一是Cryptographic Message Syntax(CMS)。另请参阅Internet Standard处的CMS规范。此格式广泛用于S/MIME邮件安全性。

Bouncy Castle API为此提供了很好的支持。 BC' bcmail-jdkNN-MMM.jar是您使用的Bouncy Castle SMIME/CMS图书馆。它是一个用于处理RFC 3852加密消息语法(CMS)对象的程序包 - 也称为PKCS#7(以前称为RFC 2630, 3369),还处理S/MIME个对象({{ 1}})。

另一种流行的标准格式XML Encryption format。需要安全交换结构化数据的应用程序的端到端安全性。 RFC 3851本身是构建数据的最流行的技术,因此基于XML的加密是处理数据交换应用程序中复杂安全性要求的自然方式。