Вопрос проверяет знание безопасного хранения данных в iOS.
Keychain — это защищенное хранилище для паролей, токенов и других敏感 данных. Доступ через Security.framework.
1. Основные возможности:
Шифрование данных.
Синхронизация между устройствами (опционально).
2. Пример сохранения пароля:
import Security
let query: [String: Any] = [
kSecClass as String: kSecClassGenericPassword,
kSecAttrAccount as String: "userToken",
kSecValueData as String: "secret".data(using: .utf8)!
]
SecItemAdd(query as CFDictionary, nil)3. Режимы доступа:
kSecAttrAccessibleWhenUnlocked: Только при разблокировке устройства.
kSecAttrAccessibleAfterFirstUnlock: После первой разблокировки.
Вывод:
Keychain — лучший выбор для хранения критичных данных.