[mysql] hasła użytkowników, sposób szyfrowania

0

Witam,
chciałbym się dowiedzieć w jaki sposób szyfrowane są
hasła użytkowników bazy mysql że np. z hasła
"tajnehaslo" otrzymuje "47c69e6f77ea5ba7" ??
Domyślam się że jest to szyfrowanie jednokierunkowe ale
nie wiem jakie, i nie bardzo nawet wiem jak to znaleźć :-/

0

w php jest funkcja md5() ... w mysql'u mozesz użyc w zapytaniu funkcji MD5().. teraz juz chyba wiesz czego i gdzie szukać ;)

0

Dodam tylko małe info. Fakt, hasła szyfrowane są najczęściej MD5, ale:

  1. Aktualnie MD5 NIE JEST uznawane za bezpieczną metodę hashującą - został wykryty błąd, który pozwala nadspodziewanie szybko generować pary różnych ciągów o tej samej sumie kontrolnej MD5.
  2. Dla polepszenia efektu często stosowane jest tak zwane "solenie" hashowanego hasła, czyli dodawanie do niego jakiegoś ciągu znaków. Może to być na przykład nazwa uzytkownika (zakładając, że nazwa użytkownika się nie zmienia, albo do zmiany nazwy użytkownika należy podaćhasło - wtedy można wygenerować na podstawie tego hasła nową sumę kontrolną).
0

Ostatnio w necie znalazlem fajny algorytm ISAAC [http://burtleburtle.net/bob/rand/isaacafa.html], bedacy 1024 bitowym kryptograficznym generatorem liczb pseudolosowych. Bardzo latwo przerobic go na funkcje szyfrujaca jednostronnie - jako rand seed bierzesz szyfrowane haslo, a nastepnie jako "hash" hasla bierzesz kilka kolejnych liczb losowych z tego generatora. Co ciekawe, niezaleznie od tego ile kolejnych liczb wezmiesz nie jest znany sposob na wyliczenie seeda generujacego taki ciag (metoda brude force: 2^1024 kombinacji). Jesli dowod przedstwiony w artykule jest prawidlowy, to taka funkcja hashujaca bedzie duzo mocniejsza niz MD5. Algorytm jest malo popularny, choc wzorowany na popularnym RC4 i na razie nikt go nie skompromitowal. Autorzy udostepniaja pelny kod zrodlowy w C (przelozenie tego na PHP to banal).

0

Krolik: Z zasady 1024 bitowy algorytm hashujący będzie mocniejszy od 128 bitowego MD5. No oczywiście zakładając, że nie ma jakichś błędów.

0

Nie chodzilo mi o 1024 bity, bo moze byc ich mniej, jesli user zdecyduje uzyc np. jedynie 4 wylosowanych liczb (wtedy ma 128 bitow) do zapisu hasha. Podobnie rzadko kiedy samo haslo ma dlugosc 1024 b.

Chodzilo mi o to, ze na razie nikt nie znalazl metody na zlamanie ISAACa tak jak zlamano MD5.

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