Trzymanie zhashowanego hasła w bazie

Odpowiedz Nowy wątek
2011-07-15 16:53
0

Witam was,

Chciałbym się zapytać czy taki sposób trzymania/dodawania hasła do bazy jest właściwy, i dlaczego powinienem go zmienić:
Pseudokod:

public void AddPasswordToBase(User user)
{
            string salt = System.IO.Path.GetRandomFileName();

            byte[] buff = System.Security.Cryptography.SHA256.Create().ComputeHash(System.Text.Encoding.UTF8.GetBytes(user.password + salt));

            StringBuilder hash = null;

            foreach (byte buf in buff)
            {
                hash.Append(buf.ToString("x2"));
            }

            SendToBase(user.id,hash.ToString(),salt);

} 
edytowany 3x, ostatnio: siararadek, 2011-07-15 16:56
To jest pseudokod? o_O - Sarrus 2011-07-18 11:16

Pozostało 580 znaków

2011-07-16 23:15
0

właściwy pod jakim względem?


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

2011-07-17 01:12
Jan
0

Zły jest prawdopodobnie dlatego, że zapisujesz salt, a to raczej wg mnie nie ma sensu. Salt zazwyczaj robi się stałą na cały program i nie ma sensu jej zapisywać gdziekolwiek, może być stałą. Do tego warto kolumne w przypadku sha256 zrobić char[64]

Pozostało 580 znaków

2011-07-18 07:57
delphiak
0

Oczywiscie, ze doklejenie soli do hasłi to dobry pomysł. Wydobycie jej z programu, to zazwyczaj zaden problem, a majac sol i pokaźna ilość haseł, to swietny material do kryptoanalizy - wiec generowanie indywidualnej soli dla kazdego hasla jest duzo lepszym pomyslem.

Pozostało 580 znaków

2011-07-18 09:24
0

dokładnie - sól może być jawna (i tak gdzieś umieszczona musi być) ale stała dla wszystkich haseł ułatwia przeprowadzenie ataku „rainbow tables”.

Pozostało 580 znaków

2011-07-18 12:47
0

się tak zastanawiam jakby jako sól traktować np md5 hasła - czyli do bazy zapisujemy SHA256(Passs + MD5(Pass)) - wtedy odpada zapisywanie soli dla każdego hasła


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij
Ale jeśli ktoś pozna ten algorytm (sposób) to stworzenie tablic tęczowych dla najpopularniejszych haseł to nie problem, o ile ma się odpowiednią moc obliczeniową, ale w obecnych czasach kupno kilku pc to nie problem. Ale pomysł całkiem ciekawy. W sumie jakby jeszcze napisać to w C/C++ i skompilować jako dll ciężej byłoby sam algorytm wyłuskać niż z C#. - massther 2011-07-18 14:27
tylko jak będziesz miał sól inną do każdego hasła to też trzeba gdzieś parę sól - hasło zapisać - generowanie tt w tym wypadku to też nie jest jakiś problem - Misiekd 2011-07-18 14:55

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0