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)

olinom8o lodohet3 vu6gihaq giw1onuq abu4jote
x0esiseg oqahux2u usuq5inu mex4otuv 7urulire

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

9cGDsjnr m6mzErtL emyT3Nvo AgXax3ou gikleA8M
tqbrIQ5h rtjuIm7Z lMty4kkV srkQgXo0 YytRim6l

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

yl1nPyJ# 0qpkm]VF nyw>WKz4 bUEl/8xp 0jvGk^Xi
,eKyKx0y Cd?gb6cF Qaav4Oc* amy2>cPJ O3c:wofU

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

dIou`k0lY6g@ zjdcV6n7M`,z fuo1R"}Nsoz3 E<okZyj^fu62 a#Zazlaf>44T
edLg3r7'f,Ir tZdf7Ef5`j\k fC]Qo0se7ww" 0ty3`VxsvhA> dw;(6YgzUcd0

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

*nveWIGdk~0x!1Q3 A%9Lyjq8Dbpm%{4I D=yNTujm5%m"67Xw I9c#Bz6anP#ap?Y9
%SQrqw)mZ_7Tnd83 N2:9rIwlnu8-Gy>E mJ6#7oD(iIi4z,Kx a0:MkyS3bQi2bL|\

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(0, 1) ? 'A' : 'a');
            $password[$i] = chr(mt_rand($a, $a + 25));
        }
    }
    return $password;
}