Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ten artykuł zawiera omówienie funkcji kryptograficznych dostępnych dla aplikacji WinUI. Aby uzyskać szczegółowe informacje na temat konkretnych zadań, zobacz tabelę na końcu tego artykułu.
Terminologia
Poniższa terminologia jest często używana w infrastrukturze kryptografii i klucza publicznego (PKI).
| Termin | Opis |
|---|---|
| Encryption | Proces przekształcania danych przy użyciu algorytmu kryptograficznego i klucza. Przekształcone dane można odzyskać tylko przy użyciu tego samego algorytmu i tego samego (symetrycznego) lub powiązanego (publicznego) klucza. |
| Odszyfrowywanie | Proces zwracania zaszyfrowanych danych do oryginalnego formularza. |
| Postaci zwykłego tekstu | Pierwotnie odniósł się do niezaszyfrowanej wiadomości tekstowej. Obecnie odnosi się do wszystkich niezaszyfrowanych danych. |
| Szyfrogram | Pierwotnie odnosiła się do zaszyfrowanej, a tym samym nieczytelnej wiadomości tekstowej. Obecnie odnosi się do wszystkich zaszyfrowanych danych. |
| Haszowanie | Proces konwertowania danych o zmiennej długości na stałą długość, zazwyczaj mniejszą wartość. Porównując skróty, można uzyskać rozsądną pewność, że dwa lub więcej elementów danych jest identycznych. |
| Signature | Zaszyfrowany skrót danych cyfrowych zwykle używany do uwierzytelniania nadawcy danych lub weryfikowania, czy dane nie zostały naruszone podczas transmisji. |
| Algorytm | Procedura krok po kroku dotycząca szyfrowania danych. |
| Klucz | Liczba losowa lub pseudorandom używana jako dane wejściowe algorytmu kryptograficznego do szyfrowania i odszyfrowywania danych. |
| Kryptografia klucza symetrycznego | Kryptografia, w której szyfrowanie i odszyfrowywanie używają tego samego klucza. Jest to również nazywane kryptografią klucza tajnego. |
| Kryptografia klucza asymetrycznego | Kryptografia, w której szyfrowanie i odszyfrowywanie używają innego, ale matematycznie powiązanego klucza. Jest to również nazywane kryptografią klucza publicznego. |
| Encoding | Proces kodowania komunikatów cyfrowych, w tym certyfikatów, do transportu w sieci. |
| Dostawca algorytmów | Biblioteka DLL, która implementuje algorytm kryptograficzny. |
| Dostawca magazynowania kluczy | Kontener do przechowywania kluczowego materiału. Obecnie klucze mogą być przechowywane w oprogramowaniu, kartach inteligentnych lub module zaufanej platformy (TPM). |
| Certyfikat X.509 | Dokument cyfrowy, zwykle wystawiony przez urząd certyfikacji, w celu zweryfikowania tożsamości osoby, systemu lub jednostki dla innych zainteresowanych stron. |
Namespaces
Następujące przestrzenie nazw są dostępne do użycia w aplikacjach.
Windows.Security.Cryptography
Zawiera klasę CryptographicBuffer i metody statyczne, które umożliwiają:
- Konwertowanie danych na i z ciągów
- Przekształcanie danych na i z tablicy bajtów
- Kodowanie komunikatów dla transportu sieciowego
- Dekoduj komunikaty po transporcie
Windows.Security.Cryptography.Certificates
Zawiera klasy, interfejsy i typy wyliczenia, które umożliwiają:
- Tworzenie żądania certyfikatu
- Instalowanie odpowiedzi certyfikatu
- Importowanie certyfikatu w pliku PFX
- Określanie i pobieranie właściwości żądania certyfikatu
Windows.Security.Cryptography.Core
Zawiera klasy i typy wyliczenia, które umożliwiają:
- Szyfrowanie i odszyfrowywanie danych
- Dane skrótu
- Podpisywanie danych i weryfikowanie podpisów
- Tworzenie, importowanie i eksportowanie kluczy
- Praca z dostawcami algorytmów kluczy asymetrycznych
- Praca z dostawcami algorytmów kluczy symetrycznych
- Praca z dostawcami algorytmów skrótów
- Praca z dostawcami algorytmów uwierzytelniania maszynowego (MAC)
- Praca z dostawcami algorytmów wyprowadzania kluczy
Windows.Security.Cryptography.DataProtection
Zawiera klasy, które umożliwiają:
- Asynchroniczne szyfrowanie i odszyfrowywanie danych statycznych
- Asynchroniczne szyfrowanie i odszyfrowywanie strumieni danych
Możliwości aplikacji kryptograficznych i infrastruktury kluczy publicznych
Uproszczony interfejs programowania aplikacji dostępny dla aplikacji umożliwia korzystanie z następujących funkcji infrastruktury kluczy kryptograficznych i publicznych (PKI).
Obsługa kryptografii
Możesz wykonać następujące zadania kryptograficzne. Aby uzyskać więcej informacji, zobacz przestrzeń nazw Windows.Security.Cryptography.Core .
- Tworzenie kluczy symetrycznych
- Wykonywanie szyfrowania symetrycznego
- Tworzenie kluczy asymetrycznych
- Wykonywanie szyfrowania asymetrycznego
- Uzyskiwanie kluczy opartych na hasłach
- Tworzenie kodów uwierzytelniania komunikatów (MACs)
- Zawartość skrótu
- Podpisz cyfrowo zawartość
Zestaw SDK udostępnia również uproszczony interfejs ochrony danych oparty na hasłach. Można to użyć do realizacji następujących zadań. Aby uzyskać więcej informacji, zobacz przestrzeń nazw Windows.Security.Cryptography.DataProtection .
- Asynchroniczna ochrona danych statycznych
- Asynchroniczna ochrona strumienia danych
Obsługa kodowania
Aplikacja może kodować dane kryptograficzne do transmisji w sieci i dekodować dane odebrane ze źródła sieci. Aby uzyskać więcej informacji, zobacz metody statyczne dostępne w przestrzeni nazw Windows.Security.Cryptography .
Obsługa infrastruktury kluczy publicznych
Aplikacje mogą wykonywać następujące zadania infrastruktury kluczy publicznych. Aby uzyskać więcej informacji, zobacz przestrzeń nazw Windows.Security.Cryptography.Certificates .
- Tworzenie certyfikatu
- Tworzenie certyfikatu z podpisem własnym
- Instalowanie odpowiedzi certyfikatu
- Importowanie certyfikatu w formacie PFX
- Używanie certyfikatów i kluczy kart inteligentnych (funkcje zestawu sharedUserCertificates)
- Używanie certyfikatów z magazynu MY użytkownika (zestaw funkcji sharedUserCertificates)
Ponadto można użyć manifestu, aby wykonać następujące czynności:
- Określaj zaufane główne certyfikaty dla każdej aplikacji
- Określ zaufane przez aplikacje certyfikaty partnerskie
- Wyraźnie wyłącz dziedziczenie zaufania systemowego
- Określanie kryteriów wyboru certyfikatu
- Tylko certyfikaty sprzętowe
- Certyfikaty, które łączą się za pośrednictwem określonego zestawu wystawców
- Automatyczne wybieranie certyfikatu ze sklepu aplikacji
Szczegółowe artykuły
Poniższe artykuły zawierają więcej szczegółowych informacji na temat scenariuszy zabezpieczeń:
| Temat | Opis |
|---|---|
| Certificates | W tym artykule omówiono używanie certyfikatów w aplikacjach WinUI. Certyfikaty cyfrowe są używane w kryptografii klucza publicznego w celu powiązania klucza publicznego z osobą, komputerem lub organizacją. Tożsamości powiązane są najczęściej używane do uwierzytelniania jednej jednostki w innej. Na przykład certyfikaty są często używane do uwierzytelniania serwera internetowego dla użytkownika i użytkownika na serwerze sieci Web. Możesz tworzyć żądania certyfikatów i instalować lub importować wystawione certyfikaty. Można również zarejestrować certyfikat w hierarchii certyfikatów. |
| Klucze kryptograficzne | W tym artykule pokazano, jak używać standardowych funkcji wyprowadzania kluczy do uzyskiwania kluczy i szyfrowania zawartości przy użyciu kluczy symetrycznych i asymetrycznych. |
| Ochrona danych | W tym artykule wyjaśniono, jak używać klasy DataProtectionProvider w przestrzeni nazw Windows.Security.Cryptography.DataProtection do szyfrowania i odszyfrowywania danych cyfrowych w aplikacji WinUI. |
| MaCs, skróty i podpisy | W tym artykule omówiono, jak można używać kodów uwierzytelniania komunikatów (MAC), skrótów i podpisów w aplikacjach WinUI do wykrywania manipulacji komunikatami. |
| Ograniczenia eksportu dotyczące kryptografii | Użyj tych informacji, aby określić, czy aplikacja używa kryptografii w sposób, który może uniemożliwić wyświetlanie jej w Sklepie Microsoft. |
| Typowe zadania kryptograficzne | Te artykuły zawierają przykładowy kod typowych zadań kryptograficznych WinUI, takich jak tworzenie liczb losowych, porównywanie buforów, konwertowanie ciągów i danych binarnych, kopiowanie do i z tablic bajtowych oraz kodowanie i dekodowanie danych. |