Postupy: Vytvořit pár veřejného a soukromého klíče

Chcete-li podepsat sestavení silným názvem, musíte mít pár veřejného a soukromého klíče. Tento pár veřejného a soukromého kryptografického klíče je použit během kompilace k vytvoření sestavení se silným názvem. Pár klíčů můžete vytvořit pomocí Nástroje pro silný název (Sn.exe). Soubory klíčového páru mají obvykle příponu .snk.

PoznámkaPoznámka

V Visual Studio, C# a Visual Basic stránky vlastností projektu zahrnout přihlášení kartu, která umožňuje vybrat existující soubory klíčů nebo generovat nový klíč souborů bez použití Sn.exe.V jazyce C++ můžete zadat existující soubor klíče v umístění Upřesnit stránka vlastností v Linker část Vlastnosti konfigurace část Stránky vlastností okna.Použití AssemblyKeyFileAttribute atribut identifikovat dvojic klíčů souborů byly zastaralé začínající Visual Studio 2005.

Chcete-li vytvořit pár klíčů

  • Na příkazovém řádku zadejte následující příkaz:

    sn –k <název souboru>

    V tomto příkazu parametr název soubor představuje název výstupního souboru, který obsahuje pár klíčů.

Následující příklad vytvoří pár klíčů nazvaný sgKey.snk.

sn -k sgKey.snk

Pokud máte v úmyslu sestavení podepsat opožděně a kontrolujete celý pár klíčů (což je nepravděpodobné mimo případy testování), můžete použít následující příkazy k vygenerování páru klíčů a poté extrahovat veřejný klíč do samostatného souboru. Nejdříve vytvořte pár klíčů:

sn -k keypair.snk
  • Dále extrahujte veřejný klíč z páru klíčů a zkopírujte jej do samostatného souboru:
sn -p keypair.snk public.snk
  • Jakmile vytvoříte pár klíčů, je nutné umístit daný soubor na místo, kde ho nástroj pro podepisování silným názvem může najít.

Při podpisu sestavení silným názvem, Propojovací program sestavení (Al.exe) vyhledává soubor s klíčem vzhledem k aktuálnímu adresáři a výstupnímu adresáři. Při použití kompilátoru příkazového řádku můžete jednoduše zkopírovat klíč do aktuálního adresáře, který obsahuje moduly kódu.

Pokud používáte dřívější verzi aplikace Visual Studio, která nemá kartu Podepisování ve vlastnostech projektu, doporučené umístění souboru s klíčem je adresář projektu s atributem souboru určeným následovně:

<Assembly:AssemblyKeyFileAttribute("keyfile.snk")>
[assembly:AssemblyKeyFileAttribute("keyfile.snk")]
[assembly:AssemblyKeyFileAttribute("keyfile.snk")];

Viz také

Koncepty

Vytvoření a použití sestavení se silným názvem