2009-02-02 20 views
23

che sto sviluppando un software che verrà distribuito tramite ClickOnce (sul sito foo.com), e che sarà poi la connessione al server utilizzando WCF con un trasporto criptatoDi quale certificato SSL ho bisogno?

quindi ho bisogno di un certificato SSL che sarà:

  • identificare il mio sito foo.com ha davvero essere il mio sito web
  • Identificare l'exe schiero tramite ClickOnce come vero e proprio
  • identificare il mio server applicativo ha davvero essere il mio server applicativo.

Voglio anche il mio certificato SSL per essere firmato da un'autorità noto al grande pubblico (IE, Firefox o finestre non chiederà all'utente di installare il certificato dell'autorità di prima!)

certificato Cosa SSL sarebbe tu compri?

Ho dato un'occhiata al sito Verisign, i costi di certificazione "Secure Site EV" 1150 € l'anno (la versione "Pro" sembra utile solo per la compatibilità con i vecchi browser)

risposta

34

Sembra che tu stia cercando due diversi tipi di certificati:

1 - Certificato SSL - per l'autenticazione del server di sito/applicazione.

2 - Certificato di firma del codice - per integrità/autenticazione dell'exe consegnato.

In genere si tratta di due certificati diversi, con due diversi profili di certificato. Per lo meno, è necessario un certificato con due diversi utilizzi chiave o usi chiave estesi.

Qualche considerazione in nessun ordine specifico:

  • Controllare i browser mirati, devono avere rispettivamente una serie di certificati root preconfigurati - queste sono le fonti certificato pubblico più ampiamente riconosciuto. Probabilmente controllerei sia Firefox che IE. I fornitori di certificati noti a me come grandi nomi sono: Versign, GeoTrust, RSA, Thawte, Entrust. Ma c'è anche GoDaddy e molti altri. Tutto ciò che viene fornito nel browser consegnato come certificato di radice affidabile, ti consentirà di connetterti ai tuoi utenti senza ulteriori greif.

  • Suggerisco di utilizzare Google sia per "certificato di firma del codice" che per "certificato SSL".

  • Come si configura il sito determinerà se il sito Web è convalidato o il server di autenticazione è convalidato. Se il certificato è archiviato sul server delle app, l'utente riceverà la crittografia SSL fino al server. Ma molti siti mettono il certificato SSL un po 'più in avanti - come su un firewall, e quindi mettono in scena una raccolta di server di applicazioni dietro di esso. Non vedo un difetto di sicurezza in questo, a patto che il networking sia configurato con cura. Per gli utenti esterni, entrambe le configurazioni avranno lo stesso aspetto: avranno il blocco sui loro browser e un certificato che comunica loro che www.foo.com offre le proprie credenziali.

sto vedendo abbastanza offerte speciali per i certificati SSL: - GoDaddy - $ 12.99 - Register.com - $ 14,99

Ma non sono necessariamente codice certifiates firma. Ad esempio, mentre Cert SSL di GoDaddy è $ 12,99, il loro code signing certs è $ 199,99! Questo fa parte di molti modelli di business dei fornitori di certificati: ti attira con codici SSL economici e ti fa pagare per la firma del codice. Un caso potrebbe essere che i certificati di firma del codice sono relativamente più elevati. Ma anche ... devono sovvenzionare i certifcati economici SSL in qualche modo.

In teoria, dovrebbe essere possibile creare un certificato che includa sia la firma del codice che SSL, ma non sono sicuro che lo desideri. Se qualcosa dovesse accadere, sarebbe bello poter isolare le due funzioni. Inoltre, sono abbastanza sicuro che dovresti chiamare i fornitori di certificati e chiedere se lo hanno fatto, e se non lo fanno, facendoli fare probabilmente aumenterà il prezzo abbastanza alto.

Per quanto riguarda il fornitore, le cose da considerare:

  • La tecnologia è praticamente lo stesso. Oggigiorno, mirando a un minimo di 128 bit di chiavi, probabilmente lo farei fino a 256, ma sono paranoico.
  • Oltre al browser accettabile, l'unica ragione per pagare di più sarebbe il riconoscimento del nome. Tra i paranoici vincitori della sicurezza, mi aspetto che RSA, Thawte, Verisign e GeoTrust abbiano un'ottima reputazione. Probabilmente anche EnTrust. Questo probabilmente conta solo se hai a che fare con un prodotto mirato alla sicurezza. Penso che il tuo utente medio non sarà così consapevole.
  • Dal punto di vista dell'aspetto di sicurezza, sei sicuro solo quanto la sicurezza della tua CA principale (autorità di certificazione). Per i veri paranoici, la cosa da fare sarebbe scavare nel materiale di base su come la società ospita le sue CA di origine e di emissione, come vengono fisicamente protette? sicurezza della rete? controllo di accesso del personale? Inoltre - hanno CRL pubblici (Liste di revoca dei certificati), come viene revocato un certificato? Offrono OCSP (Online Certificate Status Protocol)? Come controllano i richiedenti di certificati per essere sicuri di dare il certificato giusto alla persona giusta? ... Tutta questa roba conta davvero se offri qualcosa che deve essere altamente sicuro. Cose come cartelle cliniche, applicazioni di gestione finanziaria, informazioni fiscali, ecc. Dovrebbero essere altamente protette. La maggior parte delle app web non sono così ad alto rischio e probabilmente non richiedono questo grado di controllo.

Su quell'ultimo proiettile - se si scava nei Verisign del mondo - i cer costosissimi - è probabile che si veda il valore. Hanno una grande infrastruttura e prendono molto sul serio la sicurezza delle loro CA. Non sono così sicuro dei servizi di hosting super economici. Detto questo, se il rischio è basso, US $ 300 per un certificato SSL non ha molto senso rispetto a US $ 12,99 !!

+0

La "barra verde" è ciò che conta davvero. Quelle offerte economiche offrono una barra verde? – Pacerier

+0

La barra verde non è una relazione 1: 1 con il fornitore di servizi. Può dipendere dalla configurazione del browser, dalla configurazione della rete, dall'accuratezza dei documenti delle applicazioni del certificato e dalla diligenza con cui gestisci la PKI. – bethlakshmi

+1

I browser visualizzano la 'barra verde' quando rilevano che un sito sta utilizzando un certificato SSL Extended Validation - elenco di browser con schermate di come mostrano la convalida Standard vs Extended qui: https://www.expeditedssl.com/pages/visual -Sicurezza-navigatore-SSL-icone-e-design.html –

9

Così, per i server di applicazioni/siti Web hai bisogno di un certificato SSL. È necessario non necessario un certificato EV. Ho usato quelli di QuickSSL per questo, perché a differenza di altri fornitori di certificati economici che non richiedono l'installazione di un certificato intermedio sul server - questo non è nessuno per me.

Per la firma di applicazioni con un diverso tipo di certificato (tipo, è ancora un certificato X509, ma quello che si utilizza per il proprio sito Web non è quello che è possibile utilizzare per firmare un'applicazione). È necessario un certificato di firma dell'autenticode tra quelli disponibili su Verisign o Globalsign. Queste sono una grandezza più costosa di un semplice vecchio certificato SSL e richiedono che tu sia una società incorporata e produca quei documenti.

+0

il codice verrà scaricato (almeno la prima volta) utilizzando un browser, quindi ho bisogno dell'EV in modo che l'utente sappia che sta davvero scaricando un file da un sito Web affidabile, no? – Brann

+0

No, non lo fai. Se tutto ciò che si desidera è che l'installatore mostri da chi proviene e che non sia stato manomesso, è necessario un certificato di firma del codice. Non hai nemmeno bisogno di un certificato su foo.com per questo - la firma del codice mostrerà i dettagli della tua azienda. – blowdart

Problemi correlati