Size: a a a

React — русскоговорящее сообщество

2021 March 13

V

Vlad in React — русскоговорящее сообщество
Vladimir Klimov
Ну а так - можно ж любые данные из jwt вытащить, это ж просто base64
извлечь можно только payload, все остальное шифруется по ключу который только на сервере
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Vlad
извлечь можно только payload, все остальное шифруется по ключу который только на сервере
Не только payload
источник

IS

Ilya Starchenko in React — русскоговорящее сообщество
Vladimir Klimov
Чтобы проверить подпись, надо иметь ключ
Зачем на клиент отправлять ключ?
А на сервере все-равно всегда надо проверять валиден ли токен, так зачем делать это на клиенте - не понимаю
Этот ключ доступен всем, ничего отправлять не нужно, он лежит на url определенном(И абсолютно не секретном)
источник

IS

Ilya Starchenko in React — русскоговорящее сообщество
Vladimir Klimov
Чтобы проверить подпись, надо иметь ключ
Зачем на клиент отправлять ключ?
А на сервере все-равно всегда надо проверять валиден ли токен, так зачем делать это на клиенте - не понимаю
Что бы быстро было, не делать запрос по сети.
источник

IS

Ilya Starchenko in React — русскоговорящее сообщество
Vlad
извлечь можно только payload, все остальное шифруется по ключу который только на сервере
“по ключу который только на сервере” - это справедливо только для синхронного шифрования, у меня обратная ситуация.
источник

V

Vlad in React — русскоговорящее сообщество
Ilya Starchenko
“по ключу который только на сервере” - это справедливо только для синхронного шифрования, у меня обратная ситуация.
ну если все справедливо делай как хочешь, смысл спорить если ты так уверен?
источник

IS

Ilya Starchenko in React — русскоговорящее сообщество
Я просто новичок во фронте, я не уверен, что здесь так принято .
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Vladimir Klimov
Не только payload
header тоже
В jwt ничего не шифруется вообще по-умолчанию
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Ilya Starchenko
Я просто новичок во фронте, я не уверен, что здесь так принято .
Для чего вы используете токен?
источник

IS

Ilya Starchenko in React — русскоговорящее сообщество
Для аутентификации.
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Ilya Starchenko
Для аутентификации.
Аутентификация происходит на сервере, правильно?
источник

IS

Ilya Starchenko in React — русскоговорящее сообщество
Ну, она происходит на SSO, на сервере скорее авторизация.
источник

V

Vlad in React — русскоговорящее сообщество
Ilya Starchenko
“по ключу который только на сервере” - это справедливо только для синхронного шифрования, у меня обратная ситуация.
не знаю как у тебя там сделано, но по дефолту чтобы проверить что токен не протух и его никто не менял нужен ключ, который есть только на сервере. Ташить его на фронт никак нельзя
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Ilya Starchenko
Ну, она происходит на SSO, на сервере скорее авторизация.
Токен нужен для того, чтобы коммуницировать с сервером, так? И на сервере в любом случае он всегда проверяется
Так смысл в проверке на клиенте?
источник

IS

Ilya Starchenko in React — русскоговорящее сообщество
Vlad
не знаю как у тебя там сделано, но по дефолту чтобы проверить что токен не протух и его никто не менял нужен ключ, который есть только на сервере. Ташить его на фронт никак нельзя
Ты говоришь только об одном варианте jwt, их много, на некоторых даже payload шифруется.
источник

IS

Ilya Starchenko in React — русскоговорящее сообщество
Vladimir Klimov
Токен нужен для того, чтобы коммуницировать с сервером, так? И на сервере в любом случае он всегда проверяется
Так смысл в проверке на клиенте?
Что бы быстро было, запросы могут быть долгими, а проверка на клиенте быстрая.
источник

IS

Ivan Sequend 👾 in React — русскоговорящее сообщество
Ilya Starchenko
Что бы быстро было, запросы могут быть долгими, а проверка на клиенте быстрая.
А как ты на клиенте собираешься проверять токен?
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Ilya Starchenko
Что бы быстро было, запросы могут быть долгими, а проверка на клиенте быстрая.
Вы можете проверить на клиенте если для этого вам не надо расшифровывать ничего с помощью секретных ключей, просто чтобы не делать лишний запрос если токен уже не валиден
Но это не отменяет проверку на сервере в любом случае
источник

IS

Ilya Starchenko in React — русскоговорящее сообщество
Ivan Sequend 👾
А как ты на клиенте собираешься проверять токен?
Берешь откртые ключи, расшифровываешь подпись, берешь хэш от пайлода и сравниваешь.
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Ivan Sequend 👾
А как ты на клиенте собираешься проверять токен?
источник