Protocollo a una via con crittografia senza tcp

2

Sto cercando di riflettere su come potrei:

1) create a protocol (although against this option)
2) use an existing protocol

Questo è il seguente:

1) allows 1 way communication from 1 node to another.
2) Provides (high grade) encryption over this 1 way connection 

Requisiti:

  • non può usare TCP
  • usa chiavi simili a ssh fa con pubblico / privato

Sto pensando ad una soluzione matura di udp, ma non sono sicuro.

Qualcuno può illuminarmi su come ciò sia possibile?

Grazie

    
posta Jshee 31.05.2018 - 15:08
fonte

2 risposte

3

use keys similar to ssh does with public/private

Ciò significa l'autenticazione del mittente e del destinatario consentendo a ciascuno di questi di dimostrare di avere accesso alla chiave privata corrispondente alla chiave pubblica accettata. Ciò viene fatto essenzialmente facendo in modo che la parte crei una sfida e l'altra parte firmi questa sfida con la chiave privata. Ciò richiede ovviamente una comunicazione bidirezionale contro il tuo requisito di comunicazione a senso unico.

Ma, se salti "simile a ssh", puoi usare altri metodi stabiliti per la comunicazione unidirezionale. Un tipico esempio di tali metodi è la crittografia end-to-end nella posta, anch'essa a senso unico. I protocolli consolidati in quest'area sono PGP e S / MIME che fondamentalmente funzionano in questo modo:

  • Il mittente firma il messaggio con la propria chiave privata, in cui la chiave pubblica è nota al destinatario.
  • Il mittente crittografa il messaggio (firmato) con la chiave pubblica dei destinatari. La crittografia dovrebbe ovviamente coinvolgere anche la protezione dell'integrità (utilizzando un HMAC aggiuntivo o una crittografia autenticata). Come al solito, la chiave pubblica non viene utilizzata per crittografare l'intero messaggio, ma viene invece eseguita con una chiave simmetrica generata in modo casuale che viene quindi protetta (cioè crittografata) con la chiave pubblica.

Una volta che il messaggio è stato firmato e crittografato senza il coinvolgimento del destinatario, il messaggio può essere inviato su qualsiasi canale unidirezionale desiderato, ovvero UDP, diodo dati , vettore aviano o altro. Non c'è comunicazione indietro dal destinatario, ma ovviamente il mittente non saprà mai se il destinatario ha effettivamente ricevuto il messaggio.

Si noti che questo schema non fornisce alcuna segretezza di inoltro, cioè se la chiave privata dei destinatari è compromessa, tutti i messaggi crittografati per questa chiave (corrente, precedente e futura) possono essere decifrati. Non penso che sia possibile fornire il segreto in avanti con un puro schema unidirezionale, ma si potrebbe verificare con gli esperti di crittografia alla cripto. stackexchange.com .

    
risposta data 31.05.2018 - 15:57
fonte
-1

Perché non usare DTLS ( link )? Penso che risolvi i tuoi requisiti dal mio punto di vista

    
risposta data 31.05.2018 - 15:51
fonte

Leggi altre domande sui tag