- 浏览: 670709 次
- 性别:
- 来自: 石家庄
文章分类
最新评论
-
abao1:
老贾 在安装IDEA的过程中,在激活步骤时,按如下操作即可: ...
IntelliJ IDEA 2016注册方法和注册码 -
bo_hai:
./usr/bin/java: symbol lookup ...
jmagick安装步骤 -
wxcking:
不错的, 收藏一下
JAVA使用POI生成Excel文件 -
zgyfh:
大哥,密码是多少啊?zgyfh@tom.com谢谢了!新手学习 ...
WPF做的必备示例 -
记忆无泪:
jiasongmao 写道你的邮箱是多少,我可以发源代码到邮箱 ...
WPF做的必备示例
/** * DES加密解密类. */ public class DESUtility { /** 加密、解密key. */ private static final String PASSWORD_CRYPT_KEY = "kEHrDooxWHCWtfeSxvDvgqZq"; /** 加密算法,可用 DES,DESede,Blowfish. */ private final static String ALGORITHM = "DES"; /** * 对数据进行DES加密. * @param data 待进行DES加密的数据 * @return 返回经过DES加密后的数据 * @throws Exception */ public final static String decrypt(String data) throws Exception { return new String(decrypt(hex2byte(data.getBytes()), PASSWORD_CRYPT_KEY.getBytes())); } /** * 对用DES加密过的数据进行解密. * @param data DES加密数据 * @return 返回解密后的数据 * @throws Exception */ public final static String encrypt(String data) throws Exception { return byte2hex(encrypt(data.getBytes(), PASSWORD_CRYPT_KEY .getBytes())); } /** * 用指定的key对数据进行DES加密. * @param data 待加密的数据 * @param key DES加密的key * @return 返回DES加密后的数据 * @throws Exception */ private static byte[] encrypt(byte[] data, byte[] key) throws Exception { // DES算法要求有一个可信任的随机数源 SecureRandom sr = new SecureRandom(); // 从原始密匙数据创建DESKeySpec对象 DESKeySpec dks = new DESKeySpec(key); // 创建一个密匙工厂,然后用它把DESKeySpec转换成 // 一个SecretKey对象 SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(ALGORITHM); SecretKey securekey = keyFactory.generateSecret(dks); // Cipher对象实际完成加密操作 Cipher cipher = Cipher.getInstance(ALGORITHM); // 用密匙初始化Cipher对象 cipher.init(Cipher.ENCRYPT_MODE, securekey, sr); // 现在,获取数据并加密 // 正式执行加密操作 return cipher.doFinal(data); } /** *//** * 用指定的key对数据进行DES解密. * @param data 待解密的数据 * @param key DES解密的key * @return 返回DES解密后的数据 * @throws Exception */ private static byte[] decrypt(byte[] data, byte[] key) throws Exception { // DES算法要求有一个可信任的随机数源 SecureRandom sr = new SecureRandom(); // 从原始密匙数据创建一个DESKeySpec对象 DESKeySpec dks = new DESKeySpec(key); // 创建一个密匙工厂,然后用它把DESKeySpec对象转换成 // 一个SecretKey对象 SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(ALGORITHM); SecretKey securekey = keyFactory.generateSecret(dks); // Cipher对象实际完成解密操作 Cipher cipher = Cipher.getInstance(ALGORITHM); // 用密匙初始化Cipher对象 cipher.init(Cipher.DECRYPT_MODE, securekey, sr); // 现在,获取数据并解密 // 正式执行解密操作 return cipher.doFinal(data); } public static byte[] hex2byte(byte[] b) { if ((b.length % 2) != 0) throw new IllegalArgumentException("长度不是偶数"); byte[] b2 = new byte[b.length / 2]; for (int n = 0; n < b.length; n += 2) { String item = new String(b, n, 2); b2[n / 2] = (byte) Integer.parseInt(item, 16); } return b2; } public static String byte2hex(byte[] b) { String hs = ""; String stmp = ""; for (int n = 0; n < b.length; n++) { stmp = (java.lang.Integer.toHexString(b[n] & 0XFF)); if (stmp.length() == 1) hs = hs + "0" + stmp; else hs = hs + stmp; } return hs.toUpperCase(); } }
发表评论
-
强引用、软引用、弱引用和虚引用
2018-06-06 16:37 419Java 如何有效地避免OOM:善于利用软引用和弱引用 ... -
使用Spring实现读写分离( MySQL实现主从复制)
2018-05-17 11:46 551使用Spring实现读写分离( MySQL实现主从复制) ... -
工作流activiti
2018-04-18 15:52 437Activiti工作流教程 https://blog.cs ... -
java的动态代理机制详解
2017-12-22 15:54 418https://www.cnblogs.c ... -
OCR框架整理
2017-08-16 09:29 581泰比ABBYY OCR SDK开发包 Asp ... -
eclipse启动tomcat出现内存溢出错误 java.lang.OutOfMemoryError: PermGen space
2017-04-06 16:54 628发布工程后,启动tomcat出现如下内存溢出错误: java ... -
springMVC上传文件大小限制以及超过限制后的自定义处理
2017-04-01 08:12 1256http://blog.csdn.net/baidu_186 ... -
IntelliJ IDEA 2016注册方法和注册码
2017-03-30 13:52 2528IntelliJ IDEA号称当前Java开发效率最高的ID ... -
java使用wsimport生成服务代码时报错的解决办法
2017-01-18 11:27 1702今天遇到了WebService的问题:在使用jdk命令wsi ... -
OCR文字识别系统
2016-12-21 22:14 454慧视OCR文字识别系统 增值税专用发票扫描识别系统 ... -
Maven中央仓库无法更新jar包的解决办法
2016-12-09 00:44 1069删掉了*lastUpdated文件 然后到setti ... -
spring jar包下载地址
2015-09-23 17:31 633spring jar包下载地址:http://maven.sp ... -
JRex java webbrowser 爬虫ajax网页 源码
2015-01-08 16:37 969一般在浏览器中查看页面代码 是浏览器直接下载到的页面代码 在 ... -
程序员福利各大平台免费接口,非常适用
2014-12-03 10:03 913电商接口 京东获取单个商品价格接口: http: ... -
数据库建模工具:PowerDesigner与Rose详解教程
2009-12-08 12:38 1897一、 二者的出身 作为世界最著名的两大CASE工具, ... -
java制作图片的缩略图
2009-09-23 14:49 1655package com.mxo9.b2c.service.ad ... -
MD5、SHA加密实体类
2009-08-02 17:37 1207public class MD5Utility { ... -
Windows客户端的JProfiler远程监控Linux上的Tomcat
2009-07-20 12:23 27771.测试环境 服务器:ubuntu8.04(内核版本 2.6. ... -
Jalopy在Eclipse下的使用
2009-07-13 17:47 1612Jalopy是一款代码美化工 ... -
使用Jconsole监视tomcat
2009-07-08 11:50 1638可以分一下几个步骤进行: 第一步: 修改tomcat的ca ...
相关推荐
本文将深入探讨“文档加密解密”、“数字证书”以及“密钥生成”这三个关键知识点,并结合提供的“javaHomework”文件,来解析如何在Java环境中实现这些功能。 首先,文档加密解密是一种保护敏感信息的方法,它通过...
总的来说,这本书是Java开发人员学习和掌握加密解密技术的宝贵教程,无论你是初学者还是经验丰富的专业人士,都能从中受益匪浅。通过阅读这本书,你将能够构建更安全的Java应用程序,有效防止数据泄露,确保用户信息...
对称加密使用相同的密钥进行加密和解密,如DES(Data Encryption Standard)、3DES(Triple DES)和AES(Advanced Encryption Standard)。这些算法速度快,适用于大量数据的加密,但在密钥分发和管理上存在挑战。 ...
9. **JSymxx175.zip**:这个文件可能是书中源码的压缩包,可能包含了各种加密解密算法的实现,包括上述提到的对称加密、非对称加密、哈希计算等,是学习和实践Java加密解密技术的好材料。 在学习这部分内容时,你...
在ASP.NET中,可以使用内置的安全类,如`System.Security.Cryptography`命名空间下的类来实现加密解密。例如,可以使用`Aes`类进行AES加密,使用`RSA`类进行RSA加密。加密过程通常涉及以下步骤: 1. 选择合适的加密...
例如,Aes类用于AES加密,Rsa类用于RSA加密,TripleDESCryptoServiceProvider类用于3DES加密。开发者可能使用这些类来实现加密和解密功能。 3. **三层架构的实现**: - **表示层**:这是用户与应用交互的部分,...
1. **加密与解密**:使用Cipher类进行数据的加密和解密。通过选择合适的加密算法,如AES,然后创建密钥,最后调用Cipher的`init`方法初始化,并使用`doFinal`方法执行加解密操作。 2. **密钥生成与管理**:...
- 缺点:加密解密速度相对较慢。 #### 常见加密技术介绍 1. **ROT13**:一种简单的替换加密算法,主要用于文本加密,安全性较低。 2. **Crypt**:原始的UNIX加密程序,现已不再安全。 3. **DES(数据加密标准)**...
4. **EncriptEntity.java** - 这可能是定义了数据结构和加密相关的实体类,可能包含了加密算法的配置、密钥管理、以及加密和解密的接口。 在实际的加密Socket通信中,开发者需要关注以下几点: - **加密算法选择**...
网络安全基础知识点总结是一个涵盖网络安全基础知识的总结,涵盖了安全攻击的分类、网络安全的特征、对称加密技术、DES 加密算法、RC4 加密算法、公钥密码和消息认证等多个方面的知识点。 一、安全攻击的分类 安全...
在C#中,可以使用内置的加密类库来实现这一功能,比如System.Security.Cryptography命名空间下的各种加密算法,如AES(高级加密标准)、RSA(公钥加密算法)和DES(数据加密标准)等。 AES是一种块加密算法,适用于...
2. 加解密:这里没有提供具体的加密算法,但C#支持多种加密算法,如DES、AES等。解密同样需要知道所用的加密算法。 3. SHA1加密:SHA1是另一种哈希函数,与MD5类似但更安全。C#中的实现方式与MD5类似,只需将MD5...
5. **加密解密**:`EncryptionDES.cs`和`EncryptionHelper.cs`可能提供了数据加密和解密的功能,用于保护存储在数据库中的敏感信息。DES(Data Encryption Standard)是一种常用的对称加密算法,适用于小规模数据的...
可用性则意味着信息应能被授权实体在需要时访问。如果一个系统受到攻击导致无法正常工作,那么它的可用性就受到了影响。 密码学的发展经历了古代加密方法、古典密码(如置换密码和代替密码)以及近代密码三个阶段。...
“算法库lib”指的是包含各种加密算法实现的库,如哈希函数(MD5、SHA系列)、对称加密(DES、3DES、AES)、非对称加密(RSA、ECC)等。开发者可以引用这些库来快速集成加密功能,而无需从零开始编写所有代码。算...
此外,还提到了扩展功能,如网络数据流的加密和解密,节点级别的加密解密,数据打包封装以实现安全的网络传输,以及局部文本的加密替换。 4. **密钥管理**:密钥的分配和传输必须安全,因为密钥的安全管理是整个...
对称加密使用相同的密钥进行加密和解密,适合大量数据的处理;而非对称加密使用一对公钥和私钥,公钥可公开,私钥需保密,适合身份验证和密钥交换。 2. **密钥管理**: JSDSI提供了密钥生成、存储和管理的机制。...
在"Cryptography-master"这个项目中,可能包含了以上提到的各种加密解密算法的Java实现,以及可能的测试案例。通过研究这些代码,开发者可以深入理解Java密码学的实践应用,并学习如何在自己的项目中集成这些安全...
信息加密是确保数据安全传输的核心手段,它包括了明文、密文、密钥、加密算法和解密算法等基本概念。 1. 明文是未经过加密的原始信息,而密文则是加密后的结果。密钥是用于加密和解密的特殊数据,加密算法将明文...
对称加密是最古老的加密方法,如DES(Data Encryption Standard)和AES(Advanced Encryption Standard)。这种加密方式中,加密和解密使用的是同一把密钥,因此密钥的管理和分发成为安全性的关键。对称加密速度快,...