ver usa tus puedo para otros llavero guardar este dispositivos desde descargar cómo contraseñas conectados con como aprobar acceder iphone nsuserdefaults keychain

usa - no puedo aprobar mi iphone



NSUserDefaults o keychain es mejor guardar el nombre de usuario y la contraseña en la aplicación de iPhone (5)

Cualquier cosa almacenada en NSUserDefaults puede abrirse y leerse (relativamente) fácilmente, ya sea en el dispositivo o en una copia de seguridad (sin cifrar) en iCloud o en una Mac sincronizada.

Llavero, por otro lado, está destinado a cosas como certificados y contraseñas . He vinculado un artículo titulado "Cómo no almacenar contraseñas en iOS", que también brinda un poco más de detalle útil.

En mi aplicación de iPhone hay algunos datos confidenciales como nombre de usuario, contraseña y algunas direcciones URL de un servicio web. Cual es mejor NSUserdefaults o llavero. Alguien dice que NSUserdefaults es inseguro. ¿Por qué es inseguro? y cualquiera puede dar los pros y los contras de cada uno.


Keychain es una solución mucho mejor, porque es más segura, pero de todos modos, si guardara este tipo de información en los NSUserDefaults, sus usuarios no sentirían nada diferente. Si alguien pirateara su dispositivo, podría obtener información de Keychain, del mismo modo que obtendrían información de UserDefaults. Así que esta cuestión de seguridad es retórica. ¡Pero de todos modos, el buen estilo de programación es guardar estos datos en el llavero!



Puede ser útil notar que los datos de Keychain se mantendrán incluso si su aplicación se elimina, pero los datos de NSUserDefaults desaparecerán con la aplicación (NSUserDefaults es parte de la caja de arena de la aplicación, Keychain es un servicio independiente de la aplicación).


Te recomendaría usar llaveros. Usando Keychain, puede almacenar su contraseña en forma encriptada. Echa un vistazo a la muestra GenericKeychain de Apple.

NSUserDefaults es un poco menos seguro en comparación con Keychain. En NSUserDefaults, se puede acceder fácilmente a los datos si se conoce la clave específica. Este no es el caso en llavero.

También puede convertir NSUserDefaults a Keychains. Echa un vistazo here .