Использовать отпечаток клиента для кодирования токена JWT? - PullRequest
0 голосов
/ 26 января 2019

Мне интересно, будет ли наилучшей практикой использовать отпечаток клиента в качестве JWT-секрета для кодирования.Однако я не смог найти что-либо в WWW по этому вопросу, но пока мне имеет смысл это делать.

Я подумываю о создании клиентской части отпечатка пальца с помощью JavaScript и отправке ее в API при каждом вызове.API должен затем использовать отпечаток пальца с жестко закодированным секретом вместе для кодирования и декодирования токена.

Разве это не хороший метод предотвращения CSRF?Или я что-то упускаю?Или вообще: как лучше всего предотвратить CSRF с помощью JWT?(Я использую PHP и VueJS, может быть, есть решение, связанное с регистром?)

1 Ответ

0 голосов
/ 28 января 2019

Я никогда не слышал об этом.

Токен подписан с использованием закрытого ключа или общего секрета.Использование отпечатка пальца означает, что вы можете сопоставить один (или несколько) пальцев с закрытым ключом, а затем вычислить токен.

Однако это выглядит очень похоже на протокол Webauthn , с которым я работаю,При использовании устройств Android, браузер может взаимодействовать с отпечатком пальца / блокировки экрана для аутентификации пользователя.Данные, отправляемые устройством, представляют собой JWT, который можно проверить с помощью API Google (см. Android SafetyNet ).

...