Android N宣布棄用加密體系Cryto Provider

jopen 8年前發布 | 22K 次閱讀 Android N

Android N宣布棄用加密體系Cryto Provider

今年Google I/O開發者大會上的主角無疑就是Android N了——雖說這款系統到現在都還沒有正式定名,僅以“N”代稱,但預計今年秋季我們就能看到Android N上線。本周,谷歌又宣布Android N將不會再采用Cryto Provider。

FreeBuf百科:Cryto Provider是什么?

眾所周知,Android系統在架構上,比較靠上層的位置,運行的是個類似Java虛擬機的東西。絕大部分應用都是跑在這個虛擬機上的。所以Android系統也使用Java加密體系架構(Java Crytography Architecture,以下簡稱JCA),開發人員也正是基于JCA,在代碼中編寫和管理加密操作。

JCA是Java平臺的重要組成部分,可以與各種類型的算法協同工作,提供基本的加密框架,如證書、數字簽名、消息摘要和密鑰對產生器 。

為什么拋棄Cryto Provider?

所謂的JCA究竟是啥呢?簡單地說, 如果Android應用開發者希望他開發的應用能夠實現加密,也就需要用到JCA中的算法,具體是通過加載Provider類實現的 (Provider又是個啥呢?我們其實可以簡單地將其理解為一個類,開發者需要從中選擇所需的加密算法)

Android本身支持絕大部分JCA Provider,比如OpenSSL,BC,HarmonyJSSE,DRLCertFactory等等。

以前的Android系統中,這里我們提到的Crypto就是Provider之一。Cryto支持多種算法,比如SHA1PRNG,SHA1withDSA,DSA和SHA-1。如果你對加密算法稍有了解應該就知道,這些算法現如今已經比較弱了,顯得不夠安全。

Android軟件工程師Sergio Giro表示:

“在Android N系統中,我們完全棄用了SHA1PRNG算法和Cryto Provider。”

Android N宣布棄用加密體系Cryto Provider

開發者要哭:很多APP需要重寫

實際上,可能很多開發者先前都會考慮采用SHA1PRNG算法:開發者可以借此進一步利用用戶密碼,將較小的密鑰擴展為更大的加密密鑰,這是加密密鑰的進一步“衍生”。 但Giro表示:“SHA1PRNG算法不夠安全。”因此,他仍舊建議開發人員,如果要“衍生”的話,還是可以考慮采用更強的算法,比如AES算法。

由于棄用Cryto Provider令很多應用需要重寫,為了幫助這些開發者做應用更新,Android官方團隊給出了一系列的建議,有需要的同學可以 點擊這里 查看。

來自: http://www.freebuf.com/news/106708.html

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!