Хорошо ли использовать в качестве CSRF токена результат password_hash() ?

Q_BASIC

Хранитель порядка
Регистрация
30 Ноя 2013
Сообщения
516
Реакции
1.240
Приветствую,

Хорошо ли использовать в качестве CSRF токена результат password_hash() ?

Думаю, сделать csrf() и csrf_verify() один на основе секретного ключа + ip адреса + имени браузера генерирует код, другой с этой строкой проверяет.

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

К примеру, версию PHP определить, если в разных версиях будут доступны разные алгоритмы.

Вроде и мелочь, а не приятно
 
на сколько знаю, то csrf токен должен каждый раз обновляться с обновлением страницы, т.е. не вариант делать его статическим. Берете набор символов ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-. и рандомом формируете токен нужной длины (25 символов например), при get запросе пишете его в сессию пользователя, и куки, а при post, put, delete сравниваете
 
Совсем не то

1. Пасс хеш всегда возвращает разные хеши для одной строки, так что тут всё хорошо
2. Хранение токена в сессии. Открыл человек в одной вкладке форму, потом пошёл в другой вкладке сайт смотреть, где другие формы. А после чего на первой вкладке форму отправил - а ему ошибка - токен не верный

Или предлагаете для каждой вкладки токен отдельно хранить?

3. У каждой формы свой ключ, с уникальностью всё хорошо
на сколько знаю, то csrf токен должен каждый раз обновляться с обновлением страницы, т.е. не вариант делать его статическим. Берете набор символов ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-. и рандомом формируете токен нужной длины (25 символов например), при get запросе пишете его в сессию пользователя, и куки, а при post, put, delete сравниваете
 
Последнее редактирование:
Делай симметричным/асимметричным шифрованием... Кодируй любые значения. Получив тукин - расшифровываешь и получаешь необходимые тебе данные.

Варианты с генерацией 2 одинаковых тукинов исключены.
 
Назад
Сверху