我知道EncryptedSharedPreferences使用android密钥库安全地加密首选项,并且android密钥库与设备硬件绑定。我还了解到密钥库无法像首选项和数据库那样备份。我的问题是,当我试图将应用程序设置恢复到新设备时,这意味着什么:首选项是否仍以解密方式备份?它们是否仍然加密,因此在新设备上无法使用?我应该从备份中排除EncryptedSharedPreferences吗?
41ik7eoe1#
如果找到用作Shared Preferences文件的.xml文件,您会发现key和value都是加密的。(这里的key是指您在放置Shared Preferences时使用的key,而不是用于加密的MasterKey)。因此,如果您备份文件,您将获得其加密版本。由于新设备和key都是加密的,因此您将无法访问任何内容,并且可能会达到所有Shared Preferences的默认状态。您应该从备份中排除Encrypted Shared Preferences。如果包括,不会有MasterKey可用于解密新设备上的值。总之,这意味着您在新设备上安装时将无法访问任何数据。你可以在这里查看警告。Encrypted Shared Preferences
Shared Preferences
.xml
key
value
MasterKey
Encrypted Shared Preferences
1条答案
按热度按时间41ik7eoe1#
如果找到用作
Shared Preferences
文件的.xml
文件,您会发现key
和value
都是加密的。(这里的key
是指您在放置Shared Preferences
时使用的key
,而不是用于加密的MasterKey
)。因此,如果您备份文件,您将获得其加密版本。由于新设备和key
都是加密的,因此您将无法访问任何内容,并且可能会达到所有Shared Preferences
的默认状态。您应该从备份中排除Encrypted Shared Preferences
。如果包括,不会有MasterKey
可用于解密新设备上的值。总之,这意味着您在新设备上安装时将无法访问任何数据。你可以在这里查看警告。
Encrypted Shared Preferences