iOS 6支持OpenSSL吗?

iOS 6支持OpenSSL吗?,ios,objective-c,security,Ios,Objective C,Security,我的iOS应用程序从主服务器发送和接收消息。我想对这些信息进行加密。如何在iOS6上加密和解密AES-256字符串?是否有“本机”解决方案?是的,iOS 6支持OpenSSL 使用以下命令: 首先在项目中添加安全框架 然后使用以下命令创建类别 然后导入: #import <CommonCrypto/CommonCryptor.h> #import "NSData+Encryption.h" 查看此链接: 希望它能对您有所帮助。OpenSSL没有与iOS捆绑,但您仍然可以自己编译

我的iOS应用程序从主服务器发送和接收消息。我想对这些信息进行加密。如何在iOS6上加密和解密AES-256字符串?是否有“本机”解决方案?

是的,iOS 6支持OpenSSL

使用以下命令: 首先在项目中添加安全框架

然后使用以下命令创建类别

然后导入:

#import <CommonCrypto/CommonCryptor.h>

#import "NSData+Encryption.h"
查看此链接:


希望它能对您有所帮助。

OpenSSL没有与iOS捆绑,但您仍然可以自己编译并将其链接到应用程序中。您还可以使用通用加密

OpenSSL没有捆绑的原因是,在不破坏与依赖旧版本的应用程序的兼容性的情况下,不可能升级OpenSSL的系统版本


您不应该“使用AES-256”加密您的邮件,因为AES-256只是一个密码,它不会使您的邮件安全。您应该使用更高级别的工具,如SSL或TLS。这样想:AES-256就像一块砖头。你想要一栋房子。房子是安全的,你可以用砖头盖房子。拥有一块砖并不能让你安全。使用AES-256不能保证协议的安全。

我建议使用CCCrypt调用

您可以在其他线程中看到示例:


另一方面,我认为Dietrich选项更有意义。

有很多答案解释了如何在iOS上使用AES加密。你试过谷歌搜索“AES-256 iOS”吗?您是否有特定问题?NSURLConnections自动处理https中的ssl,这就是您需要的吗?很好地回答了这个问题,并且有一些很好的代码链接,看起来写得很好。
- (NSData*) encryptString:(NSString*)plaintext withKey:(NSString*)key {
    return [[plaintext dataUsingEncoding:NSUTF8StringEncoding] AES256EncryptWithKey:key];
}

- (NSString*) decryptData:(NSData*)ciphertext withKey:(NSString*)key {
    return [[[NSString alloc] initWithData:[ciphertext AES256DecryptWithKey:key]
                                  encoding:NSUTF8StringEncoding] autorelease];
}