2017-02-10 24 views
4

我一直在搜索如何存儲密碼,大多數人都說唯一可以接受的選項是鑰匙串。由於匆忙,我實施了這種方法。但是現在我很好奇什麼是顯而易見的事情,不要將密碼存儲在NSUserDefaults中,可以將密碼存儲在CoreData中嗎? 到目前爲止,我瞭解到NSUserDefaults在plist文件中存儲爲純文本。但是,如何訪問這個文件?我讀過可以在雷電電纜和itunes的幫助下做到,但沒有找到如何做到這一點。 在此先感謝!爲什麼不在NSUserDefaults中存儲密碼顯而易見?

+1

最好的選擇是在NSUserDefaults中存儲密碼,因爲沒有人可以讀取或訪問該數據。在.plist文件中有一些第三方軟件可以訪問該文件和數據。所以出於安全原因,所有時間存儲在NSUserdefault中的數據 –

+0

@HimanshuMoradiya'因此出於安全原因,所有時間都將數據存儲在NSUserdefault'中。它根本不安全。 NSUserDefaults是一個用純文本存儲數據的plist文件。如果你訪問ipa,你可以閱讀plist。 –

+0

@HimanshuMoradiya,謝謝你的回覆,但你確定嗎?因爲這與我在那裏閱讀的所有內容完全相反。而不是NSUserDefult存儲在plist文件中?所以他們可以訪問第三方。 –

回答

3

您使用NSUSerDefault存儲的數據將以簡單的plist -in二進制格式保存,不需要任何加密。有很多技巧來讀取這些數據或修改這些數據。

越獄用戶可以使用iFile查看或修改plist文件。非越獄用戶可以使用其他軟件,如iExplore - iFunBox來做到這一點。這款軟件允許用戶在沒有手機越獄的情況下探索iOS文件系統。

長話短說 - 任何人都可以看到或修改NSUserDefault中的數據。所以如果你不想要這個,你不應該把它存儲在NSUserDefault

2

在這裏的問題是越獄設備,而設備越獄,它將允許其他應用程序/調整攔截應用程序內的沙箱文件,因此可以搜索/讀取.plist文件,至少這就是我知道的

相關問題