⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 createkey.java

📁 使用vc++编码 很好的加密算法 有较强的保密功能
💻 JAVA
字号:
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;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -