我开始学习 Swift for iOS 开发,但我遇到了一个在 Android 上不存在的问题。
private static byte[] randomBytes(int length) {
SecureRandom random = new SecureRandom();
byte[] b = new byte[length];
random.nextBytes(b);
return b;
}
有了这个,我在安卓上生成随机字节。
然后我用它来从中获取一个字符串。
byte[] byteV = randomBytes(16);
String IV_string = new String(byteV);
如何使用 Swift 5 执行相同的操作?
func randomBytes(_ length: Int) -> Data {
guard length > 0 else { return Data() }
return Data(
(1...length).map { _ in UInt8.random(in: 0...UInt8.max) }
)
}
let string = String(data: randomBytes(16), encoding: .ascii)