1. 程式人生 > >Java擴充套件演算法和輔助工具

Java擴充套件演算法和輔助工具

獲取許可權檔案

Sun在其下載頁面(http://www.oracle.com/technetwork/java/javase/downloads/index.html)提供了許可權檔案的下載地址,對應Java 7 和 Java 6

開啟壓縮包local_policy.jar和US_export_policy.jar是此次配置中用到的檔案

配置許可權檔案

需要在JDKJRE環境中,或者是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.jarbcprov-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不支援MD4IDEA演算法,做了上述配置後,使用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即可