«
»
WEBWEB - PHP

Шифрование и дешифрование файлов с использованием расширения PHP Mcrypt

Шифрование и дешифрование файлов с использованием расширения PHP Mcrypt

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

Примечание . Расширение mcrypt включено в PHP 5.4 до PHP 7.1. Он был удален из PHP 7.2 и перемещен в неофициальное расширение PECL, поскольку библиотека mcrypt больше не поддерживается. Для получения дополнительной информации, смотрите здесь .

Шифрование и дешифрование

Шифрование – это процесс кодирования сообщения или информации таким образом, что только авторизованные стороны могут получить к нему доступ, а те, кто не авторизован, не могут. Шифрование само по себе не предотвращает помехи, но запрещает понятное содержание потенциальному перехватчику.

Расшифровка – это процесс взятия зашифрованного или зашифрованного текста, или других данных и преобразования их обратно в текст, который вы или компьютер можете прочитать и понять. Этот термин может быть использован для описания метода расшифровки данных вручную или с помощью дешифрования данных с использованием надлежащих кодов или ключей.

Шифрование широко используется в Интернете для защиты пользовательской информации, передаваемой между браузером и сервером, включая пароли, платежную информацию и другую личную информацию, которую следует считать конфиденциальной. Организации и частные лица также обычно используют шифрование для защиты конфиденциальных данных, хранящихся на компьютерах, серверах и мобильных устройствах, таких как телефоны или планшеты.

Расширение PHP «Mcrypt»

Мы будем использовать расширение «Mcrypt» PHP для этой цели шифрования и дешифрования. Расширение mcrypt является интерфейсом библиотеки криптографии mcrypt.

Расширение mcrypt включено в PHP 5.4 до PHP 7.1. Он был удален из PHP 7.2 и перемещен в неофициальное расширение PECL, поскольку библиотека mcrypt больше не поддерживается.

<?php $filename = "picture.png"; //encrypt file encrypt_file($filename, "encrypted/".$filename,'secret-password'); //decrypt file $decrypted = decrypt_file('encrypted/'.$filename,'secret'); header('Content-type:application/png'); fpassthru($decrypted); function encrypt_file($file, $destination, $passphrase){ $handle = fopen($file, "rb") or die("could not open the file"); $contents = fread($handle,filesize($file)); fclose($handle); $iv = substr(md5("x18x3Cx58".$passphrase,true),0,8); $key = substr(md5("x2DxFCxD8".$passphrase,true).md5("x2DxFCxD8".$passphrase,true),0,24); $opts = array('iv'=>$iv, 'key'=>$key); $fp = fopen($destination,'wb') or die("Could not opn file for writing"); stream_filter_append($fp, 'mcrypt.tripledes',STREAM_FILTER_WRITE, $opts); fwrite($fp, $contents) or die('Could not write to file'); fclose($fp); } function decrypt_file($file,$passphrase){ $iv = substr(md5("x18x3Cx58".$passphrase,true),0,8); $key = substr(md5("x2DxFCxD8".$passphrase,true).md5("x2DxFCxD8".$passphrase,true),0,24); $opts = array('iv'=>$iv, 'key'=>$key); $fp = fopen($file,'rb'); stream_filter_append($fp, 'mdecrypt.tripledes', STREAM_FILTER_READ, $opts); return $fp; }

Источник записи: https://thedebuggers.com

Связанные записи
LinuxWEBWordPressПанели управления

Как уменьшить нагрузку на сервер и повысить скорость WordPress с помощью Memcached | Форум Plesk

WEBWordPress

Как добавить «Режим чтения» в ваши сообщения на блоге

WEBWordPress

6 важных тенденций SEO на 2020 год и последующий период (наши мысли)

WEB

Beaker Browser - Одноранговый браузер для веб-хакеров и разработчиков.