PDA

View Full Version : Certificato ssl non pubblico


gionnico
11-11-2007, 22:27
Ho un server apache, ed ho impostato delle chiavi ssl per l'https.

Solo che non sono sicuro di come viene codificata la risposta del server: io ho una chiave di criptatura, invio dati cifrati che solo il server sà decifrare.

Il server poi come fa a rispondermi? Io ho per caso delle chiavi per decriptare i suoi messaggi?
In questo caso, non sarebbe più sicuro che non le spedisse a chiunque?
Altrimenti la mia comunicazione sarebbe segreta, ma la risposta sarebbe come non criptata a chiunque abbia la chiave (che il server spedisce gratuitamente?)


Qualcuno mi può chiarire quest'ultima parte, ed eventualmente spiegarmi come impedire che apache invii un'informazione così preziosa?




PS: I dubbi mi sono nati dal fatto che alcuni siti di banche richiedono che tu prenda personalmente la chiave e la installi sul browser con "importa", cosa che non accade quasi mai con altri siti anche di pagamenti online ... dove stà l'inghippo?

Odyssey
11-11-2007, 23:51
http://wp.netscape.com/eng/ssl3/

w-shark
12-11-2007, 18:54
spiegazione semplice: ssl usa una chiave simmetrica per cifrare una sessione, tale chiave viene scambiata tramite cifratura con chiavi pubbliche, generate al momento.

Il certificato che ti da la tua banca è una sicurezza in più attesta la tua identità, esso contiene le TUE chiavi asimmetriche generate dalla tua banca per te, così se qualcuno viene in possesso delle tue credenziali di accesso: userId e psw non può far nulla se non ha il TUO certificato.
Per il problema che alcuni lo chiedo e altri no... in teoria dovremmo tutti dovremmo avere un certificato digitale, rilasciato da un CA attendibile, per fare operazioni online, il problema è che i siti di commercio elettronico non possono obbligare gli utenti a disporre di un certificato, perché l'utente dovrebbe sborsare dei soldi ogni anno... quindi nessuno acquisterebbe online, per questo SSL non richiede OBBLIGATORI il certificato lato client. Lo richiedeva SET... infatti non ha avuto successo.

gionnico
13-11-2007, 13:10
spiegazione semplice: ssl usa una chiave simmetrica per cifrare una sessione, tale chiave viene scambiata tramite cifratura con chiavi pubbliche, generate al momento.

Il certificato che ti da la tua banca è una sicurezza in più attesta la tua identità, esso contiene le TUE chiavi asimmetriche generate dalla tua banca per te, così se qualcuno viene in possesso delle tue credenziali di accesso: userId e psw non può far nulla se non ha il TUO certificato.
Per il problema che alcuni lo chiedo e altri no... in teoria dovremmo tutti dovremmo avere un certificato digitale, rilasciato da un CA attendibile, per fare operazioni online, il problema è che i siti di commercio elettronico non possono obbligare gli utenti a disporre di un certificato, perché l'utente dovrebbe sborsare dei soldi ogni anno... quindi nessuno acquisterebbe online, per questo SSL non richiede OBBLIGATORI il certificato lato client. Lo richiedeva SET...
infatti non ha avuto successo.
Grazie del chiarimento.

A questo punto nn sò:

1) la chiave simmetrica è sempre la solita?
2) come faccio a dire al server di usare solo una chiave asimmetrica, e di non inviarne a nessuno?

w-shark
13-11-2007, 18:11
Grazie del chiarimento.

A questo punto nn sò:

1) la chiave simmetrica è sempre la solita?

No.


2) come faccio a dire al server di usare solo una chiave asimmetrica, e di non inviarne a nessuno?

Non puoi. Ti consiglio di studiare come funzionano le chiavi asimmetriche (e anche SSL) perché vedo che non lo sai.

gionnico
13-11-2007, 20:52
No.
Non puoi. Ti consiglio di studiare come funzionano le chiavi asimmetriche (e anche SSL) perché vedo che non lo sai.
Mi sono spiegato male nel discorso sopra. Comunque volevo dire:

Come faccio a dire al server di usare chiavi asimmetriche (oltre alla simmetrica generata dinamicamente) - e questo già lo fa - e di darmene a me una (privata immagino)?

Cosa posso cercare come tutorial per generare questo tipo di chiave?

E poi dovrei dire al server di non accettare nessuno che tenti di usare l'SSL senza usare una chiave valida.




Comunque la crittografia simmetrica/asimmetrica l'ho studiata, semmai l'SSL ora me lo leggo meglio sulla wiki (senza fare i folli a leggere l'RFC!!).

gionnico
13-11-2007, 23:16
Ecco qua, ora ho capito meglio come funziona, ed ho trovato quest'ottimo tutorial (http://www.vanemery.com/Linux/Apache/apache-SSL.html). :D

Grazie comunque dell'aiuto! :)