![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
Witam.
Jaki wybrać typ danych dla kolumny gdzie przechowujemy skrót z hasła (MD5)? Odpowiedź proszę uzasadnić ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 781 Pomógł: 256 Dołączył: 29.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
CHAR(32) Ponieważ hasło zawsze będzie jako string o tej samej długości czyli 32 znaki
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli operujesz na surowym wyniku MD5 to BINARY(16), jeżeli na tekstowej to CHAR(32). Czemu takie? Bo tego typu dane zwraca MD5.
Ten post edytował Crozin 2.06.2012, 15:21:09 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
No właśnie, jaki jest sens operowania na wersji tekstowej, skoro można na binarnej?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 0 Dołączył: 7.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
A czy to wgl. jakaś różnica?
Ja zawsze używam kodowania PASSWORD() i hasło trzymam w typue 'varchar'. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
Taka różnica że VARCHAR(32) zajmuje dwa razy więcej miejsca niż BINARY(16)
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat No właśnie, jaki jest sens operowania na wersji tekstowej, skoro można na binarnej? Wersję tekstową można wyświetlić, jest ona czytelna dla człowieka. Również w przypadku konieczności przesłania hasha w wielu protokołach (szczególnie tekstowych, np. HTTP) jest ona wygodniejsza w użyciu. Jeżeli ma to być użyte na potrzeby hasła w serwisie nie ma właściwie najmniejszego znaczenia jaką wersję wybierzesz.Cytat Ja zawsze używam kodowania PASSWORD() i hasło trzymam w typue 'varchar'. Dwa błędy. Pierwszym jest użycie PASSWORD ([url=http://dev.mysql.com/doc/refman/5.0/en/encryption-functions.html#function_password]patrz: note), drugim przechowywanie wyniku w kolumnie typu VARCHAR (typ o zmiennej długości dla danych o stałej długości).
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 29.05.2025 - 07:58 |