Java端和JS端的AES加密算法同步
公司要求登录时用户名和密码必须先加密,再将数据发送到服务器。由于这种加密必须要求是可逆的,所以不能用MD5来加密,MD5不是可逆的。后台选择了用AES加密。然后问题就是如何跟公司的Java算法得到同样的结果。
后来在搜寻了很多算法后,发现了解决方案,改动公司的算法,然后就可以轻松匹配了。
• Java端的算法:
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import sun.misc.BASE64Decoder;
public class Encryption
{
public static void main(String args[]) throws Exception {
System.out.println("encrypted: "+encrypt());
System.out.println("decrypted: "+desEncrypt().trim());
}
public static String encrypt() throws Exception {
try {
String data = "123456";
String key = "1234567812345678";
String iv = "1234567812345678";
Cipher cipher = Cipher.getInstance(