• 3DES加解密过程


     1 package com.pff.pff;
     2 
     3 import java.security.SecureRandom;
     4 
     5 import javax.crypto.Cipher;
     6 import javax.crypto.KeyGenerator;
     7 import javax.crypto.SecretKey;
     8 import javax.crypto.SecretKeyFactory;
     9 import javax.crypto.spec.DESedeKeySpec;
    10 
    11 import org.apache.commons.codec.binary.Hex;
    12 
    13 public class Des3 {
    14 
    15     private static String test = "pff";
    16     public static void main(String[] args) {
    17         testDes();
    18     }
    19     public static void testDes() {
    20         try {
    21             //生成秘钥
    22             KeyGenerator keyGenerator = KeyGenerator.getInstance("DESede");
    23             keyGenerator.init(new SecureRandom());
    24             SecretKey generateKey = keyGenerator.generateKey();
    25             byte[] encoded = generateKey.getEncoded();
    26             //秘钥转换
    27             DESedeKeySpec desKeySpec = new DESedeKeySpec(encoded);
    28             SecretKeyFactory instance = SecretKeyFactory.getInstance("DESede");
    29             SecretKey generateSecret = instance.generateSecret(desKeySpec);
    30             //DES加密过程
    31             Cipher cipher = Cipher.getInstance("DESede/ECB/PKCS5padding");
    32             cipher.init(Cipher.ENCRYPT_MODE, generateSecret);
    33             byte[] result = cipher.doFinal(test.getBytes());
    34             System.out.println("DESede加密过程结果= " +Hex.encodeHexString(result));
    35             //解密过程
    36             cipher.init(Cipher.DECRYPT_MODE, generateSecret);
    37             byte[] result2 = cipher.doFinal(result);
    38             System.out.println("DESede解密过程结果= "+new String(result2));
    39         } catch (Exception e) {
    40             e.printStackTrace();
    41         }
    42     }
    43 
    44 }
  • 相关阅读:
    八皇后-递归
    代码复用3
    权限管理系统-角色组模块
    MzBlog分析
    linux shell 终端中文乱码(转)
    LINUX下中文语言包的安装(转)
    每一个程序员必须知道的业内英语词汇(转)
    80后创业故事之:兄弟散伙,创业失败(转)
    尊重用户的习惯审美,不要挑战用户的习惯(转)
    libpcre.so.1 cannot be found
  • 原文地址:https://www.cnblogs.com/wings-ff/p/9229087.html
Copyright © 2020-2023  润新知