Cripto Fai da te!

lunedì 20 febbraio 2006 - 11.52

Pongo Profilo | Senior Member

Ciao a Tutti! Intanto complimenti per il nuovo sito!

Adesso vi racconto cosa vorrei fare, tenetevi forte: ho il problema che le password e le login del mio app web sono in una tabella SQLSERVER2000. E sono in chiaro dentro il db.

La cosa che vorrei fare io è questa: inizialmente io (admin) inserisco dentro il DB le passwor dgià criptate. Poi un utente che vuole loggarsi inserisce la sua pwd, il web app la cripta e se corrisponde da successo.

Tipo se io ho la password "pippo", la cripto ed esce "aaaxxxx". Se uno riesce ad accedere al db vedra "aaaxxx" ma non se ne farà nulla poichè solo inserendo "pippo" riuscira ad avere lo stesso CT.

Secondo voi va bene o è una cagata assurda?

Vorrei farlo essenzialmente per preservare la visione delle password in chiaro da parte anche dell'admin. Non mi interessa la sicurezza "esterna" perchè tanto il server è protetto da qualksiasi accesso esterno non autoroizzato e quindi non mi preoccupo dei vari attacchi che possono essere portati.

Brainkiller Profilo | Guru

>Ciao a Tutti! Intanto complimenti per il nuovo sito!

Grazie

>Tipo se io ho la password "pippo", la cripto ed esce "aaaxxxx".
>Se uno riesce ad accedere al db vedra "aaaxxx" ma non se ne farà
>nulla poichè solo inserendo "pippo" riuscira ad avere lo stesso
>CT.
>Secondo voi va bene o è una cagata assurda?

La tua soluzione è perfetta. Generalmente chi vuole la massima sicurezza, inserisce le password sottoforma di Hash (un po' come fa Windows). Di fatto ritornare alla password originale è molto difficile se non con un brute force. In questo modo, quando uno si autentica si prende la password si crea l'hash, lo si confrotna con l'hash nel DB se sono uguali allora passi altrimenti no.

Tu fai una soluzione diversa usando una crittografia a doppia chiave. Quindi la chiave di lettura la puoi tenere tu per risalire la password in chiaro, l'autenticazione, è sufficiente che operi come l'hash, crittografi la password e verifichi se corrisponde a quella crittografata nel DB.

Ciao


David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

Pongo Profilo | Senior Member

Bene!

Ora solo un altro dubbio: come faccio a criptarla?

Cioè ci sono delle funzioni semplici da utilizzare che mi criptano una stessa stringa sempre allo stesso modo?

Ho dato un'occhita veloce alle librerie concernenti la criptazione di .net ma si andava su cose abb. complicate tipo chiavi pubbliche chiavi private AES des etc etc.

Grazie

LeonDom Profilo | Senior Member

Segui il consiglio di Coach utilizza l'esempio del thread che ti ha indicato. A me ha risolto l'esistenza!!!

Grazie Ragazzi!!!

LeonDom
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5