Sobes.tech
Junior — Middle

Milyen helyeken tárolta a jelszavakat korábbi projektekben?

sobes.tech MI

Válasz az MI-től

iOS projektekben a jelszavak és más érzékeny adatok általában a következőkben tárolódnak:

  • Keychain — egy biztonságos tároló, amit az iOS biztosít a jelszavak, tokenek és tanúsítványok biztonságos tárolására.
  • UserDefaults — nem ajánlott jelszavak tárolására, mivel az adatok nem titkosítottak.
  • Encrypted Storage — ha harmadik fél által készített könyvtárat használnak az adatok titkosítására a tárolás előtt.

Jelszó mentése a Keychain-be például:

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)
}