Java擴充套件演算法和輔助工具
獲取許可權檔案
Sun在其下載頁面(http://www.oracle.com/technetwork/java/javase/downloads/index.html)提供了許可權檔案的下載地址,對應Java 7 和 Java 6
開啟壓縮包local_policy.jar和US_export_policy.jar是此次配置中用到的檔案
配置許可權檔案
需要在JDK的JRE環境中,或者是JRE環境配置上述兩個jar檔案。
切換到%JDK_Home%\jre\lib\security目錄下覆蓋原有的檔案。同時,可能有必要在%JRE_Home%\lib\security下對應覆蓋這兩個檔案
配置許可權檔案的最終目的是為了使應用在執行環境中或德相應的許可權,可以加強應用的安全性
擴充演算法支援
Bouncy Castle目前提供的加密元件元件包的版本是1.47,自1.40版本開始,Bouncy Castle
提供了對IDEA(International Data Encryption Algorithm,國際資料加密演算法)。下載最新的加密元件包,主要是bcprov-jdk15on-147.jar和bcprov-ext-jdk15on-147.jar兩個檔案如下圖
配置方式
在%JDK_Home%\jre\lib\security\java.security檔案下配置根據:
security.provider.<n>=<className>,則加入Bouncy Castle加密元件的
安全提供者做法:
方式一:
#增進BouncyCastleProvider
security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider
最後,需要將bcprov-ext-dk15on-147.jar匯入到%JRE_Home%\lib\ext即可
方式二:
通過明顯的程式碼呼叫方式引入支持者,這兒使用Security類的addProvider()方法,此方法
需要在初始化金鑰工廠.金鑰生成器等引擎類之前,呼叫如下程式碼:
Security.addProvider(new BouncyCastleProvider
檢測安裝
Java 7不支援MD4和IDEA演算法,做了上述配置後,使用MD4演算法可以參考
publicstaticbyte[] encodeMD4(byte [] data) throws Exception{
MessageDigest md = MessageDigest.getInstance("MD4");
md.update(data);
return md.digest();
}
輔助工具Commons Codec
是Apache旗下的一款開源軟體,主要用於編碼格式的轉換,如Base64.二進位制.十六進位制.字符集和Url編碼的轉換。甚至Commons Codec還提供了語言編碼的轉換。除此之外,Commons Codec還對Java的原生訊息摘要做了良好的封裝,提高了方法的易用性
下載commons-codec-1.7-bin.zip即可