- 浏览: 25569 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (21)
- JAVA (10)
- 个人收集 (0)
- Dwr Reverse Ajax (1)
- 图片修改 (0)
- Linux grep (0)
- java Annotation (1)
- restfull demo (1)
- CF学习 (1)
- 计算机词汇 (1)
- Tomcat Manager (0)
- Linux (1)
- Hibernate demo (0)
- //joda-time (0)
- Log4j2 (1)
- Androidpn-Server (1)
- 概念相关总结 (0)
- Info (0)
- Mybatis (0)
- 高并发 (0)
- Nats安装步骤 (1)
- Linux 命令 (0)
- Time33哈希算法 (0)
- actor (0)
- 跟我学Shiro (0)
- mina demo (1)
- Lock实现同步与并发 (1)
- Spring Annotation (0)
- Command Line (0)
- setting.xml 全局jdk版本设置 (1)
- Spring配置 (0)
- spring web flow配置 (0)
- spring web demo (1)
- Spring MVC Request get (1)
- Sorted Java (1)
- Spring杂记 (0)
- test (0)
- test-Juniper network (1)
- GRE URL (0)
- Java 实现RFC2898 (1)
- Mockito (1)
- Linux ssh建立信任关系 (1)
- SVN config (0)
最新评论
代码如下:
package com.runant.util.encrpt.key;
import java.security.Key;
import javax.crypto.Cipher;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESedeKeySpec;
import com.sun.org.apache.xerces.internal.impl.dv.util.Base64;
/**
* 3DES加密解密工具
* @author ping
*
*/
public class DesEncrypt {
private Key key;
private static final String KEY_ALGORITHM = "DESede";
private static final String CIPHER_ALGORITHM = "DESede/ECB/PKCS5Padding";
/**
* 默认构造函数
*/
public DesEncrypt() {
}
/**
* 构造函数,初始化Key
* @param keyStore
*/
public DesEncrypt(String keyStore) {
this.toKey(keyStore);
}
/**
* 初始化Key对象
* @param keyText
* @return
*/
public void toKey(String keyText) {
DESedeKeySpec dks;
SecretKeyFactory factory =null;
if(check(keyText)){
try {
dks = new DESedeKeySpec(keyText.getBytes());
factory= SecretKeyFactory.getInstance(KEY_ALGORITHM);
this.key = factory.generateSecret(dks);
} catch (Exception e) {
e.printStackTrace();
}
}
}
/**
*
* @param 密钥keyText
* @return 校验密钥格式是否通过
*/
public boolean check(String keyText){
boolean flag = false ;
if(keyText!=null&&!"".equals(keyText.trim())){
if(keyText.trim().length()>=24){
flag = true ;
}
}
return flag ;
}
/**
* 加密
* @param 明文 inputText
* @return 密文 outputText
*/
public String getEncString(String inputText) {
Cipher cipher = null;
String outputText = null ;
try {
cipher =Cipher.getInstance(CIPHER_ALGORITHM) ;
cipher.init(Cipher.ENCRYPT_MODE, this.key) ;
outputText= Base64.encode(cipher.doFinal(inputText.getBytes("UTF8")));
} catch (Exception e) {
e.printStackTrace();
}finally{
cipher= null;
}
return outputText;
}
/**
* 解密
* @param 密文 inputText
* @return 明文 outputText
*/
public String getDesString(String inputText) {
Cipher cipher = null;
String outputText = null ;
try {
cipher =Cipher.getInstance(CIPHER_ALGORITHM) ;
cipher.init(Cipher.DECRYPT_MODE, this.key) ;
outputText= new String(cipher.doFinal(Base64.decode(inputText)));
} catch (Exception e) {
e.printStackTrace();
}finally{
cipher= null;
}
return outputText;
}
}
- Code.rar (994 Bytes)
- 下载次数: 27
发表评论
-
Mockito
2014-08-13 14:15 449PowerMockito.mockStatic -
Java 实现RFC2898
2014-08-07 16:49 851package crypto.test; public ... -
Spring杂记
2014-06-19 14:50 0获取Cookie WebUtils.getCookie ... -
spring web demo
2014-05-27 17:27 569spring web demo -
Command Line
2014-05-14 16:14 0可以的, 给你一个简单的ping google的吧 ... -
Time33哈希算法
2014-04-09 11:18 0Time33哈希算法 unsigned long ... -
Androidpn-Server
2014-02-28 10:13 6061.更改Eclipse JDK编译环境(将目录jre改成j ... -
Log4j2 demo
2014-02-17 10:07 2348Maven configuration <depe ... -
java日期计算joda-time
2014-02-13 09:24 0public boolean isAfterPayDay(Da ... -
restfull demo
2014-01-14 17:35 536restfull demo -
类似Spring Controller 注解Demo
2014-01-09 20:11 742花点时间弄的一个url和方法映射的小Demo,先记录在此,便于 ... -
Dwr 官方Reverse Ajax Demo
2012-09-18 11:29 948Dwr Reverse Ajax 官方Demo简化,csdn那 ... -
JAVA实现AES加密解密工具类
2012-06-30 13:46 5076package com.runant.util.encrpt. ...
相关推荐
Java 中的 3DES 加密解密示例(封装 byte 数组和 16 进制字符串互转) 在 Java 中,3DES 加密是一种常用的加密算法,它可以将明文数据转换为密文数据,以保护数据的安全性。在本示例中,我们将展示如何使用 3DES ...
在提供的文件`加密web.zip`和`java.zip`中,很可能包含了Java实现3DES加密解密的代码示例,以及可能用于Web端的JavaScript实现。这些代码可以帮助开发者理解如何在实际项目中跨平台地应用3DES加密技术。 3DES虽然...
3. **JavaScript实现DES加密解密**: JavaScript中没有内置的DES库,通常需要依赖第三方库,如`crypto-js`。这个库提供了DES加密解密的功能,使用方式类似于Java,先生成密钥,然后调用相应的加密或解密函数。 4. ...
本篇文章将详细阐述DES加密解密的Java实现过程。 首先,我们需要了解DES算法的基本原理。DES是一种块密码,它将明文数据分成64位的数据块进行处理,其中包含56位的密钥。通过一系列复杂的置换和代换操作,将明文块...
本教程主要探讨了如何使用Java编程语言实现DES(Data Encryption Standard)、3DES(Triple DES)和AES(Advanced Encryption Standard)这三种常见的对称加密算法,并且详细讲解了五种分组密码的工作模式。...
在压缩包中,"DES3.jar"可能是一个包含3DES加密解密功能的Java库文件,可以被其他Java项目导入并直接使用。"使用说明.txt"则提供了关于如何使用这个库以及调用相关加密解密方法的指南。在实际操作中,开发者会按照这...
java的DES加密解密:用于密码在数据库的加密,解码类
java代码-使用java解决3DES加密解密的源代码 ——学习参考资料:仅用于个人学习使用!
在提供的文件列表中,`ThreeDES.java`和`Test3DES.java`很可能是3DES加密解密的Java实现代码。通常,这些类会包含用于设置密钥、初始化向量(IV)、加密和解密的函数。 - `ThreeDES.java`可能包含了3DES算法的核心...
java 3des加密、解密工具类 java的3DES加密/解密
本文将详细介绍如何在Java环境中实现DES加密和解密。 DES,全称为数据加密标准,基于Feistel密码结构,采用64位的密钥,但其中只有56位是真正参与加密过程的。DES分为两个主要阶段:加密和解密,这两个过程使用相同...
总的来说,小程序与Java后端使用DES加密解密是数据安全的一种基础实践,但考虑到当前的网络安全需求,可能需要结合其他更强的加密技术以及安全策略来提升整体的安全水平。在实际应用中,还需要关注相关的法律法规,...
本篇将详细介绍如何在网页前端使用JavaScript进行3DES加密,并在后端Java环境中进行解密。 一、3DES加密原理 3DES是DES的加强版,它使用了3个不同的56位密钥,通过3次独立的DES加密过程来提高安全性。具体流程如下...
在Java中,我们可以使用`javax.crypto`包中的`Cipher`类来实现3DES加密和解密。首先,我们需要创建一个`SecretKeySpec`对象,用于存储我们的密钥。密钥长度可以是128位(16字节),但3DES实际只使用其中的112位或168...
DES加密解密java工具类 public static final String KEY_ALGORITHM = "DES"; public static final String CIPHER_ALGORITHM = "DES/ECB/PKCS5PADDING"; validKeySpecException, NoSuchPaddingException, ...
Java实现的3DES加密解密工具类示例 【Java实现的3DES加密解密工具类】 Java实现的3DES加密解密工具类是指使用Java语言实现的三重数据加密算法工具类,该工具类提供了加密和解密两种操作模式,通过设置密钥和加密/...
Java实现des加密解密算法,des加密解密算法
总的来说,这个压缩包提供了一套完整的Java实现的DES加密解密工具,包括核心算法、子密钥生成、文件加密等功能,对于学习DES算法和在Java项目中使用DES加密的开发者来说,是一个非常实用的资源。使用者可以通过阅读...