Le firme digitali sono inviate con il messaggio che è contenuto in esse o è solo la firma digitale inviata?

0

Le firme digitali vengono inviate con il messaggio che è contenuto in esse o è solo la firma digitale inviata? Da quando la trasformazione di verifica pubblica viene applicata dal destinatario alla firma digitale, si riceve sia il messaggio sia un valore booleano che indica se l'origine dell'autenticazione, la non ripudio e l'integrità sono tutti intatti. Sembra ridondante che il messaggio venga inviato con la firma digitale (poiché come accennato dopo aver applicato la trasformazione si ottiene comunque il messaggio). Tuttavia, non sembra neanche pratico non inviarlo, quindi non ne sono sicuro.

    
posta Mark 16.05.2017 - 21:32
fonte

2 risposte

1

Se firmando vuoi significare la crittografia del messaggio con qualche chiave privata di firma, sarebbe ridondante inviare il testo in chiaro del messaggio insieme al testo cifrato risultante. In questo caso, la parte ricevente decifrerebbe semplicemente il messaggio utilizzando la chiave pubblica della parte mittente per verificare l'autenticità. Tuttavia, di solito è l'hash del messaggio firmato. Quindi invierai il messaggio insieme al messaggio hash firmato.

    
risposta data 16.05.2017 - 21:49
fonte
2

Tutti i sistemi che ho usato fanno il seguente

  • Calcola un hash del messaggio utilizzando un algoritmo di hashing.
  • Crea una firma digitale del valore hash utilizzando la crittografia a chiave pubblica.
    • essenzialmente questo è il valore crittografato dell'hash
  • Aggiungi la firma al messaggio (o viceversa) in un contenitore.

Ciò fornisce la prova dell'identità del mittente e dell'integrità del messaggio senza fornire riservatezza.

Il destinatario quindi

  • usa la chiave pubblica del mittente per decrittografare la firma e ottenere il valore hash,
  • calcola in modo indipendente il valore hash dal testo del messaggio
  • confronta i due valori di hash per verificare la paternità e l'integrità dei messaggi

Un esempio di questo è XML-DSIG

Un messaggio XML firmato potrebbe avere questo tipo di struttura.

<Envelope>
  <Header>
    <Signature>
       ...
    </Signature>
  </Header>
  <Body>
    <From>Sue</From>
    <Text>Meet at Foo HQ at 12:30!</Text>
  </Body>
</Envelope>

Il contenuto del messaggio non è riproducibile dalla firma. Le due cose sono separate.

Idee simili si applicano ad altri usi delle firme digitali.

Un motivo è che la crittografia a chiave pubblica è lenta, quindi la applichi alla più piccola quantità di dati necessaria per il tuo scopo.

Se hai bisogno di riservatezza, cripta il corpo del messaggio usando una crittografia simmetrica più veloce (a chiave condivisa). Il mittente può quindi includere la chiave simmetrica con l'hash del corpo e altra materia crittografata utilizzando la crittografia a chiave pubblica. L'hash è crittografato con la chiave privata del mittente, ma la chiave condivisa sarebbe crittografata utilizzando la chiave pubblica del destinatario. La chiave condivisa e l'hash del messaggio in genere saranno molto più brevi del contenuto medio del corpo del messaggio, pertanto questo approccio è più rapido e fa un uso migliore delle risorse di elaborazione.

    
risposta data 16.05.2017 - 21:57
fonte