Diskuze: Ktorú hashovaciu funkciu použiť?
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 14 zpráv z 14.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
sha256 este nejaky cas tu bude, myslim, ze ani blowfish nebol
prelomeny...
takisto treba aby si pouzival dostatocne dlhy kluc (256-tkovy by som v ziadnom
pripade nepouzil, radsej 2048-tkovy) a este treba danu sifru aj osolit...
a co sa tyka dlzky kluca, tak tu treba ratat s tym, ze vypocet hashu je narocnejsie v zavislosti od dlzky daneho kluca a od algoritmu
u mňa je to hash(); a algoritmus sha512 ktorý generuje 128-znakový string
uvediem príklad 
public function getHash($string){
return hash("sha512", $string . "solJodidovana158#@?");
}
niektorí robia tak, že každý užívateľ má ešte inú soľ, a videl som
aj funkciu crypt() a bitový posun stringu
na bežné veci ale postačí to
čo som uviedol ako príklad, teda aspoň myslím 
No, prolomená šifra... U toho MD5 došlo k tomu, že se našlo pár kolizí
- což vadí hlavně u digitálního podepisování, u schovávání hesel to
zas takový problém není. Ale i přesto se moc nedoporučuje tuto funkci
používat.
<i>(Mimochodem, šifru lze zpětně dekódovat, my se ale bavíme o
hashování, tam je to jen jednosměrné.)</i>
U SHA1 je problém v rychlosti - je moc rychlá, proto se tabulka hashů dá vytvořit relativně snadno.
Z pomalých hashovacích funkcí zmíním třeba Bcrypt (nejdostupnější),
kterou PHP používá ve funkcích password_hash() a crypt().
http://php.net/…assword_hash
http://php.net/function.crypt
Bacha na to, že password_hash() je dostupný až od PHP 5.5, takže někde to nemusí fungovat (nutno zjistit na hostingu).
Stejnou otázkou jsem se před nedávnem také zabýval a vybral jsem si crypt().
V PHP jsou od 5.5 nějaké nové fce. md5, sha1 i sha256 na hesla dnes již nestačí. Více info zde - http://php.net/…asswords.php
Hash jako takový vůbec původně nesloužil k ukládání hesel. Jednalo se spíže o převedení vstupních dat do kontrolního součtu/čísla, které je právě hash.
Většina hashů jsou prolomena tím způsobem, že na netu jsou databáze hashů a v kolika případech když dáte strejdovi(google) hash tak vám najde hned první výsledek, který řekne co se to pod tím hashem vlastně skrývá.
Když šifrovat hesla tak funkcí, která je k tomu určená (password_hash -> http://php.net/…ord-hash.php)
Neaktivní uživatel Nesouhlasím, sha512 ani k tomu není původně vůbec navržena.
Lava Použi funkci password_hash, s algoritmem
bcrypt (PASSWORD_BCRYPT) a cost parametrem nejméně 12.
Salt v tomto případě nemusíš vůbec řešit, tato funkce si ji pro
každého uživatele vytvoří sama. Nejlepší je vygenerovat sůl tím co ví
jak na to..
Ja osobne používam md5 týmto štýlom.
md5(md5($_POST['password']))
No tak toto už je naozaj metal 
A keď niekto prelomí, tak potom použiješ
md5(md5(md5($_POST["password"])))?
Tím, že zacyklíš ten hash tak ho nezpomalíš spíže zhoršíš/poškodíš ten algoritmus. Toto je největší hloupost, opravdu toto nepoužívat. MD5 vůbec nepoužívat ve spojení s heslem, vůbec k tomu není určený ani..
lol
fun, nebrať
si príklad!
md5(sha1(password))
md5(md5(salt) + md5(password))
sha1(sha1(password))
sha1(str_rot13(password + salt))
md5(sha1(md5(md5(password) + sha1(password)) + md5(password)))
sha512 síce nie je priamo hashovacia funkcia na heslá ale nie každý server má PHP 5.5 a vyššie.
Tak stále můžeš použít crypt, ten podporuje také
šifrování pomocí Blowfishe.
Pořád to je pomalejší než sha512.
Zobrazeno 14 zpráv z 14.
