Come superare il lento processo di creazione e verifica della firma digitale?

1

Da quello che ho capito è che la firma digitale è un processo lungo e ha i seguenti passaggi:

  1. Hashing del messaggio Plain Text utilizzando un algoritmo di hashing noto (pubblico).
  2. Crittografia con chiave privata del mittente (A-PvtKey).
  3. Aggiungendo l'hash crittografato al messaggio Testo normale e invia / archivia /...
  4. I ricevitori possono essere uno / molti / nessuno. Non vengono utilizzate le chiavi dei ricevitori.
  5. Chi desidera verificare il documento segue semplicemente la procedura inversa. cioè.,
  6. Separa l'hash crittografato dal messaggio
  7. Decifra con la chiave pubblica del mittente (A-PubKey) (di solito da un certificato di firma digitale emesso da una CA attendibile / legalmente accettabile).
  8. Genera in modo indipendente l'hash dal testo in chiaro del messaggio e confrontalo con l'hash decodificato del precedente # 7.

Fonte: Come funziona la procedura di firma digitale?

Il processo di generazione e verifica della firma digitale richiede molto tempo. Quindi, per lo scambio frequente di messaggi, la velocità di comunicazione si ridurrà.

E notato che ci sono fornitori di firme digitali commerciali: link

In che modo superano il lento processo di verifica della firma digitale? Oppure usano un meccanismo diverso?

    
posta Sayan 13.10.2018 - 04:12
fonte

2 risposte

2

The process of generation and verification of digital signature requires considerable amount of time.

Dubito di questa affermazione:

  • Gli hash crittografici attualmente utilizzati sono progettati per essere veloci.
  • I dati possono essere inseriti nell'hash in pezzi: non è necessario conservare tutti i dati da firmare in memoria, ma è possibile inserire i dati nell'hash pezzo per pezzo, ad esempio mentre si fa un altro tipo di elaborazione con i dati che di solito sono più costosi dell'hashing (come lo streaming su una rete, la copia, la trasformazione per il trasporto ...).
  • L'hashing non ha bisogno di molta memoria, cioè ha bisogno solo di una quantità costante di memoria, non importa quanti dati includi l'hash.
  • La firma finale comporta solo operazioni di crittografia (più costose) sull'hash di piccole dimensioni, indipendentemente dalla quantità di dati da firmare e quindi anche veloce.

So, for frequent exchange of messages the speed of communication will reduce.

L'unico tipo di passaggio costoso è la creazione della firma finale utilizzando la chiave privata, l'hashing stesso è economico. Ancora un sacco di firme possono essere create in breve tempo con hardware comune e se ciò è necessario l'altra elaborazione durante la comunicazione (ad esempio il trasporto su rete) è probabilmente più significativa per le prestazioni rispetto al processo di firma. Ad esempio, ogni handshake TLS completo (ad esempio HTTPS) sta creando e convalidando le firme digitali e ancora le prestazioni della connessione sono legate principalmente alla latenza della rete e allo scambio di chiavi, ma non creando o convalidando le firme digitali.

Può essere costoso se devono essere firmati molti piccoli dati - in questo caso l'aggregazione dei dati e la firma possono essere fatti in base al caso d'uso.

E può essere lento se si utilizza un hardware lento, come ad esempio le smart card che proteggono la chiave privata. In questo caso l'hashing viene solitamente eseguito al di fuori di questo hardware e l'hardware lento viene utilizzato solo per la firma finale del piccolo hash. Quando si utilizza una smartcard per firmare un rendimento elevato, in genere non è richiesto. L'utente deve prima inserire la smartcard nel lettore di smartcard e magari sbloccarla con un PIN, quindi la lentezza aggiuntiva della smartcard non è rilevante rispetto alla lentezza dell'intero processo.

And noticed there are commercial digital signature providers ... How they overcome the slow process of verifying digital signature?

Il sito di riferimento non ha alcuna firma digitale. Offrono certificati che possono essere utilizzati per la firma digitale - niente di speciale e non diverso da quello che offrono gli altri. La firma viene ancora eseguita dall'utente stesso utilizzando la chiave privata (segreta) di proprietà dell'utente.

    
risposta data 13.10.2018 - 07:07
fonte
-1

La crittografia tipicamente asimmetrica (pubblico-privata) viene utilizzata per scambiare in modo sicuro una chiave simmetrica nel caso in cui grandi quantità di dati vengano trasferite a causa della velocità relativa del codice simmetrico.

    
risposta data 13.10.2018 - 05:45
fonte

Leggi altre domande sui tag