我正在尝试使用 UUID 生成随机数以用于 Twitter 反向身份验证。但显然 UUID 不是一个好的选择。那么,如何在每次剥离所有非单词字符时生成一个唯一的随机字符串,并注意它在使用后从内存中释放。以下代码崩溃。
var uuid: CFUUIDRef = CFUUIDCreate(nil)
var nonce: CFStringRef = CFUUIDCreateString(nil, uuid)
CFRelease(uuid)
println("createdNonce:\(nonce)")
编辑: 我在 xcode6 beta2 上,我无法调试,xocde 崩溃,任何机会。好吧,CFRelease 部分对我来说是崩溃的。一旦我删除,它似乎工作正常,但我不知道这是否会造成内存泄漏。
至于为什么 UUID 可能不是用于 nonce 的好选择,似乎是因为 UUID 不是由真正的随机位组成的,请在此处参考此讨论:https ://github.com/aws/aws-sdk-ios/issues /30