Witam, mam pytanie co do MySQL, poniewa? wszystkie has?a kont koduj? si?.
W ten spos?b:
haslo=MD5('" .. password .. "')
Co musz? da? ?eby podczas weryfikacji nie podawa?o mi zakodowanego has?a tylko odkodowane ?
Funkcja MD5 jest funkcj? jednostronn?, nie ma mo?liwo?ci przekszta?cenia zakodowanej postaci w odkodowan?.
Zamiast oczekiwa? sposobu na odkodowanie has?a MD5 aby por?wna? je z tym co poda? gracz, powiniene? zakodowa? to co poda? gracz i por?wna? z tym co ju??jest zakodowane.
Mo?esz te? zrobi? to od razu w zapytaniu:
exports.DB:pobierzWyniki("SELECT 1 FROM konta WHERE login=? AND haslo=MD5(?)", login, haslo)
^ zwr?ci 1 je?li has?o zgadza si? z tym zapisanym w bazie (zakodowanym wcze?niej za pomoc? MD5).
Ale chcia? bym wiedzie? czy istniej? opcja kodowania w MTA tak jak koduje to MySQL, bo w SQL jest opcja zaznaczenia przy edycji "PASSWORD" ale koduje to inaczej ni? MTA.
Chcia? bym mie? opcje edytowania bazy w ka?dej chwili ( ustawiania nowego has?a, bez wchodzenia na serwer )
Zgaduj?, ?e m?wisz o opcji PASSWORD widocznej przy li?cie p?l w phpmyadmin. To wewn?trzna funkcja mysql, nie wiem z jakiego rodzaju hashowania/szyfrowania korzysta, prawdopodobnie nie jest dost?pna w czystym MTA i by? mo?e mo?na j??zaimplementowa? w Lua - ale nie musisz tego robi?, gdy? zawsze mo?esz dokona? operacji hashowania bezpo?rednio w zapytaniu SQL, np. podczas rejestracji konta:
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach