http://javabrain.iteye.com/blog/106507 java操作文件加密与解密
JAVA DES加密解密
http://maqianli.iteye.com/blog/290423
http://www.pcjx.net/Java/other/216784.html base64 网络加密
import javax.crypto.KeyGenerator;
import javax.crypto.CipherInputStream;
import javax.crypto.Cipher;
import javax.crypto.CipherOutputStream;
import java.security.SecureRandom;
import java.security.Key;
import java.io.*;
import java.security.*;
public class TestDES {
Key key;
public TestDES(String str) {
getKey(str);//生成密匙
}
/**
* 根据参数生成KEY
*/
public void getKey(String strKey) {
try {
KeyGenerator _generator = KeyGenerator.getInstance("DES");
_generator.init(new SecureRandom(strKey.getBytes()));
this.key = _generator.generateKey();
_generator = null;
} catch (Exception e) {
throw new RuntimeException("Error initializing SqlMap class. Cause: " + e);
}
}
/**
* 文件file进行加密并保存目标文件destFile中
*
* @param file 要加密的文件 如c:/test/srcFile.txt
* @param destFile 加密后存放的文件名 如c:/加密后文件.txt
*/
public void encrypt(String file, String destFile) throws Exception {
Cipher cipher = Cipher.getInstance("DES");
// cipher.init(Cipher.ENCRYPT_MODE, getKey());
cipher.init(Cipher.ENCRYPT_MODE, this.key);
InputStream is = new FileInputStream(file);
OutputStream out = new FileOutputStream(destFile);
CipherInputStream cis = new CipherInputStream(is, cipher);
byte[] buffer = new byte[1024];
int r;
while ((r = cis.read(buffer)) > 0) {
out.write(buffer, 0, r);
}
cis.close();
is.close();
out.close();
}
/**
* 文件采用DES算法解密文件
*
* @param file 已加密的文件 如c:/加密后文件.txt
* * @param destFile
* 解密后存放的文件名 如c:/ test/解密后文件.txt
*/
public void decrypt(String file, String dest) throws Exception {
Cipher cipher = Cipher.getInstance("DES");
cipher.init(Cipher.DECRYPT_MODE, this.key);
InputStream is = new FileInputStream(file);
OutputStream out = new FileOutputStream(dest);
CipherOutputStream cos = new CipherOutputStream(out, cipher);
byte[] buffer = new byte[1024];
int r;
while ((r = is.read(buffer)) >= 0) {
cos.write(buffer, 0, r);
}
cos.close();
out.close();
is.close();
}
public static void main(String[] args) throws Exception {
TestDES td = new TestDES("aaa");
td.encrypt("C:/Java实现文件的RSA和DES加密算法.doc", "c:/加密后文件1.doc"); //加密
td.decrypt("c:/加密后文件1.doc", "c:/解密后文件1.doc"); //解密
}
}
分享到:
相关推荐
本文将深入探讨如何在Java中实现文件的加密和打包,基于提供的"JAVA文件加密打包实例"进行详细讲解。 首先,我们要了解文件加密的概念。文件加密是通过特定的算法将原始数据转化为密文,以防止未经授权的访问或窃取...
Java 文件加密解密器 可对所有文件进行加密和解密,第一次运行加密,第二次运行解密。
Java文件加密器是一款基于Java开发的实用工具,用于保护个人或组织的数据安全。这款软件的主要功能是对文件进行加密,防止未经授权的访问。由于是作为编程练习而创建的,它的加密算法可能相对较简单,但仍然能够提供...
本项目"Java 文件加密传输"就是针对这一需求而设计的,它利用了DES、RSA和MD5三种加密算法来确保文件在传输过程中的安全。下面我们将详细探讨这些技术及其在Java中的应用。 首先,DES(Data Encryption Standard)...
### JAVA文件加密设计知识点解析 #### 一、背景与意义 在信息技术日益发展的今天,信息安全问题变得尤为重要。尤其是在网络环境中,个人隐私、商业机密等内容的保护成为了关注焦点。文件加密技术作为信息安全的...
"java实现文件加密解密" Java 实现文件的加密与解密是指利用 Java 语言将资源文件(包括图片、动画等类型)进行简单的加密和解密。这种策略的原因和好处是将准备好的资源存储在云上,使用时通过网络进行读取即可,...
### Java文件加密系统知识点 #### 一、概述 在给定的代码片段中,我们可以看出这是一个基于Java语言编写的文件加密程序,名为`FileEncrypter`。该程序使用了三重DES(Triple DES)加密算法对文件进行加密与解密...
综上所述,Java文件加密解密涉及多种技术和概念,包括选择合适的加密算法、管理密钥、处理文件流、确保数据完整性和安全性等。通过理解并正确应用这些知识点,可以构建出强大的文件加密和解密系统。
Java文件加密技术是一种重要的信息安全措施,它涉及到对Java程序或数据进行编码,使得未经授权的用户无法访问或理解这些内容。Q版Java文件加密工具可能是专为此目的设计的一个简易版本,适用于个人或小型团队使用。...
在Java编程语言中,文件加密和解密是...总结,Java文件加密和解密涉及多种加密算法、Java加密库的使用以及安全实践。开发者在处理敏感数据时,应选择合适的加密方式,并遵循最佳安全实践,以确保数据的完整性和机密性。
总的来说,这个Eclipse项目提供了一个学习和实践Java文件加密解密的平台。通过研究源码,你可以深入理解各种加密算法的工作原理,并学习如何在实际项目中应用它们,以保护数据的安全。同时,对于软件开发者来说,...
学习java课程时做的一个小项目设计,这个加密软件可以实现几种主流的加密算法:Blowfish、DES、TripleDES(即3DES)、AES、RC4的加密和解密,并有图形界面。附有课程设计报告。希望对您的学习有帮组。
这是一个给文件加密的源程序,是属于很简单的那种.
在Java中,我们可以通过以下步骤实现文件的异或加密: 1. **选择密钥**:首先,你需要一个密钥,通常是一个字节数组。这个密钥的长度可以根据需求来设定,但为了安全起见,通常会选择足够长且随机的密钥。 2. **...
java文件加密器项目源码.zipjava文件加密器项目源码.zipjava文件加密器项目源码.zipjava文件加密器项目源码.zipjava文件加密器项目源码.zipjava文件加密器项目源码.zipjava文件加密器项目源码.zip
文件名:FileEncrypter.java JDK:1.40以上 说明:文件加密 加密方法:三重DES加密 加密过程:对选中的文件加密后在同文件夹下生成一个增加了".tdes"扩展名的加密文件 ...只有一个Java文件,编译后即可运行,非常强大!
Java文件加密技术是信息安全领域中的一个重要话题,尤其是在存储和传输敏感数据时,加密技术能够确保数据的安全性。在本课程设计中,我们关注了三种主要的对称加密算法:AES(高级加密标准)、DES(数据加密标准)...
JAVA文件加密解密.pdf
Java加密解密工具包,通常用于保护敏感数据的安全,防止未经授权的访问或篡改。这个名为"JCT"的工具包提供了丰富的功能,使得开发者在Java应用中集成加密和解密操作变得更加简单。下面我们将详细探讨Java加密的相关...