import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
/**
* 加密解密类
*
* @author shaohl
* @version 1.00
*/
public class EncryptGen {
// static boolean debug =false ;
// 加密KEY不能随便改动
static final byte[] KEYVALUE = "6^)(9-p35@%3#4S!4S0)$Y%%^&5(j.&^&o(*0)$Y%!#O@*GpG@=+@j.&6^)(0-=+"
.getBytes();
static final int BUFFERLEN = 512;
public EncryptGen() {
}
/**
* 对文件进行加密
*
* @param String
* oldFile 原始要加密的文件
* @param String
* newFile 加密后的文件
* @return
*/
public static void encryptFile(String oldFile, String newFile)
throws Exception {
FileInputStream in = new FileInputStream(oldFile);
File file = new File(newFile);
if (!file.exists())
file.createNewFile();
FileOutputStream out = new FileOutputStream(file);
int c, pos, keylen;
pos = 0;
keylen = KEYVALUE.length;
byte buffer[] = new byte[BUFFERLEN];
while ((c = in.read(buffer)) != -1) {
for (int i = 0; i < c; i++) {
buffer[i] ^= KEYVALUE[pos];
out.write(buffer[i]);
pos++;
if (pos == keylen)
pos = 0;
}
}
in.close();
out.close();
}
/**
* 对文件进行解密
*
* @param String
* oldFile 原始要解密的文件
* @param String
* newFile 解密后的文件
* @return
*/
public static void decryptFile(String oldFile, String newFile)
throws Exception {
FileInputStream in = new FileInputStream(oldFile);
File file = new File(newFile);
if (!file.exists())
file.createNewFile();
FileOutputStream out = new FileOutputStream(file);
int c, pos, keylen;
pos = 0;
keylen = KEYVALUE.length;
byte buffer[] = new byte[BUFFERLEN];
while ((c = in.read(buffer)) != -1) {
for (int i = 0; i < c; i++) {
buffer[i] ^= KEYVALUE[pos];
out.write(buffer[i]);
pos++;
if (pos == keylen)
pos = 0;
}
}
in.close();
out.close();
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
// debug =false ;
String oldFile = new String("C:\\aaa\\aa.txt");
String newFile = new String("C:\\aaa\\aa_en.txt");
encryptFile(oldFile, newFile);
System.out.println("ok");
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
"java实现文件加密解密" Java 实现文件的加密与解密是指利用 Java 语言将资源文件(包括图片、动画等类型)进行简单的加密和解密。这种策略的原因和好处是将准备好的资源存储在云上,使用时通过网络进行读取即可,...
本次使用JAVA语言,采用3DES加密算法进行对文本文件的加密,通过二进制和十六进制的转换来实现,产生加密文件,再对加密文件进行解密。 关键词:DES加密算法、加密、解密。摘要 随着现代网络技术的飞速发展,人们...
同时,高效性指出这个工具在执行加密和解密操作时,能够在合理的时间内完成,这对于处理大文件尤其重要。 "file-encryption-master"这个压缩包文件名可能暗示这是一个关于文件加密的开源项目,可能包含了主代码库或...
本文详细介绍了Java实现的RSA加密解密算法,包括密钥对生成、公钥和私钥的使用、加密和解密、密钥文件的生成等知识点。这些知识点对于Java开发者来说非常重要,可以帮助他们更好地理解和实现RSA加密解密算法。
在提供的压缩包文件"java aes加密、解密"中,应该包含了一个完整的Java项目,包含了上述所有步骤的代码示例,并且每个方法都有详细的注释,可以直接运行查看效果。这个项目无需任何额外的插件,只需要Java环境即可...
在Java编程语言中,公钥和私钥加密解密是一种重要的安全技术,广泛应用于网络通信、数据传输等领域。本文将详细解析如何使用Java实现公钥和私钥的加解密操作,以及相关的关键概念和代码示例。 首先,我们要了解公钥...
总结来说,Java结合RSA算法和数字证书提供了强大的文件加密解密解决方案。通过生成密钥对、创建和管理数字证书,以及使用`Cipher`进行加解密操作,可以确保数据的安全传输和存储。了解并掌握这些技术,对于开发安全...
解密文件的过程与加密类似,只是需要使用`Cipher`的`DECRYPT_MODE`。以下是解密文件的代码: ```java public void decryptFile(File inputFile, File outputFile, Key key) throws Exception { Cipher cipher = ...
"com"目录下的子目录结构可能对应着Java的包名,包含了实现加密解密功能的类文件。而"resource"目录可能包含了配置文件、密钥文件或其他辅助资源,这些在加密解密过程中可能被用到。 总的来说,这个实例为我们展示...
在实际开发中,可以利用Java提供的API和第三方库来构建文件加密工具,简化加密解密流程,例如Apache Commons Codec库中的Base64编码,便于在程序中处理二进制数据。 总结,Java文件加密和解密涉及多种加密算法、...
源代码可能使用了Java的IO和加密库,如`java.io`和`javax.crypto`,来处理文件读写和加密解密操作。GUI部分可能使用了Swing或JavaFX的组件来构建用户交互界面,并结合事件监听来处理用户的加密和解密请求。 总的来...
Java文本加密解密是计算机编程领域中的一个重要主题,特别是在数据安全和信息安全方面。在这个课程设计中,我们将使用Java语言来实现一个简单的文本加解密系统,该系统具有图形用户界面(GUI),使得用户能够方便地...
des加密算法(js+java)加密与解密结果相同 包含三个文件 : des.js des.html ,用于实现前端脚本的加密与... des.java 用于后台的加密解密操作; 项目中正好用到,已经过验证,两个加密解密结果相同,分享给大家!
Java通过`java.security.KeyPairGenerator`生成公钥和私钥,然后使用`Cipher`进行加密解密操作。 5. **文件加密与解密步骤** - 对文件进行加密时,通常先将文件读入内存,然后按块进行加密,最后将加密后的数据...
使用`FileInputStream`和`FileOutputStream`进行文件读写,以及使用`Cipher`类(属于Java Cryptography Architecture的一部分)进行更高级的加密操作,如AES、DES等。 在压缩包中的`Arrange`文件可能是实现上述功能...
在实现AES加密解密时,要特别注意错误处理和数据完整性检查。例如,确保文件读取和写入的正确性,以及在解密过程中处理可能的异常。此外,www.willvc.com.cn 提供的资源可能是进一步学习和解决问题的途径。 总之,...
这可能是与文件加密解密相关的图像,可能展示了加密解密过程的示意图或者Java开发环境的截图。 在实际应用中,为了增强安全性,通常会结合使用对称加密和非对称加密。例如,使用非对称加密来安全传输对称密钥,...
在Java课程设计中,文件加密和...通过以上内容,我们可以了解到Java中进行文件加密解密的基本原理和实践方法,以及如何设计自定义的加密程序。在实际项目中,根据具体需求选择合适的加密算法和策略,确保数据的安全。
综上所述,Java文件加密解密涉及多种技术和概念,包括选择合适的加密算法、管理密钥、处理文件流、确保数据完整性和安全性等。通过理解并正确应用这些知识点,可以构建出强大的文件加密和解密系统。
Java中的AES128加密解密是信息安全领域中常见的数据保护技术。AES,全称Advanced Encryption Standard,是一种块密码标准,被广泛应用于各种场景,包括网络传输、存储数据加密等。128位是AES的一个关键参数,表示...