日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

pk8/pem秘钥转keystore格式

發布時間:2023/12/10 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pk8/pem秘钥转keystore格式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、生成 myplatform.pem
openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out myplatform.pem

2、生成platform.p12。
alias別名是mystore,密碼是123456
openssl pkcs12 -export -in platform.x509.pem -inkey myplatform.pem -out platform.p12 -password pass:123456 -name mystore

3、生成platform.keystore
keytool -importkeystore -deststorepass 123456 -destkeystore platform.keystore -srckeystore platform.p12 -srcstoretype ?PKCS12 -srcstorepass 123456

4、然后在androidstudio中配置

5、apk簽名及遇到的常見問題

7.0之前的版本直接運行就可以,7.1及以后就需要增加library path參數。否則會報以下錯誤 Exception in thread "main" java.lang.UnsatisfiedLinkError: android/out/host/linux-x86/lib/libconscrypt_openjdk_jni.so: android/out/host/linux-x86/lib/libconscrypt_openjdk_jni.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)at java.lang.ClassLoader$NativeLibrary.load(Native Method)at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1934)at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1850)at java.lang.Runtime.loadLibrary0(Runtime.java:871)at java.lang.System.loadLibrary(System.java:1124)at org.conscrypt.NativeCryptoJni.init(NativeCryptoJni.java:25)at org.conscrypt.NativeCrypto.<clinit>(NativeCrypto.java:54)at org.conscrypt.OpenSSLBIOInputStream.<init>(OpenSSLBIOInputStream.java:34)at org.conscrypt.OpenSSLX509Certificate.fromX509PemInputStream(OpenSSLX509Certificate.java:119)at org.conscrypt.OpenSSLX509CertificateFactory$1.fromX509PemInputStream(OpenSSLX509CertificateFactory.java:220)at org.conscrypt.OpenSSLX509CertificateFactory$1.fromX509PemInputStream(OpenSSLX509CertificateFactory.java:216)at org.conscrypt.OpenSSLX509CertificateFactory$Parser.generateItem(OpenSSLX509CertificateFactory.java:94)at org.conscrypt.OpenSSLX509CertificateFactory.engineGenerateCertificate(OpenSSLX509CertificateFactory.java:272)at java.security.cert.CertificateFactory.generateCertificate(CertificateFactory.java:339)at com.android.signapk.SignApk.readPublicKey(SignApk.java:182)at com.android.signapk.SignApk.main(SignApk.java:1087)java -Djava.library.path=out/host/linux-x86/lib64 -jar signapk.jar platform.x509.pem platform.pk8 1.apk 2.apk

如果是報以下錯誤,則說明apk使用的jdk和signapk.jar的jdk版本不一一致導致。更換jdk版本即可

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/signapk/SignApk has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0
? ? ? ? at java.lang.ClassLoader.defineClass1(Native Method)
? ? ? ? at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
? ? ? ? at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
? ? ? ? at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
? ? ? ? at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
? ? ? ? at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
? ? ? ? at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
? ? ? ? at java.security.AccessController.doPrivileged(Native Method)
? ? ? ? at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
? ? ? ? at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
? ? ? ? at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
? ? ? ? at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
? ? ? ? at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:601)
?

總結

以上是生活随笔為你收集整理的pk8/pem秘钥转keystore格式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。