Sto provando a scrivere un cookie in ASP.NET sotto https, ma vedo un cookie di testo normale nel computer client. Il cookie non dovrebbe essere crittografato per impostazione predefinita in una connessione https?Il contenuto dei cookie deve essere codificato quando si utilizza https?
risposta
Risposta breve no, i cookie non sono crittografati in ASP.NET in SSL. SSL è un protocollo a livello di trasporto, che crittografa solo le comunicazioni tra client e server. I cookie e i valori delle stringhe di query NON sono crittografati da SSL. Una volta che il cookie si trova sul computer client, viene lasciato nel formato in cui è stato lasciato il server.
Il tuo cookie verrà crittografato solo durante la trasmissione del cookie da/verso il tuo browser. Se si desidera che il cookie sia crittografato nell'archivio dei cookie del browser, sarà necessario prima crittografarlo sul server e quindi decrittografarlo sul server in uso negli script lato server.
SSL/TLS è solo un meccanismo di sicurezza del trasporto per crittografare le richieste/risposte sul filo, spetta al browser fornire un meccanismo per memorizzare i cookie in modo sicuro sul client (o come detto sopra, l'applicazione può farlo).
Dovrebbe essere crittografato sul cavo quindi decrittografato dal browser.
No, AFAIK solo il trasferimento è crittografato, il cookie sul lato client non lo è. Dovresti crittografarlo da solo per una maggiore sicurezza.
Questo potrebbe aiutare a crittografare il cookie. http://www.15seconds.com/Issue/021210.htm
L'esempio utilizza Triple DES, che può essere o meno l'algoritmo migliore a seconda della prospettiva.
Solo per riferimento futuro, ho finito per utilizzare questo http://69.10.233.10/KB/aspnet/DataEncryption.aspx. Usa le classi del framework e una chiave della macchina. – Dante