2013-06-27 13 views
5

私が理解する限り、あなたは署名ファイルを秘密にしておくことになっています。したがって、どのようにMonoバージョンの.netフレームワークアセンブリも同じ公開キートークンb77a5c561934e089を持っています。MonoとMicrosoftの.NETアセンブリはどのように同じ公開鍵トークンを持っていますか?

+3

アセンブリビットを関連する公開鍵で検証しようとするとどうなりますか?そうしようとすると啓蒙されます。 –

+0

「署名済み」と「公開鍵を持っている」という言葉は多少無関係です。 –

+0

MonoアセンブリはMicrosoftアセンブリと同じ公開鍵を持っていますが、署名はされていません。あるいは、実際には異なる公開鍵で署名されていますか? – logicnp

答えて

4

Monoには、公開鍵の再マッピングメカニズムがあります。 http://www.mono-project.com/Assemblies_and_the_GAC#Public_Key_Token_Remapping

したがって、特別なリストで認識された公開鍵が表示された場合、の別のキーに暗黙のうちに再マッピングされます。これにより、自身のキーでモノを署名することができますが、通常の.NETの使用(特定のECMAヘッダーで「署名」されたアセンブリを含む)のように公開鍵を要求するためには煙とミラーを使用して、アセンブリをモノ再建する必要はありません。

+0

つまり、MonoアセンブリはMicrosoftアセンブリと同じ公開鍵を持ちますが、実際には署名されていません。あるいは、実際には異なる公開鍵で署名されていますか?私の理解は正しい? – logicnp

関連する問題