Junior — Middle
Milyen megközelítést használnál a jelszavak biztonságos tárolására a KeyChain rendszerben?
sobes.tech MI
Válasz az MI-től
Az iOS Keychain-ben biztonságosan tárolni a jelszavakat:
- Használja a Keychain Services API-t, amely biztosítja az adatok titkosítását és biztonságos tárolását.
- Tárolja a jelszavakat védett objektumként, hozzáférési attribútumokkal (pl. kSecAttrAccessibleWhenUnlocked).
- Soha ne tárolja a jelszavakat nyílt szövegként a Keychain-en kívül.
Swift-ben például így menthet egy jelszót a Keychain-be:
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)
Ez a módszer garantálja, hogy a jelszavak titkosított formában kerülnek tárolásra, és csak az alkalmazás férhet hozzájuk, amikor a készülék fel van oldva.