Is apksigner compliant with JCE (Java Cryptography Extension) specification?
Android SDK Build Tools附带的apksigner工具是否符合JCE(Java密码学扩展)规范?
-
"合规"到底是什么意思? apksigner不是密码扩展或密码原语的提供者。 但是,它的目的确实是通过JCA框架通过使用加密基元来与JCA / JCE配合使用。
-
apksigner是apk签名的最新成员,不确定它是否成熟,该工具是否可以与主要HSM供应商提供的提供商很好地配合使用。
Andriod SDK生成工具26.0.1中发布的当前(截至2017年7月25日)apksigner版本0.7支持通过Sun / Oracle的PKCS#11提供程序及其扩展程序使用HSM密钥进行签名。 例如:
1 2
| apksigner sign --provider-class sun.security.pkcs11.SunPKCS11 \\
--provider-arg token.cfg --ks NONE --ks-type PKCS11 app.apk |
另请参阅https://geoffreymetais.github.io/code/key-signing/。
-
当我们使用--ks型PKCS11时,将收到错误" java.security.KeyStoreException:找不到PKCS11"。 我们在java.security文件中配置了PKCS11提供程序。 您的任何指导都会有所帮助。
-
您还添加了--provider-class sun.security.pkcs11.SunPKCS11 --provider-arg 吗? 另外,等效的jarsigner命令是否对您有用:jarsigner -providerClass sun.security.pkcs11.SunPKCS11 -providerArg -keystore NONE -storetype PKCS11 app.apk
-
更换插槽时,出现" jarsigner错误:java.lang.reflect.InvocationTargetException"或" jarsigner错误:java.lang.RuntimeException:密钥库加载:加载失败"。
-
引起原因:sun.security.pkcs11.wrapper.PKCS11异常:sun.security.pkcs11.wrapper.PKCS11.C_Login(本机方法)处为0x80000067,sun.security.pkcs11.SunPKCS11.login(SunPKCS11.java:1222)
-
听起来这个问题不是jarsigner或apksigner的问题,而是您的HSM与Sun / Oracles PKCS11 JCA / JCE KeyStore实现之间的问题。 我只能建议查阅HSM的文档和/或联系其制造商以获取更多信息。