钥匙扣和NSUserDefault之间的区别?(Difference between Keychai

2019-06-27 07:31发布

我是新的objective C ,我在,我都用了创建了一个应用程序NSUserDefaultKeychain来存储我的用户名和密码。 但我不能区分两者。 请帮助区分两者。

谢谢。

Answer 1:

钥匙串是适用于多种应用程序和安全服务的密码加密容器。 苹果公司使用在Mac OS和iOS版钥匙扣口令管理系统。

提供NSUserDefaults的基于用户偏好的应用程序的行为定制的方式。 属于对可可和可可触摸Foundation框架。

我得到这个从标签信息NSUserDefaults的和钥匙扣



Answer 2:

增加:当我们保存的用户名和密码。 和从设备中删除应用程序。

在钥匙扣:用户名和密码仍然是存在的。

在NSUserDefaults的:用户名和密码也从设备与应用中删除。



Answer 3:

尽量避免将数据保存在本地尽可能。

钥匙扣 -钥匙扣是保存用户名一样小的存储数据,密码等,谨防钥匙扣数据安全及加密方式可以从越狱的设备访问。 你可以从苹果的示例代码在这里 。

钥匙扣共享 -启用钥匙扣共享允许您的应用程序与你的团队开发其他应用的钥匙串共享密码。 假设我们创建了两个应用程序,用户可以登录到同一帐户。 这将是不错的分享这些应用程序之间的登录信息的能力。 通过这种方式,用户只需要在应用程序之一一次登录。

UserDefaults用户的默认数据库,在那里您在您的应用程序调用持久地存储在给定设备上的键值对的接口。 UserDefaults不保存私有数据安全的方式。 UserDefaults存储为plist中本地,任何人都可以在./Library/Preferences/com.mycompany.MyAppName.plist追踪



文章来源: Difference between Keychain and NSUserDefault?