Android - 存储PIN /密码

时间:2015-10-21 17:12:09

标签: java android security passwords

应用程序有一个自定义键盘。 GridLayout由9个按钮组成,编号为1-9。用户将按下4个按钮,然后“输入”以初始创建PIN,然后再进行验证。

是否有内置方式可以存储(加密)和检索此4位数PIN?

大多数应用程序如何做到这一点?

作为一个简单的解决方案,是否会对此PIN进行散列并将其存储在首选项中?

1 个答案:

答案 0 :(得分:1)

您可以使用this library安全地将PIN存储在build.gradle中。

将此添加到您的dependencies { compile 'com.scottyab:secure-preferences-lib:0.1.4' }

SecurePreferences

然后访问SharedPreferences prefs = new SecurePreferences(context, null, "my_custom_prefs.xml"); 文件

SharedPreferences.Editor editor = prefs.edit();
editor.putInt("userPin", pin).commit();

int pin = prefs.getInt("userPin", default);

从这里您可以加载并保存到正常

之类的偏好设置
SELECT COUNT(DISTINCT first_name), COUNT(DISTINCT last_name) FROM users

图书馆的免责声明:

  

默认情况下,它不是防弹安全性(实际上它更像是对首选项进行模糊处理),但它可以让您的Android应用程序更加安全。例如,它会阻止用户在root用户设备上轻松修改应用的共享首选项。建议使用v0.1.0中介绍的基于用户密码的首选项。