设置标签 ‘密码’

保存用户密码的安全方法

作为一名iPhone开发者, 你需要对你的用户安全负责. 请问, 你是怎么保存用户的密码的?

直接保存到plist里?
加密? AES? DES? 能保证你的代码不被反编译拿到你的加密Key?

这也未免太不苹果了吧. 我Google了一下, 国内的开发者根本没有注意到这个问题.
苹果系统中有个程序叫”钥匙串” (Keychain), 它不仅仅是你申请开发证书用的, 哈哈. 它可以存密码!
这也是苹果给出的保存密码的最佳解决方案.

iPhone中也有Keychain, 用过PushFix破解包(就是那个修复推送的小工具)的国内iPhone破解用户应该还有印象.

用原生的Security.framework就可以实现钥匙串的访问, 读写, 但是只能在真机上进行, 模拟器会出错. 在Github上, 有个封装的非常好的类 来实现这个功能, 让你既能在模拟器又能在真机上访问钥匙串.


//获取密码
+ (NSString *) getPasswordForUsername: (NSString *) username andServiceName: (NSString *) serviceName error: (NSError **) error;

//保存密码
+ (void) storeUsername: (NSString *) username andPassword: (NSString *) password forServiceName: (NSString *) serviceName updateExisting: (BOOL) updateExisting error: (NSError **) error;

//删除密码
+ (void) deleteItemForUsername: (NSString *) username andServiceName: (NSString *) serviceName error: (NSError **) error;

类的地址: http://github.com/ldandersen/scifihifi-iphone/tree/master/security

现在网站很无语,保管好你的密码!!

周末无意中的到一个网站的所有用户信息,几万份, 邮箱, 密码, 年龄, 身份证号…..OMG
**妈咪, 不知道还有多少类似的网站, 不知道为啥网站要把用户信息导出来, 我只知道, 一旦这些信息落入**手里, 哎

只能说, 你的邮箱密码一定保管好, 不要和别的密码一样,注册网站,能用假信息就别老实巴交的用真的, 让你添身份证, 先看清楚这个网站有没有实力, 配不配让你输入你独一无二的身份证号!!!

回到顶部

关于我:

  • iPhone 开发者. 自由职业者.
  • 苹果忠实用户. 完美主义者.
  • Email/iChat/MSN/GTalk: i@imi.im
  • Twitter/Sina: @TraWor
  •  

    Switch to our mobile site