Martin Matějů

Programátor a specialista na Wordpress

Generátor hesel

Používáte snadno zapamatovatelné heslo? Známe slovo? Sekvenci číslic? Nedělejte to! Používejte heslo, které je náhodně vygenerované. Snížíte riziko, že Vaše heslo bude zneužito. A zvýšíte svoji bezpečnostní úroveň práce s počítačem a na Internetu.

Pokud se Vám žádné heslo nelíbí, obnovte stránku, vygenerují se nová hesla.

Funkce na generování hesel je možné volně používat, už ani nevím za ty roky, kdo na ně má „kopirajt“, jestli já nebo Honza. Zobrazit PHP skript pro generování hesel.

Pěkné heslo (8 znaků celkem)

l8egewis ijan5evo gun4obit umimu3wa vo3pesul
ipodo0xa ivuvod7e exuw4uhi ub1ihulu dewola0n

Slabé heslo (8 znaků celkem, 2 velká písmena, 1 číslo)

mswtWuW4 omrD1pDm lksVx6sM j0jzGdAy ngteuZ0S
fWra9kIu vRpuznY6 px1iKkHs IGchqlu6 9doHsaKw

Dostatečné heslo (8 znaků celkem, 2 velká písmena, 1 číslo, 1 speciální znak)

0&KJexxg 3DoubVk] i[pH2cIv Cv<izX3r gKlgCd?4
c:n1vZBv gErU2*kc gTiH|fm4 rIbUw?3r 0aezD(Zi

Bezpečné heslo 12 znaků celkem, 2 velká písmena, 2 čísla, 2 speciální znaky

qs0.MqkaC5a$ 3au7+t|UyefZ S}Tdw70kj;kc RlK28p,t\ijs 0TmkqD3g{|qu
.gyQo/w9h8gM xpRpdY,;3q2q mJy/3lg8|Xdf ey2o'a^2HQff 23gFPg|h!ubc

Nejbezpečnější heslo 16 znaků celkem, 4 velká písmena, 3 čísla, 3 speciální znaky

"hvz63XiZt]6AE<e g]?C7xIXYylo4m8: 0pAKeR3oFut%z)|3 4\E9h]gydd!3FXLk
TlzdjpA'2eN;8^0H iWD3/baP't8f0nD, $No3-0i8atCw.FPd le56pnh%)I1ZRL-v

PHP funkce pro generování hesel

<?php

function password_smart($length 8) {
    
$vowels 'aeiou';
    
$consonants 'bdghjlmnpqrstvwx';
    
$password '';
    
mt_srand((double)microtime() * 1000000);
    
$alt mt_rand() % 2;
    
$number mt_rand() % $length;
    for (
$i 0$i $length$i++) {
        if (
$number == $i) {
            
$password .= mt_rand() % 9;
        } else if (
$alt == 1) {
            
$password .= $consonants[(mt_rand() % strlen($consonants))];
            
$alt 0;
        } else {
            
$password .= $vowels[(mt_rand() % strlen($vowels))];
            
$alt 1;
        }
    }
    return 
$password;
}

function 
password_brutal($length 8$upper 2$digit 1$spec 1) {
    
mt_srand((double)microtime() * 1000000);
    
$count $length;
    
$sp '!"#$%&' "'" '()*+,-./:;<=>?@[\]^_`{|}~';
    
$up = !$upper;
    
$password str_repeat(' '$length);
    
// spec
    
while ($count && $spec) {
        
$i mt_rand() % $length;
        if (
$password[$i] == ' ') {
            
$password[$i] = $sp[mt_rand() % strlen($sp)];
            
$spec--;
            
$count--;
        }
    }
    
// digit
    
while ($count && $digit) {
        
$i mt_rand() % $length;
        if (
$password[$i] == ' ') {
            
$password[$i] = chr(mt_rand(ord('0'), ord('9')));
            
$digit--;
            
$count--;
        }
    }
    
// upper
    
while ($count && $upper) {
        
$i mt_rand() % $length;
        if (
$password[$i] == ' ') {
            
$password[$i] = chr(mt_rand(ord('A'), ord('Z')));
            
$upper--;
            
$count--;
        }
    }
    
// other
    
for ($i 0$i $length$i++) {
        if (
$password[$i] == ' ') {
            
$a ord($up && mt_rand(01) ? 'A' 'a');
            
$password[$i] = chr(mt_rand($a$a 25));
        }
    }
    return 
$password;
}