- 博客(14)
- 收藏
- 关注
原创 利用数字证书来加密解密数据和数字签名
Java 6提供了完善的数字证书管理实现,我们几乎无需关注相关具体算法,仅通过操作密钥库和数字证书就可完成相应的加密/解密和签名/验证操作。密钥库管理私钥,数字证书管理公钥,私钥和密钥分属消息传递两方,进行加密消息传递。因此,我们可以将密钥库看做私钥相关操作的入口,数字证书则是公钥相关操作的入口。 首先用keytools产生密钥库 1.打开cmd 2.输入d: ...
2011-06-24 17:32:19 499
原创 非对称加密 (公钥加密私钥解密或者公钥解密私钥加密)
非对称加密 非对称加密有一对密钥,公钥和私钥。可以用公钥加密,也可以用私钥加密。不过,公钥加密必须用私钥解密,私钥加密必须用公钥解密。如果不对应,则会报这样的异常javax.crypto.BadPaddingException: Data must start with zero 代码如下: import java.security.KeyPair;impor...
2011-06-24 11:41:23 1685
原创 对称加密之基于口令的加密解密
代码如下:import java.io.FileInputStream;import java.io.FileOutputStream;import java.util.Random;import javax.crypto.Cipher;import javax.crypto.SecretKey;import javax.crypto.SecretKeyFactory;...
2011-06-24 11:39:33 402
原创 对称加密之凯撒密码
凯撒密码作为一种最为古老的对称加密体制,在古罗马的时候都已经很流行,他的基本思想是:通过把字母移动一定的位数来实现加密和解密。例如,如果密匙是把明文字母的位数向后移动三位,那么明文字母B就变成了密文的E,依次类推,X将变成A,Y变成B,Z变成C,由此可见,位数就是凯撒密码加密和解密的密钥。 JAVA实现代码如下: import java.io.UnsupportedE...
2011-06-24 10:49:26 855
原创 对称加密与非对称加密
对称加密(也叫私钥加密)指加密和解密使用相同密钥的加密算法。它要求发送方和接收方在安全通信之前,商定一个密钥。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都可以对他们发送或接收的消息解密,所以密钥的保密性对通信性至关重要。 对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。 不足之处是,交易双方都使用同样钥匙,安全性得不到保证。...
2011-06-24 10:29:34 94
原创 TOMCAT建立SSL连接单向认证
在TOMCAT下创建HTTPS项目的方法 和用JAVA签发数字证书 中说了怎么用TOMCAT建立HTTPS项目(单项认证)和怎么自己签发数字证书。下面总结下过程,经过我的测试,是没问题的。 1.建立单项认证。 --命令如下:打开cmd 输入d: 输入md keys 输入cd keys 创建CA证书库(密钥对)keytool -gen...
2011-06-24 09:12:50 167
原创 httpclient向HTTPS发送数据建立SSL连接时的异常
异常信息如下:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid cer...
2011-06-23 14:36:20 813
原创 用JAVA签发数字证书
前一篇http://zhuyuehua.iteye.com/blog/1101041 说到创建TOMCAT下HTTPS项目,现在接着说,如何签发证书。打开cmd1.输入D: 2.输入cd keys 3.输入命令查看创建的密钥库的证书列表keytool -list -v -keystore mykey.keystore -storepass 123456如下图: ...
2011-06-23 14:01:41 485
原创 BASE64编码的疑惑
BASE64编码一般是通过URL传递数据时,防止特殊字符不能传递的。它能将特殊字符变成普通的字符,再传递出去。接收方得到数据后需要先解码,再得到原来的数据 代码如下: import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;public class test { public stati...
2011-06-22 22:21:26 72
原创 获得免费的数字证书
我们自己建立的证书不被信任,要获得受信任是数字证书,只能去专门的CA机构申请。 这里是一个免费的数字证书网站 https://www.trustasia.com/ 注:我在这个网站没有申请成功免费证书,不晓得是不是网站的问题,不过可以看下过程 下面说下获得数字证书建立SSL过程。(注:一下内容转自该网站,如有版权问题,请联系我)Tomcat 6.x 生成CSR ...
2011-06-22 16:47:21 457
原创 使用CA签发的服务器证书搭建Tomcat双向SSL认证服务(转)
作者:junsanQQ:334620162发布网址:http://www.javastar.org/?p=120 这周一个项目上线,使用了SSL双向验证的方式保护WebService接口,原本自己使用keytool签发的服务器和客户端证书在开发和测试的时候都是正常的,但是,在上线后,通过公司的CA平台签发出来的正式证书,却始终无法通过java客户端正常链接。...
2011-06-22 16:06:39 275
原创 TOMCAT下创建HTTPS项目的方法
SSL (Secure Socket Layer - 安全套接字层 ) 功能:保障在 Internet 上数据传输之安全,利用数据加密 (Encryption) 技术,确保数据在网络上之传输过程中不会被截取及窃 听,防止篡改。 如何让我们的 WEB 应用程序应用 SSL 安全保障? 这里有两种方法,双向认证和单项认证。 单项认证客户端向服务器发送信息时,会检查服务器的...
2011-06-22 16:03:22 122
原创 创建HTTPS项目
我们平时的项目都是以hhtttp来访问的,要是想以https的形式来访问该如何配置呢? 1.创建KEY 两种方式创建KEY a. 使用TOMCAT的工具 打开CMD,以命令行方式切换到TOMCAT目录下的BIN目录,在cmd命令行输入如下命令: keytool -genkey -alias tomcat -keyalg RSA -keyp...
2011-06-16 18:24:37 162
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人