Sobes.tech
Junior — Middle

Qual approccio useresti per archiviare in modo sicuro le password nel sistema KeyChain?

sobes.tech AI

Risposta dell'AI

Per memorizzare in modo sicuro le password in iOS Keychain, si dovrebbe:

  • Utilizzare l'API Keychain Services, che garantisce la cifratura e l'archiviazione sicura dei dati.
  • Salvare le password come oggetti protetti con attributi che limitano l'accesso (ad esempio, kSecAttrAccessibleWhenUnlocked).
  • Mai memorizzare le password in chiaro al di fuori del Keychain.

Esempio di come registrare una password nel Keychain in Swift:

let password = "user_password".data(using: .utf8)!
let query: [String: Any] = [
    kSecClass as String: kSecClassGenericPassword,
    kSecAttrAccount as String: "user@example.com",
    kSecValueData as String: password,
    kSecAttrAccessible as String: kSecAttrAccessibleWhenUnlocked
]
SecItemAdd(query as CFDictionary, nil)

Questo metodo garantisce che le password siano archiviate in forma cifrata e accessibili solo all'applicazione quando il dispositivo è sbloccato.