Scegli un algoritmo chiave

Prima di creare un'autorità di certificazione (CA), devi scegliere un algoritmo di firma per la chiave Cloud Key Management Service di supporto della CA. Certificate Authority Service consente di creare CA con chiavi Cloud KMS preesistenti utilizzando uno qualsiasi degli algoritmi di firma asimmetrica supportati oppure scegliendo un sottoinsieme più piccolo di questi algoritmi e lasciando che sia il servizio a creare e gestire il ciclo di vita delle chiavi.

Questa pagina illustra i fattori da considerare per scegliere l'algoritmo di firma di una CA.

Famiglie di algoritmi

Cloud KMS supporta due famiglie di algoritmi per le operazioni di firma asimmetrica: RSA ed ECDSA.

RSA

I sistemi di firma basati su RSA godono di un'ampia compatibilità su più piattaforme grazie alla loro anzianità. Se devi supportare i client che utilizzano sistemi operativi, protocolli, firmware o altri stack tecnologici legacy, l'RSA è una scelta comune.

Cloud KMS espone due varianti principali degli algoritmi di firma RSA:RSA_SIGN_PSS e RSA_SIGN_PKCS1. Le varianti PSS utilizzano lo schema di firma RSASSA-PSS descritto nella sezione 8.1 del documento RFC 8017, che è più recente e considerato più verificabilmente sicuro. Le varianti PKCS1 utilizzano lo schema di firma PKCS#1 v1.5 precedente descritto nella sezione 8.2 del documento RFC 8017.

Le gerarchie più recenti sono incoraggiate a utilizzare le varianti PSS se tutte le applicazioni che potrebbero utilizzare questi certificati lo supportano. In caso contrario, le varianti PKCS1 sono una scelta più adatta per il loro supporto più ampio.

ECDSA

Sebbene le chiavi asimmetriche basate su curve ellittiche siano relativamente più recenti delle loro controparti RSA, sono ancora supportate in molti degli stack tecnologici più comuni rilasciati nell'ultimo decennio. Sono particolarmente apprezzate perché possono raggiungere livelli di sicurezza simili a quelli delle chiavi RSA utilizzando dimensioni delle chiavi inferiori. Le applicazioni che utilizzano chiavi ECDSA memorizzano e trasmettono meno dati tramite la rete.

Cloud KMS espone due varianti principali degli algoritmi di firma ECDSA: EC_SIGN_P256 e EC_SIGN_P384.

Catene miste

Una catena mista (o ibrida) è una catena di certificati in cui uno o più certificati utilizzano famiglie di algoritmi di chiavi diverse, ad esempio RSA in alcuni certificati e ECDSA in altri. Alcuni stack tecnologici hanno difficoltà a eseguire l'analisi delle catene di certificati misti e potrebbero mostrare errori imprevisti in questi casi. Inoltre, alcuni settori possono avere requisiti di conformità che richiedono una catena CA per utilizzare una singola famiglia di algoritmi.

È normale configurare una catena CA separata per le chiavi ECDSA rispetto a quelle utilizzate per le chiavi RSA.

Dimensioni della chiave

Sebbene le dimensioni delle chiavi più grandi (all'interno della stessa famiglia) offrano una maggiore sicurezza, comportano anche un aumento dei dati archiviati e trasmessi tramite cavo. Inoltre, le operazioni di crittografia e firma a volte possono richiedere più tempo con dimensioni delle chiavi maggiori, anche se in genere questo tempo è troppo breve per essere notato.

Una pratica tipica è che le chiavi più durature, come quelle associate alle CA principali o subordinate a lungo termine, utilizzino dimensioni delle chiavi con un livello di sicurezza superiore rispetto ad altre chiavi.

Guida alla presa di decisioni

Puoi utilizzare questa semplice guida per scegliere un algoritmo di firma appropriato per la chiave della CA:

  1. Scegliere una famiglia di algoritmi

    Se stai creando una CA subordinata collegata a una CA principale esistente, utilizza la stessa famiglia della CA principale.

    Se stai creando una nuova CA principale, ma devi lavorare con sistemi legacy che non supportano ECDSA, utilizza uno degli algoritmi di firma RSA.

    In caso contrario, utilizza uno degli algoritmi di firma con curve ellittiche.

  2. (Solo RSA) Seleziona un algoritmo di firma

    Se prevedi di utilizzare librerie o framework precedenti che non supportano PSS, utilizza uno degli algoritmi RSA_SIGN_PKCS1.

    In caso contrario, utilizza uno degli algoritmi RSA_SIGN_PSS.

  3. Scegliere la dimensione della chiave

    Per una nuova CA radice o una CA subordinata che dovrebbe avere una durata nell'ordine degli anni, ti consigliamo di utilizzare la dimensione della chiave più grande disponibile per la famiglia di algoritmi in questione.

    • Per RSA, le dimensioni della chiave più grandi supportate sono 4096 bit.
    • Per ECDSA, la dimensione della chiave più grande supportata è 384 bit.

    Per le CA subordinate con una durata più breve, è sufficiente utilizzare dimensioni delle chiavi più piccole, ad esempio 2048 bit per RSA o 256 bit per ECDSA.

Passaggi successivi