欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Java使用AES加密和解密的實例詳解-創(chuàng)新互聯(lián)

Java使用AES加密和解密的實例詳解

創(chuàng)新互聯(lián)公司主要業(yè)務有網(wǎng)站營銷策劃、做網(wǎng)站、網(wǎng)站制作、微信公眾號開發(fā)、小程序制作、H5頁面制作、程序開發(fā)等業(yè)務。一次合作終身朋友,是我們奉行的宗旨;我們不僅僅把客戶當客戶,還把客戶視為我們的合作伙伴,在開展業(yè)務的過程中,公司還積累了豐富的行業(yè)經(jīng)驗、成都全網(wǎng)營銷資源和合作伙伴關系資源,并逐漸建立起規(guī)范的客戶服務和保障體系。 

前言:

AES的基本要求是,采用對稱分組密碼體制,密鑰長度的最少支持為128、192、256,分組長度128位,算法應易于各種硬件和軟件實現(xiàn)。1998年NIST開始AES第一輪分析、測試和征集,共產(chǎn)生了15個候選算法。1999年3月完成了第二輪AES2的分析、測試。2000年10月2日美國政府正式宣布選中比利時密碼學家Joan Daemen 和 Vincent Rijmen 提出的一種密碼算法RIJNDAEL 作為 AES.   在應用方面,盡管DES在安全上是脆弱的,但由于快速DES芯片的大量生產(chǎn),使得DES仍能暫時繼續(xù)使用,為提高安全強度,通常使用獨立密鑰的三級DES。但是DES遲早要被AES代替。流密碼體制較之分組密碼在理論上成熟且安全,但未被列入下一代加密標準。   


AES加密數(shù)據(jù)塊和密鑰長度可以是128比特、192比特、256比特中的任意一個。


AES加密有很多輪的重復和變換。大致步驟如下:


1、密鑰擴展(KeyExpansion),
2、初始輪(Initial Round),
3、重復輪(Rounds),每一輪又包括:SubBytes、ShiftRows、MixColumns、AddRoundKey,
4、最終輪(Final Round),最終輪沒有MixColumns。

AES是一種對稱的加密算法,可基于相同的密鑰進行加密和解密。Java采用AES算法進行加解密的邏輯大致如下:


1、生成/獲取密鑰


2、加/解密 


1.1生成密鑰


密鑰的生成是通過KeyGenerator來生成的。通過獲取一個KeyGenerator實例,然后調(diào)用其generateKey()方法即可生成一個SecretKey對象。大致邏輯一般如下:


private SecretKey geneKey() throws Exception { 
  //獲取一個密鑰生成器實例 
  KeyGenerator keyGenerator = KeyGenerator.getInstance(ALGORITHM); 
  SecureRandom random = new SecureRandom(); 
  random.setSeed("123456".getBytes());//設置加密用的種子,密鑰 
  keyGenerator.init(random); 
  SecretKey secretKey = keyGenerator.generateKey(); 
  return secretKey; 
} 

文章題目:Java使用AES加密和解密的實例詳解-創(chuàng)新互聯(lián)
本文路徑:http://www.chinadenli.net/article18/dpcidp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供ChatGPT網(wǎng)站建設定制開發(fā)網(wǎng)站營銷小程序開發(fā)App設計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設