【问题标题】:openssl based AES encryption in androidandroid中基于openssl的AES加密
【发布时间】:2012-05-03 08:57:46
【问题描述】:

我需要在 C 语言 (ndk) 中使用 AES 加密或解密字符串,我看到很多关于如何为 android 编译 openssl 的问题,我需要知道 openssl 何时在 android 上可用,我们不能使用相同的C中的加密?如果没有,我需要编译整个 openssl 库,还有其他轻量级库可以用于使用 ndk 在 android 中进行标准加密吗?

【问题讨论】:

    标签: android-ndk openssl


    【解决方案1】:

    Openssl for android 不是 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找到。

    【讨论】:

    • 但是openssl在android os中是可用的,我们不能用吗?
    • NDK 不包含 openssl 的标头或库。 Google 只提供 NDK 可编译源。因此,如果您使用 NDK 构建程序,则必须自己构建 openssl 库。尝试“查找 $NDK_ROOT |grep -i ssl”
    • Sandeep 你在这方面有什么帮助吗?请通过回答这个问题来分享。我面临同样的问题。非常感谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-07
    • 1970-01-01
    • 2020-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-21
    相关资源
    最近更新 更多