使用java套接字实现简单的对称加密

时间:2012-04-09 16:25:04

标签: java sockets encryption encryption-symmetric

我正在编写点对点应用程序,我想实现简单的对称加密。

我正在寻找一个如何做到这一点的好例子,我不介意它使用哪个库,只要它是免费的。

最好所有加密都发生在套接字层,所以我根本不需要更改我的代码。

有人可以提供这样的例子吗?

2 个答案:

答案 0 :(得分:3)

Java已经附带SSL Sockets。无需手动实施加密。套接字可以自行处理所有内容。

答案 1 :(得分:1)

Java是否具有密码学内置... Java密码体系结构(JCA)& Java密码术扩展(JCE)?

http://docs.oracle.com/javase/1.4.2/docs/guide/security/CryptoSpec.html#ProviderArch

  

Java Cryptography Extension(JCE)扩展了JCA API以包含   用于加密,密钥交换和消息验证代码的API   (苹果电脑)。一起,JCE和SDK的加密方面   提供完整的,独立于平台的加密API。

以下是如何在Java中使用AES的示例:

http://java.sun.com/developer/technicalArticles/Security/AES/AES_v1.html

  

JCE框架是一个非常强大且灵活的使用框架   不同的加密算法。它基于提供商   使相同框架可用于更新的架构   加密算法。从开发人员的角度来看,这意味着一个   更高级别的抽象,以及一组用于更新和更高级别的API   不同的加密算法 - 无需担心   算法的内部运作。

     

其他一些Java安全API - 例如JSSE - 是   在JCE之上实现,并补充它以使其不同   加密算法(密码,消息认证码   (MACs)和密钥交换算法)可用于更多   开发人员友好的方式。

另外,如Kristian Antonsen mentioned所示,请查看SSLSocket


无论如何,这是另一个Java加密库:

http://bouncycastle.org/java.html