Signed / Strong-Named Binaries

Providing source code for you to build on your own allows you to do anything you need to with the code. However, if multiple developers or vendors create code based on these common libraries and distribute them, there can be conflicts when using the common code as Windows will load the assembly only one time and all subsequent calls will be made to the first-loaded version. However, you can overcome this problem by using signed assemblies, created using a strong-name key.

The assemblies are signed with a Microsoft strong-naming key that is not included with the source code. This means that you cannot build a compiled version from the source code that uses the same public key as someone else. However, you can use your own key pair to create strong-named assemblies. If you customize the source code, you should use the binaries that you compile from the source code and sign with your own key instead of using the pre-compiled binaries signed with the Microsoft key.

For more information about strong-name signing, go here:

How to: Sign an Assembly (Visual Studio 2005)
How to: Sign an Assembly (Visual Studio 2008)
Using Strong Name Signatures (MSDN)

Last edited Jan 22, 2009 at 6:37 PM by rhearn, version 1


No comments yet.