Sobes.tech
Junior — Middle

სად გქონდათ პაროლები შენახული წინა პროექტებში?

sobes.tech AI

პასუხი AI-სგან

iOS პროექტებში პაროლები და სხვა გრძნობადი მონაცემები ჩვეულებრივ ინახება:

  • Keychain — უსაფრთხო საცავი, რომელიც iOS-მა უზრუნველყო პაროლების, ტოკენებისა და სერთიფიკატების უსაფრთხო შენახვისთვის.
  • UserDefaults — არ არის რეკომენდებული პაროლებისთვის, რადგან მონაცემები იქ არ არის კოდირებული.
  • Encrypted Storage — თუ გამოიყენება მესამე მხარის ბიბლიოთეკა მონაცემების კოდირებისათვის შენახვამდე.

პაროლის შენახვის მაგალითი 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)
}