强命名或验证码签署新程序集

发布于 2024-12-18 08:21:43 字数 269 浏览 2 评论 0原文

一位最终用户要求我将“强命名”添加到我的一个组件中,因为他们希望从强命名程序集中引用它。

我已经有一个authenticode证书,所以我想知道 - 为了使我的组件可以被他们的强命名组件使用,我只需使用我的authenticode密钥签署该组件就足够了吗?

或者我是否必须对程序集进行“强名称签名”(使用 Al.exe),以便将其视为“强名称”?

我找不到任何与此相关的明确的“强名称 vrsauthenticode”文档。

I've been asked by an end user to add "Strong Naming" to one of my components, because they want to reference it from a strong named assembly.

I already have an authenticode certificate, so I'm wondering - to make my component usable by their strong named component, is it enough for me to just sign the component with my authenticode key?

Or do I have to "strong name sign" the assembly (using Al.exe) for it to be considered "Strong named"?

I cannot find any "strong name vrs authenticode" documentation that is explicit regarding this.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦初启 2024-12-25 08:21:43

无论您是否应用authenticode 签名,您都“不必”使用强命名。这样做是一种选择,通常与应用身份验证签名的选择完全正交。如果您可以提供有关您的强名称签名目标的更多信息,那么就是否可以通过authenticode签名解决这些问题给您一个明确的答案会容易得多...


更新了以下问题的信息添加...

身份验证签名不会导致程序集被视为强命名。为了使强命名程序集能够引用您的程序集,您必须应用强名称签名(无论您的程序集是否也恰好具有authenticode 签名)。

You don't "have" to use strong naming, regardless of whether you apply an authenticode signature. Doing so is a choice, and it is usually completely orthogonal to the choice to apply an authenticode signature. If you could provide more information concerning your strong name signing goals, it would be considerably easier to give you a definitive answer regarding whether these would be addressed via an authenticode signature...


Updated following addition of information to question...

An authenticode signature will not cause an assembly to be considered strongly named. In order for a strongly named assembly to be able to reference your assembly, you must apply a strong name signature (regardless of whether your assembly also happens to have an authenticode signature).

她比我温柔 2024-12-25 08:21:43

强命名和验证码用于不同的目的。强命名主要用于防止程序集欺骗(替换)以及将多个程序集“绑定”在一起,以便所有程序集都使用彼此的预定义版本。 Authenticode 用于验证 PE 模块(Win32 EXE、DLL 或 .NET 程序集等)的作者。因此,您可以并行使用其中任何一个或两个。

注意:在某些情况下,Authenticode 签名验证可能需要很长时间(几秒甚至几十秒),并且根据您的应用程序架构,这可能是不合适的。

Strongnaming and Authenticode are used for different purposes. Strongnaming is mainly used to prevent assembly spoofing (replacement) and for "binding" several assemblies together so that all of them use the predefined version of each other. Authenticode is used to authenticate the author of the PE module (Win32 EXE, DLL or .NET assembly etc). Consequently you can use any or both of them in parallel.

A note: Authenticode signature validation can take long time (seconds or even dozens of seconds) in some cases, and depending on your application architecture this can be inappropriate.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文