@sonic1995

Подпись cookie хешем для проверки целостности. Есть смысл?

Привет сообществу! Я хотел бы знать, имеет ли смысл подписывать файлы cookie хешем, чтобы проверить их на целостность (не изменение значений пользователем самостоятельно)? Прежде всего, я понимаю, что я не должен хранить какие-либо чувствительные данные в файлах cookie и вместо этого использовать сессии. Это именно то, что я делаю. Но все же мне не нравится, когда пользователь может модифицировать даже не столь важные данные.

Сейчас использую такую схему: предположим, у нас есть файлы cookie для:
  • PHPSESSID
  • site_lang
  • recently_viewed

Теперь, когда я обновляю(добавляю/удаляю/редактирую) значение cookie, я считаю хэш для cookie с ключом, скажем, cookie_hash и значением например md5(serialize ($ _COOKIE(без PHPSESSID)) + $secret) ключ PHPSESSID для вычисления и проверки хэша не использую, потому что он не управляется классом CookieManager (допустим имя класса для управления куками) и значение может обновиться в любой момент для предотвращения session fixation...
Меня беспокоит только одно: что если какой-либо сторонний пакет\класс\библиотека установит какую-то куку, минуя мой CookieManager, конечно. он ведь нарушит хеш. Стоит ли вообще так делать?

Возможно CookieManager следует вести учет установленных им значений и считать\проверять хеш только для них?
  • Вопрос задан
  • 812 просмотров
Решения вопроса 1
Stalker_RED
@Stalker_RED
Вам не кажется, что вы заново изобретаете JWT?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы