Schlüsselalgorithmus auswählen

Bevor Sie eine Zertifizierungsstelle (CA) erstellen, müssen Sie einen Signaturalgorithmus für den Cloud Key Management Service-Schlüssel der CA auswählen. Mit Certificate Authority Service können CAs mit bereits vorhandenen Cloud KMS-Schlüsseln über einen der unterstützten Algorithmen für die asymmetrische Signatur erstellt werden. Sie können auch einen kleineren Teil dieser Algorithmen auswählen und den Schlüsselzyklus vom Dienst erstellen und verwalten lassen.

Auf dieser Seite werden die Faktoren erwähnt, die Sie bei der Auswahl des Signaturalgorithmus einer Zertifizierungsstelle berücksichtigen müssen.

Algorithmusfamilien

Cloud KMS unterstützt zwei Algorithmenfamilien für asymmetrische Signaturvorgänge: RSA und ECDSA.

RSA

RSA-basierte Signaturschemata sind aufgrund ihres Alters auf vielen Plattformen weithin kompatibel. Wenn Sie Clients mit älteren Betriebssystemen, Protokollen, Firmware oder anderen Technologiestacks unterstützen müssen, ist RSA eine gängige Wahl.

Cloud KMS bietet zwei Hauptvarianten von RSA-Signaturalgorithmen: RSA_SIGN_PSS und RSA_SIGN_PKCS1. Die PSS-Varianten verwenden das RSASSA-PSS-Signaturschema, das in Abschnitt 8.1 von RFC 8017 beschrieben ist. Es ist neuer und gilt als nachweislich sicherer. Bei den PKCS1-Varianten wird das ältere PKCS#1-v1.5-Signaturschema verwendet, das in Abschnitt 8.2 von RFC 8017 beschrieben ist.

Bei neueren Hierarchien sollten die PSS-Varianten verwendet werden, sofern alle Anwendungen, die diese Zertifikate verwenden könnten, dies unterstützen. Andernfalls sind die PKCS1-Varianten aufgrund ihrer breiteren Unterstützung die bessere Wahl.

ECDSA

Asymmetrische Schlüssel, die auf elliptischen Kurven basieren, sind zwar relativ neuer als ihre RSA-Äquivalente, werden aber in vielen der gängigsten Technologiestacks unterstützt, die in den letzten zehn Jahren veröffentlicht wurden. Sie sind besonders beliebt, da sie mit kleineren Schlüsselgrößen eine ähnliche Sicherheitsstärke wie RSA-Schlüssel erreichen können. Bei Anwendungen, die ECDSA-Schlüssel verwenden, werden weniger Daten über die Leitung gespeichert und übertragen.

Cloud KMS bietet zwei Hauptvarianten von ECDSA-Signaturalgorithmen: EC_SIGN_P256 und EC_SIGN_P384.

Gemischte Ketten

Eine gemischte (oder hybride) Kette ist eine Zertifikatskette, in der ein oder mehrere Zertifikate unterschiedliche Schlüsselalgorithmusfamilien verwenden, z. B. RSA in einigen Zertifikaten und ECDSA in anderen. Bei einigen Technologie-Stacks treten Probleme beim Parsen gemischter Zertifikatsketten auf und es werden möglicherweise unerwartete Fehler angezeigt. Darüber hinaus können für einige Branchen Compliance-Anforderungen gelten, die vorschreiben, dass eine Zertifizierungsstellenkette eine einzelne Algorithmusfamilie verwenden muss.

Normalerweise wird für ECDSA-Schlüssel eine separate Zertifizierungsstellenkette eingerichtet als für RSA-Schlüssel.

Schlüsselgröße

Größere Schlüsselgrößen (innerhalb derselben Familie) bieten zwar eine höhere Sicherheit, führen aber auch dazu, dass mehr Daten gespeichert und über die Leitung übertragen werden. Außerdem können Verschlüsselungs- und Signaturvorgänge bei größeren Schlüsselgrößen manchmal länger dauern, was jedoch in der Regel zu vernachlässigen ist.

Für langlebigere Schlüssel, z. B. solche, die mit Stamm- oder langlebigen untergeordneten Zertifizierungsstellen verknüpft sind, werden in der Regel Schlüsselgrößen mit höherer Sicherheitsstärke als bei anderen Schlüsseln verwendet.

Leitfaden zur Entscheidungsfindung

Anhand dieser einfachen Anleitung können Sie einen geeigneten Signaturalgorithmus für Ihren CA-Schlüssel auswählen:

  1. Algorithmusfamilie auswählen

    Wenn Sie eine untergeordnete Zertifizierungsstelle erstellen, die mit einer vorhandenen Stamm-CA verkettet ist, verwenden Sie dieselbe Familie wie die Stamm-CA.

    Wenn Sie eine neue Stamm-CA erstellen, aber mit älteren Systemen arbeiten müssen, die ECDSA nicht unterstützen, verwenden Sie einen der RSA-Signaturalgorithmen.

    Andernfalls können Sie einen der Elliptische-Kurven-Signaturalgorithmen verwenden.

  2. (Nur RSA) Signaturalgorithmus auswählen

    Wenn Sie mit älteren Bibliotheken oder Frameworks arbeiten, die PSS nicht unterstützen, verwenden Sie einen der RSA_SIGN_PKCS1-Algorithmen.

    Andernfalls verwenden Sie einen der RSA_SIGN_PSS-Algorithmen.

  3. Schlüsselgröße auswählen

    Für eine neue Stamm-CA oder eine untergeordnete Zertifizierungsstelle, deren Lebensdauer voraussichtlich mehrere Jahre betragen wird, empfehlen wir die Verwendung der größten Schlüsselgröße, die für diese Algorithmusfamilie verfügbar ist.

    • Für RSA ist die größte unterstützte Schlüsselgröße 4.096 Bit.
    • Bei ECDSA beträgt die größte unterstützte Schlüsselgröße 384 Bit.

    Für untergeordnete Zertifizierungsstellen mit einer kürzeren Lebensdauer reichen kleinere Schlüsselgrößen aus, z. B. 2.048 Bit für RSA oder 256 Bit für ECDSA.

Nächste Schritte