php

Hash függvények használata a PHP-ben

Hash függvények használata a PHP-ben
Az adatok biztonsága nagyon fontos minden alkalmazás számára. Az adatok jogosulatlan hozzáférése károsíthatja az alkalmazás értékes adatait. Ha az adatok megfelelő titkosítással biztosíthatók, akkor az adatok illetéktelen hozzáférése megakadályozható. Például az új felhasználó jelszavát titkosítani kell az adatbázisban történő tárolás előtt, hogy a felhasználó jogosulatlan hozzáférését elkerülje. A titkosítás egyik módja a hash függvény használata. Számos beépített hash funkció létezik a PHP-ben az adatok titkosításához. Titkosítja az adatokat anélkül, hogy megváltoztatná az eredeti jelentését. A PHP néhány általánosan használt hash funkciója: md5 (), sha1 () és hash (). Ezeknek a funkcióknak a használatát ismerteti ez az oktatóanyag.

md5 () Funkció

Az md5 () függvény a Message-Digest algoritmust használja a titkosításhoz. Ez a függvény kiszámítja az eredeti érték md5 hash értékét. Ennek a függvénynek a szintaxisa az alábbiakban található.

Szintaxis:

string md5 (string $ string, [bool $ raw])

Ennek a függvénynek két argumentuma lehet. Az első argumentum kötelező, amelyet a titkosítandó string érték felvételére használunk. A második argumentum nem kötelező, amelyet bármely logikai érték tárolására használunk. A függvény 32 bites hexadecimális számot ad vissza, ha az opcionális argumentumot nem használják, és 16 bites hexadecimális számot ad vissza, ha az opcionális érték IGAZ.

Példa: Az md5 () használata

A következő példa a md5 () funkció az adatok titkosításához. Hozzon létre egy PHP fájlt a következő szkript segítségével, hogy lássa, hogyan működik ez a függvény.

A forgatókönyvben, $ original_string változó egy string érték tárolására szolgál, amelyet később a md5 () funkció. A szkript végrehajtása után az eredeti és a titkosított értékek is kinyomtatásra kerülnek.

// Definiáljon egy string értéket
$ original_string = 'LinuxHint';
// Az eredeti érték nyomtatása
visszhang "

Az eredeti adatok:

". $ original_string;
// Titkosítja a karakterlánc értékét
$ encrypted_string = md5 ($ original_string);
// A titkosított érték nyomtatása
visszhang "

A titkosított adatok az md5 () használata után:

$ encrypted_string ";
?>

Kimenet:
A következő kimenet jelenik meg, miután a parancsfájlt futtatta a szerverről. Az md5 () függvényben nem használunk opcionális argumentumot. Tehát a kimenet 32 ​​bites hexadecimális számokat jelenít meg kimenetként.

sha1 () Funkció

Ez a funkció a Secure Hash Algorithm 1-et használja a titkosításhoz. Ennek a függvénynek a szintaxisa az alábbiakban található.

Szintaxis:

string sha1 (string $ string, [bool $ raw])

Ennek a függvénynek két argumentuma lehet, például az md5 () hash algoritmus. Az első argumentum a titkosítandó string értéket veszi fel. Az opcionális argumentum bármely logikai értéket felvesz. Ha nincs megadva opcionális argumentum, akkor a függvény 40 karakteres hexadecimális számot ad vissza. Ha az opcionális érték IGAZ értékre van állítva, akkor a függvény nyers bináris adatokat ad vissza.

Példa: A sha1 () használata

A következő példa a sha1 () funkció az adatok titkosításához. Hozzon létre egy PHP fájlt a következő szkript segítségével, hogy lássa, hogyan működik ez a függvény.

A forgatókönyvben, $ original_string változó egy string érték tárolására szolgál, amelyet később a sha1 () függvény az opcionális argumentummal és anélkül. Az eredeti és a titkosított értékek is kinyomtatásra kerülnek a szkript végrehajtása után.

// Definiáljon egy string értéket
$ original_string = 'LinuxHint';
// Az eredeti érték nyomtatása
visszhang "

Az eredeti adatok:

". $ original_string;
// Titkosítja a karakterlánc értékét
$ encrypted_string = sha1 ($ original_string);
// A titkosított érték nyomtatása
visszhang "

A titkosított adatok a sha1 () használata után:

$ encrypted_string ";
// Titkosítja a karakterlánc értékét
$ encrypted_string2 = sha1 ($ original_string, IGAZ);
// A titkosított érték nyomtatása
visszhang "

A titkosított adatok az sha1 () és az opcionális argumentum használata után:

$ encrypted_string2 ";
?>

Kimenet:
A következő kimenet jelenik meg, miután a parancsfájlt futtatta a szerverről. 40 karakteres hexadecimális számot mutat, ha az opcióban nem használ opcionális argumentumot sha1 () függvény és a kimenet nyers adatokat jelenít meg, ha a TRUE értéket használjuk az opcionális argumentumértékben a sha1 () funkció.

hash () Funkció

A hash () függvény felhasználásával az adott karakterlánc hash értékét előállíthatjuk bármilyen hash algoritmus alapján. Ennek a függvénynek a szintaxisa az alábbiakban található.

karakterlánc vagy hamis kivonat (string $ algoritmus, string $ data [, bool $ binary = false])

Ennek a függvénynek három argumentuma lehet. Az első argumentum az algoritmus nevét veszi fel, amelyet a második argumentumban megadott karakterlánc hash értékének előállításához használnak. A harmadik érv nem kötelező. Ez a függvény visszaadja a kisbetűs hatszögjegyeket, ha az opcionális érték hamis, és a nyers bináris adatokat adja vissza, ha az opcionális érték igaz. Számos kivonatoló algoritmus létezik a PHP-ben, hogy kivonatolási adatokat hozzon létre a hash () függvény használatával. hash_alogs () függvény segítségével megtudhatja a meglévő hash algoritmusok listáját.

Példa: a hash () használata

A következő példa bemutatja a hash () függvény használatát a hash érték előállításához bármely adott hash algoritmus segítségével. Hozzon létre egy PHP fájlt a következő szkript segítségével, hogy lássa, hogyan működik ez a függvény.

'ripemd160' a hash () függvényben a hash algoritmust használják a hash érték előállítására. A hash () függvényt a szkript opcionális argumentumával együtt használjuk. Az eredeti és a titkosított értékek is kinyomtatásra kerülnek a szkript végrehajtása után.

// Definiáljon egy string értéket
$ original_string = 'LinuxHint';
// Az eredeti érték nyomtatása
visszhang "

Az eredeti adatok:

". $ original_string;
// Titkosítja a karakterlánc értékét
$ encrypted_string = hash ('ripemd160', $ original_string);
// A titkosított érték nyomtatása
visszhang "

A titkosított adatok a hash () használata után:

$ encrypted_string ";
// Titkosítja a karakterlánc értékét
$ encrypted_string2 = hash ('ripemd160', $ original_string, IGAZ);
// A titkosított érték nyomtatása
visszhang "

A titkosított adatok a hash () használata után, opcionális argumentummal:

$ encrypted_string2 ";
?>

Kimenet:
A következő kimenet jelenik meg, miután a parancsfájlt futtatta a szerverről. Ha nem használ opcionális argumentumot, akkor a hexadecimális számot hash értékként jeleníti meg, és a hash () függvényben az opcionális argumentum használatakor a nyers adatokat.

Következtetés

A fontos adatok titkosítására van szükség a webalkalmazások biztonságának megteremtéséhez. Az oktatóanyagok az adatok titkosításának különböző módjait mutatják be a PHP több kivonatoló funkciójának használatával. Három beépített hash függvény használatát ismerteti ez az oktatóanyag a titkosított adatok előállításához a PHP szkript segítségével.

HD Remastered Games for Linux, amelyeknek soha nem volt korábban Linux kiadásuk
Számos játékfejlesztő és kiadó a régi játékok HD remasterjével áll elő a franchise élettartamának meghosszabbítása érdekében. Kérjük, hogy a rajongók ...
Az AutoKey használata a Linux játékok automatizálásához
Az AutoKey egy asztali automatizáló segédprogram Linux és X11 rendszerekhez, Python 3, GTK és Qt programozással. A parancsfájlok és a MACRO funkcióina...
Az FPS-számláló megjelenítése a Linux-játékokban
A Linux játék komoly lendületet kapott, amikor a Valve 2012-ben bejelentette a Linux támogatását a Steam kliensnek és játékaiknak. Azóta sok AAA és in...