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)

ruhomog8 aw3ivuge imat3aja epenova3 8iqepuni
jiqulol3 ove2qude ilahin0i bopoda1b ilot3ebu

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

PdgeiQw7 d9PAuggv n3AHbrby vVutc9lW IjoV3stv
p8tdpXmK GuxZ1kjq Bh2uugXh 3lwSpbqP rYbkqj3R

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

rjy1L^Wp 9|OrJmhx Ot3w/dLg cY9yxg}O r:NmzrA8
yM1>Haqb zB[Xiw0k 2,bCepHt 2{TnmWiy V9r|Irsx

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

bnWg03gzKv$< 1iuIl0kx-~Xl ;P4onps/zCq7 5xu1y:B@Wlxp jt6o5s$DkO%o
qxc9O*j2u$Be ev?Ywf3cuZ$7 z0iNu2h"yP.t gM2xZ9c{ea:w b!4Wx^ebn7On

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

VKgI`29s4j?*ydqL Av-08wT*NAex7vd+ xdY6puJ,5iZQ!{c5 zg2`qIV50^Ybl,Sh
w??HxE6;Gavte31C uXD6e~ca(0_RN7dt wq1Vm#tE:v/3eB9A _8l?j1^RHobg4JAm

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