Příklad zabezpečené komunikace Kryptografické služby nové generace (CNG)

Příklad zabezpečené komunikace Kryptografické služby nové generace (CNG) modeluje kryptografické řešení pro útok prostředníkem. Simuluje komunikaci mezi třemi osobami - Alicí, Bobem a Mallory ve fiktivní reklamní společnosti. Příklad používá CNG třídy, přepravu pojmenovaných kanálů a interaktivní konzolová okna, aby demonstroval zabezpečená řešení pro útok prostředníkem.

Toto je zdokonalený příklad a předpokládá znalost kryptografie, meziprocesové komunikace a zabezpečení sítě.

Poznámka

Třídy Kryptografické služby nové generace (CNG) jsou k dispozici pouze v systému Windows Vista a následných operačních systémech Windows.

Toto téma obsahuje přehled příkladu Kryptografické služby nové generace (CNG). Popisuje následující:

  • Scénář příkladu

  • Chyby zabezpečení nástroje pro rychlé zasílání zpráv (IM)

  • Verze 1: Pojmenované kanály

  • Verze 2-5: Přírůstkové vylepšení zabezpečení

  • Výsledky testů

  • Příklad kódu

  • Zásady vytváření názvů

  • Podrobné informace

Scénář příkladu

Reklamní společnost vyvíjí nástroj pro rychlé zasílání zpráv (IM), který běží na stolním počítači. Všichni zaměstnanci mohou vidět zprávy zadané do tohoto nástroje.

Alice a Bob pracují v oddělení prodeje. Používají IM nástroj pro vzájemné posílání obchodních kontaktů. Mallory je síťový inženýr, který pracuje v systémových operacích. Tajně monitoroval zprávy od Alice a Boba. Jednou za měsíc kopíruje cenné obchodní kontakty a prodává je konkurenci pro osobní zisk.

Po několika měsících si společnost uvědomí, že někdo krade obchodní kontakty a tato vnitropodniková komunikace byla prozrazena. Rozhodnou se vytvořit nový IM nástroj a začnou analyzováním zabezpečení současné verze.

Chyby zabezpečení nástroje pro rychlé zasílání zpráv (IM)

Společnost si uvědomí, že současná verze IM nástroje má následující chyby zabezpečení:

  • Přenáší zprávy v prostém textu (nezašifrované).

  • Vysílá tyto zprávy přes podnikovou síť.

  • Zprávy mohou být zobrazeny a dokonce zaznamenány kýmkoliv.

Společnost se rozhodne, že nový IM nástroj může adresovat tyto problémy povolením komunikace bod k bodu v podnikové síti.

Verze 1: Pojmenované kanály

Společnost vytváří nový IM nástroj, který se opírá o pojmenované kanály pro meziprocesovou komunikaci (IPC). Tato verze nepoužívá šifrování nebo digitální podpisy.

Alici a Bobovi jsou dány následující pokyny:

  1. Vytvořte počáteční spojení prostřednictvím kanálu s názvem PublicChannel.

  2. Vzájemně si pošlete název soukromého kanálu a poté se okamžitě odpojte od PublicChannel.

  3. Připojte se pomocí soukromého kanálu a odešlete si navzájem obchodní kontakty.

Společnost doufá, že komunikační kanály bod k bodu poskytnou dostatek izolace od zbytku podnikové sítě. Brzy přijdou na to, že toto řešení je nedostatečné. Mallory zjistí jak přemoci nový systém. Pokračuje v kradení obchodních kontaktů a začne skrývat své zločiny pomocí pečlivého měnění adres obchodních kontaktů.

Společnost se rozhodne přidat bezpečnostní opatření do IM nástroje, aby zastavila krádeže.

Verze 2 až 5: Přírůstkové vylepšení zabezpečení

Nový software je testován a rozšiřován po několik měsíců. Do doby dokončení testů, byly vytvořeny čtyři další verze IM nástroje. Každá verze navazuje na předchozí verzi:

  • Verze 2 zahrnuje šifrování založené na Kryptografické službě nové generace (CNG), která používá dvojice veřejných a soukromých klíčů.

  • Verze 3 používá digitální podpis k podpisu kryptografických klíčů a zpráv.

  • Verze 4 přidává soukromý kanál pro přenos digitálního podpisu pro podepsání kryptografických klíčů a zpráv.

  • Verze 5 zastavuje vniknutí pomocí ukončení všech IM relací, které obdrží podepsané klíče s neplatnými podpisy.

Výsledky testů

Verze 2 používá vysoce zabezpečený šifrovací algoritmus. Prolomení šifrování by vyžadovalo rozsáhlé prostředky a čas. Proto je společnost překvapena, když zjistí, že toto řešení bylo ohroženo.

Verze 3, která používá digitální podpisy, nebrání ani krádeži. Tato verze však pomáhá společnosti udělat důležitý objev: Pokud jsou kryptografické klíče a digitální podpis zachyceny a nahrazeny, kanál který se používá k přenosu klíčů a podpisu musí být zdrojem problémů.

Tento nápad je testován přidáním soukromého kanálu pro přenos digitálního podpisu do verze 4. Verze 4 také zobrazuje upozornění v případě, že zpráva nebo klíč má neplatný podpis. Verze 4 je dána pouze dvěma osobám ve společnosti: Alici a Bobovi. Začne zobrazovat upozornění zabezpečení co nejdříve poté, co Alice a Bob odešlou jejich první zprávy. Společnosti si nakonec uvědomí, že jejich síť trpí útokem prostředníka.

Verze 5 je stejná jako verze 4, s tím rozdílem, že ukončí relaci po prvním narušení zabezpečení. Ihned poté, co je tato verze nainstalována, přestanou krádeže obchodních kontaktů.

Příklad kódu

Kód, který je součástí tohoto příkladu modeluje těchto pět verzí zabezpečení. Přehled kódu je uveden v tématu Přehled zdrojového kódu (příklad Kryptografické služby nové generace (CNG)).

Poznámka

Tento příklad neposkytuje komplexní řešení zabezpečení.Jeho účelem je pouze demonstrovat API rozhraní Kryptografické služby nové generace (CNG) ve věrohodném scénáři zabezpečení.Kompletní aplikace zabezpečení je nad rámec tohoto příkladu.

Zásady vytváření názvů

Dokumentace pro tento příklad odkazuje na pět verzí softwaru a odpovídajících úrovní zabezpečení číslem (například verze 1, verze 2 a tak dále).

V závislosti na kontextu mohou názvy "Alice", "Bob" a "Mallory" odkazovat na tři osoby zapojené do scénáře příkladu nebo na tři aplikace sady Visual Studio. Pro jednoduchost dokumentace používá stejné názvy pro obojí. Například "Alice automaticky načte Boba a Mallory" znamená, že aplikace Alice automaticky načte aplikace Bob a Mallory.

Podrobné informace

Následující témata obsahují podrobné informace týkající se scénáře příkladu a kódu:

Viz také

Koncepty

Služby šifrování

Kryptografický model rozhraní .NET framework

Služby šifrování

Další zdroje

Kryptografické úlohy