I’m currently building an Android app that utilizes Android Keystore and Shared Preferences to securely manage user accounts. I’m planning to build an iOS version of the app and I’m curious if there are equivalent technologies for iOS. Specifically, I’m wondering if there’s an equivalent to Android Keystore on iOS, or if the iCloud sync API would be a suitable alternative. I’ve seen other iOS apps use iCloud for syncing content, such as YouTube rss channels (Unwatched), but I’m not sure if that’s the same as Keystore. Is there a similar secure storage option on iOS, or would iCloud Key-Value Storage or CloudKit be the best options?

  • @CreatureSurvive
    link
    13 days ago

    Sounds like your looking for Keychains. Keychains act as a secure key-value store that can be synced via iCloud. This would be suitable for storing login credentials, or authorization tokens. However if you need to sync less secure data, I’d recommend looking at NSUbiquitousKeyValueStore which is another key-value store without the security of a Keychain. Note however, the storage for NSUbiquitousKeyValueStore is limited to 1mb. For more than that, you’d need to implement CloudKit.

    • @[email protected]OP
      link
      fedilink
      12 days ago

      Thanks! I’ll check this out.

      Sounds like Android and iOS have feature parody in terms of cryptographic security features lol.

      I’ll read the docs later!