- 浏览: 159235 次
- 性别:
- 来自: 深圳
最新评论
-
JavaFans:
对于新手来说,很不错的参考资料.多谢楼主分享
iPhone开发学习之iJavaEye for iPhone (闲聊 短信 收藏) -
lupingui:
xurichusheng 写道在做主键自增的时候,一定要注意, ...
PowerDesigner设置主键自增 -
xurichusheng:
在做主键自增的时候,一定要注意,oracle和db2是不支持主 ...
PowerDesigner设置主键自增 -
smapple:
很好啊,我也打算转IPHONE了,大家以后多多交流~
iPhone开发学习之iJavaEye for iPhone (闲聊 短信 收藏) -
chriszeng87:
不错,不过怎么回的人这么少的
iPhone开发学习之iJavaEye for iPhone (闲聊 短信 收藏)
做网站有时会处理一些上传下载的文件。可能会用到加解密功能。以下是一个加解密方法。
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import net.ezcom.common.conf.Conf; import net.ezcom.common.time.TimeHandler; /** * 加解密单元 * @author lupingui * 2009-01-12 17:55:47 */ public class EncryptDecrypt { //加解密KEY,这个不能变动,这里可以由任意的字符组成,尽量用特殊字符 static final byte[] KEYVALUE = "".getBytes(); //读取字节的长度 static final int BUFFERLEN = 512; //加密临时存储目录 static final String TRANSIT_DIR_ENC = ""; //解密临时存储目录 static final String TRANSIT_DIR_DEC = ""; /** * 文件加密 * @param oldFile:待加密文件 * @param saveFileName:加密后文件保存路径 * @return * @throws IOException */ public static boolean encryptFile(File oldFile, String saveFileName) throws IOException{ //如果传入的文件不存在或者不是文件则直接返回 if (!oldFile.exists() || !oldFile.isFile()){ return false; } FileInputStream in = new FileInputStream(oldFile); //加密后存储的文件 File file = new File(saveFileName); if (!file.exists()){ return false; } //读取待加密文件加密后写入加密存储文件中 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(); return true; } /** * 文件加密 * @param oldFile:待加密文件 * @param saveFile:加密后的文件 * @return * @throws IOException */ public static boolean encryptFile(File oldFile, File saveFile) throws IOException{ //如果传入的文件不存在或者不是文件则直接返回 if (!oldFile.exists() || !oldFile.isFile() || !saveFile.exists() || !saveFile.isFile()){ return false; } FileInputStream in = new FileInputStream(oldFile); //读取待加密文件加密后写入加密存储文件中 FileOutputStream out = new FileOutputStream(saveFile); 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(); return true; } /** * 文件加密 * @param oldFile:待加密文件 * @return * @throws IOException */ public static File encryptFile(File oldFile) throws IOException{ //如果传入的文件不存在或者不是文件则直接返回 if (!oldFile.exists() || !oldFile.isFile()){ return null; } FileInputStream in = new FileInputStream(oldFile); //临时加密文件存储目录 File dirFile = new File(TRANSIT_DIR_ENC); //如果临时存储目录不存在或不是目录则直接返回 if (!dirFile.exists() || !dirFile.isDirectory()){ return null; } //加密后存储的文件 File file = new File(dirFile,"enc_" + TimeHandler.getInstance().getTimeInMillis() + "_" + oldFile.getName()); 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(); //返回加密后的文件 return file; } /** * 文件加密 * @param oldFileName:待加密文件路径 * @return * @throws IOException * @throws Exception */ public static File encryptFile(String oldFileName) throws IOException { //如果待加密文件路径不正确则直接返回 if (oldFileName == null || oldFileName.trim().equals("")){ return null; } //待加密文件 File oldFile = new File(oldFileName); //如果传入的文件不存在或者不是文件则直接返回 if (!oldFile.exists() || !oldFile.isFile()){ return null; } //调用文件加密方法并返回结果 return encryptFile(oldFile); } /** * 文件解密 * @param oldFile:待解密文件 * @return * @throws IOException */ public static File decryptFile(File oldFile) throws IOException{ //如果待解密文件不存在或者不是文件则直接返回 if (!oldFile.exists() || !oldFile.isFile()){ return null; } FileInputStream in = new FileInputStream(oldFile); //临时解密文件存储目录 File dirFile = new File(TRANSIT_DIR_DEC); //如果临时解密文件存储目录不存在或不是目录则返回 if (!dirFile.exists() || !dirFile.isDirectory()){ return null; } //解密存储文件 File file = new File(dirFile,"dec_" + TimeHandler.getInstance().getTimeInMillis() + "_" + oldFile.getName().substring(oldFile.getName().lastIndexOf("."))); 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(); //返回解密结果文件 return file; } /** * 文件解密 * @param oldFileName:待解密文件路径 * @return * @throws Exception */ public static File decryptFile(String oldFileName) throws Exception { //如果待解密文件路径不正确则直接返回 if (oldFileName == null || oldFileName.trim().equals("")){ return null; } //待解密文件 File oldFile = new File(oldFileName); //如果待解密文件不存在或不是文件则直接返回 if (!oldFile.exists() || !oldFile.isFile()){ return null; } //调用文件解密方法并返回结果 return decryptFile(oldFile); } }
发表评论
-
iPhone 响应屏幕旋转
2011-01-13 01:47 4979首先重写UIViewController方法: -(BOOL) ... -
iPhone开发学习之iJavaEye for iPhone (闲聊 短信 收藏)
2011-01-05 21:36 1933最近在学习iPhone开发。正好JavaEye有个API,所以 ... -
Objective-C Unicode 转换成中文
2010-12-31 23:08 6677+ (NSString *)replaceUnicode:(N ... -
Objective-C NSURL 访问需要认证的网页 Basic Authentication
2010-09-11 23:39 3204访问某些网页可能需要认证,比如JavaEye的Api。 如下 ... -
GNU step gcc.sh
2010-08-31 01:39 1769#!/bin/sh #if[$# -ne 1]; then ... -
Java倒序读取文件信息
2010-01-05 18:11 3145public class ReverseReaderFile ... -
Linux环境下Java操控Tomcat、Apache自动重启
2010-01-04 17:30 3896//软件安装目录 static final Str ... -
几个简单的JS操作Select记录
2009-12-28 16:09 1280HTML代码: <table width=&q ... -
CentOS 系统下安装jdk+apache+tomcat+mysql 记录
2009-08-14 17:19 3731首先通过 rpm -qa|grep gcj 可查看已安装的旧版 ... -
Eclipse快捷键大全
2009-04-30 13:06 999Ctrl+1 快速修复(最经典 ... -
根据邮件地址获得邮件服务器
2009-04-17 11:32 1320/** * 根据邮件地址,获得邮件服务器 * @ ... -
JAVA笔试32问(转载)
2009-03-05 13:18 922问题: 第一,谈谈final, finally, fi ... -
JS 操作 Select
2009-03-05 12:25 1276添加 Select.options.add(new Optio ... -
SMTP 答复代码含义
2009-03-02 12:02 1636500 Syntax error, command unrec ... -
JAVA 文件下载时的文件名乱码解决
2009-01-19 09:38 1850JAVA文件下载时,对文件名的命名如果包含中文或非英文字符,很 ... -
HTML 中控制不换行 MySql启动命令
2008-10-17 21:55 1609HTML 中控制不换行标签: <nobr>< ... -
真正多关键字高亮显示
2008-09-25 17:00 1353<html> <head> ... -
Linux系统下强制踢掉登录用户
2008-09-10 15:32 7380linux系统root用户可强制踢制其它登录用户,首先可用w命 ... -
Linux系统下tomcat直接指定JAVA_HOME而不需配置环境变量
2008-09-10 15:00 8588Tomcat使用JDK除了配置JDK环境变量之外还有一种情况就 ... -
用图作提交按钮或超连接
2008-03-22 18:03 1231做网站开发几乎肯定会用到以图片作为提交按钮或超连接。 < ...
相关推荐
Java文件加解密工具类,使用AES算法,256位秘钥。srcFile为输入文件,destFile为输出文件。
【基于JAVA文件加解密的实验报告】 本报告聚焦于使用Java进行文件加解密的实践,主要涉及了面向对象程序设计(JAVA)课程设计,选题为文件加解密。设计目标包括利用特定加密算法对文本文件进行加密和解密,支持RSA...
Java 文件加密解密器 可对所有文件进行加密和解密,第一次运行加密,第二次运行解密。
在加密和解密过程中,你需要将文件流包装成`CipherInputStream`或`CipherOutputStream`,以便在数据传输过程中完成加解密。 5. **混淆与 Padding**:为了确保数据能被有效加密,通常需要填充数据到特定的块大小,如...
总的来说,这个Eclipse项目提供了一个学习和实践Java文件加密解密的平台。通过研究源码,你可以深入理解各种加密算法的工作原理,并学习如何在实际项目中应用它们,以保护数据的安全。同时,对于软件开发者来说,...
Java文件加解密是软件开发中的重要一环,特别是在处理敏感数据时,数据的安全性显得尤为重要。本压缩包“des-java.rar”包含了关于Java中使用DES(Data Encryption Standard)算法进行文件加解密的相关示例和资料。...
Java文件加解密工具是一种基于Java Swing开发的实用程序,用于对字符串和文件进行加密和解密操作。这个工具提供了多种加密算法,包括对称加密(如AES, DES)和非对称加密(如RSA),以满足不同安全需求。下面我们将...
`JAVA文件加解密器`是一个使用Java编程语言编写的工具,旨在为用户提供一种安全的手段来保护他们的文件,通过对文件进行加密和解密操作确保数据不被未经授权的用户访问。这个程序适用于任何类型的文件,无论它们是...
在这个“java 文件加解密程序”中,我们可以看到开发者采用了两种核心的加密技术:对称加密和非对称加密,旨在为文件提供多层保护,增强安全性。 对称加密,顾名思义,指的是加密和解密使用同一密钥的方法。它以其...
JAVA文件加密解密.pdf
以下是文件加解密的伪代码: ```java // 加密文件 FileInputStream fis = new FileInputStream(file); ByteArrayOutputStream baos = new ByteArrayOutputStream(); byte[] buffer = new byte[BUFFER_SIZE]; ...
"java实现文件加密解密" Java 实现文件的加密与解密是指利用 Java 语言将资源文件(包括图片、动画等类型)进行简单的加密和解密。这种策略的原因和好处是将准备好的资源存储在云上,使用时通过网络进行读取即可,...
在"encAndDec"这个文件中,很可能包含了使用Java实现的这四种加密解密方法的示例代码。对于初学者或开发者来说,这些示例可以帮助理解加密解密的基本原理,以及如何在Java中运用这些技术。学习和实践这些代码,可以...
### Java 文件加密解密关键技术详解 #### 一、概述 在信息安全领域,加密技术是保障数据安全的关键手段之一。本文将详细介绍Java中常用的几种加密算法,包括但不限于DES、PBE、RSA、DH、DSA和ECC等,并提供部分...
2. **Java包的导入**:为了实现文件操作和图形用户界面(GUI)的功能,课程设计导入了java.awt、java.awt.event、java.io和javax.swing等包。这些包提供了基本的UI组件、输入输出流以及事件处理机制。 3. **文件...
用des算法对文件进行加解密 java语言实现
在Java编程语言中,文件加密和解密是信息安全领域中的重要技术,用于保护数据免受未经授权的访问。本文将深入探讨如何使用Java实现文件的加密和解密,并结合提供的源码进行详细解释。 首先,我们需要了解加密的基本...
JEncrypt.jar--java文件加解密图形化工具(3des) ,笔者用java开发的图形化小工具,小巧精致又实用 。在我们日常的工作中难免有些信息(比如网站账号、密码等)需要存储到公司电脑上,但又不希望被他人看到,这时候这款...
7. **加解密接口**:JCT可能提供了一套统一的API,使得开发者能够方便地调用各种加密算法,而无需深入了解底层实现细节。 8. **文档和源代码**:压缩包中的`jct_doc.zip`可能是JCT工具包的API文档,对于理解和使用...
5. **Java Cryptography Extension (JCE)**:Java平台的标准扩展,提供了加密、解密、消息认证码(MAC)和密钥协议等功能。JCE包含各种加密算法的实现,如AES、RSA等,并支持无限强度加密策略。 6. **Key和Cipher...