2012-04-09 83 views
1

我写一个对等应用程序,我想实现简单的对称加密简单的对称加密。实现用java插座

我在寻找如何做一个很好的例子,我不介意它使用了库,只要它是免费的。

优选地,所有的加密将在套接字层发生,所以我不需要做任何改动我的代码。

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

回答

3

的Java已经自带了SSL Sockets。没有必要手动实现加密。套接字自己处理所有事情。

+1

要了解如何在Java中使用SSL编写代码,请查看此页面:http://igorpolevoy.com/public/Wiki.jsp?page=JavaSecurity – ipolevoy 2012-04-09 17:08:09

+0

当我想到SSL时,我正在考虑需要证书,是否可以使用仅使用预共享密钥的SSL套接字并且不需要证书? – Michael 2017-01-04 01:49:04

1

不具备的Java加密构建... Java加密体系结构(JCA)& Java加密扩展(JCE)?

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

Java加密扩展(JCE)扩展了JCA API包括 API来加密,密钥交换和消息认证码 (MAC)。 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