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)

hodani3w eg0ijaga tarum8op om3urohu 1ruqoqap
0wuxibum ponuje8n n0avepiq xude3xul uhew0owu

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

v9gpjrPN myHqXe1m ris3uBxK meks4TJi xqGQn4os
fmrRiI7x 0LsvnQjx Fyqaay0K xAyf6aAn oBv1dAvz

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

UpR/m8uq 8;VlfvBs 3aDpte+J hIj,x7Pq dtXzm$0V
CA%r1avh ucmS}4hI KmT1}nem r:3fqgTS wFVlz:h8

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

gu05lr;XqUw] "-t3au0RnqQg zEqn%0wf1yW/ 9Ha<c/i4dvrZ \vqZ.l2ctR4q
7i@jaqdhF0]O *xI1;esj1lZl qi+mkHh7E'7u 40z"jfDN#gsk gs0w^w6HLpd/

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

35J[aNzurG|Zy*p5 q&vwVw'3+m9HDdQ9 4Tz`ojUT8'9qxDl& 55R3'Tcrwpr/xX:K
%qQ22GbW"dvUz9r. 2%N3mu-yO7g-lKqP Qc+"jrI8i3,WYsi0 {OU=5G)gknreF98g

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