Is there a difference between a strongly signed
and a strongly named
.NET assembly?
If yes, how can I determine whether a assembly is strongly signed using Visual Studio (I know how check if it is strongly named)?
Thanks for your help
EDIT
Background: In the book WiX: A Developer's Guide to Windows Installer XML
is says you need to have a strongly-signed assembly in order to install it into the GAC.
So what do I need to install an assembly in the GAC: strong name or signed assembly?
Signing an assembly makes it strongly named. See Strong-named assemblies.
To be able to instal it into the GAC, an assembly needs to be strong-named and, therefor, signed.
There is no strongly signed
. There is only signed
and strongly named
.
In order to find out if it is signed on not (i.e. strongly named or not), open it with ildasm.exe and click manifest on the tree and look for public key token. if there is one then it is signed.
For example, opening castle.core.dll
shows this (proving it is strongly named):
.publickey = (00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00 // .$..............
00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00 // .$..RSA1........
77 F5 E8 70 30 DA DC CC E6 90 2C 6A DA B7 A9 87 // w..p0.....,j....
BD 69 CB 58 19 99 15 31 F5 60 78 5E AC FC 89 B6 // .i.X...1.`x^....
FC DD F6 BB 2A 00 74 3A 71 94 E4 54 C0 27 34 47 // ....*.t:q..T.'4G
FC 6E EC 36 47 4B A8 E5 A3 82 31 47 D2 14 29 8E // .n.6GK....1G..).
4F 9A 63 1B 1A FE E1 A5 1F FE AE 46 72 D4 98 F1 // O.c........Fr...
4B 00 0E 3D 32 14 53 CD D8 AC 06 4D E7 E1 CF 4D // K..=2.S....M...M
22 2B 7E 81 F5 4D 4F D4 67 25 37 0D 70 2A 05 B4 // "+~..MO.g%7.p*..
87 38 CC 29 D0 92 28 F1 AA 72 2A E1 A9 CA 02 FB ) // .8.)..(..r*.....
.hash algorithm 0x00008004
.ver 2:5:1:0
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With