日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

java jce 授权_【Java加密】(一)JCE配置加密算法强度不受限授权的安装

發(fā)布時(shí)間:2023/12/19 java 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java jce 授权_【Java加密】(一)JCE配置加密算法强度不受限授权的安装 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

【前言】Java加解密系列,根據(jù)實(shí)際開(kāi)發(fā)進(jìn)度,不定期更新

【下載】在Oracle網(wǎng)站上搜索,?Unlimited Strength Jurisdiction Policy Files這個(gè)關(guān)鍵字,然后按照所安裝的JDK版本選擇對(duì)應(yīng)的授權(quán)文件,比如我的是JDK8,就選擇了這個(gè)

【安裝】

下載完這個(gè)zip包后,里面有兩個(gè)jar包和一個(gè)readme.txt文件。

按照README.txt里的說(shuō)明進(jìn)行安裝。注意區(qū)別開(kāi)發(fā)環(huán)境用的JRE在JDK里面,運(yùn)行環(huán)境的JRE是單獨(dú)的環(huán)境。在我的Mac上,JRE是裝在JDK里的,對(duì)應(yīng)路徑是/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre

進(jìn)入到授權(quán)文件安裝的目錄下

/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/security能夠查看到默認(rèn)是有l(wèi)ocal_policy.jar 和 ?US_export_policy.jar的,改個(gè)名字保存一下。

然后復(fù)制壓縮包里的文件到/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/security目錄下,這樣就安裝完成了。

【驗(yàn)證】

可以用下面的程序驗(yàn)證一下

public static void securityVerify() throws Exception {

byte[] data = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 };

// create a 64 bit secret key from raw bytes

SecretKey key64 = new SecretKeySpec(

new byte[] { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 },

"Blowfish");

// create a cipher and attempt to encrypt the data block with our key

Cipher c = Cipher.getInstance("Blowfish/ECB/NoPadding");

c.init(Cipher.ENCRYPT_MODE, key64);

c.doFinal(data);

System.out.println("64 bit test: passed");

// create a 192 bit secret key from raw bytes

SecretKey key192 = new SecretKeySpec(

new byte[] { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,

0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,

0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17 },

"Blowfish");

// now try encrypting with the larger key

c.init(Cipher.ENCRYPT_MODE, key192);

c.doFinal(data);

System.out.println("192 bit test: passed");

System.out.println("Tests completed");

}

如果是默認(rèn)配置,

返回類(lèi)似

64 bit test: passed

Exception in thread "main" java.lang.SecurityException:

Unsupported keysize or algorithm parameters

at javax.crypto.Cipher.init(...)

at chapter1.SimplePolicyTest.main(SimplePolicyTest.java:38)

如果是替換后,返回

64 bit test: passed

192 bit test: passed

Tests completed

總結(jié)

以上是生活随笔為你收集整理的java jce 授权_【Java加密】(一)JCE配置加密算法强度不受限授权的安装的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。