SSH utilizzando chiavi di sessione preesistenti (simmetriche)

1

Esiste attualmente un modo per aprire una connessione SSH utilizzando le chiavi di sessione simmetriche preesistenti?

In altre parole, se creo un elenco di chiavi simmetriche posso inviare quella lista al destinatario su un CD o una chiave USB (o altro) e possiamo quindi connetterci senza l'uso di un algoritmo di scambio di chiavi che genera e trasmette la chiave di sessione sul filo.

La mia volta su RFC4253 è una sezione di scambio di chiavi che indica che alcuni tipi di scambio di chiavi sono obbligatori, in genere ma non necessariamente uno di Diffie-Hellman (RFC4419), RSA (RFC 4432) o GSSAPI (RFC4462). Mi stavo chiedendo se qualcuno avesse mai implementato chiavi di sessione esterne preesistenti.

L'algoritmo per tale scambio di chiavi è degenerato, rientrando in almeno una delle due possibili categorie: monouso o temporale.

Per un utilizzo singolo, lo scambio di chiavi sarebbe il cliente che dice use key N dove N è la chiave successiva che il cliente ritiene non utilizzata. Se la quinta chiave era già stata utilizzata dal server, lo scambio fallisce. Il cliente può quindi provare N+1 . Se la connessione ha esito positivo, il server incrementa un indice della chiave valida successiva.

Un'alternativa vicina è l'uso di chiavi basate su data / ora, in cui la chiave scelta è basata sulla data e l'ora. In questo modo le chiavi avrebbero una durata temporale prevedibile. Ad esempio, è possibile condividere le chiavi per i prossimi 5 anni con una granularità di 15 minuti - per chiavi AES a 256 bit (32 byte) questo è solo ~ 3,5 MB (3,506,400 byte).

In ogni caso, penserei che ci siano persone che lo hanno fatto, ma le mie ricerche non hanno portato fortuna. Il chiaro svantaggio è che le chiavi dovranno essere scambiate di volta in volta in un altro modo, ma le chiavi simmetriche non devono mai essere trasferite sulla stessa connessione (o anche media) della comunicazione crittografata.

Sembra che non ci sia alcuna opzione integrata per questo. Con OpenSSH_6.6p1, OpenSSL 1.0.1g 7 Apr 2014 su OS X / Mavericks, gli algoritmi kex sono:

$ ssh -Q kex
diffie-hellman-group1-sha1
diffie-hellman-group14-sha1
diffie-hellman-group-exchange-sha1
diffie-hellman-group-exchange-sha256
ecdh-sha2-nistp256
ecdh-sha2-nistp384
ecdh-sha2-nistp521
diffie-hellman-group1-sha1
[email protected]

SSH è intrinsecamente in grado, o qualcuno lo ha esteso, di implementare uno scambio di chiavi (o nessun scambio di chiavi) degli ordinamenti sopra descritti?

    
posta Brian M. Hunt 07.05.2014 - 21:03
fonte

0 risposte

Leggi altre domande sui tag