About a week ago, I wrote about verifying strong name signatures from managed code. There are also several other strong name APIs exposed to unmanged code that don't have any managed equivilent, so I thought it might be a good idea to turn that post into a series of posts porting most of the strong name functionality to managed code. Once that's done, it should be pretty easy to write a simple managed re-implementation of sn.exe, to demonstrate how all of the APIs are used. As I do each API, I'll also update the P/Invoke wiki for mscorsn. (keeping in mind that mscorsn.dll goes away in Whidbey, as it gets merged into mscorwks).
I've been working on this in my spare time over the last week or so, and have come up with this general design:
I'll also use this as an excuse to get ramped up with MSBuild. However, everything should also work for v1.1 of the framework, since I'll P/Invoke to the mscoree function stubs. As for the code, I'm not quite sure how I'll handle that yet. I'll probably start by just storing it in this blog, then possibly move to a better solution such as the gotdotnet workspaces if this idea takes off. I've also created a new StrongName category on the blog, so that it'll be easy to get all of the posts on this project together.