Sobes.tech
Junior — Middle

¿En qué lugares guardaste contraseñas en proyectos anteriores?

sobes.tech AI

Respuesta de la IA

En los proyectos de iOS, las contraseñas y otros datos sensibles generalmente se almacenan en:

  • Keychain — un almacenamiento seguro proporcionado por iOS para guardar contraseñas, tokens y certificados.
  • UserDefaults — no se recomienda para contraseñas, ya que los datos allí no están cifrados.
  • Encrypted Storage — si se utiliza una biblioteca de terceros para cifrar datos antes de almacenarlos.

Ejemplo de cómo guardar una contraseña en Keychain:

import Security

func savePassword(_ password: String, for account: String) {
    let data = password.data(using: .utf8)!
    let query: [String: Any] = [
        kSecClass as String: kSecClassGenericPassword,
        kSecAttrAccount as String: account,
        kSecValueData as String: data
    ]
    SecItemAdd(query as CFDictionary, nil)
}