I have two, third party assemblies:
Foo.dll
and
ReferencesFoo.dll
As noted, ReferencesFoo.dll
is an assembly that has a reference to Foo.dll
For my application, I need to resign these assemblies. I use ildasm/ilasm in combination along with a signing key to resign them, however, ReferencesFoo.dll
still contains (in it's manifest?) the reference to the Foo.dll
old public key and public key token.
So, how do I sign both dll's with my key, and update the references in ReferencesFoo.dll
without getting the source code and recompiling?
You can sign an assembly with the SN.exe tool (using the -R switch to resign an already signed assembly).
But you have to be aware that modifying a third party component might likely be illegal. So make sure there are no legal problems before doing so.
And I'm not aware of any tools to automatically change references. You can find them in the metadatatable #35 which is structured as follows: