Conceal - 用于Android上的文件加密和鑒權的Java API
Conceal是一套用于Android上的文件加密和鑒權的Java API,Conceal的加密算法基于OpenSSL,但是在arm7下的OpenSSL庫大小有1MB,我們縮減了OpenSLL庫的內容,經過編譯現在他只有85KB。一個更小的庫,有益于兼容更多的android版本,以及減少后期的維護成本。
Conceal比目前的任何一個java加密庫都輕巧快捷,同時它使用AES-GCM算法,來防止對數據進行的惡意篡改。
這個庫還提供了存儲和管理秘鑰的資源來提高android脆弱的隨機數生成器的安全性。目前正式支持,2.3以及更高版本。不過也可以在2.2版本運行。
Conceal可以用來加密大型文件,非死book用它來加密手機/平板電腦SD卡中的數據和圖片。
以下代碼片段展現了如何使用Conceal對文件進行加密:
//使用秘鑰鏈和原生庫的默認實現,來創建一個新的加密對象 Crypto crypto = new Crypto( new SharedPrefsBackedKeyChain(context), new SystemNativeCryptoLibrary()); //檢查加密功能是否可用 //如果Android沒有正確載入庫,則此步驟可能失敗 if (!crypto.isAvailable()) { return; } OutputStream fileStream = new BufferedOutputStream( new FileOutputStream(file)); //創建輸出流,當數據寫入流的時候進行加密,并將加密后的數據輸出到文件 OutputStream outputStream = crypto.getCipherOutputStream( fileStream, entity); //將純文本寫入其中 outputStream.write(plainText); outputStream.close();
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!