BouncyCastle


Bouncycstle 是一款開源的密碼包,其包含了大量的密碼算法,其支持橢圓曲線密碼算法。

首先,我們必須把BouncyCastle提供的jar包放到classpath中。這個jar包就是bcprov-jdk15on-xxx.jar,可以從官方網站下載。

Java標准庫的java.security包提供了一種標准機制,允許第三方提供商無縫接入。我們要使用BouncyCastle提供的RipeMD160算法,需要先把BouncyCastle注冊一下:

public class TestDemo {
     public static void main(String[] args) throws Exception {
          // 注冊BouncyCastle:
            Security.addProvider(new BouncyCastleProvider());
            // 按名稱正常調用:
            MessageDigest md = MessageDigest.getInstance("RipeMD160");
            md.update("HelloWorld".getBytes("UTF-8"));
            byte[] result = md.digest();
            System.out.println(new BigInteger(1, result).toString(16));
        }
         
     
          
}

總結:

BouncyCastle是一個開源的第三方算法提供商;

BouncyCastle提供了很多Java標准庫沒有提供的哈希算法和加密算法;

使用第三方算法前需要通過Security.addProvider()注冊。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM