我需要在C語言(ndk)中使用AES加密或解密字符串,我看到很多關於如何爲android編譯openssl的問題,我需要知道何時openssl已經可用我們不能在C中使用相同的加密嗎?如果沒有,我需要編譯整個openssl庫,有沒有其他的輕量級庫,我可以使用ndk在android的標準加密?基於openssl的AES加密在android
0
A
回答
2
Android的Openssl不是NDK的一部分,所以你不能立即使用它。但是,Google爲其提供了NDK可編譯的代碼庫作爲外部庫(請參閱https://github.com/android/platform_external_openssl)。你需要編譯它然後使用它。如果你這樣做,看看Building Android openssl using NDK doesn't make arm4 assembly files properly。
至於輕量級庫,可以在頁面http://en.wikipedia.org/wiki/AES_implementations#C.2FASM_library的C頁找到一個AES實現列表。但是,大多數圖書館功能豐富,因此您將擁有大量不會使用的代碼。相反,您可以直接在您的代碼中嵌入參考AES實現,然後使用它。一個這樣的實現可以在http://embeddedsw.net/Cipher_Reference_Home.html找到。
相關問題
- 1. OpenSSL密鑰在aes加密?
- 2. android:使用openSSL的AES加密/解密
- 3. AES加密在PHP中的OpenSSL解密
- 4. OpenSSL的AES加密錯誤
- 5. OpenSSL AES加密錯誤
- 6. Android上的基於密碼的AES加密和CryptoJS的解密
- 7. AES加密 - 密鑰生成與OpenSSL的
- 8. 加密不適用於AES-256的openssl生成的密鑰
- 9. 在Python中實現OpenSSL AES加密
- 10. 解密OpenSSL的AES與CryptoJS
- 11. OpenSSL EVP AES/DES加密實現
- 12. 如何使用AES(openssl)加密數據?
- 13. 比較AES加密OpenSSL與.NET(RijndaelManaged)
- 14. 適用於iOS和Android的AES加密
- 15. OpenSSL - 查找AES密鑰
- 16. 加密在Java中(AES),解密C++(OpenSSL的)
- 17. Android AES 128加密
- 18. AES 128加密在Android
- 19. 在C++(OpenSSL)中加密AES,在C#中解密
- 20. Android AES加密和解密
- 21. Android AES加密密鑰
- 22. android AES加密/解密
- 23. 在Android中使用OpenSSL的AES-256 CBC加密/解密字符串
- 24. 使用OpenSSL進行AES-256/CBC加密並在C#中解密
- 25. 僅基於密碼生成AES密鑰
- 26. Android上的AES加密
- 27. AES加密 - 在Android上存儲密碼
- 28. 在openSSL中手動設置AES密鑰?
- 29. 麻煩解密OpenSSL的AES CTR加密文本
- 30. 可以通過openssl解密的PHP AES加密
但openssl在android操作系統中可用,我們不能使用它? –
NDK不包含openssl的頭文件或庫文件。 Google只提供NDK可編譯的源代碼。所以如果你使用NDK來構建你的程序,你必須自己構建openssl庫。嘗試「找到$ NDK_ROOT | grep -i ssl」 – Samveen
Sandeep對此有任何幫助嗎?請通過回答這個問題來分享。我面臨同樣的問題。非常感謝 – png