请忙于研究将敏感用户数据存储在数据库上的应用程序,因为我正在为数据库使用空间,但面临的问题却是:
需要Cwac安全室,我传递了一个edittable对象,这与我在edittext上调用以获取输入字符串的方法相同,因为密码短语我真的不知道如何用字符串做成该对象
我如何也将密码安全存储在设备上
请使用Java
答案 0 :(得分:1)
需要Cwac安全室,我需要传递一个可编辑的对象
引用the documentation:“ SafeHelperFactory
构造函数使用byte[]
或char[]
作为密码短语。”对于从用户获取密码的推荐路径,有一个实用方法采用Editable
。因此,只需通过构造函数创建一个SafeHelperFactory
对象:
SafeHelperFactory factory = new SafeHelperFactory(thePassphraseFromTheUser);
我真的不知道如何用字符串制作该对象
在String
中输入密码不是一个好主意。参见:
但是,对于测试和其他内容,请在toCharArray()
上调用String
,以获取char[]
传递给SafeHelperFactory
构造函数:
SafeHelperFactory factory = new SafeHelperFactory(stringPassphraseFromTheUser.toCharArray());
我如何也将密码安全存储在设备上
通常,您不会。您从用户那里获得了密码短语。
如果您的minSdkVersion
为23或更高,则可以使用androidx.security:security-crypto
类将生成的密码存储在硬件加密的存储中。