PHP.mk документација

Модел на шифрирано складирање

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

security.database.storage.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека security.database.storage.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
Модел на шифрирано складирање

Референца за `security.database.storage.php` со подобрена типографија и навигација.

security.database.storage.php

Модел на шифрирано складирање

SSL/SSH protects data travelling from the client to the server: SSL/SSH does not protect persistent data stored in a database. SSL is an on-the-wire protocol.

SSL/SSH ги штити податоците што патуваат од клиентот до серверот: SSL/SSH не ги штити постојаните податоци зачувани во базата на податоци. SSL е протокол на жица.

Откако напаѓачот ќе добие директен пристап до вашата база на податоци (заобиколувајќи го веб-серверот), зачуваните чувствителни податоци може да бидат откриени или злоупотребени, освен ако информациите не се заштитени од самата база на податоци. Шифрирањето на податоците е добар начин за ублажување на оваа закана, но многу малку бази на податоци нудат овој вид на шифрирање податоци. PHP scripts. PHP Најлесниот начин да се заобиколи овој проблем е прво да се создаде сопствен пакет за шифрирање, а потоа да се користи одвнатре OpenSSL and Натриумможе да ви помогне во ова со неколку екстензии, како што се

, покривајќи широк спектар на алгоритми за шифрирање. Скриптата ги шифрира податоците пред да ги внесе во базата на податоци и ги дешифрира при преземањето. Погледнете ги референците за понатамошни примери за тоа како функционира шифрирањето.

Хеширање

На password Во случај на навистина скриени податоци, ако неговата сурова репрезентација не е потребна (т.е. нема да биде прикажана), треба да се земе предвид хеширањето. Добро познат пример за хеширање е складирањето на криптографската хеш на лозинка во базата на податоци, наместо самата лозинка.

password_hash() функциите обезбедуваат удобен начин за хеширање на чувствителни податоци и работа со овие хешови. password_verify() се користи за хеширање на даден стринг користејќи најсилниот алгоритам што е моментално достапен и

проверува дали дадената лозинка се совпаѓа со хешот зачуван во базата на податоци.

<?php

// storing password hash
$query = sprintf("INSERT INTO users(name,pwd) VALUES('%s','%s');",
pg_escape_string($username),
password_hash($password, PASSWORD_DEFAULT));
$result = pg_query($connection, $query);

// querying if user submitted the right password
$query = sprintf("SELECT pwd FROM users WHERE name='%s';",
pg_escape_string($username));
$row = pg_fetch_assoc(pg_query($connection, $query));

if (
$row && password_verify($password, $row['pwd'])) {
echo
'Welcome, ' . htmlspecialchars($username) . '!';
} else {
echo
'Authentication failed for ' . htmlspecialchars($username) . '.';
}

?>

Белешки од корисници

Нема белешки од корисници за оваа страница.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.