Geração de string alfanumérica aleatória em Swift
Olá a todos! Estou escrevendo um aplicativo para iOS em Swift e preciso gerar strings aleatórias compostas por letras (latim, maiúsculas e minúsculas) e dígitos. Por exemplo, para criar identificadores únicos ou senhas temporárias. Sou iniciante, e minha implementação atual é assim:
```swift
let letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
var randomString = ""
for _ in 0..<10 {
let randomIndex = Int(arc4random_uniform(UInt32(letters.count)))
randomString.append(letters[letters.index(letters.startIndex, offsetBy: randomIndex)])
}
print(randomString)
```
Isso funciona, mas sinto que o código é verboso e não muito "swift-like". Primeiro, `arc4random_uniform` está obsoleto no Swift 4.2+, e o Xcode emite um aviso. Segundo, calcular o índice via `index(startIndex, offsetBy:)` parece ineficiente, especialmente se a string for longa. Terceiro, não tenho certeza se isso é seguro para fins criptográficos (por exemplo, para tokens).
Diga-me como fazer corretamente.