09. juli 2011 - 12:59Der er
17 kommentarer og 2 løsninger
Hjælp til oversæt "The Hash"????
Hej.. Kan en del engelsk, og prøver at lære at programmere i php/mySql. Så er jeg inde på php.net flere gange stødt på et ord jeg ikke forstår "hash" google og andre oversættere vil kun oversætte det til "hash", bliver jeg jo ikke klogere af. Eks. "returns the hash of a string". Håber der er en "klog" der kan hjælpe, så jeg kan komme lidt videre i min indlæring af php.
Et hash er en étvejskryptering af en streng. Dvs. uanset hvor lang strengen er, bliver den et vist antal bytes når den er krypteret. En lille ændring i input-strengen giver en stor forskel i den krypterede streng, men samme input-streng giver altid samme output.
Det bruges oftest til passwords, fordi man kan gemme et password som et hash, så man altid kan sammenligne med det oprindelige password igen, ved også at hashe det - men hvis nogen hacker serveren, kan de aldrig få det oprindelige password at vide, fordi et hash ikke kan dekrypteres.
Andre steder bruges til at verificere data i en fil eller streng, så man ved at den ikke er ændret, uden at skulle gemme hele filens/strengen.
Hej.. Skal nok lige læse dit indlæg et par gange... Men det jeg sad og prøvede at finde ud af var funktionen md5() på php.net. Prøver at lave noget CAPTCHA.
Husk, at du ikke bør benytte dig af md5 alene længere, da der efterhånden findes nogle store rainbow tables. En rainbow table er en eller flere databaser frit tilgængelig på nettet, som indeholder værdien af et hash. Det vil sige, en måde, at se hvad hash'et indeholder. Og så er kodeordet jo pludselig ikke så skjult længere fx. Det er naturligvis ikke alle hashs' der findes derude, men en pæn del efterhånden.
Jeg vil derfor anbefale, at du kigger nærmere på sha funkionen istedet for md5 samt, at du læser lidt om "salted hash", hvilket du får brug for, hvis du vil sikre dig bedst muligt :)
Til den brug du viser dér kan du sagtens nøjes med MD5-funktionen, for der skal du bare bruge en tilfældig streng, og input-strengen har ingen betydning og kan ikke slås op i en rainbow table.
Hej.. Tak..viperine. Nej... for der er jo ikke tale om passwords, krypteret meddelser, betalinger osv.. Hvor jeg går ud fra det er der problemerne opstår så?? Ideen med det var jo at undgå spam og andre robotter i min gæstebog.
Ja. Problemerne opstår så snart input-strengen kan være valgt af et menneske, f.eks. ved de ting du nævner, nemlig. Hvis f.eks. du krypterer et password, så er der en mulighed for at en bruger vælger et almindeligt ord som password, f.eks. "fisk". Hvis en hacker så får adgang til databasen, kan han se hash'et stå som "23a8cadbee3c6d52a8bdc33aa962f5be", og derefter slå op i en rainbow table, at det hash svarer til ordet "fisk" - og så har han brugerens password.
I dit tilfælde vil input-strengen aldrig være et rigtigt ord, og det gør ingenting hvis en hacker finder ud af input-strengen alligevel, da du ikke bruger den til noget.
Hej.. Nej..okay!! DEt er jo fint nok så!! Det jeg bruger min input streng til, er at indsætte den i et PNG images, og så til at tjekke på om brugeren har tastet netop den streng. Det var meningen da!! Hvad så med Spam robotter, har de hacker tendenser :-)
Nu har du jo ikke nævnt noget om, hvad brugen til det var .. Før nu i hvert fald. Det er rigtigt, hvis det bare er for at afhjælpe spambotter og lignende, er det ligegyldigt med salt og så videre. Men i det tilfælde behøver du så slet ikke bruge en krypteringsfunktion, da der findes nogle random funktioner i PHP der genererer en tilfældig string. Men du kan selvfølgelig godt bruge md5, hvis du ønsker det :)
Om spambotter har hacker tendenser. Hvordan mener du helt præcist? De er "smarte" nok ja. De hacker vel ikke ligefrem, men hvis du har din random string liggende synlig på hjemmesiden som tekst, hvor brugeren skal taste det ind i et input felt, så kan den højst sandsynligt godt regne det ud. Så du skal generere et billede i PHP, hvor du har din string ind over. Som jeg har det på min hjemmeside fx ... Så begynder de at få problemer med det :D
Hej.. Nej.. Det havde jeg ikke nævnt noget om , men nu tog ordet "hash" sig jo også lidt omfangs rigt ud. Troede jo bare det drejede sig om en ordentligt oversættelse af ordet for at forstå sammenhængen. Nå.. DEt er viperine der kommer ind på hackere i #8, og da jeg så skal bruge det til at forhondre spamrobotter til indlæg i min gæstebog, spurgte jeg lidt spøjst om spamrobotter har hacker tendenser. Jamen det jeg vil prøve er at oprette en tilfældig streng, så bruge images funktionerne i php til at oprette et images og sætte den tilfældige streng ind over det images inden det vises for brugeren. som så kan taste det viste. er images og det indtastede identisk,. postes brugerens besked.
Som altid en fornøjelse, når der kommer indlæg fra dig, webweaver.. ;-)
Det lyder fornuftigt. Også sådan at det bør laves :) Hvis du er interesseret, deler jeg gerne ud af mit antispam script (ikke at det er tophemmeligt og lignende ikke kan findes nettet, for kan det sikkert)
Men du lærer jo selvfølgelig mest som ny i "branchen" ved at prøve at lave det selv først. Så kan du jo altid evt. vende tilbage, hvis det driller :)
Jeg kan også godt udlevere scriptet til dig som inspiration, hvis du ønsker det.
Hej.. Jamen så er jeg jo ik helt ved siden af med, hvad jeg havde tænkt mig. Ej...Tusind tak, det var godt nok noget af et pænt tilbud, Webweaver!! Men vil nu egentligt gerne lige selv prøve først og som du siger det lærer man jo nok mest ved. Men håber da det er okay, hvis jeg evt. tager dig op på tilbudet ved en senere lejlighed...?? Selv god weekend!!!
Tre jeg beder om at lægge svar : Viperine Arne_V Webweaver...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.