java加密后的密文:iP6nVfCE9Eiw47utJDR6wV6Lhl4xyOgYykub0HUJSZQ=以下是java的aes加密类,希望能用php解密出来
package com.mk.api.util;import java.security.Key;import java .security.MessageDigest;导入java.util.Arrays;导入javax.crypto.Cipher;导入javax.crypto.spec.SecretKeySpec;导入javax.xml.bind.DatatypeConverter;/*** AES 加密*/public class AES { private静态最终字符串 AESTYPE = "AES"; 私有静态最终字符串KEY =“Z8LSq0wWwB5v+6YJzurcP463H3F12iZh74fDj4S74oUH4EONkiKb2FmiWUbtFh97GG/c/lbDE47mvw6j94yXxKHOpoqu6zpLKMKPcOoSppcVWb2q34qENBJkudXUh4MWcreond LmLL2UyydtFKuU9Sa5VgY/CzGaVGJABK2ZR94="; /** * 加密 * @param content * @return */ public static String encrypt(String str) { try { Key key =generateKey(); 密码 c = Cipher.getInstance(AESTYPE); c.init(Cipher.ENCRYPT_MODE, 密钥); byte[] encVal = c.doFinal(str.getBytes()); 字符串加密值 = DatatypeConverter.printBase64Binary(encVal); 返回加密值; } catch (Exception e) { e.printStackTrace(); } 返回 null; } /** * 解密 * @param content * @return */ 公共静态字符串解密(String str) { 尝试{ Key key =generateKey(); 密码 c = Cipher.getInstance(AESTYPE); c.init(Cipher.DECRYPT_MODE, 密钥); byte[] dedecdedValue = DatatypeConverter.parseBase64Binary(str); byte[] decValue = c.doFinal(decordedValue); 字符串解密值 = new String(decValue); 返回解密值; } catch (Exception e) { e.printStackTrace(); } 返回 null; } private static KeygenerateKey() throws Exception { byte[] keyValue = KEY.getBytes("UTF-8"); MessageDigest sha = MessageDigest.getInstance("SHA-1"); keyValue = sha.digest(keyValue); keyValue = Arrays.copyOf(keyValue, 16); 密钥 key = new SecretKeySpec(keyValue, AESTYPE); 返回键; } }
w2022-07-20 14:15:26
package com.mk.api.util; import java.security.Key; import java.security.MessageDigest; import java.util.Arrays; import javax.crypto.Cipher; import javax.crypto.spec.SecretKeySpec; import javax.xml.bind.DatatypeConverter; /** * AES 加密 */ public class AES { private static final String AESTYPE = "AES"; private static final String KEY = "Z8LSq0wWwB5v+6YJzurcP463H3F12iZh74fDj4S74oUH4EONkiKb2FmiWUbtFh97GG/c/lbDE47mvw6j94yXxKHOpoqu6zpLKMKPcOoSppcVWb2q34qENBJkudXUh4MWcreondLmLL2UyydtFKuU9Sa5VgY/CzGaVGJABK2ZR94="; /** * 加密 * @param content * @return */ public static String encrypt(String str) { try { Key key = generateKey(); Cipher c = Cipher.getInstance(AESTYPE); c.init(Cipher.ENCRYPT_MODE, key); byte[] encVal = c.doFinal(str.getBytes()); String encryptedValue = DatatypeConverter.printBase64Binary(encVal); return encryptedValue; } catch (Exception e) { e.printStackTrace(); } return null; } /** * 解密 * @param content * @return */ public static String decrypt(String str) { try { Key key = generateKey(); Cipher c = Cipher.getInstance(AESTYPE); c.init(Cipher.DECRYPT_MODE, key); byte[] decordedValue = DatatypeConverter.parseBase64Binary(str); byte[] decValue = c.doFinal(decordedValue); String decryptedValue = new String(decValue); return decryptedValue; } catch (Exception e) { e.printStackTrace(); } return null; } private static Key generateKey() throws Exception { byte[] keyValue = KEY.getBytes("UTF-8"); MessageDigest sha = MessageDigest.getInstance("SHA-1"); keyValue = sha.digest(keyValue); keyValue = Arrays.copyOf(keyValue, 16); Key key = new SecretKeySpec(keyValue, AESTYPE); return key; } }
上面代码格式乱了