import java.io.*;
import javax.crypto.*;
import java.security.*;
class A
implements Serializable {
private String a;
public String getA() {
return a;
}
public void setA(String a) {
this.a = a;
}
public String toString(){
return a;
}
}
public class DESObjectToFile {
public static void main(String[] args) {
KeyGenerator kg = null;
try {
//指定算法,这里为DES
kg = KeyGenerator.getInstance( "DES ", "SunJCE ");
//指定密钥长度,长度越高,加密强度越大
kg.init(56);
//产生密钥
Key key = kg.generateKey();
//记得把密钥保存起来
String keyfilename= "d:\\key.dat ";
ObjectOutputStream out = new ObjectOutputStream(new
BufferedOutputStream(new FileOutputStream(keyfilename)));
out.writeObject(key);
out.close();
//加密要用Cipher来实现
Cipher cipher = Cipher.getInstance( "DES ");
String filename = "d:\\加密的对象.dat ";
//读入并加密文件
try {
//设置加密模式
cipher.init(Cipher.ENCRYPT_MODE, key);
//输出流
out = new ObjectOutputStream(new CipherOutputStream(new
BufferedOutputStream(new FileOutputStream(filename)),
cipher));
A aa = new A();
aa.setA( "aaa ");
out.writeObject(aa);
out.close();
System.out.println( "加密完成! ");
}
catch (Exception ey5) {
System.out.println( "Error when encrypt the file ");
System.exit(0);
}
try {
//把key从文件取出
ObjectInputStream in =new ObjectInputStream(new
BufferedInputStream(new FileInputStream(keyfilename)));
key=(Key)in.readObject();
in.close();
//设置解密模式
cipher.init(Cipher.DECRYPT_MODE, key);
//输入流
in =new ObjectInputStream(new CipherInputStream(new
BufferedInputStream(
new FileInputStream(filename)), cipher));
Object a=in.readObject();
System.out.println(a);
in.close();
System.out.println( "解密完成! ");
}
catch (Exception ey5) {
System.out.println( "Error when encrypt the file ");
System.exit(0);
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
java aes128/256 对称加密解密,rsa对称加密解密验签实现,php java通用aes加密 支持任何形式的aes加密,文件,字符,字节等,内含php代码,可以与php平台实现aes加密,而且包含rsa非对称加密签名验签实现,都是对...
" "3 设计任务 " "对文件进行加密解密 " "4 设计内容 " "4.1 需求分析 " "(1)给定任意一个文本文件,进行加密,生成另一个文件。 " "(2)对加密后的文件还原。 " "4.2 总体设计 " "4.2.1 包的描述 " "导入了java.awt...
文件加密解密算法(Java源码) java,file,算法,加密解密,java源码 package com.crypto.encrypt; import java.security.SecureRandom; import java.io.*; import javax.crypto.spec.DESKeySpec; import javax.crypto...
3.3加密操作模块 入口参数:字节数组 出口值:经DES算法加密过的字节数组 代码实现: private byte[] encryptByDES(byte[] bytP,byte[] bytKey) throws Exception{ DESKeySpec desKS = new DESKeySpec(bytKey); ...
本插件是作用在数据层对数据对象进行自动加密和解密. 前提条件:使用mybatis的autoConfig自动配置装载
下面小编就为大家带来一篇json对象转为字符串,当做参数传递时加密解密的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...
* 源代码:完整的Java源代码,包括加密和解密功能的实现。 * 论文:详细描述了软件的设计思路、实现过程和关键技术分析。 适用对象: * Java学习者:通过学习和实践本项目,可以掌握RSA非对称加密算法的原理和应用...
java调用MD5加密方式计算摘要值(有界面)
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...
《3DES加解密技术》 java_DES加密解密源码 java实现DES加密算法 Java中3DES加密解密示例(封装byte数组16进制互转) JAVA中3des加密算法
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...
Java运行时装入字节码的机制隐含地意味着可以对字节码进行修改。JVM每次装入类文件时都需要一个称为ClassLoader的对象,这个对象负责把新的类装入正在运行的JVM。JVM给ClassLoader一个包含了待装入类名字的字符串,...
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...
java阶段机试试题 部分内容如下,下载可看全部哦!! 二、凯撒加密器 1、功能要求 开发基于控制台的凯撒加密系统。具体要求如下: (1)根据用户的选择从控制台待加密或解密的字符串。如图-2和图-3所示。 (2)根据...
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...
这个代码实现了一个简单的文件加密系统。首先定义了一个AES算法和一个密钥值,然后通过Cipher类和SecretKeySpec类生成了一个密钥...最后在main方法中创建了一个FileEncryption对象,并演示了如何加密和解密文件的操作。
Java加密解密工具集 JCT v1.0源码包.rar Java半透明图片实现的步骤及源代码.rar Java右键弹出菜单源码 Java吃豆子游戏源代码.rar Java图片加水印,支持旋转和透明度设置 Java圆形按钮实例代码,含注释 Java圆形电子...