Question

J'ai une solution AC # qui contient plusieurs bibliothèques de classe C #. Je fais des recherches récemment et il est suggéré que les assemblages sortis de mes bibliothèques soient signés, ce qui les rend signés avec un nom fort. Tout d'abord, je me demande s'il est préférable de progresser avec tel? Les bibliothèques qui ont sorti ces bibliothèques de classe sont utilisées dans plusieurs autres projets.

S'il est informé de ma question précédente que oui, je devrais signer mes DLL, le .snk que j'utilise, peut-il être utilisé pour chacune des bibliothèques de classe dans la solution? Ou doit-il être une clé par bibliothèque de classe?

Était-ce utile?

La solution

Parfois, la signature d'un assemblage est une exigence. C'est vrai si vous le souhaitez GAC Votre assemblage, ou si un assemblage signé souhaite faire référence à un autre assemblage.

Vous pouvez réutiliser la même chose .snk le fichier, et cela entraînera le même token de clé publique pour tous les assemblées.

Autres conseils

Il est essentiel si vous avez l'intention de mettre l'assemblage dans le GAC pour être utilisé par un grand nombre d'assemblages.

Il est avantageux si vous voulez le donner aux utilisateurs pour utiliser plutôt que de vous installer, car il offre un certain degré de réconfort que c'est vraiment le fichier que vous avez dit que vous les donniez, plutôt qu'un falsification.

Il est bon d'utiliser l'utilisation de quelques (peut-être un) fichiers SNK par entité (individuel, collectif, groupe open-source ou entreprise) parce que si quelqu'un vous fait confiance (que ce soit "signifie individuel, entreprise, etc.) et ils font donc confiance à un clé publique, ils sont sûrs à vous, alors ils lui feront confiance la prochaine fois aussi. Vous ne voudriez pas signer des chèques avec une signature écrite à la main différente à chaque fois, le feriez-vous?

La signature de la DLL est l'exigence de publication de votre DLL dans GAC. Les véritables avantages de la signature DLL sont comme ci-dessous.

1. versioning

2. Authentification

un. Le versioning indique la version de la DLL sur et tout en les poussant dans GAC Two DLL avec le même nom peut exister mais une version différente

né L'authentification désigne si la DLL n'est pas falsifiée et existe la même chose lorsqu'elle a été créée.

Le blog détaillé sur la signature DLL est disponible ici

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top