使用java自带des加密算法实现文件加密和字符串加密
try { SecureRandom sr = new SecureRandom(); DESKeySpec dks = new DESKeySpec(DESKEY.getBytes()); SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES"); SecretKey securekey = keyFactory.generateSecret(dks); IvParameterSpec iv = new IvParameterSpec(PASSKEY.getBytes()); Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); cipher.init(mode, securekey, iv, sr);
File encoderFile = new File(filePath + File.separator + "encoder"); if (!encoderFile.exists()) { encoderFile.mkdir(); }
is = new FileInputStream(filePath + File.separator + fileName); out = new FileOutputStream(filePath + File.separator + "encoder" + File.separator + fileName);
cis = new CipherInputStream(is, cipher); byte[] buffer = new byte[1024]; int r; while ((r = cis.read(buffer)) > 0) { out.write(buffer, 0, r); }
} catch (Exception e) { e.printStackTrace(); } finally { try { if (is != null) { is.close(); } if (cis != null) { cis.close(); } if (out != null) { out.close(); } } catch (Exception e1){
} } return filePath + File.separator + "encoder" + File.separator + fileName; }/**@Comments :对字符串进行加密 * @param src 源字符串 * @param mode 加密模式 加密:Cipher.ENCRYPT_MODE 解密:Cipher.DECRYPT_MODE * @return */public static String encoderOrdecoder( String src, int mode) { String tag=""; InputStream is = null; OutputStream out = null; CipherInputStream cis = null;
try { SecureRandom sr = new SecureRandom(); DESKeySpec dks = new DESKeySpec(DESKEY.getBytes()); SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES"); SecretKey securekey = keyFactory.generateSecret(dks); IvParameterSpec iv = new IvParameterSpec(PASSKEY.getBytes()); Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); cipher.init(mode, securekey, iv, sr); cis = new CipherInputStream(new ByteArrayInputStream(src.getBytes()) , cipher); out=new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int r; while ((r = cis.read(buffer)) > 0) { out.write(buffer, 0, r); } tag=out.toString(); } catch (Exception e) { e.printStackTrace(); } finally { try { if (is != null) { is.close(); } if (cis != null) { cis.close(); } if (out != null) { out.close(); } } catch (Exception e1){
} } return tag; } public static void main(String[] args) { System.out.println("aaa"); String t=encoderOrdecoder("aaa", Cipher.ENCRYPT_MODE ); System.out.println(t); System.out.println(encoderOrdecoder(t, Cipher.DECRYPT_MODE )); }}
- 使用java自带des加密算法实现文件加密和字符串加密
- Java实现MD5加密_字符串加密_文件加密
- 黑马程序员_java用java进行复制文件(考虑使用多线程),能系统自带快吗??
- Java实现自动压缩文件并加密的方法示例
- 使用ext实现java文件批量上传
- JAVA中使用MD5加密实现密码加密
- C# 与JAVA 的RSA 加密解密交互,互通,C#使用BouncyCastle来实现私钥加密,公钥解密的方法
- Java异或技操作给任意的文件加密原理及使用详解
- java使用POI实现替换文件中指定关键字(二)
- java 使用线程监控文件目录变化的实现方法
- Java 使用 SFTP 实现文件上传下载(二)
- Java使用内存映射实现大文件的上传
- Java 使用Socket实现文件上传与下载
- java 使用线程监控文件目录变化的实现方法
- JAVA中使用FTPClient实现文件上传下载
- JAVA中使用FTPClient实现文件上传下载
- java中使用Servlet实现文件上传
- java使用递归算法实现加载本地磁盘的文件目录和文件
- 使用PHP自带zlib函数 几行代码实现PHP文件打包下载zip
- JAVA中使用FTPClient实现文件上传下载实例代码