核心数据或NSUserDefaults以避免操纵用户?

Meg*_*ron 3 macos cocoa core-data objective-c swift

保存用户无法操作或查看的数据(例如密码)的最佳方法是什么?NSUserDefaults被保存在Mac上的文件中,用户可以操作和查看.怎么样Core Data?这也保存在文件中,还是用户可以看到的方式Core Data

est*_*ing 12

NSUserDefaults绝对不应该用于存储密码,因为它以纯文本格式存储.核心数据可以加密,但默认情况下不是.它将所有数据存储在一个非常容易阅读的SQLite数据库中.密码应存储在系统Keychain中.可以使用安全框架访问钥匙串.

有几个库使得使用钥匙链变得更加容易,例如:LocksmithValet.