¿Mejores prácticas para firmar ensamblados .NET?

Tengo una solución que consta de cinco proyectos, cada uno de los cuales se compila para ensamblar por separado. Ahora mismo los estoy firmando con código, pero estoy bastante seguro de que lo estoy haciendo mal. ¿Cuál es la mejor práctica aquí?

Firme cada uno con una clave diferente; asegúrese de que las contraseñas sean diferentesFirme cada uno con una clave diferente; usa la misma contraseña si quieresFirme cada uno con la misma claveAlgo completamente diferente

Básicamente, no estoy muy seguro de qué les "firma", o cuáles son las mejores prácticas aquí, por lo que una discusión más general sería buena. Todo lo que realmente sé es queFxCop me gritó, y fue fácil de solucionar haciendo clic en la casilla de verificación "Firmar este ensamblado" y generando un archivo .pfx usando Visual Studio (2008).

Respuestas a la pregunta(5)

Su respuesta a la pregunta