Perché la mia richiesta di firma del certificato deve essere firmata dalla mia chiave privata?

7

Perché la mia richiesta di firma del certificato deve essere firmata dalla mia chiave privata?

Anche se ottengo un certificato fasullo dalla chiave pubblica di qualcun altro, ciò sarà inutile, poiché in SSL la comunicazione può avvenire solo tramite la chiave di sessione. Quella chiave di sessione sarà disponibile per me solo se avrò la chiave privata corrispondente per la chiave pubblica per la quale ho usato il certificato, perché il client (o l'altra parte) invierà la chiave di sessione crittografata usando la chiave pubblica e Posso decifrarlo solo se ho la chiave privata corrispondente.

Quale è quindi la necessità di dimostrare alla CA che possiedo la chiave privata per la chiave pubblica per la quale richiedo il certificato?

    
posta STEMExchanger 27.12.2015 - 04:46
fonte

3 risposte

6

L'accettazione di richieste di firma non firmate non invalida SSL. Ma i certificati non sono usati esclusivamente per SSL.

Oltre il motivo RFC 2986 che Jonathan Gray ha già citato , considera il fatto che un certificato fa più che associare un nome distinto e una chiave pubblica. Associa anche informazioni extra (come un nome e un indirizzo umano). Se Eve può ottenere che una CA firmi un certificato contenente (la chiave pubblica di Eve, DN = acme.com , CN="Kitten Killers, Inc."), allora CA dà legittimità al fatto che acme.com è "Kitten killers Inc .”. Poiché un CSR deve essere firmato, solo l'entità che può ottenere un certificato per acme.com in primo luogo può scegliere il nome comune a cui vuole essere associato.

    
risposta data 27.12.2015 - 12:23
fonte
6

Sono sicuro che se hai guardato abbastanza attentamente potresti trovare la spiegazione ufficiale:

The signature on the certification request prevents an entity from requesting a certificate with another party's public key. Such an attack would give the entity the minor ability to pretend to be the originator of any message signed by the other party. This attack is significant only if the entity does not know the message being signed and the signed part of the message does not identify the signer. The entity would still not be able to decrypt messages intended for the other party, of course.

RFC 2986: PKCS # 10: specifica sintassi della richiesta di certificazione - Versione 1.7

    
risposta data 27.12.2015 - 11:54
fonte
2

Oltre ad autenticare la richiesta, la firma garantisce anche che la CSR non venga manomessa. Ciò consente di garantire che i certificati con dati non validi non vengano creati e potenzialmente utilizzati, accidentalmente o intenzionalmente.

    
risposta data 27.12.2015 - 06:29
fonte

Leggi altre domande sui tag