问题标签 [authenticode]

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.

0 投票
1 回答
102 浏览

exe - 进行代码签名重要吗?

我们想在互联网上分发我们的新 Windows 软件(exe 文件)。

获得验证码代码签名证书有什么好处?

谢谢

0 投票
4 回答
2362 浏览

.net - 托管 Windows 服务在数字签名后启动缓慢

我们最近尝试对我们的 .NET 二进制文件进行数字签名。我们有一个通常在 10 秒内启动的 Windows 服务。然而,在我们开始对其进行数字签名后,时间增加到了 20-30 秒左右。

谷歌搜索导致我: http: //support.microsoft.com/kb/936707基本上说我必须将 generatePublisherEvidence 设置为 false。

但是MSDN上 generatePublisherEvidence 的描述指出这不适用于 .NET 4。我仍然尝试了这个设置并且它确实有效。我仔细检查了我的二进制文件是否以 .NET 4 为目标。

有人可以解释一下这种行为吗?

0 投票
1 回答
120 浏览

desktop-application - 为 Windows 8 创建签名桌面应用程序的步骤?

我有一个为 nopCommerce 创建的桌面应用程序。其中一项功能是允许用户将图像从 Windows 资源管理器拖放到我的应用程序中,并将图像上传到所选产品。过去,Windows 7 和更早版本会阻止它们,除非它们禁用 UAC,这对大多数用户来说都很好。然而,在 Windows 8 中,他们仍然可以禁用 UAC(真的,真的用 reg 设置禁用它)但没有 UAC 会破坏 Metro 应用程序。在测试中,我尝试以管理员身份运行它,但没有奏效。只有在组策略注册表设置中禁用 Uac 才真正起作用。

我需要采取下一步并让我的应用程序与 Windows 8 兼容,显然这样他们就可以使用 Windows 资源管理器拖放,而不必一直禁用/启用 UAC。我做了很多研究,我认为我需要:

  1. 购买代码签名证书
  2. 使用 SignTool 签署我的代码
  3. 签署安装程序只是为了安全(??)
  4. 包括一个描述所需权限的清单......应该是什么样的?
  5. 当我使用 VS2012 构建应用程序时,我还需要做些什么吗?

我在正确的轨道上吗?....我对此非常茫然!谢谢你的时间。

0 投票
1 回答
102 浏览

timestamp - 我可以使用本地计算机时间为 .NET 程序集添加时间戳吗?

我使用以下 UL 作为时间戳:http ://timestamp.verisign.com/scripts/timstamp.dll

但是互联网在极少数情况下会中断,并且程序集需要编译、认证和时间戳,所以有没有办法使用计算机的时钟时间来为程序集加上时间戳,而不是使用网址?

0 投票
0 回答
299 浏览

code-signing - 如何以编程方式检测证书是 Authenticode 的“Class 3”

是否有一些可靠的方法来检测特定的代码签名证书是否是“3 类”证书?

这在许多 Microsoft 的 Authenticode 文档中都出现了要求,但从未明确说明如何区分 Class 3 证书和任何其他类型的证书。有时仅阅读详细信息就足够清楚了-例如,VeriSign 在签署您的证书时在其证书主题中包含短语“Class 3 Code Signing”。但是在证书路径中寻找证书主题中的特定文本似乎很容易。

通过观察,似乎包含“代码签名(1.3.6.1.5.5.7.3.3)”的“增强密钥使用”的组合,加上由受信任的 CA 签名是一个常见的特征,但我没有读过任何表明这将是一个可靠的测试的东西。

0 投票
1 回答
199 浏览

installation - 代码签名是否有助于避免 IE 9/10 中的红色 SmartScreen 横幅?

我们发布了一个新应用程序,但我们收到报告称,当用户尝试在 Internet Explorer 中下载它时,他们选择保存或运行 EXE 文件后会收到一条红色错误消息:

智能屏幕横幅

我们想知道的是,我们怎样才能阻止这个红色版本的横幅出现给 IE 用户呢?代码签名会说服 IE 改为显示黄色横幅,让用户可以选择运行或保存文件吗?如果是这样,是否可以获得临时/试用证书(非自签名)来测试它?自签名似乎没有帮助。

编辑: 我也注意到谷歌浏览器有一个类似的横幅,实际上同样的问题是用户会害怕安装文件。

0 投票
12 回答
33560 浏览

passwords - 自动化扩展验证 (EV) 代码签名

我们最近购买了 DigiCert EV 代码签名证书。我们可以使用 signtool.exe 对 .exe 文件进行签名。但是,每次我们签署文件时,它都会提示输入 SafeNet eToken 密码。

我们如何在没有用户干预的情况下通过在某处存储/缓存密码来自动化这个过程?

0 投票
1 回答
214 浏览

c++ - 如何确保我的 DLL 知道 dll 的调用者?

我想创建一个只能由我知道的应用程序调用的 Windows DLL。

假设在我的应用程序(说实话是一个 Windows DLL)中,我有一个业务合作伙伴列表,并且我们在某种标识上达成一致。我想阻止不在此列表中的应用程序访问 dll 中导出的函数的任何尝试。

我正在查看 Windows Authenticode,但我不确定是否有解决此类问题的标准路径。帮助表示赞赏。

0 投票
7 回答
23440 浏览

windows - signtool 无法使用时间戳对 SHA2 和 SHA1 进行双重签名

我们需要使用 signtool.exe 使用 SHA1 和 SHA2 对我们的二进制文件进行双重签名,我们的证书支持 256 位 SHA2。

使用 Windows 8 SDK 的签名工具:

例如:

signtool.exe 签名 /as /fd sha256 /t http://timestamp.verisign.com/scripts/timstamp.dll /f "certificate.pfx" /p XXXXXXX "file.dll"

(其中 XXXXXXX 是我们的证书密码)

因神秘错误而失败:

SignTool 错误:SignedCode::Sign 返回错误:0x80070057 参数不正确。SignTool 错误:尝试签名时出错:file.dll

没有时间戳的签名有效,单独签名为 SHA1 或 SHA256 有效,但我们需要双重签名,并且想象没有时间戳是不行的。

我尝试过 32 位和 64 位版本的 signtool.exe,在 Win7 和 Win8 机器上尝试过,并尝试使用命令行选项,但无济于事。有没有人遇到过这个问题?

0 投票
0 回答
215 浏览

windows - 已签名文件的代码签名到期

我正在使用 Microsoft 的SignTool使用以下命令行调用使用我的代码签名证书对我的可执行文件进行签名:

我的代码签名证书将于今年 11 月到期。据我了解,如果我更新它,我将获得一个新的代码签名证书。所以在这种情况下,我的问题是,已经用我当前证书签名的软件会发生什么——我需要辞职吗?