执行PEPK命令导出加密私钥失败,求解决Play应用签名问题
问题解决方案
核心原因
该错误是因为你使用的Java版本(多为Java 11及以上)默认移除了对RSA/NONE/OAEPWithSHA1AndMGF1Padding算法的支持,而旧版pepk.jar依赖此算法完成加密操作。
解决办法
方法1:切换至Java 8环境运行命令
- 安装或切换到Java 8版本
- 重新执行原pepk命令:
java -jar pepk.jar --keystore=foo.keystore --alias=foo --output=encrypted_private_key_path --rsa-aes-encryption --encryption-key-path=/path/to/encryption_public_key.pem
方法2:修改Java安全配置(适配Java 11+)
- 找到Java安装目录下的
conf/security/java.security文件 - 定位到
jdk.tls.disabledAlgorithms配置项,删除其中的OAEPWithSHA1AndMGF1Padding字段 - 保存文件后重新运行pepk命令
方法3:使用新版pepk工具
Google已更新pepk.jar适配高版本Java,可直接从Play Console的App Signing页面下载最新版工具,再执行私钥导出加密命令。
后续操作提示
完成私钥加密导出后,回到Play Console的App Signing页面上传加密后的私钥文件,完成Play App Signing的注册流程,即可正常上传AAB新版本。
内容的提问来源于stack exchange,提问作者Matthew Pans
相关产品推荐
相关产品推荐

