使用Hutools的對稱加密時出現的一個問題

首先 這不是Hutools的一個bugapp

而是pdfbox-app這個組件的bug 工具

在2.0.0版本的pdfbox-app jar包中 集成了一個叫 bouncycastle的加密工具包(貌似是個jdk級別的jar)的源代碼,pdfbox直接將其源碼都寫在本身jar裏加密

因此咱們這項目裏其餘的關於bouncycastle加密包的引用都取消了,這也就是問題致使的緣由,pdfbox-app.jar包因爲自身問題,以及bouncycastle自己的特性,就是會檢測自身所在jar的簽名是否有效,因此pdfbox-app.jar 的 2.0.0 版本的簽名不知道爲何,沒法經過檢測,因此致使,加密不能使用拋出那個什麼 jce 什麼 cannot 啥的異常源碼

簡單點說就是,bouncycastle這個組件會對自身jar包進行簽名檢測,不符合就會拋異常,而pdfbox-app 2.0.0 集成了這個組件的全部源代碼,並且在簽名上沒處理好,致使咱們沒法使用這個組件來加密,hutools加密代碼底層有用到bouncycastle因此就沒法運行加密了。ast

解決方式很簡單 將pdfbox-app的版本由 2.0.0 改成2.0.13或者其餘版本,問題解決。pdf

順便提一句,Hutools這個工具包真的很好用,爲貢獻者們點個贊,感謝大家的貢獻。jdk

相關文章
相關標籤/搜索