Podręcznik PHP
Poprzedni |  | Następny

# XVI. Crack Functions

# Wstęp

Te funkcje umożliwiają korzystanie z biblioteki CrackLib, w celu sprawdzenia 'jakości' hasła. 'Jakość' hasła jest rozpatrywana na podstawie jego długości, użytych w nim małych i wielkich liter, oraz słownika CrackLib. CrackLib zwraca również pożyteczne wskazówki magące pomuc w poprawieniu jakości hasła.

> Notatka: To rozszerzenie zostało przeniesione do repozytorium PECL i nie jest rozprowadzane z PHP od wersji 5.0.0.

# Wymagania

Więcej informacji na temat CrackLib oraz samom biblioteke można znaleść na stronie: http://www.crypticide.com/users/alecm/.

# Instalacja

To rozszerzenie PECL nie jest dołączane do PHP. Dodatkowe informacje, takie jak nowe wersje, pliki do pobrania, pliki źródłowe, informacje o opiekunach czy rejestr zmian, można znaleźć tutaj: http://pecl.php.net/package/crack.

W PHP 4 to rozszerzenie PECL można znaleźć w podkatalogu `ext/` źródeł PHP lub pod znajdującym się wyżej odnośnikiem PECL. Aby zbudować PHP z obsługą Crack należy podać opcję --with-crack[=DIR] wywołania configure.

Użytkownicy Windows mogą włączyć obsługe funkcji Crack, poprzez dodanie `php_crack.dll` w pliku `php.ini`. W PHP 4 ten DLL znajduje się w podkatalogu `extensions/` binarnej dystrybucji PHP dla Windows. DLL z tym rozszerzeniem PECL można pobrać ze strony PHP Downloads lub http://snaps.php.net/.

# Konfiguracja czasu wykonywania

Na działanie tych funcji wpływają ustawienia zawarte w pliku `php.ini`.

Tabela 1. Opcje konfiguracji

Nazwa | Domyślna wartość | Możliwość zmian | Rejestr zmian
--- | --- | --- | ---
crack.default_dictionary | NULL | PHP_INI_PERDIR | Dostępne od PHP 4.0.5.

Szczegóły i definicje dotyczące stałych PHP_INI_* znajdują się w rozdziale Dodatek G.

# Typy zasobów

To rozszerzenie nie posiada żadnych rodzajów zasobów.

# Stałe predefinopwane

To rozszerzenie nie posiada żadnych stałych.

# Przykłady

Poniższy przykład obrazuje sposób otwarcia słownika CrackLib, sprawdzenia hasła, pobrania informacji diagnostycznych, oraz zamknięcia słownika.

Przykład 1. Przykład użycia CrackLib

`<?php // Otwarcie słownika CrackLib $dictionary = crack_opendict('/usr/local/lib/pw_dict') or die('Unable to open CrackLib dictionary'); // Sprawdzenie hasła $check = crack_check($dictionary, 'gx9A2s0x'); // Pobranie informacji diagnostycznych $diag = crack_getlastmessage(); echo $diag; // 'strong password' // Zamknięcie słownika crack_closedict($dictionary); ?>`

> Notatka: Jeśli crack_check() zwróci `TRUE`, crack_getlastmessage() zwróci 'silne hasło'.

Poprzedni | Spis treści | Następny
variant_xor | Początek rozdziału | crack_check