П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 6165 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 8299 раз(а).

Учебник HTML.
Просмотров 4920 раз(а).

Руководство по PHP5.
Просмотров 2036 раз(а).

Хостинг через призму DNS.
Просмотров 7047 раз(а).

Подборка текстов стандартных документов.
Просмотров 57564 раз(а).

Учебник PHP - Самоучитель
Просмотров 5214 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 11342 раз(а).

Внешние атаки...
Просмотров 7405 раз(а).

Учебник PHP.
Просмотров 4318 раз(а).

SSI в примерах.
Просмотров 1226 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





Руководство по PHP
Пред. Глава 27. Безопасность баз данных След.

Защита хранилища базы данных

SSL/SSH защищает данные, которыми обмениваются клиент и сервер, но не защищают сами данные, хранимые в базе данных. SSL - протокол шифрования на уровне сеанса передачи данных.

В случае, если взломщик получил непосредственный доступ к БД (в обход веб-сервера), он может извлечь интересующие данные или нарушить их целостность, поскольку информация не защищена на уровне самой БД. Шифрование данных - хороший способ предотвратить такую ситуацию, но лишь незначительное количество БД предоставляют такую возможность.

Наиболее простое решение этой проблемы - установить вначале обыкновенный программный пакет для шифрования данных, а затем использовать его в ваших скриптах. PHP, в таком случае, может помочь вам в работе с такими расширениями как Mcrypt и Mhash, реализующими различные алгоритмы криптования. При таком подходе скрипт вначале шифрует сохраняемые данные, а затем дешифрует их при запросе. Ниже приведены примеры того, как работает шифрование данных в PHP-скриптах.

В случае работы со скрытыми служебными данными их нешифрованное представление не требуется (т.е. не отображается), и, как следствие, можно использовать хеширование. Хорошо известный пример хэширования - хранение MD5-хеша от пароля в БД, вместо хранения оригинального значения. Более детальная информация доступна в описании функций crypt() and md5().

Пример 27-1. Использование хешированных паролей

<?php
// сохранение хешированного пароля
$query  = sprintf("INSERT INTO users(name,pwd) VALUES('%s','%s');",
            
addslashes($username), md5($password));
$result = pg_exec($connection, $query);

// проверка введенного пользователем логина и пароля на корректность
$query = sprintf("SELECT 1 FROM users WHERE name='%s' AND pwd='%s';",
            
addslashes($username), md5($password));
$result = pg_exec($connection, $query);

if (
pg_numrows($result) > 0) {
    echo
"Welcome, $username!";
}
else {
    echo
"Authentication failed for $username.";
}
?>

Пред. Начало След.
Соединение с базой данных Уровень выше SQL-инъекции


Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru