文档说:
存储在ProtectionParameter对象中的信息可保护密钥库的内容。例如,保护参数可用于检查密钥库数据的完整性,或用于保护敏感密钥库数据(例如PrivateKey)的机密性。
但是每个例子都只是传递null
,可以使用这个参数:
keystore.load(null);// here
KeyStore.Entry entry = keystore.getEntry(alias, null);//and here
请使用 not null 参数的任何示例(如实际执行的界面那样)?现在唯一的可能性是PasswordProtection还是有自定义实现?也许有些解释为什么它在所有文档中并不重要,何时可能变得至关重要?你的建议非常有价值。感谢。
答案 0 :(得分:3)
实际上,使用KeyStore Documentation的KeyStore.PasswordProtection中有一个非空示例。
另一个"实施" (这只是一个标记界面)是KeyProtection,除了其他示例之外,您还可以在其中找到对其目的的解释:
导入时如何保护密钥或密钥对的规范 Android Keystore系统。此类指定的授权使用 导入的密钥,例如是否需要用户身份验证 使用密钥,密钥被授权的操作(例如, 用什么参数解密(但不签名)(例如,仅用a 特定的填充方案或摘要),以及密钥的有效性开始和 结束日期。