Как подписать и защитить данные запроса? Стоит задача защитить запрос вида, от:
1. Перебора $ORDERID
2. Видимости $ORDERID
3. Знать что запрос пришел оттуда, где его создали, а не "вручную"
/payment/$ORDERID/
/payment/$USERID/
Вначале была идея: /payment/$ORDERID/$SIGN, где $SIGN = hash( 'sha256', $orderID . $this->salt)
Но думаю этого недостаточно. Хочется не светить $ORDERID и $USERID
Есть ли смысл использовать:$nonceSize = openssl_cipher_iv_length($METHOD);
$nonce = openssl_random_pseudo_bytes($nonceSize);
$ciphertext = openssl_encrypt(
$message,
$METHOD,
$key,
OPENSSL_RAW_DATA,
$nonce
);
return base64_encode($nonce.$ciphertext);
Чтобы получить просто запрос, без подписи: /payment/$CRYPTEDDATA
$CRYPTEDDATA = crypt($ORDERID);
Или нужно еще добавлять хэш? Или шифрования достаточно? Не хочется усложнять до уровня бреда.

21 Авг 2019 в 07:13
170 +1
0
Ответы
1

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

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

Чтобы обеспечить безопасность запроса и обеспечить его происхождение, можно использовать метод аутентификации, такой как HMAC (Hash-based Message Authentication Code), который позволяет проверить целостность запроса и убедиться, что он был создан именно авторизованным пользователем или системой.

Таким образом, вместо простого шифрования данных в запросе, можно также добавить HMAC для подписи запроса. Например, при формировании запроса /payment/$ORDERID/ можно добавить строку с подписью HMAC и валидировать ее при получении запроса, чтобы удостовериться в его подлинности.

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

20 Апр в 13:05
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 84 061 автору
Первые отклики появятся уже в течение 10 минут
Прямой эфир