问题标签 [jarsigner]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 使用 Release 签署 Android APK
我已经使用 Eclipse 创建了一个 Android 应用程序。我无法将它上传到 Android Market,因为它是使用调试模式签名的。我想在 Release 模式下签名,我阅读了 Tutorial Basic Setup for Signing,我也安装了keytool
但不知道如何安装jarsigner
。
如何在发布模式下完成编译和获取 APK的任务?
谢谢。
java - jarsigner 的文件夹权限问题
这绝对是一个非常初学者的问题,可能不需要对编程做任何事情。几天后,我终于确定了为什么我无法使用 jarsigner 签署 jar 的问题。我不断收到这个错误,上面写着“jarsigner:无法创建 hello.jar.sig”。
基本上,我所做的是将一个 jar 放入 Java jdk 的 bin 文件夹中,然后在文件夹中左键单击以单击“在此处打开命令窗口”。我从 keytool 生成了密钥,还使用了 selfcert。然后,当我为已放入 bin 文件夹中的 jar 执行 jarsigner 时,出现错误。我终于找到了原因。我无法在 bin 文件夹中创建 jar.sig,因为我没有某种权限。问题是,如何将目标设置为某个可修改的文件夹?
我不知道如何设置 java 目录的路径并从桌面或其他地方调用 jarsigner,所以我不得不学习在 java bin 文件夹中编写命令提示符。
android - 如何解决密钥库加载:无效的密钥库格式?
三个月前,我获得了我的应用程序的发布密钥。现在我格式化我的电脑,当我用我的 releasekey 签署我的应用程序时,我得到了错误:java.lang.RunTimeException: keystore load: invalid keystore format。
我应该如何解决这个错误?
命令是:jarsigner -verbose -keystore "D:\releasekey.keystore" "D:\myApp.apk" releasekey
我正在使用较旧的密钥库(第一个),但我得到了提到的错误。
我试着得到这个:
java - jarsigner 验证失败
我们使用新安装的 JDK 1.7 对 JAR 文件进行签名。之后,我们立即使用相同的 jarsigner 和相同的密钥库验证它,然后......它失败并显示以下消息:
无效的 SHA256 哈希...
签名/验证代码很简单(windows批处理中的两个后续行):
最糟糕的是,问题似乎是随机的,当验证失败时,jarsigner 甚至没有设置 errorlevel(退出代码)。
它是Java签名者或加密类的错误还是其他什么?
maven - 如何用maven签署一个jar,但改变jdk?
在我的场景中,我有一个通过 maven 用 JDK6 编译的 jar 文件。这个jar需要签名。所以,我使用了 maven-jarsigner-plugin 来完成这项工作,而且效果很好!
但是,我的任务是签署这个指向 JDK1.5 的 jar。但是jar需要使用JDK6来构建。所以,我的问题是:我可以使用 JDK6 构建 jar,但专门更改为 JDK5 来对其进行签名吗?是否可以?
非常感谢!
罗德里戈
java - 是什么阻止 Java 验证具有多种签名算法的签名 jar
快速背景: 我们发布了一个 webstart 应用程序,其中包括我们自己的应用程序 jar 和许多第三方 jar。Webstart 要求 jnlp 文件引用的所有分布式 jar 都由单个证书签名。因此,我们使用自签名证书对所有 jar(我们的 jar 和第三方 jar)进行签名。一些第三方 jar 已经由生产方签名,但我们只是再次签名,这样就可以正常工作了。到现在。
问题: 我们最近从 Java 6 迁移到 Java 7,突然 webstart 拒绝加载一些 jar,抱怨:“无效的 SHA1 签名文件摘要”。这只发生在某些罐子上,而不是其他罐子,而共同线程出现在那些失败的罐子中,似乎有多个签名。
在 SO 和互联网上搜索后,Java jarsigner 的默认签名算法似乎在 Java 6 和 Java 7 之间发生了变化,从 SHA1 到 SHA256,并且很多人都建议使用“jarsigner -digestalg SHA1”来解决验证问题. 我试过了,果然我们的多重签名 jar 现在验证了。所以这似乎是我们问题的解决方法。
据我所知,第三方签名似乎是 SHA1 签名,而我们使用默认签名 - SHA256 - 导致签名混合。当我使用“-digestalg”开关强制 SHA1 时,我们有两个相同类型的签名,并且验证现在有效。那么问题似乎是由具有不同算法的多个签名引起的?还是我缺少其他一些因素。
问题:
- 为什么用 SHA1 + SHA256 验证失败,用 SHA1 + SHA1 验证?有技术原因吗?安全策略原因?为什么它不能验证两个签名都是正确的?
- 我们使用(继续使用)SHA1 而不是现在默认的 SHA256 有什么缺点吗?
android - 如何签署亚马逊 apk?
我正在尝试签署一个亚马逊包装的 apk,以便我可以将我的应用加载到亚马逊应用商店。我必须这样做,因为我的应用程序使用 Google APIs。在解释如何使用 jarsigner 时,所有这方面的教程都很复杂。如何从 Eclipse 访问 jarsigner?我可以像 Android Tools..Export Signed Application 一样轻松访问它吗?
编辑
使用本教程,我可以通过命令行访问 jarsigner,但是当我为我的密钥库输入密码时,它说“jarsigner:找不到证书链:和。并且必须引用包含私钥和相应公钥的有效 KeyStore 密钥条目密钥证书链。” 我不知道如何从这里开始。
java - Jar 文件在签名之前运行良好(在 Windows 中)
我将首先说我不是 Java 程序员,我是 PHP 程序员。
我遇到了一种情况,即 websockets 不会削减它,我发现这个网站提供了一个解决方案:
http://stephengware.com/proj/javasocketbridge/
它基本上是一个可以加载并使用 JavaScript 控制的 Jar。它工作得很好,我强烈推荐给任何需要类似功能的人。但是,由于 Jar 没有签名,每次页面加载时,都会显示安全警告。这有点烦人,我想如果我对 Jar 进行自我签名,它会启用“不再向我展示这个”/“永远允许”复选框。这将在我们的组织内部部署,因此似乎没有必要使用付费证书对其进行签名。
问题是,一旦我签署了 Jar,它就不起作用了。我收到一个找不到类的错误。我查看了数十个网站,这些网站向您展示了如何签署 Jar 文件并将其搜索到第 10 页,但我找不到遇到此类问题的任何人。
我将包括我认为需要的部分,如果您需要其他内容,请告诉我,我会得到它。
小程序代码:
我如何签署 Jar(在管理员命令提示符下):
我打开了未签名和签名的 Jar,源文件是相同的,在已签名的 Jar 上的 META-INF 文件夹中只有两个附加文件:CRTLIVE.RSA 和 CRTLIVE.SF。
这是线程转储:
线程堆栈在长边,但这里是:
我已经用谷歌搜索了我能想到的一切,任何帮助将不胜感激。
谢谢!
linux - Shell 在 jarsigner 中传递密钥库路径参数
我有这个
它不起作用,在这个命令之后它没有签名的apk文件......
但是当我这样做时它工作得很好
编辑:实际上我所做的是以下
不,我可以猜到是什么问题,但是这种情况有解决方案吗?
编辑 2
我做了简短的测试
壳内
它正确打印123,所以我认为还有其他问题
java - Java 安全对话框的外观
加载签名的小程序时会显示 Java 安全对话框。
Java 安全对话框是什么样的?