Found an interesting work-around for signing 3rd party assemblies. This is just one of the pages that describes the technique, but I've seen in various places ...
http://scmay.wordpress.com/2008/07/17/assembly-generation-failed-referenced-assembly-does-not-have-a-strong-name/and also a codeplex project that does it all for you
http://www.codeplex.com/SignerE.g. Lets say the name of the third party DLL is myTest.dll.
Step 1: Dis-assemble the assembly
ildasm myTest.dll /out:myTest.il
Step 2: Re-Assemble using your strong-name key
ilasm myTest.il /res:myTest.res /dll /key:myTest.snk /out:myTestSN.dll
This code work perfectly to assign strong name.
for verification you can use following command,
sn -vf myTestSN.dll