iOS Swift 2生成AES密钥

4

我希望随机生成一个AES 256密钥。Swift提供了SecKeyGeneratePair来生成非对称加密密钥。是否有相应的方法用于生成对称加密密钥?


你找到答案了吗?能分享一下代码吗? - Qadir Hussain
1个回答

7
如果您正在随机生成密钥,您只需要使用CSPRNG(加密安全伪随机数生成器)生成一个256位的数组。您应该使用来自Randomization ServicesSecRandomCopyBytes。将其调用计数为32(32个字节== 256位)将产生一个合适的密钥。

感谢您的回答。 - ZeroX
我正在寻找一种直接在钥匙串中生成密钥的方法,这样实际密钥就不会从应用程序中可见。 - ZeroX
链接页面有一个示例:let status = SecRandomCopyBytes(kSecRandomDefault, bytes.count, &bytes) if status == errSecSuccess { //始终测试状态。 print(bytes) //每次运行时都会打印不同的内容。 }``` - Andy
@Andy 我执行了上面的代码,得到了这个字节数组 [27, -54, 126, -100, 70, -127, 28, -54, -128, -72]。那么这是我的有效AES256密钥吗? - Qadir Hussain

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接