【发布时间】:2012-08-21 14:59:23
【问题描述】:
我在我的应用程序中对 OpenSSL 的使用非常有限。 基本上,我只是在做这两件事:
- RSA 解密:使用 RSA_new、BN_bin2bn 初始化 RSA 密钥,使用 RSA_private_decrypt 进行 RSA 解密,并释放密钥。
- AES 解密:使用 EVP__DecryptInit( ... EVP_aes_128_cbc )、EVP_DecryptUpdate 和 EVP_DecryptFinal。
就是这样。尽管这种用法非常温和,但可执行文件大小超过 1MB,大约有 1,200 个不同的符号来自 OpenSSL 库。其中包括显然不在我的代码树中的函数,例如 ASN1_、SHA1_、EC_*、PKCS7 等。
我正在链接用于 iPhone Android 和 Windows 的 OpenSSL 静态库。在移动平台上,足迹是一个问题。我的链接器应该省略未引用的函数,因此这些符号似乎以某种方式被引用。
有什么方法可以使用更小的 OpenSSL 来减小可执行文件的大小?
你。
【问题讨论】: