[英]Programmatically detect Bouncycastle version
我正在使用多個包裝 Bouncycastle 的庫,但它缺少 Maven 工件數據。 我希望能夠在代碼中檢測 Bouncycastle 的版本。 我試圖自己找到一個內部版本,但該庫絕對是龐大的。 有什么想法嗎?
例如,對於 Jetty,它就是 Jetty.VERSION。
更新: new BouncyCastleProvider().getVersion()
是解決方案。
它在每個 jar 的META-INF/MANIFEST.MF
文件中定義。 您可以通過以下方式以編程方式查看:
org.bouncycastle.jce.provider.BouncyCastleProvider
.class
.getPackage()
.getImplementationVersion()
這是一個可能的、不太可能的、可怕的黑客攻擊。
如果您有可用的 org.bouncycastle.bcpg.ArmoredOutputStream 類( org.bouncycastle.bcpg.ArmoredOutputStream
一部分),您也許可以使用反射來獲取version的值。 它似乎在構建時將版本號放入其中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.