Príjemný dobrý deň, chcel by som si v intranetovom systéme urobiť takú vlastnú šifru. Chcel by som si definovať znaky pre heslá, od A po Z a každý znak napríklad a by malo kód 1, následne A by malo #1 atď, ako by som si to mal zapísať? Chcel by som to ako funkciu, ktorú by som mohol jednoducho zavolať. Vedeli by ste mi tu napísať nejaký vzor, ako by to bolo možné vytvoriť? Ďakujem vám veľmi pekne, som v PHP začiatočník a v tomto by ste mi veľmi pomohli!
Fórum › PHP
Vlastná šifra ako zapísať
???, neco jako sha1, md5 a podobne? Vysledek je cislo, ktere se zpetne 'neda' dopocitat na heslo. Takze mas jen jednosmernou cestu, vzit od uzivatele heslo, zasifrovat a overit vuci databazi uzivatelu se stejnym kodem.
Najdi si vsak aktualni vserzi sifrovani, protoze md5 a sha1 jsou jiz davno prekonane. A prekonane je i duplicitni ci trojite pouziti.
Veme se tabulka bezne pouzivanych hesel, tak 10.000. Zasifruji se jednou, duplicitne, ... az 7x. A techto 70.000 kodu se overuje s kodem, ktery ziskas s ukradene databaze. Je celkem sance ziskat tak 5-60% uzivatelu. Staci ti jeden s admin pristupem, kdyz ses hacker :)
Treba midlan tady pouziva blow-fish asi s vybranymi znaky. Nechce se mi to studovat
https://diskuse.jakpsatweb.cz/?…
<?php
class Cryptography {
public static function &random($lenght, $stack = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ') {
$random = '';
for($stack_length = strlen($stack)-1; $lenght > 0; $lenght--)
$random .= $stack[mt_rand(0, $stack_length)];
return $random;
}
public static function bcryptHash($string, $cost = 12) {
return crypt($string, sprintf('$2y$%02d$%s$', $cost > 31 ? 31 : ($cost < 4 ? 4 : $cost), self::random(22)));
}
public static function verify($string, $hash) {
return crypt($string, $hash) === $hash;
}
}
#2 Maximilián
Nepiš si vlastní algoritmus pro hashování. A pokud chceš vlastní, tak ho nikdy nikde nezveřejňuj (tzn. ani ti ho nesmí dodat nikdo, kdo nemá s kryptologií zkušenosti). Proč? Protože to smrdí bezpečnostní dírou.
Ke dni 5. září 2016 je v PHP je aktuálně nejlepší použít funkce password_hash a password_verify.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Ako to zapísať v MySQLi — založil Martin
Ako zapísať podmienky aby sa nevykonala podmienka pod? — založil Jonny
Ako zapisat aj lomitko "\" — založil Anonymní uživatel
Vlastna vynimka — založil Sony123
Vlastná prípona — založil tommyv580
Moderátoři diskuze