java实现ase加密解密

发布网友

我来回答

2个回答

热心网友

这个算法java SDK自带的额 参考代码如下:

/**解密 

 * @param content  待解密内容 

 * @param password 解密密钥 

 * @return 

 */  

public static byte[] decrypt(byte[] content, String password) {  

        try {  

                 KeyGenerator kgen = KeyGenerator.getInstance("AES");  

                 kgen.init(128, new SecureRandom(password.getBytes()));  

                 SecretKey secretKey = kgen.generateKey();  

                 byte[] enCodeFormat = secretKey.getEncoded();  

                 SecretKeySpec key = new SecretKeySpec(enCodeFormat, "AES");              

                 Cipher cipher = Cipher.getInstance("AES");// 创建密码器  

                cipher.init(Cipher.DECRYPT_MODE, key);// 初始化  

                byte[] result = cipher.doFinal(content);  

                return result; // 加密  

        } catch (NoSuchAlgorithmException e) {  

                e.printStackTrace();  

        } catch (NoSuchPaddingException e) {  

                e.printStackTrace();  

        } catch (InvalidKeyException e) {  

                e.printStackTrace();  

        } catch (IllegalBlockSizeException e) {  

                e.printStackTrace();  

        } catch (BadPaddingException e) {  

                e.printStackTrace();  

        }  

        return null;  

}  



/** 

 * 加密 

 *  

 * @param content 需要加密的内容 

 * @param password  加密密码 

 * @return 

 */  

public static byte[] encrypt(String content, String password) {  

        try {             

                KeyGenerator kgen = KeyGenerator.getInstance("AES");  

                kgen.init(128, new SecureRandom(password.getBytes()));  

                SecretKey secretKey = kgen.generateKey();  

                byte[] enCodeFormat = secretKey.getEncoded();  

                SecretKeySpec key = new SecretKeySpec(enCodeFormat, "AES");  

                Cipher cipher = Cipher.getInstance("AES");// 创建密码器  

                byte[] byteContent = content.getBytes("utf-8");  

                cipher.init(Cipher.ENCRYPT_MODE, key);// 初始化  

                byte[] result = cipher.doFinal(byteContent);  

                return result; // 加密  

        } catch (NoSuchAlgorithmException e) {  

                e.printStackTrace();  

        } catch (NoSuchPaddingException e) {  

                e.printStackTrace();  

        } catch (InvalidKeyException e) {  

                e.printStackTrace();  

        } catch (UnsupportedEncodingException e) {  

                e.printStackTrace();  

        } catch (IllegalBlockSizeException e) {  

                e.printStackTrace();  

        } catch (BadPaddingException e) {  

                e.printStackTrace();  

        }  

        return null;  

}  

http://blog.csdn.net/hbcui1984/article/details/5201247
图像界面的话就不说了

热心网友

你只知道算法,做这个有什么难点吗?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com