Alternative TLS che non richiedono un'autorità centrale?

0

Sto creando un programma peer to peer eseguito su computer client che si connettono ad altri client. Userò Boost.Asio. Le uniche opzioni di cui sono a conoscenza per proteggere queste connessioni sono l'utilizzo di TLS, ma non è pratico che ogni client abbia il proprio certificato e che i certificati autofirmati siano apparentemente non sicuri. Quali altre tecnologie crittografiche sono disponibili che non richiedono la registrazione con un'autorità centrale? Soprattutto quelli che sarebbero facili da integrare con queste tecnologie, cioè ci sono implementazioni programmatiche disponibili.

Inoltre, non ero sicuro se pubblicarlo qui o su crypto.stackexchange.com, ma Crypto sembrava più focalizzato sull'implementazione e sulla progettazione della crittografia che sull'utilizzo di esso. Se ho postato quella sbagliata per favore dimmelo e passerò felicemente questa domanda. Grazie.

    
posta mm865 28.01.2015 - 07:27
fonte

1 risposta

2

... TLS, but it is not practical for every client to have their own certificate and self signed certificates are apparently insecure.

sbagliato.

  • I certificati vengono utilizzati all'interno di TLS per identificare il peer. Questa identificazione è necessaria per proteggere dagli attacchi man-in-the-middle.
  • Per utilizzare i certificati per l'identificazione devi essere in grado di verificare il certificato.
  • L'unica opzione per verificare un certificato autofirmato è di controllarlo rispetto al certificato originale o alla sua impronta digitale, che quindi deve essere propagato in modo sicuro a tutti i client prima che la connessione TLS possa essere stabilita. Questo è possibile ma non scala se hai molti client e server.
  • Se si utilizza invece un'autorità centrale che emette e firma il ridimensionamento dei certificati è molto più semplice, poiché è sufficiente verificare che il certificato appartenga alla parte (come controllare se il nome host è contenuto nel certificato) e cioè è firmato da un'autorità di cui ti fidi.
  • E per rendere ancora più semplice i browser e il sistema operativo vengono forniti con un insieme predefinito di autorità attendibili (la CA principale).

Se si è solo protetta la connessione sui client (come con un'app mobile) è possibile utilizzare un certificato autofirmato e distribuirlo ai client (al di fuori della connessione TLS). Quindi non è necessario acquistare un certificato da qualcuno.

Per ulteriori informazioni, consulta la guida OWASP al certificato e al blocco di chiave pubblica .

A parte questo, un buon forum per chiedere questo tipo di domande è Information Security StackExchange .

    
risposta data 28.01.2015 - 08:07
fonte

Leggi altre domande sui tag