Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    12

    [VB.NET] Criptare Password

    Ciao, sto cercando di criptare la password di accesso utilizzando System.Web.Security.
    Nel Database la password viene inserita, ma quando provo il login non funziona. Se nel database la Password viene inserita in chiaro riesco invece ad accedere.
    Ho utilizzato questo codice:
    System.Web.Security.FormsAuthentication.HashPasswo rdForStoringInConfigFile("MyPassword", "MD5") ma non funziona
    e poi ho provato anche:
    System.Web.Security.FormsAuthentication.HashPasswo rdForStoringInConfigFile("MyPassword", "SH1")
    ma non funziona neanche così.
    Qualcuno può aiutarmi?

  2. #2
    La funzione:
    codice:
    System.Security.Cryptography.MD5.Create().ComputeHash(Input, 0, Input.Length)
    Restituisce un array di bytes che costituisce l'hash di input, dove Input è a sua volta un arra di bytes. Puoi ricavaere Input ad esempio con System.Text.UTF8Encoding.UTF8.GetBytes(Stringa).

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    12
    Ho provato anche in questa maniera, ma non c'è nulla da fare: la password me la cripta, ma appena la provo non funziona. Ho provato ad inserirne una già criptata e così va, quindi ne deduco che l'errore è proprio nell'hash della password.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    12

    codice utilizzato

    Ecco il codice che ho utilizzato...così è più chiaro:
    Ho usato la funzione:

    Private Function EncodePassword(ByVal pass As String, ByVal passwordFormat As Integer, ByVal salt As String) As String



    Dim bIn As Byte() = Encoding.Default.GetBytes(pass)
    Dim bSalt As Byte() = Convert.FromBase64String(salt)
    Dim bAll As Byte()

    Array.Resize(bAll, bSalt.Length + bIn.Length)
    Buffer.BlockCopy(bSalt, 0, bAll, 0, bSalt.Length)
    Buffer.BlockCopy(bIn, 0, bAll, bSalt.Length, bIn.Length)

    Dim shaM As New SHA1Managed()
    Dim resultHash As Byte() = System.Security.Cryptography.SHA1.Create().Compute Hash(bAll)

    Dim resultHexString = ""


    resultHexString = Convert.ToBase64String(resultHash)

    Return resultHexString

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.