gpt4 book ai didi

powershell - 如何防止每 1 年或 2 年需要重新签署我的代码?

转载 作者:行者123 更新时间:2023-12-04 01:55:39 25 4
gpt4 key购买 nike

我正在阅读 What happens when a code signing certificate expires - Stack Overflow并想知道一个更可靠的答案。提供的答案更多是关于设置您自己的 CA。即使使用您自己的 CA,您仍然需要处理过期的代码证书。

如果您在未使用时间戳服务的情况下对代码进行了签名,则在证书过期后,您的代码将不再受信任,并且根据安全设置,它可能无法运行。您需要每 1 年或 2 年使用新证书或更新证书重新签署所有代码。

可信(数字)时间戳允许数字签名即使在证书本身过期后仍然有效。仅当您进行了更改时,您才需要使用新证书重新签署代码。

这一切听起来正确吗?如果是这样,我需要关于使用什么时间戳服务的建议,最好是来自实际使用过的人。我还想知道是否有任何内部解决方案,类似于成为您自己的 CA。

现在这适用于 PowerShell 脚本,但我最终会对其他代码有同样的问题。

更新 :如何使用时间戳签署 PS 脚本的示例(您可以为此制作脚本):

Set-AuthenticodeSignature -filepath "D:\Projects\A Sample\MyFile.ps1" 
-cert gci cert:\CurrentUser\My -codesigning
| where -Filter {$_.FriendlyName -eq "Thawte Code Signing"}
-IncludeChain All
-TimeStampServer "http://timestamp.verisign.com/scripts/timstamp.dll"

然后,要查看签名者证书和时间戳记证书,您可以执行以下操作:
Get-AuthenticodeSignature MyFile.ps1 | fl *

它为您的证书和时间戳记的证书提供主题(CN、OU 等)、颁发者、之前/之后日期和指纹。您还会收到一条指示签名状态的消息。

最佳答案

您最好选择一个受信任的证书提供商(Verisign、Thawte、Comodo 等)。这允许您在用户不明确信任您的私有(private)根 CA 的情况下签署您的软件。我们使用了 Verisign 和 Thawte,Comodo 甚至 GoDaddy 都带有时间戳,即使在证书过期数年后,软件也不会失效。

关于powershell - 如何防止每 1 年或 2 年需要重新签署我的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/912955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com