Autentificando DLLs en C #

Tengo un exe que utiliza Castle Windsor para implementar un mecanismo de plugin. Necesito verificar que los complementos que carga provienen de mí (y no son códigos maliciosos).

Creo que necesito firmar el exe y el dll con una clave asimétrica (¿posiblemente una SNK?). En primer lugar, ¿es correcto y cómo puedo hacer esto? En segundo lugar, ¿cómo puedo verificar mediante programación en el exe que el dll provenga de una fuente confiable?

Respuestas a la pregunta(1)

Su respuesta a la pregunta