当前位置 : 主页 > 网络编程 > 其它编程 >

PBE实现加密算法

来源:互联网 收集:自由互联 发布时间:2023-07-02
1.新建一个java项目里面新建一个java类整体的框架如图所示2.PBE.java里面的代码如下所示importj 1.新建一个java项目里面新建一个java 类整体的框架如图所示 2.PBE.java里面的代码如下所示 impo
1.新建一个java项目里面新建一个java类整体的框架如图所示2.PBE.java里面的代码如下所示importj

1.新建一个java项目里面新建一个java 类整体的框架如图所示

2.PBE.java里面的代码如下所示

import java.security.Key;import java.security.SecureRandom;import javax.crypto.Cipher;import javax.crypto.SecretKeyFactory;import javax.crypto.spec.PBEKeySpec;import javax.crypto.spec.PBEParameterSpec;import com.sun.org.apache.xerces.internal.impl.dv.util.HexBin;public class PBE {private static String src "mu rong fei fei 636";public static void jdkPBE() {try {// 初始化加盐SecureRandom random new SecureRandom();byte[] salt random.generateSeed(8);// 口令与密钥String password "wahaha";PBEKeySpec pbeKeySpec new PBEKeySpec(password.toCharArray());SecretKeyFactory factory SecretKeyFactory.getInstance("PBEWITHMD5andDES");Key key factory.generateSecret(pbeKeySpec);// 加密PBEParameterSpec pbeParameterSpec new PBEParameterSpec(salt, 100);Cipher cipher Cipher.getInstance("PBEWITHMD5andDES");cipher.init(Cipher.ENCRYPT_MODE, key, pbeParameterSpec);byte[] result cipher.doFinal(src.getBytes());System.out.println("jdk pbe encrypt:" HexBin.encode(result));// 解密cipher.init(Cipher.DECRYPT_MODE, key, pbeParameterSpec);result cipher.doFinal(result);System.out.println("jdk pbe decrypt:" new String(result));} catch (Exception e) {e.printStackTrace();}}public static void main(String[] args) {jdkPBE();}} 3.运行之后可以得到加密和解密的结果

网友评论