能力值:
( LV2,RANK:10 )
|
-
-
2 楼
已经解决
|
能力值:
( LV5,RANK:70 )
|
-
-
3 楼
文本转utf-8 加密KEY是sdtyffdftesfyfdw
然后加密文本.得到的16进制转字符输出而已
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
已经解决
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
已经解决
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
已经解决
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
已经解决
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
C.encrypt(要加密的内容, 秘钥[就是哪个C.k])
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
number:13800138000 encrypt num:C69F44F281B1199B6546CB21CA7FF080
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
已经解决
|
能力值:
( LV7,RANK:100 )
|
-
-
11 楼
电脑上使用要替换jce_policy,JDK_HOME\jre\lib\security,下面是jce_policy下载地址
jdk1.5: 158K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6h3!0J5j5h3y4D9k6g2)9J5k6h3y4G2L8g2)9J5c8Y4c8W2j5$3S2F1k6i4c8%4L8%4u0C8i4K6u0r3K9X3q4$3j5g2)9J5c8X3A6S2N6X3q4K6k6h3u0#2M7$3W2F1k6i4y4K6i4K6u0r3k6r3!0%4L8X3I4G2j5h3c8K6i4K6u0r3K9X3q4$3j5g2)9J5k6r3q4J5j5$3S2A6N6X3g2Q4x3X3c8V1L8%4N6F1L8r3!0S2k6s2y4Q4x3X3c8B7j5i4k6S2i4K6u0V1M7r3I4S2N6q4)9J5k6o6b7I4z5e0b7I4z5q4)9J5k6h3S2@1L8h3I4Q4x3U0y4B7j5$3g2Q4y4h3k6H3L8$3I4A6j5%4W2Q4x3X3b7I4i4K6u0W2y4g2)9J5k6e0m8Q4x3X3c8G2N6r3S2Q4x3X3c8v1f1q4t1`.
jdk1.6: b5cK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6h3!0J5j5h3y4D9k6g2)9J5k6h3y4G2L8g2)9J5c8Y4c8W2j5$3S2F1k6i4c8%4L8%4u0C8i4K6u0r3K9X3q4$3j5g2)9J5c8X3A6S2N6X3q4K6k6g2)9J5c8X3c8G2N6$3&6D9L8$3q4V1M7#2)9J5c8X3A6U0k6g2)9J5k6o6k6Q4x3X3c8V1L8%4N6F1L8r3!0S2k6q4)9J5k6o6b7J5z5e0t1@1x3#2)9J5k6h3S2@1L8h3H3`.
jdk1.7: 4e9K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6h3!0J5j5h3y4D9k6g2)9J5k6h3y4G2L8g2)9J5c8Y4c8W2j5$3S2F1k6i4c8%4L8%4u0C8i4K6u0r3K9X3q4$3j5g2)9J5c8X3A6S2N6X3q4K6k6g2)9J5c8X3c8G2N6$3&6D9L8$3q4V1M7#2)9J5c8X3A6U0k6g2)9J5k6o6N6Q4x3X3c8V1L8%4N6F1L8r3!0S2k6q4)9J5k6o6b7K6x3U0p5J5y4q4)9J5k6h3S2@1L8h3H3`.
jdk1.8: 405K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6h3!0J5j5h3y4D9k6g2)9J5k6h3y4G2L8g2)9J5c8Y4c8W2j5$3S2F1k6i4c8%4L8%4u0C8i4K6u0r3K9X3q4$3j5g2)9J5c8X3A6S2N6X3q4K6k6g2)9J5c8X3c8G2N6$3&6D9L8$3q4V1M7#2)9J5c8X3A6U0k6e0S2Q4x3X3c8V1L8%4N6F1L8r3!0S2k6q4)9J5k6o6t1I4x3K6x3I4y4U0k6Q4x3X3g2Z5N6r3#2D9
编译:javac AES.java
运行:java AES
import java.io.UnsupportedEncodingException;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
public class AES {
private static final String CipherMode = "AES/ECB/PKCS5Padding";
public static String k = "sdtyffdftesfyfdw";
private static SecretKeySpec createKey(String key) {
byte[] bArr = null;
if (key == null) {
key = "";
}
StringBuffer sb = new StringBuffer(32);
sb.append(key);
while (sb.length() < 32) {
sb.append("0");
}
if (sb.length() > 32) {
sb.setLength(32);
}
try {
bArr = sb.toString().getBytes("UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return new SecretKeySpec(bArr, "AES");
}
public static byte[] encrypt(byte[] bArr, String key) {
try {
SecretKeySpec seckey = AES.createKey(key);
System.out.println(seckey);
Cipher instance = Cipher.getInstance(CipherMode);
instance.init(Cipher.ENCRYPT_MODE, seckey);
return instance.doFinal(bArr);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
public static String encrypt(String str, String key) {
byte[] bArr = null;
try {
bArr = str.getBytes("UTF-8");
} catch (Exception e) {
e.printStackTrace();
}
return AES.byte2hex(AES.encrypt(bArr, key));
}
public static byte[] decrypt(byte[] bArr, String key) {
try {
SecretKeySpec seckey = AES.createKey(key);
Cipher instance = Cipher.getInstance(CipherMode);
instance.init(Cipher.DECRYPT_MODE, seckey);
return instance.doFinal(bArr);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
public static String decrypt(String str, String key) {
byte[] bArr = null;
try {
bArr = AES.hex2byte(str);
} catch (Exception e) {
e.printStackTrace();
}
bArr = AES.decrypt(bArr, key);
if (bArr == null) {
return null;
}
try {
return new String(bArr, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return null;
}
public static String byte2hex(byte[] bArr) {
StringBuffer sb = new StringBuffer(bArr.length * 2);
String hex = "";
for (byte b : bArr) {
hex = Integer.toHexString(b & 255);
if (hex.length() == 1) {
sb.append("0");
}
sb.append(hex);
}
return sb.toString().toUpperCase();
}
private static byte[] hex2byte(String hex) {
if (hex == null || hex.length() < 2) {
return new byte[0];
}
hex = hex.toLowerCase();
int len = hex.length() / 2;
byte[] bArr = new byte[len];
for (int i = 0; i < len; i++) {
bArr[i] = (byte) (Integer.parseInt(hex.substring(2 * i, (2 * i) + 2), 16) & 255);
}
return bArr;
}
public static void main(String[] args) {
String s = AES.encrypt("13249582075", AES.k);
System.out.println(s);
s = AES.decrypt(s, k);
System.out.println(s);
}
}
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
求密钥
|
|
|