• 大小: 10KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-11
  • 语言: Java
  • 标签:

资源简介

文件加密解密算法(Java源码) java,file,算法,加密解密,java源码 package com.crypto.encrypt; import java.security.SecureRandom; import java.io.*; import javax.crypto.spec.DESKeySpec; import javax.crypto.SecretKey; import javax.crypto.SecretKeyFactory; import javax.crypto.Cipher; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; import java.security.spec.InvalidKeySpecException; import javax.crypto.NoSuchPaddingException; import javax.crypto.BadPaddingException; import javax.crypto.IllegalBlockSizeException; import java.lang.reflect.Constructor; import java.security.spec.KeySpec; import java.lang.reflect.InvocationTargetException; public class EncryptData { private String keyfile=null; public EncryptData() { } public EncryptData(String keyfile) { this.keyfile=keyfile; } /** * 加密文件 * @param filename String 源路径 * @param filenamekey String 加密后的路径 */ public void createEncryptData(String filename,String filenamekey) throws IllegalStateException, IllegalBlockSizeException, BadPaddingException, NoSuchPaddingException, InvalidKeySpecException, NoSuchAlgorithmException, InvalidKeyException, IOException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException, ClassNotFoundException, IllegalStateException, IllegalBlockSizeException, BadPaddingException, NoSuchPaddingException, InvalidKeySpecException, NoSuchAlgorithmException, InvalidKeyException, IOException { //验证keyfile if(keyfile==null || keyfile.equals("")) { throw new NullPointerException("无效的key文件路径"); } encryptData(filename,filenamekey); } /** * 加密类文件 * @param filename String 原始的类文件 * @param encryptfile String 加密后的类文件 * @throws IOException * @throws InvalidKeyException * @throws NoSuchAlgorithmException * @throws InvalidKeySpecException * @throws NoSuchPaddingException * @thro

资源截图

代码片段和文件信息

package com.crypto.encrypt;

import java.security.SecureRandom;
import javax.crypto.KeyGenerator;
import java.security.NoSuchAlgorithmException;
import javax.crypto.SecretKey;
import java.io.*;

public class CreateKey {
  String filename=““;
  public CreateKey() {

  }

  /**
   * 获得密匙字节内容
   * @throws IOException
   * @return byte[]
   */
  public byte[] getKeyByte() throws IOException {
    byte[] bytes=Util.readFile(filename);
    return bytes;
  }

  public void CreateKeyFile(String filename) throws IOException
      NoSuchAlgorithmException {
    this.filename=filename;
    if(filename==null || filename.equals(““))
    {
      throw new NullPointerException(“无效的文件路径“);
    }
    createKey();
  }

  /**
   * 生成密匙
   * @throws NoSuchAlgorithmException
   * @throws IOException
   */
  private void createKey() throws NoSuchAlgorithmException IOException {
    SecureRandom secureRandom = new SecureRandom();
    // 为我们选择的DES算法生成一个KeyGenerator对象
    KeyGenerator kg = KeyGenerator.getInstance(Util.getValue(“algorithm“));
    kg.init(secureRandom);
    // 生成密钥
    SecretKey key = kg.generateKey();
    // 将密钥数据保存为文件供以后使用
    Util.writeFile(key.getEncoded()filename);
  }

  /**
   * 获得密匙文件路径
   * @return String
   */
  public String getKeyFilePath()
  {
    return filename;
  }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1417  2005-08-14 13:00  文件加密解密\com\crypto\encrypt\CreateKey.java

     文件       5574  2005-08-15 21:40  文件加密解密\com\crypto\encrypt\EncryptData.java

     文件       6194  2005-08-15 21:39  文件加密解密\com\crypto\encrypt\UnEncryptData.java

     文件       2641  2005-08-15 23:36  文件加密解密\com\crypto\encrypt\Util.java

     文件      13070  2005-09-15 13:27  文件加密解密\des.jar

     文件         76  2005-08-15 23:27  文件加密解密\resource\algorithm.properties

     文件          8  2005-08-15 23:06  文件加密解密\resource\key

     目录          0  2005-09-15 13:20  文件加密解密\com\crypto\encrypt

     目录          0  2005-08-16 08:35  文件加密解密\com\crypto

     目录          0  2005-08-16 08:35  文件加密解密\com

     目录          0  2005-08-16 08:35  文件加密解密\resource

     目录          0  2009-12-29 15:28  文件加密解密

----------- ---------  ---------- -----  ----

                28980                    12


评论

共有 条评论

相关资源