欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實現(xiàn)的對稱加密算法AES定義與用法詳解

 更新時間:2018年04月02日 14:35:53   作者:chengqiuming  
這篇文章主要介紹了Java實現(xiàn)的對稱加密算法AES,結(jié)合實例形式分析了對稱加密算法AES的定義、特點、用法及使用場景,需要的朋友可以參考下

本文實例講述了Java實現(xiàn)的對稱加密算法AES定義與用法。分享給大家供大家參考,具體如下:

一 簡介

1、AES是目前使用最多的對稱加密算法。
2、AES的優(yōu)勢之一是至今尚未被破解。
3、AES通常用于移動通信系統(tǒng)加密以及基于SSH協(xié)議(SSH Client、SecrueCRT)的軟件。

二 特點

1、高級的
2、DES替代者

三 AES的參數(shù)說明

四 代碼實現(xiàn)

package com.imooc.security.aes;
import java.security.Key;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
import org.apache.commons.codec.binary.Base64;
public class ImoocAES {
 private static String src = "cakin24 security aes";
 public static void main(String[] args) {
  jdkAES();
 }
 public static void jdkAES() {
  try {
   //生成KEY
   KeyGenerator keyGenerator = KeyGenerator.getInstance("AES");
   keyGenerator.init(128);
   SecretKey secretKey = keyGenerator.generateKey();
   byte[] keyBytes = secretKey.getEncoded();
   //key轉(zhuǎn)換
   Key key = new SecretKeySpec(keyBytes, "AES");
   //加密
   Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
   cipher.init(Cipher.ENCRYPT_MODE, key);
   byte[] result = cipher.doFinal(src.getBytes());
   System.out.println("jdk aes encrypt : " + Base64.encodeBase64String(result));
   //解密
   cipher.init(Cipher.DECRYPT_MODE, key);
   result = cipher.doFinal(result);
   System.out.println("jdk aes desrypt : " + new String(result));
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
}

五 運行效果

jdk aes encrypt : uNOEk3J7FJHB2cXilZluyYciq2NWaYztKfEDNSCjh5g=
jdk aes desrypt : cakin24 security aes

六 應(yīng)用場景

注:這里引入了org.apache.commons.codec.binary.Base64包,可點擊此處本站下載。

PS:關(guān)于加密解密感興趣的朋友還可以參考本站在線工具:

文字在線加密解密工具(包含AES、DES、RC4等):
http://tools.jb51.net/password/txt_encode

MD5在線加密工具:
http://tools.jb51.net/password/CreateMD5Password

在線散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt

在線MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha

在線sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode

更多關(guān)于java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)學(xué)運算技巧總結(jié)》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java字符與字符串操作技巧總結(jié)》、《Java操作DOM節(jié)點技巧總結(jié)》和《Java緩存操作技巧匯總

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

相關(guān)文章

  • IDEA2020.1創(chuàng)建springboot項目(國內(nèi)腳手架)安裝lombok

    IDEA2020.1創(chuàng)建springboot項目(國內(nèi)腳手架)安裝lombok

    這篇文章主要介紹了IDEA2020.1創(chuàng)建springboot項目(國內(nèi)腳手架)安裝lombok,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • JavaWeb的監(jiān)聽器和過濾器你了解嗎

    JavaWeb的監(jiān)聽器和過濾器你了解嗎

    這篇文章主要為大家詳細(xì)介紹了JavaWeb的監(jiān)聽器和過濾器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • Java基礎(chǔ)之static的用法

    Java基礎(chǔ)之static的用法

    這篇文章主要介紹了Java基礎(chǔ)之static的用法,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有很大的幫助,需要的朋友可以參考下
    2021-05-05
  • 詳解Java生成PDF文檔方法

    詳解Java生成PDF文檔方法

    這篇文章主要介紹了Java生成PDF文檔方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • java取出list中某幾個屬性組成一個新集合的幾種方式

    java取出list中某幾個屬性組成一個新集合的幾種方式

    在Java開發(fā)中經(jīng)常需要對List中的對象進(jìn)行一些操作,例如對某個字段進(jìn)行過濾、排序等,這篇文章主要給大家介紹了關(guān)于java取出list中某幾個屬性組成一個新集合的幾種方式,需要的朋友可以參考下
    2024-03-03
  • Spring Boot集成sa-token的項目實踐

    Spring Boot集成sa-token的項目實踐

    本文主要介紹了Spring Boot集成sa-token的項目實踐,實現(xiàn)了基本的登錄和權(quán)限控制功能,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • SpringBoot使用Mybatis注解實現(xiàn)分頁動態(tài)sql開發(fā)教程

    SpringBoot使用Mybatis注解實現(xiàn)分頁動態(tài)sql開發(fā)教程

    這篇文章主要為大家介紹了SpringBoot使用Mybatis注解實現(xiàn)分頁及動態(tài)sql開發(fā)教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-03-03
  • 詳解Java 中的UnitTest 和 PowerMock

    詳解Java 中的UnitTest 和 PowerMock

    這篇文章主要介紹了Java中的 UnitTest 和 PowerMock,文中講解非常詳細(xì),對大家學(xué)習(xí)有很大的幫助,感興趣的朋友可以了解下
    2020-06-06
  • Java實現(xiàn)簡單員工管理系統(tǒng)

    Java實現(xiàn)簡單員工管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Java實現(xiàn)簡單員工管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 淺談Java設(shè)計模式之七大設(shè)計原則

    淺談Java設(shè)計模式之七大設(shè)計原則

    在此之前,我已經(jīng)寫過很多篇關(guān)于設(shè)計模式的文章.但都比較草草的理解和簡單的實現(xiàn),并未深入理解.為了更加深入感受Java設(shè)計的魅力,編程的藝術(shù),今天進(jìn)行了七大設(shè)計原則的學(xué)習(xí)理解,后續(xù)進(jìn)行23種設(shè)計模式的深入學(xué)習(xí)探究,需要的朋友可以參考下
    2021-05-05

最新評論