适用于 iOS 的简化加密库
Posted
技术标签:
【中文标题】适用于 iOS 的简化加密库【英文标题】:Simplified Crypto Libraries for iOS 【发布时间】:2012-12-09 21:24:10 【问题描述】:我从事 Java 密码学已经很多年了。现在,我们需要编写一个 ios 应用程序,它将加密的有效负载从移动设备发送到 Java 服务。我已经开始使用 iOS 加密支持(CommonCrypto 等)并且发现它有点困难。 JCE 有一个非常干净、简洁的 API,所以我显然被宠坏了。相比之下,iOS 加密是一个更难使用的 API。
是否有任何简化的加密库或 CommonCrypto 的包装器提供更简洁的 API?特别是,我们需要:
密钥生成(对称和非对称) 数据的加密/解密 数字签名(例如 SHA1withRSA) 散列 RSA、3DES 和 AES 支持例如,我知道我见过一两个封装 AES 加密的示例类。我正在寻找更丰富、更全功能的东西。有人有什么建议吗?
【问题讨论】:
【参考方案1】:您可以在您的 iOS 应用程序中使用 openSSL,为了便于使用,您可以使用 septicus 的 SSCrypto library。
来自败血症部位:
SSCrypto.framework 为 OpenSSL 库提供了一个简单的包装器 用于加密、解密(对称和 RSA)和 校验和。它还对base64数据进行编码和解码,并可以生成 RSA 私钥和公钥。测试工具包含在 项目。单击此处查看 SSCrypto 附带的main.m 文件 有关它的使用示例。
【讨论】:
SSCrypto 是否为 iOS 构建?我下载了该项目并查看了它。这绝对是我需要的,但只有 Mac 的构建配置。没有 iOS 设备。 我们只是将 .h 和 .m 文件添加到我们的项目中,其余的由我们项目的 iOS 构建完成...以上是关于适用于 iOS 的简化加密库的主要内容,如果未能解决你的问题,请参考以下文章
Codemagic 错误 无效的加密密钥 - 加密的变量仅适用于创建它们的同一团队中的构建
适用于 Windows 8 应用商店 Web 资源的 Worklight 加密
为 MQTTnet 客户端消息的 TLS/SSL 加密导入的 PFX 证书适用于服务,但适用于 Xamarin UWP 应用程序失败