как зашифровать передачу переменных

У меня есть некоторый php-код, например, следующие строки кода, когда вы нажимаете на изображение, оно отправляется в разные отделы.

Departments.php?DepartmentsID=6?&CampusID=1

который показывает в URL при нажатии на него.

Как я могу легко зашифровать его, чтобы он не показывался в URL, то же самое можно сказать и о загрузке какого-либо файла.

download.php?filename=abc.pdf?

как я могу отключить или зашифровать код, чтобы я не появился в URL.

Спасибо


хочу скрыть переменные, которые, как проходящие через ссылку HTML

0

Решение

насколько я понимаю, вы хотите передать какой-то токен в качестве ссылки, а не что-то читаемое, например, имя файла или идентификатор, на ваш сайт для обработки запроса. (пользователь видит только токены и ничего больше)

поэтому нажатие на ссылку дает вам что-то вроде Departments.php?action=907fgash6f8906a6asf6g...

Если вы хотите что-то подобное, вам понадобится какая-то база данных для хранения ваших токенов, чтобы ваш код знал, что делать с данным токеном.

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

Я не понимаю, зачем тебе все это делать. Если вы сможете лучше понять, почему вы хотите это сделать, возможно, будет лучшее решение.

1

Другие решения

В вашей форме PHP измените или установите метод как method = "POST",

0

Вы используете URI в качестве параметра GET, где вы получаете такие осложнения. Вы можете выбрать более связанный метод MVC, чтобы приблизиться к этому:

www.example.com/6/1

Приведенный выше пример представляет идентификатор отдела как 6 и идентификатор кампуса как 1 с использованием маршрутизатора. Я предлагаю использовать AltoRouter.

$router = new AltoRouter();
$router->map('GET|POST', '/[i:d]/[i:c]', function($department, $campus) {
echo "Department $department on Campus $campus.";
// Add your code logic
}, 'Name of route');
$router_match = $router->match();
if($router_match && is_callable($router_match['target'])) {
call_user_func_array($router_match['target'], $router_match['params']);
exit();
}
// Some 404 stuff.

Это может использоваться для взаимного отображения, что означает, что вы можете изменить ссылку на скачивание на что угодно, например, просто на уникальные идентификаторы файлов, которые конечный пользователь должен знать для доступа к нему, и, кроме того, это может быть файл RBAC перед загрузкой. поэтому только пользователи X могут загружать / просматривать определенные темы.

0

Это повторяет часть информации, полученной от других:

  1. использовать POST, это только удаляет возможность чтения данных в URL-адресе запроса, но все еще в открытом тексте.

  2. Убедитесь, что SSL включен для транспортного шифрования

  3. Используйте шифрование на уровне сообщений, сам текст может быть зашифрован, если вы того пожелаете

  4. Дополнительное замечание: если данные настолько чувствительны и хранятся в REST, скажем, в БД, вы можете также зашифровать их там.

В основном «глубокоэшелонированная защита» — это подход, серебряной пули никогда не бывает

0
По вопросам рекламы [email protected]