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)

2egixavu ipiguv2a v6isijen ume3rubo ax3urexa
ew1agavu larero0g ahomo2ne ubuwig7u 6umohaxi

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

wnDaxiX9 opgz2PSq Jhqur0fF hSq1bzTr q2EvQkwo
vd4iSQym xiOJ3wbx S7aLpxrx Uty4Qwbw 2ShjDnix

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

gbyf5L)H Ew2ts~Ec -9UmZmlh xf?AvT0z Z'8czUjs
(Whth1tR O.vtTey0 ey8aES/g 8hZr.vkF Ys2/Owlq

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

bCrvpS|2jd2< j23&Gr?xCund m8xxkx%|j0YU pS;-ranl0Vy3 _Cb?pMvs6jn4
!j3zQhrbQ'm3 V<4sdp7auSo" 4[euas0kG;lZ i5nj@a4-DcPj cc5MpMxs`1f.

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

<6mf&p/k8ZPVDd1e C82Zchm8ahXO+@_n xrX_*0gTazcC7R@6 [Bp31QZcq:d\e4rR
q4S{9D}Hfxy9qg(M fAvJ4RIs0!bq"{u1 c9}EebHptI#F80x^ mooIN5'`lF<u01eX

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;
}