Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Artikel enthält eine Übersicht über die Kryptografiefeatures, die winUI-Apps zur Verfügung stehen. Ausführliche Informationen zu bestimmten Vorgängen finden Sie in der Tabelle am Ende dieses Artikels.
Terminologie
Die folgende Terminologie wird häufig in Kryptografie- und Public Key-Infrastruktur (Public Key Infrastructure, PKI) verwendet.
| Begriff | Beschreibung |
|---|---|
| Verschlüsselung | Der Prozess der Transformation von Daten mithilfe eines kryptografischen Algorithmus und Schlüssels. Die transformierten Daten können nur mithilfe desselben Algorithmus und desselben (symmetrischen) oder verwandten (öffentlichen) Schlüssels wiederhergestellt werden. |
| Entschlüsselung | Der Prozess der Rückgabe verschlüsselter Daten an das ursprüngliche Formular. |
| Klartext | Ursprünglich wurde auf eine unverschlüsselte Textnachricht verwiesen. Verweist aktuell auf unverschlüsselte Daten. |
| Geheimtext | Ursprünglich wurde auf eine verschlüsselte und daher nicht lesbare Textnachricht verwiesen. Bezieht sich derzeit auf verschlüsselte Daten. |
| Hashing | Der Vorgang zur Umwandlung von Daten mit variabler Länge in eine feste Länge, in der Regel einen kleineren Wert. Durch den Vergleich von Hashes können Sie eine angemessene Sicherheit erhalten, dass zwei oder mehr Daten gleich sind. |
| Signature | Verschlüsselter Hash digitaler Daten, der in der Regel verwendet wird, um den Absender der Daten zu authentifizieren oder zu überprüfen, ob die Daten während der Übertragung nicht manipuliert wurden. |
| Algorithmus | Eine schrittweise Vorgehensweise zum Verschlüsseln von Daten. |
| Schlüssel | Eine zufällige oder pseudozufällige Zahl, die als Eingabe für einen kryptografischen Algorithmus zum Verschlüsseln und Entschlüsseln von Daten verwendet wird. |
| Symmetrische Schlüsselkryptografie | Kryptografie, bei der Verschlüsselung und Entschlüsselung denselben Schlüssel verwenden. Dies wird auch als Kryptografie mit geheimem Schlüssel bezeichnet. |
| Kryptografie mit asymmetrischem Schlüssel | Kryptografie, bei der Verschlüsselung und Entschlüsselung einen anderen, aber mathematisch verwandten Schlüssel verwenden. Dies wird auch als Kryptografie für öffentliche Schlüssel bezeichnet. |
| Codieren | Der Prozess der Codierung digitaler Nachrichten, einschließlich Zertifikaten, für den Transport über ein Netzwerk. |
| Algorithmusanbieter | Eine DLL, die einen kryptografischen Algorithmus implementiert. |
| Schlüsselspeicheranbieter | Ein Container zum Speichern von Schlüsselmaterial. Derzeit können Schlüssel in Software, Smartcards oder dem vertrauenswürdigen Plattformmodul (TPM) gespeichert werden. |
| X.509-Zertifikat | Ein digitales Dokument, das in der Regel von einer Zertifizierungsstelle ausgestellt wurde, um die Identität einer Person, eines Systems oder einer Entität für andere Interessierte zu überprüfen. |
Namespaces
Die folgenden Namespaces sind für die Verwendung in Apps verfügbar.
Windows.Security.Cryptography
Enthält die CryptographicBuffer-Klasse und statische Methoden, die Folgendes ermöglichen:
- Konvertieren von Daten in und aus Zeichenfolgen
- Konvertieren von Daten in und aus Bytearrays
- Codieren von Nachrichten für den Netzwerktransport
- Decodieren von Nachrichten nach dem Transport
Windows.Security.Cryptography.Certificates
Enthält Klassen, Schnittstellen und Enumerationstypen, die Folgendes ermöglichen:
- Erstellen einer Zertifikatanforderung
- Installation einer Zertifikatsantwort
- Importieren eines Zertifikats in einer PFX-Datei
- Eigenschaften von Zertifikatanforderungen angeben und abrufen
Windows.Security.Cryptography.Core
Enthält Klassen und Enumerationstypen, die Folgendes ermöglichen:
- Verschlüsseln und Entschlüsseln von Daten
- Hashdaten
- Signieren von Daten und Überprüfen von Signaturen
- Erstellen, Importieren und Exportieren von Schlüsseln
- Arbeiten mit Anbietern von asymmetrischen Schlüsselalgorithmus
- Arbeiten mit anbietern von symmetrischen Schlüsselalgorithmus
- Arbeiten mit Hashalgorithmusanbietern
- Arbeiten mit Mac-Algorithmusanbietern (Machine Authentication Code)
- Arbeiten mit Anbietern von Schlüsselableitungsalgorithmus
Windows.Security.Cryptography.DataProtection
Enthält Klassen, mit denen Sie folgende Aktionen ausführen können:
- Asynchrones Verschlüsseln und Entschlüsseln statischer Daten
- Datenströme asynchron verschlüsseln und entschlüsseln
Krypto- und PKI-Anwendungsfunktionen
Die vereinfachte Anwendungsprogrammierschnittstelle, die für Apps verfügbar ist, ermöglicht die folgenden Funktionen für kryptografische und public Key-Infrastruktur (PKI).
Kryptografieunterstützung
Sie können die folgenden kryptografischen Aufgaben ausführen. Weitere Informationen finden Sie im Windows.Security.Cryptography.Core-Namespace .
- Erstellen symmetrischer Schlüssel
- Ausführen der symmetrischen Verschlüsselung
- Erstellen asymmetrischer Schlüssel
- Asymmetrische Verschlüsselung durchführen
- Ableiten kennwortbasierter Schlüssel
- Erstellung von Nachrichtenauthentifizierungscodes (MACs)
- Hashinhalt
- Digitales Signieren von Inhalten
Das SDK bietet auch eine vereinfachte Schnittstelle für den kennwortbasierten Datenschutz. Sie können dies verwenden, um die folgenden Aufgaben auszuführen. Weitere Informationen finden Sie im Windows.Security.Cryptography.DataProtection-Namespace .
- Asynchroner Schutz statischer Daten
- Asynchroner Schutz eines Datenstroms
Codierungsunterstützung
Eine App kann kryptografische Daten für die Übertragung über ein Netzwerk codieren und Von einer Netzwerkquelle empfangene Daten decodieren. Weitere Informationen finden Sie unter den statischen Methoden, die im Windows.Security.Cryptography-Namespace verfügbar sind.
PKI-Unterstützung
Apps können die folgenden PKI-Aufgaben ausführen. Weitere Informationen finden Sie im Namespace "Windows.Security.Cryptography.Certificates ".
- Erstellen eines Zertifikats
- Erstellen eines selbstsignierten Zertifikats
- Installieren einer Zertifikatantwort
- Importieren eines Zertifikats im PFX-Format
- Verwenden von Smartcardzertifikaten und Schlüsseln (sharedUserCertificates-Funktionen festgelegt)
- Verwendung von Zertifikaten aus dem Zertifikatspeicher „MY“ des Benutzers (festgelegte sharedUserCertificates-Funktionen)
Darüber hinaus können Sie das Manifest verwenden, um die folgenden Aktionen auszuführen:
- Angeben von vertrauenswürdigen Stammzertifikaten pro Anwendung
- Festlegen von vertrauenswürdigen Zertifikaten für jeden Anwendungs-Peer
- Deaktivieren der expliziten Vererbung von Systemvertrauen
- Angeben der Zertifikatauswahlkriterien
- Nur Hardwarezertifikate
- Zertifikate, die durch eine bestimmte Menge von Ausstellern verbunden werden
- Automatisches Auswählen eines Zertifikats aus dem Anwendungsspeicher
Detaillierte Artikel
Die folgenden Artikel enthalten weitere Details zu Sicherheitsszenarien:
| Thema | Beschreibung |
|---|---|
| Zertifikate | In diesem Artikel wird die Verwendung von Zertifikaten in WinUI-Apps erläutert. Digitale Zertifikate werden in der Kryptografie für öffentliche Schlüssel verwendet, um einen öffentlichen Schlüssel an eine Person, einen Computer oder eine Organisation zu binden. Die gebundenen Identitäten werden am häufigsten verwendet, um eine Entität für eine andere zu authentifizieren. Beispielsweise werden Zertifikate häufig verwendet, um einen Webserver für einen Benutzer und einen Benutzer auf einem Webserver zu authentifizieren. Sie können Zertifikatanforderungen erstellen und ausgestellte Zertifikate installieren oder importieren. Sie können ein Zertifikat auch in einer Zertifikathierarchie registrieren. |
| Kryptografieschlüssel | In diesem Artikel wird erläutert, wie Sie Standardschlüsselableitungsfunktionen verwenden, um Schlüssel abzuleiten und Inhalte mithilfe symmetrischer und asymmetrischer Schlüssel zu verschlüsseln. |
| Datenschutz | In diesem Artikel wird erläutert, wie Sie die DataProtectionProvider-Klasse im Windows.Security.Cryptography.DataProtection-Namespace verwenden, um digitale Daten in einer WinUI-App zu verschlüsseln und zu entschlüsseln. |
| MACs, Hashes und Signaturen | In diesem Artikel wird erläutert, wie Nachrichtenauthentifizierungscodes (MACs), Hashes und Signaturen in WinUI-Apps verwendet werden können, um Nachrichtenmanipulation zu erkennen. |
| Exporteinschränkungen für Kryptografie | Verwenden Sie diese Informationen, um festzustellen, ob Ihre App Kryptografie auf eine Weise verwendet, die verhindern kann, dass sie im Microsoft Store aufgeführt wird. |
| Allgemeine Kryptografieaufgaben | Diese Artikel enthalten Beispielcode für allgemeine WinUI-Kryptografieaufgaben, z. B. erstellen Zufällige Zahlen, Vergleichen von Puffern, Konvertieren zwischen Zeichenfolgen und Binären Daten, Kopieren in und aus Bytearrays sowie Codieren und Decodieren von Daten. |
Windows developer