激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java實現的AES加密算法完整實例

java實現的AES加密算法完整實例

2020-05-29 14:31lee JAVA教程

這篇文章主要介紹了java實現的AES加密算法,結合完整實例形式分析了AES加密類的實現技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了java實現的AES加密算法。分享給大家供大家參考,具體如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import android.util.Base64;
/**
 * @author vipin.cb , vipin.cb@experionglobal.com <br>
 *     Sep 27, 2013, 5:18:34 PM <br>
 *     Package:- <b>com.veebow.util</b> <br>
 *     Project:- <b>Veebow</b>
 *     <p>
 */
public class AESCrypt {
  private final Cipher cipher;
  private final SecretKeySpec key;
  private AlgorithmParameterSpec spec;
  public static final String SEED_16_CHARACTER = "U1MjU1M0FDOUZ.Qz";
  public AESCrypt() throws Exception {
    // hash password with SHA-256 and crop the output to 128-bit for key
    MessageDigest digest = MessageDigest.getInstance("SHA-256");
    digest.update(SEED_16_CHARACTER.getBytes("UTF-8"));
    byte[] keyBytes = new byte[32];
    System.arraycopy(digest.digest(), 0, keyBytes, 0, keyBytes.length);
    cipher = Cipher.getInstance("AES/CBC/PKCS7Padding");
    key = new SecretKeySpec(keyBytes, "AES");
    spec = getIV();
  }
  public AlgorithmParameterSpec getIV() {
    byte[] iv = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, };
    IvParameterSpec ivParameterSpec;
    ivParameterSpec = new IvParameterSpec(iv);
    return ivParameterSpec;
  }
  public String encrypt(String plainText) throws Exception {
    cipher.init(Cipher.ENCRYPT_MODE, key, spec);
    byte[] encrypted = cipher.doFinal(plainText.getBytes("UTF-8"));
    String encryptedText = new String(Base64.encode(encrypted,
        Base64.DEFAULT), "UTF-8");
    return encryptedText;
  }
  public String decrypt(String cryptedText) throws Exception {
    cipher.init(Cipher.DECRYPT_MODE, key, spec);
    byte[] bytes = Base64.decode(cryptedText, Base64.DEFAULT);
    byte[] decrypted = cipher.doFinal(bytes);
    String decryptedText = new String(decrypted, "UTF-8");
    return decryptedText;
  }
}
 

希望本文所述對大家java程序設計有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 爱操在线 | 国产精品1区2区 | 一区二区久久久久草草 | 中文字幕精品一区久久久久 | 久久蜜桃精品一区二区三区综合网 | 欧美成人精品欧美一级乱黄 | 色综合久久久久久久粉嫩 | 久久综合狠狠综合久久 | av电影在线免费 | 一区二区三区日韩精品 | 海外中文字幕在线观看 | 日韩欧美高清片 | 黑人一级片视频 | 久色porn| 广州毛片 | 免费看成人av | 免费高潮在线国 | 久久久久久久久国产 | 国产乱子视频 | 国产亚洲欧美日韩在线观看不卡 | 日韩视频在线观看免费 | 欧美视频国产精品 | 偿还电影免费看 | 最新欧美精品一区二区三区 | 国产精品九九久久一区hh | 黄在线观看| 精品国产一区二区三区久久久狼牙 | 黄色羞羞 | 国产精品美女一区二区 | 国产精品午夜一区 | 黄色免费在线视频网站 | 热99精品视频 | 亚洲国产精品二区 | 88xx成人精品视频 | 亚洲av一级毛片特黄大片 | 成年人免费视频大全 | 欧美黄色大片免费观看 | 高清中文字幕在线 | 亚洲成人免费影视 | 国产毛毛片一区二区三区四区 | 国产精品1区,2区,3区 |