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文件加密解密涉及多种技术和概念,包括选择合适的加密算法、管理密钥、处理文件流、确保数据完整性和安全性等。通过理解并正确应用这些知识点,可以构建出强大的文件加密和解密系统。
总的来说,这个Eclipse项目提供了一个学习和实践Java文件加密解密的平台。通过研究源码,你可以深入理解各种加密算法的工作原理,并学习如何在实际项目中应用它们,以保护数据的安全。同时,对于软件开发者来说,...
"java实现文件加密解密" Java 实现文件的加密与解密是指利用 Java 语言将资源文件(包括图片、动画等类型)进行简单的加密和解密。这种策略的原因和好处是将准备好的资源存储在云上,使用时通过网络进行读取即可,...
Java加密解密工具包,通常用于保护敏感数据的安全,防止未经授权的访问或篡改。这个名为"JCT"的工具包提供了丰富的功能,使得开发者在Java应用中集成加密和解密操作变得更加简单。下面我们将详细探讨Java加密的相关...
JAVA文件加密解密.pdf
"com"目录下的子目录结构可能对应着Java的包名,包含了实现加密解密功能的类文件。而"resource"目录可能包含了配置文件、密钥文件或其他辅助资源,这些在加密解密过程中可能被用到。 总的来说,这个实例为我们展示...
本文详细介绍了Java实现的RSA加密解密算法,包括密钥对生成、公钥和私钥的使用、加密和解密、密钥文件的生成等知识点。这些知识点对于Java开发者来说非常重要,可以帮助他们更好地理解和实现RSA加密解密算法。
设计的主题是文本文档的加密与解密,旨在通过实践提升学生在实际问题中的分析和解决能力,增强他们的应用技能。 设计任务主要包括两个部分:文件加密和解密。在加密过程中,系统需要接受用户提供的任意文本文件,对...
在"encAndDec"这个文件中,很可能包含了使用Java实现的这四种加密解密方法的示例代码。对于初学者或开发者来说,这些示例可以帮助理解加密解密的基本原理,以及如何在Java中运用这些技术。学习和实践这些代码,可以...
SMS4国密JAVA加密解密完整代码,无异常java类文件,导入即用。Convert.java 内部字符串进制转换类,SMS4.java 国密加密解密处理方法类。TestMain.java 测试类,调用 encrypt 加密 decode 解密
通过对这些知识点的理解和实践,你可以掌握Java中文件加密解密的基本技巧,从而能够应用于实际项目中,保护敏感数据的安全。在学习过程中,如果遇到不理解的部分,可以查阅相关文档或在线教程以获取更多帮助。
### Java 文件加密解密关键技术详解 #### 一、概述 在信息安全领域,加密技术是保障数据安全的关键手段之一。本文将详细介绍Java中常用的几种加密算法,包括但不限于DES、PBE、RSA、DH、DSA和ECC等,并提供部分...
本次使用JAVA语言,采用3DES加密算法进行对文本文件的加密,通过二进制和十六进制的转换来实现,产生加密文件,再对加密文件进行解密。 关键词:DES加密算法、加密、解密。摘要 随着现代网络技术的飞速发展,人们...
在Java中实现排列码,我们可以利用编程语言的强大功能来设计相应的加密和解密算法。 首先,我们需要理解排列码的原理。排列码通常基于一个固定的编码规则,例如,可以使用数字或字符的某种特定顺序对数据进行编码。...
在Java编程环境中,处理文件的压缩与解压缩是常见的任务,而涉及到安全性,加密和解密就显得尤为重要。本文将详细讲解如何使用Java实现ZIP压缩包的加密与解密。 首先,我们需要理解加密的基本概念。加密是将明文...
在实现AES加密解密时,要特别注意错误处理和数据完整性检查。例如,确保文件读取和写入的正确性,以及在解密过程中处理可能的异常。此外,www.willvc.com.cn 提供的资源可能是进一步学习和解决问题的途径。 总之,...
这些文件可以帮助读者深入理解RSA加密解密的Java实现,并提供实际操作的参考。 总结来说,RSA加密解密是网络安全中的关键技术,Java提供了丰富的API支持其应用。通过生成密钥对,使用公钥加密和私钥解密,我们可以...
用des算法对文件进行加解密 java语言实现
【基于JAVA文件加解密的实验报告】 本报告聚焦于使用Java进行文件加解密的实践,主要涉及了面向对象程序设计(JAVA)课程设计,选题为文件加解密。设计目标包括利用特定加密算法对文本文件进行加密和解密,支持RSA...