Newsgroup: it.comp.software.database
Titolo: database e sicurezza

salve,
dovrei sviluppare un'applicazione web che usi un DB Access in cui siano
presenti i nominativi di utenti iscritti ad un determinato servizio. nel DB
dovranno esservi anche le password che tali utenti avranno scelto. come
posso fare in modo che il proprietario del sito, che ha ovviamente accesso
al DB, non "veda" le password (per motivi di sicurezza) ?
grazie
Mario

 al DB, non "veda" le password (per motivi di sicurezza) ?
Hashale. Cerca HASH su un google qualsiasi :)
Scarta tutta la parte legata agli array e cose simili e vai dritto alle
funzioni di hashing, ne trovi a caterve...
http://www.di-mgt.com.au/src/basCRC32.txt
Mi pare un gran buon inizio (OK, e' un CRC e non un hash, ma direi che e'
ottimo lo stesso :))
Il principio e': nel DB non memorizzi la password ma solo il suo hash (o il
CRC); quando l'utente reinserisce la password, ricalcoli l'hash e lo
confronti con quello memorizzato: se corrispondono la password e' giusta.
Ciaotutti,
*

 confronti con quello memorizzato: se corrispondono la password e' giusta.
ma la funzione per calcolare l'HASH č utilizzabile pure dall'amministratore
del sito, perň ?
cioe, se finisce tutto in una pagina ASP, quindi in pratica in un file di
testo... allora č inutile... chiunque puo "hashare" e "de-hashare" la
password. o mi sbaglio?
grazie
Mario

 ha scritto nel messaggio
news:a4issm$in8b$1...@ID-70152.news.dfncis.de...


 "de-hashare" la password. o mi sbaglio?
Hashare si', de-hashare no, o meglio, si puo' fare ma ci vuole
moooolto tempo e moooolta pazienza.
Davide
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:a4issm$in8b$1...@ID-70152.news.dfncis.de...

Semplice.. non utilizzare Access.. ;-)
Ciao
 valter


wrote:

Scusate la domanda:
Ma se il proprietario del sito puo' entrarci scaricando il DB, puo'
farlo anche per le pagine web che contengono il codice che "decripta"
qualunque esso sia.
Come funziona allora la cosa?
Ciao a tutti!

 Ciao a tutti!
Semplice, non esiste nessun codice che "decripta" :)
Memorizzi le password in forma criptata ONE-WAY, cioe' senza che esista
alcuna funzione per decriptarle.
Quando vuoi verificare la password inserita con quella nel DB, non decripti
la pass nel DB, cripti la pass inserita :)
Ciaotutti,
*



Scusa se approfitto della tua gentilezza,
ma dove avviene il confronto?
Cioe', io ho PSW (una variabile che contiene la password in chiaro)
e un RS("Password") con la password criptata: come la confronto?
Ciao, grazie!

 >
Non mi sembra cosi' difficile da tradurre in codice VB...
Anziche'
If Decripta(rs("Password")) = sPassword Then
[...]
fai
If rs("Password") = Cripta(sPassword) Then
[...]
No?
Ciaotutti,
*


Appunto, ma posso tranquillamente andare a vedere la funzione Cripta
cosa fa ed usarla per rivelare il contenuto del DB.
Quello che dicevo e' che se il proprietario del sito puo' andare a
fare un FTP per prendersi il DB puo' anche fare il download della
funzione Cripta. Giusto?
Lo so, so de coccio!
Grazie per la pazienza!

 cosa fa ed usarla per rivelare il contenuto del DB.
Ovviamente... No :)
La funzione Cripta e' ONE-WAY:
y=f(x)
x<>f(y)
Chiaro? :)
Ciaotutti,
*