如何用java實(shí)現(xiàn)ase加密
如何用java實(shí)現(xiàn)ase加密
AES是一個(gè)對(duì)稱分組密碼算法,旨在取代DES成為廣泛使用的標(biāo)準(zhǔn)。根據(jù)使用的密碼長(zhǎng)度,AES最常見的有3種方案,用以適應(yīng)不同的場(chǎng)景要求,分別是AES-128、AES-192和AES-256。下面就讓學(xué)習(xí)啦小編教大家介紹一下ase加密和如何用java實(shí)現(xiàn)吧。
用java實(shí)現(xiàn)ase加密的方法
首先我們需要自行安裝配置java開發(fā)環(huán)境,并安裝myeclipse軟件。然后打開軟件在頂部導(dǎo)航處點(diǎn)擊File,然后選擇New,然后選擇Java Project,進(jìn)入創(chuàng)建java項(xiàng)目的窗口。具體操作如下圖所示。
然后我們?cè)趈ava項(xiàng)目創(chuàng)建界面,首先輸入項(xiàng)目名稱:AESJDKUtil,然后選擇JRE環(huán)境,本篇中選擇JDK7,選擇完畢后點(diǎn)擊Finish,完成java項(xiàng)目的創(chuàng)建。具體操作如下圖所示。
然后我們打開項(xiàng)目,右擊項(xiàng)目src目錄,然后選擇New,然后選擇Class,進(jìn)入創(chuàng)建java實(shí)體類界面。具體操作如下圖所示。
然后在創(chuàng)建實(shí)體類界面,首先我們填寫包名稱:com.util,然后填寫類名稱:AESUtil,然后勾選自動(dòng)生成main函數(shù)。以上操作完畢后,點(diǎn)擊Finish,完成實(shí)體類的創(chuàng)建。具體操作如下圖所示。
由于本項(xiàng)目中加密后的信息為byte數(shù)組,不便于輸出查看,我們首先編寫將byte數(shù)組轉(zhuǎn)化為16進(jìn)制字符串輸出的函數(shù),本篇中函數(shù)名稱為:convertByteToHexString。具體操作如下圖所示。
然后我們編寫實(shí)現(xiàn)AES加密的方法體,實(shí)現(xiàn)AES的加密主要使用了javax.crypto.Cipher的方法。本篇中實(shí)現(xiàn)方法名稱為:AESJDKEncode,需要傳入要加密的信息以及密鑰兩個(gè)參數(shù)。具體代碼實(shí)現(xiàn)如下圖所示。
然后我們編寫實(shí)現(xiàn)AES解密的方法體,實(shí)現(xiàn)解密操作同樣主要使用了javax.crypto.Cipher對(duì)象的方法,本篇中實(shí)現(xiàn)的方法名稱為:AESJDKDecode,需要傳入的參數(shù)為待解密的byte數(shù)組,以及密鑰兩個(gè)參數(shù)。具體代碼實(shí)現(xiàn)如下圖所示。
然后我們?cè)谥骱瘮?shù)main函數(shù)內(nèi)編寫測(cè)試方法,首先我們定義原始消息為:Hello AES,然后定義加密密鑰為:12312312312312312,然后調(diào)用編寫好的加密/解密方法,同時(shí)將加密/解密后的結(jié)果輸出。具體代碼實(shí)現(xiàn)如下圖所示。
最好我們執(zhí)行程序,查看加密/解密后的結(jié)果??梢钥吹浇?jīng)過加密/解密操作后,仍還原為:Hello AES。至此,本篇教程完成。
猜你感興趣的:
2.如何設(shè)置netgear WN802Tv2無線安全