如何在钥匙串中保存CFUUID

Soo*_*nts 5 iphone keychain udid sskeychain

我正在开发一个iPhone应用程序.
应用程序访问某些Web服务,其他东西应该识别设备ID.

由于不推荐使用UDID,我需要调用CFUUIDCreate来为此生成我自己的UUID.

该ID是安全敏感的:我的所有网络通信都是加密的,我不希望除证书认证服务器之外的任何人都知道UUID.
此外,我希望这个标识符能够在重新安装后继续存在.
使用钥匙串存储该UUID似乎是一个明显的解决方案.

我怎么做?

在互联网上,有一些示例如何在钥匙串中存储用户名和密码.我既没有用户也没有密码,只有16个字节的UUID(或单个NSString).

我需要使用哪个kSecClass?
我需要设置和检索哪些属性?
哪些属性是可选的,哪些属于强制性?

什么标头/框架定义了CSSM_ALGORITHMS?
文档提到cssmtype.h,xcode自动完成有<Security/cssmtype.h>但是xcode编译器说"找不到文件".

从常识来看,"身份"应该最合适.然而,文档说"身份是私钥和证书的组合",我没有.另外,我没有看到"关键字节"属性.

提前致谢!

Jak*_*b W 5

您可以使用SSKeychain包装器.另请参阅此问题的答案以获取一些基本用法: 如何为SSKeychain选择帐户和服务值