gradle 如何生成MD5密钥散列以供发布?

6jjcrrmo  于 2023-03-03  发布在  其他
关注(0)|答案(1)|浏览(166)

此命令不生成MD5哈希。我只得到SHA1和SHA256

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

如何生成MD5?我试过了,还是一样:一个月一个月一个月一个月一个月

Signature algorithm name: SHA256withRSA
Subject Public Key Algorithm: 2048-bit RSA key
Version: 3

我正在用这个方法

keytool -exportcert -alias myaliasofkeystore -keystore mykeystorefolder/release-keystore | openssl md5

它给我我的md5,但它是正确的吗?输出是:

MD5(stdin)= mymd5 without : like when generating singingreport

stdin在这里是什么意思?

e0bqpujr

e0bqpujr1#

默认情况下,“keytool -list”命令可能不显示MD5哈希值,但是,您可以尝试在命令中添加“-v”选项,它将显示有关证书的所有可用信息,包括MD5哈希值。
因此,更新后的命令应为:

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

关于您使用opensl尝试的方法,输出中的“stdin”意味着MD5散列是从openssl命令的标准输入流计算的,在本例中是由keytool导出的证书。
还有一些其他的事情你可以尝试...
尝试运行带有“-v”选项的“keytool”命令以获取有关证书的详细信息,包括MD5哈希。

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

尝试使用“jarsigner”命令获取MD5哈希...

jarsigner -verbose -keystore ~/.android/debug.keystore -list my_application.apk

将“my_application.apk”替换为APK文件的路径,MD5哈希应列在输出的证书指纹部分下。
如果使用keytool和openssl命令获取MD5散列仍然有问题,您可以尝试使用其他工具或方法来计算散列,您可以尝试使用我前面建议的“jarsigner”命令,或者您可以尝试使用在线工具来计算MD5散列。
或者,您可以尝试生成新的调试密钥库,看看这是否能解决问题:

keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000

这将在当前目录中创建一个名为debug.keystore的新调试密钥库,别名为“androiddebugkey”。然后,您可以使用keytoolopenssl命令获取此新密钥库的MD5散列,并查看它是否正常工作。

相关问题