2016-07-13 107 views
4

我有客戶誰希望我們的應用程序使用FIPS 140-2 validated cryptography。該應用使用Okhttp and does some HTTPS requests。 AFAIK Android使用OpenSSL C庫和uses java wrapper javax/net/ssl使Android應用程序使用FIPS 140-2加密密碼術

問題:

  1. 如何使Android應用程序FIPS 140-2投訴?

  2. 是不是在堆棧(OS)級別應該使用符合FIPS的OpenSSL,因此所有的應用程序都是默認的FIPS 140 -2兼容?

  3. 或者我們的應用程序應該使用FIPS 140-2驗證的密碼術並使java javax/net/ssl使用它?可行?

  4. 是否有可插入OKhttp的FIPS 140-2 JCE庫?

感謝

+1

Android從Marshmallow開始使用Google自己的BoringSSL而不是OpenSSL,並且它們通常會禁用所有FIPS標誌,因爲它們會通過延遲錯誤修正來降低OpenSSL的安全性。所以你需要自己編譯OpenSSL,並將其包含到你的應用程序中。 – pelya

+0

@pelya您是否嘗試過OpenSSL並使javax/net/ssl使用相同?任何示例.. – NitZRobotKoder

+0

您的應用程序需要什麼級別的安全性(由FIPS 140-2定義)? –

回答

0

修改OKHTTP和使用WolfSSL Java包裝並使其工作奧基奧代碼。

現在任何https請求都會轉到WolfSSL圖層而不是股票android BoringSSL/OpenSSL。

+1

如果答案是一樣的話,也許它會把你的問題推到你的其他問題上http://stackoverflow.com/a/43184135/5292302 –

+0

This答案僅僅是無用的。如果你打算把它作爲答案,那麼*顯示*需要做什麼修改,不要告訴人們需要一些未指定的修改。我們可以給出任何**調試問題的答案。 「你必須做出一些改變,然後才能發揮作用。」不是答案。 – Makyen