Android 如何恢复密钥库文件丢失的别名?
我知道答案可能是不可能的。但我还是希望如此 我有一个密钥库文件和另一个副本版本 然后我向密钥库文件添加一个新别名,并使用新创建的别名发布新应用程序 问题是:我丢失了密钥库文件。我现在只有keystore的副本版本(它不包含新创建的别名)。Android 如何恢复密钥库文件丢失的别名?,android,alias,keystore,Android,Alias,Keystore,我知道答案可能是不可能的。但我还是希望如此 我有一个密钥库文件和另一个副本版本 然后我向密钥库文件添加一个新别名,并使用新创建的别名发布新应用程序 问题是:我丢失了密钥库文件。我现在只有keystore的副本版本(它不包含新创建的别名)。 我知道别名的名称和密码。是否有机会将其取回?要使用命令恢复/查看密钥库中的完整内容,请执行以下操作: keytool -list -v -keystore <name of keystore file> keytool-list-v-keysto
我知道别名的名称和密码。是否有机会将其取回?要使用命令恢复/查看密钥库中的完整内容,请执行以下操作:
keytool -list -v -keystore <name of keystore file>
keytool-list-v-keystore
为此,您需要提供密钥库密码(而不是别名密码)。要使用命令恢复/查看密钥库中的完整内容,请执行以下操作:
keytool -list -v -keystore <name of keystore file>
keytool-list-v-keystore
要执行此操作,您需要提供密钥库密码(而不是别名密码)。您可以更改密钥库文件的别名,您可以使用该文件进行复制:
keytool -changealias -keystore MY_KEYSTORE_2.jks -alias XXX-XXX-XXX-XXX-XXX -destalias MY_ALIAS
您可以更改用于复制的密钥库文件的别名:
keytool -changealias -keystore MY_KEYSTORE_2.jks -alias XXX-XXX-XXX-XXX-XXX -destalias MY_ALIAS
每个别名对应于密钥库文件中的唯一密钥。不幸的是,无法从丢失的密钥库文件中恢复第二个密钥,因为副本对此一无所知。每个别名对应于密钥库文件中的唯一密钥。不幸的是,无法从丢失的密钥库文件中恢复第二个密钥,因为副本对此一无所知。检索别名非常简单:
keytool-list-keystore
这将出现
Enter keystore password:
Keystore type: jks
Keystore provider: SUN
Your keystore contains 1 entry
aliasname, Aug 2, 2018, PrivateKeyEntry,
Certificate fingerprint (SHA1): AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA
检索别名非常简单:
keytool-list-keystore
这将出现
Enter keystore password:
Keystore type: jks
Keystore provider: SUN
Your keystore contains 1 entry
aliasname, Aug 2, 2018, PrivateKeyEntry,
Certificate fingerprint (SHA1): AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA:AA
您为现有密钥创建了新别名,还是您也生成了新密钥?@Henry I为现有密钥库文件创建了新别名。然后我丢失了密钥库文件。现在我只有原始密钥库的副本版本,其中不包含我创建的别名。好的,只是检查了文档,似乎keytool不允许一个密钥有两个别名。那样的话,你把钥匙丢了。除非您可以恢复原始密钥库文件,否则无法将其取回。您为现有密钥创建了新别名,还是也生成了新密钥?@Henry I为现有密钥库文件创建了新别名。然后我丢失了密钥库文件。现在我只有原始密钥库的副本版本,其中不包含我创建的别名。好的,只是检查了文档,似乎keytool不允许一个密钥有两个别名。那样的话,你把钥匙丢了。除非您能够恢复原始密钥库文件,否则无法将其取回。不,先生,请仔细阅读我的问题。我已经知道别名不在我当前的密钥库文件中。我只有原始密钥库的副本,其中不包含新创建的别名。@TOP-ups我很抱歉。。。然后。。。在我看来…你做不到,兄弟…但我不是很确定。我知道这可能是不可能的。顺便说一句,谢谢你的回答。不,先生,请仔细阅读我的问题。我已经知道别名不在我当前的密钥库文件中。我只有原始密钥库的副本,其中不包含新创建的别名。@TOP-ups我很抱歉。。。然后。。。在我看来…你做不到,兄弟…但我不是很确定。我知道这可能是不可能的。顺便说一句,谢谢你的回答。你能更清楚地描述一下吗?或者给我一个例子,第一个你有keystore a.jks(别名a_alias)并创建了一个副本a_copy.jks,但是你把别名改为(a_copy_别名)。你丢失了一个.jks文件。您可以使用keytool-changealis-keystore a_copy.jks-alias a_copy_alias-destalas a_alias恢复到a.jks。问题是我在创建别名之前复制了一个副本。因此a_copy.jks不包含我创建的别名您可以使用keytool-list-v-keystore a_copy.jks来显示此文件显示的别名吗?如果它是空的,请在我的回答中删除-别名a\u副本\u别名您能更清楚地描述一下吗?或者给我一个例子,第一个你有keystore a.jks(别名a_alias)并创建了一个副本a_copy.jks,但是你把别名改为(a_copy_别名)。你丢失了一个.jks文件。您可以使用keytool-changealis-keystore a_copy.jks-alias a_copy_alias-destalas a_alias恢复到a.jks。问题是我在创建别名之前复制了一个副本。因此a_copy.jks不包含我创建的别名您可以使用keytool-list-v-keystore a_copy.jks来显示此文件显示的别名吗?如果为空,请删除-别名a\u复制\u我的答案中的别名