Infralution Support Forum Index Infralution Support
Support groups for Infralution products
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

My application uses unsigned 3rd party assemblies

 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Infralution Support Forum Index -> .NET Encryptor FAQ
View previous topic :: View next topic  
Author Message
Infralution



Joined: 28 Feb 2005
Posts: 5027

PostPosted: Fri Jul 24, 2015 11:57 pm    Post subject: My application uses unsigned 3rd party assemblies Reply with quote

.NET Encryptor requires that the Bootstrap assembly be signed with a strong name (in order to verify the identity of the assembly loading the encrypted assemblies). Strong naming is transitive - this means that all assemblies referenced by the Bootstrap must also be strong named (not necessarily with the same strong name). So what do you do if your application references a 3rd party assembly which is NOT strong named?

The first thing is to probably approach the 3rd party supplier and ask them to strong name their assemblies. Commercial software vendors should be doing this anyway as it is best practice for security and allows their components to be used in strong named applications. If they can't or won't sign their assemblies then there is an alternative. You can strong name their assembly using your own strong name. To do this open a Visual Studio command prompt and then navigate to the directory containing the assembly you wish to strong name and copy your strong name file (eg MyKey.snk) to that directory. Assuming your assembly is called UnsignedAssembly.dll you can then decompile the assembly to IL (using ilsdasm) and recompile it with a strong name (using ilasm) with the following commands:

Code:
ildasm UnsignedAssembly.dll /out:UnsignedAssembly.il
ilasm UnsignedAssembly.il /dll /key=MyKey.snk /output=SignedAssembly.dll


You can then verify that your assembly is now strong named using the strong name (sn) tool:

Code:
sn -v SignedAssembly.dll

_________________
Infralution Support
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Infralution Support Forum Index -> .NET Encryptor FAQ All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group