RSA: le chiavi private devono essere private?

0

Stavo pensando di usare RSA, ma al contrario. Dove tutti hanno la chiave privata e solo il server ha la chiave pubblica, in modo che tutti i client possano decrittografare un messaggio dal server e l'unico server può crittografare i messaggi. Quando ho cercato su Google, tutto parlava del fatto che la chiave privata deve rimanere privata, quindi mi chiedevo: avere una chiave privata invece di una chiave pubblica compromette la crittografia?

Contesto: i client ottengono grosse informazioni sui server dai peer (un po 'come un bit torrent) e volevo essere sicuro che le informazioni provenissero dal server e non fossero confuse da un utente malintenzionato. Inoltre: presupporre che non sia possibile ottenere un hash dei dati dal server.

    
posta Grant Davis 09.11.2015 - 16:50
fonte

2 risposte

6

RSA: Do private keys have to be private? [...] Does having a private key instead of a public key compromise the encryption?

Sì. Per la ragione Mike (I upvoted.) Ha dato: La chiave privata e la chiave pubblica non sono uguali e il pubkey può essere derivato dal privkey. (E AFAIK questa disuguaglianza è principalmente motivi di prestazioni e può anche essere solo in questo modo e non viceversa. )

so that all the clients can decrypt a message from the server, and the only the server can encrypt messages.

Quello che stai descrivendo equivale a uno schema di firma. Tutti possono essere destinatari di messaggi, ma solo pochi partecipanti possono comporre messaggi validi. Questo è funzionalmente lo stesso di inviare il messaggio in chiaro ma allegare una firma ad esso. E le firme che puoi fare con la chiave privata e verificare con il pubkey.

Nota: anche se sono correlati e a volte vengono spiegati come tali: la firma NON è la stessa cosa della crittografia con la chiave privata. E la verifica non equivale a decrittografare con la chiave pubblica.

    
risposta data 09.11.2015 - 17:06
fonte
4

Con RSA, la chiave pubblica può essere facilmente ricavata dalla chiave privata. Quindi non c'è modo di rilasciare la chiave privata e mantenere la chiave pubblica segreta, dato che chiunque abbia la chiave privata può quindi calcolare la chiave pubblica. Vedi questo Domande e risposte Stackoverflow .

    
risposta data 09.11.2015 - 16:54
fonte

Leggi altre domande sui tag