java加密与解密(一)

jdk安全强度设置:

   http://java.sun.com/javase/downloads/index.jsp中的Other Downloads下载 

   解压zip,

   用其中的两个jar包覆盖jdk6下/%JDK_HOME%/jre/lib/security目录下的jar包

   jre目录下也作相同配置

 

   然后通过代码段

try {
   KeyGenerator kg = KeyGenerator.getInstance("AES");
   kg.init(256);
   SecretKey secretKey = kg.generateKey();
   byte[] key = secretKey.getEncoded();
   System.out.println("ok");
  } catch (NoSuchAlgorithmException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }

  对调整后的系统权限进行验证,执行顺利,表示生效,如果不进行调整,由于出口限制,密钥不支持256位.

 

  MD4,IDEA等加密算法,java6不支持,可以通过在JRE环境中配置开源组件包Bounce Castle,加入对应的

  提供者,获得相应的算法支持.

  从http://www.bouncycastle.org/latest_releases.html

  下载 bcprov-jdk16-145.jar ,bcprov-ext-jdk16-145.jar

  扩充算法支持的两种方式

  1配置方式:

   修改配置文件,/%JDK_HOME%/jre/lib/security/java.security中加入

   security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider

   然后把bcprov-ext-jdk16-145.jar放入/%JDK_HOME%/jre/lib/ext目录下

   jre目录下也作相同配置

  2调用方式:

   把bcprov-jdk16-145.jar导入工程,接着在程序中要导入两个类

   java.security.Security

   org.bouncycastle.jce.provider.BouncyCastleProvider

   接着在初始化工厂,密钥生成器等引擎类时,采用如下方式

   Security.addProvider(new BouncyCastleProvider())

   或者在初始化工厂,密钥生成器等引擎类时,采用如下方式

   MessageDigest md = MessageDigest.getInstance("MD4","BC");

 

  

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值