powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / JWT токен с симметричным алгоритмом.
25 сообщений из 30, страница 1 из 2
JWT токен с симметричным алгоритмом.
    #39685277
WaspNewCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Объясните пожалуйста кое что. Немного не догоняю.

Есть ли смысл использовать JWT токен, подписанный симметричным алгоритмом ? Для чего он вообще нужен ?
Чтобы клиент мог проверить полученный от сервера токен, ему необходимо отдать ключ симметричного шифрования, и что тогда помешает злоумышленникам подделывать токен, зная этот ключ ? А если не отдавать ключ, то тогда клиент не сможет проверить его получается.
В чем смысл существования симметричного алгоритма, если у него такая проблема ? Могу предположить лишь, что единственным выходом является не давать клиенту секретный ключ, давая возможность проверять валидность ключа. Но это наверное не очень удобно и красиво.
И другой вопрос. имея на руках итоговый текст, зная алгоритм шифрования - разве нельзя вычислить симметричный ключ, которым подписан JWT токен?

Если же использовать асимметричный алгоритм. То как нужно передавать клиенту открытый ключ?
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685291
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCoreЕсть ли смысл использовать JWT токен, подписанный симметричным алгоритмом ? Для чего он вообще нужен ?

Вы о чём вообще? Какой ещё симметричный алгоритм?


WaspNewCoreИ другой вопрос. имея на руках итоговый текст, зная алгоритм шифрования - разве нельзя вычислить симметричный ключ, которым подписан JWT токен?
Если же использовать асимметричный алгоритм. То как нужно передавать клиенту открытый ключ?

Идите ещё раз почитайте про устройство JWT. Нет там шифрования.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685310
WaspNewCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVostt,

RS256 - ассиметричный алгоритм
HS256 - симметричный алгоритм

Соответственно вопрос был - зачем существует HS256, если мы должны либо открыть ключ (и рисковать тем, что токен смогут свободно подделывать), либо не открывать, но тогда у клиента не будет возможности проверить подпись.

Да речь о подписи а не шифровании в данном случае.
PS. Шифрование в JWT токене тоже, по моему, есть. Но сейчас это меня не интересует. Сейчас мне нужно понять насчет подписи.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685311
WaspNewCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
RS256 (RSA Signature with SHA-256) is an asymmetric algorithm, and it uses a public/private key pair: the identity provider has a private (secret) key used to generate the signature, and the consumer of the JWT gets a public key to validate the signature. Since the public key, as opposed to the private key, doesn't need to be kept secured, most identity providers make it easily available for consumers to obtain and use (usually through a metadata URL).

HS256 (HMAC with SHA-256), on the other hand, is a symmetric algorithm, with only one (secret) key that is shared between the two parties. Since the same key is used both to generate the signature and to validate it, care must be taken to ensure that the key is not compromised.

Т.е. предлагается не открывать симметричный ключ ?
Вообще нужно ли клиенту иметь возможность проверять, что токен не подделан ? Может и не нужно...
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685337
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt разве ? там ж есть тем каким алгоритмом обработать строку что лежит в клаймзах к примеру. ну вот ту можно поглять что будет https://jwt.io/
или вон https://www.example-code.com/csharp/jwt_rsa_create.asp

WaspNewCore
клиент авторизируется и ему в ответ дается токен чтоб он его потом подцеплял к запросу. клиенту не надо валидировать токен уже. он его использует, по поводу симметричного ключа вы не понимаете что есть публичный ключ а есть приватный, вообще у вас каша в голове. просто отдохните и почитай литературу снова.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685361
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCoreОбъясните пожалуйста кое что. Немного не догоняю.

Есть ли смысл использовать JWT токен, подписанный симметричным алгоритмом ? Для чего он вообще нужен ?
Чтобы клиент мог проверить полученный от сервера токен, ему необходимо отдать ключ симметричного шифрования, и что тогда помешает злоумышленникам подделывать токен, зная этот ключ ? А если не отдавать ключ, то тогда клиент не сможет проверить его получается.
В чем смысл существования симметричного алгоритма, если у него такая проблема ? Могу предположить лишь, что единственным выходом является не давать клиенту секретный ключ, давая возможность проверять валидность ключа. Но это наверное не очень удобно и красиво.
И другой вопрос. имея на руках итоговый текст, зная алгоритм шифрования - разве нельзя вычислить симметричный ключ, которым подписан JWT токен? JSON Web Token - используется ассиметричный алгоритм

WaspNewCoreЕсли же использовать асимметричный алгоритм. То как нужно передавать клиенту открытый ключ?я так понимаю, что предполагается использование защищённого канала
каждый ответ от сервера может быть проверен этим ключом

для отправки запроса клиент просто вычисляет хэш от параметров с солью в виде этого ключа и прикладывает его к каждому своему запросу, так сервер может убедиться что клиент именно тот кому выдали открытый ключ
вопрос достоверности открытого ключа на клиенте, я так понимаю не учитывается
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685377
WaspNewCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
handmadeFromRu,

Я знаю как это работает.
"клиенту не надо валидировать токен уже" - вот в этом и был вопрос. Нужно ли клиенту убеждаться, что токен не подделан ?
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685451
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCore,
клиент не сможет это сделать в любом случае(тогда клиент будет знать и хранить лишнее у себя), да и зачем если он клиент и смог авторизоваться?
хотите защиту от снипинга то ssl
сервак по этому токену потом будет валидировать ответ от клиента и ему уже надо будет либ посылать в пешее клиента либ работать с ним.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685470
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCorePS. Шифрование в JWT токене тоже, по моему, есть. Но сейчас это меня не интересует. Сейчас мне нужно понять насчет подписи.

Но ваш вопрос не относится к JWT, а к вопросам криптографии и защиты информации в целом. JWT не отвечает на вопросы, как вы будете обмениваться ключами, секретами, но действует в рамках стандартов и рекомендаций.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685486
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuhVostt разве ? там ж есть тем каким алгоритмом обработать строку что лежит в клаймзах к примеру. ну вот ту можно поглять что будет https://jwt.io/
или вон https://www.example-code.com/csharp/jwt_rsa_create.asp

Можно. Но нафига? Обмен токеном идёт по зашифрованному каналу.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685494
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan) JSON Web Token - используется ассиметричный алгоритм

Там дофига алгоритмов используется, но обязательный - это обычная хеш функция hmac sha-256.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685594
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

к этому я пытался вывести ТС)
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685780
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCoreНужно ли клиенту убеждаться, что токен не подделан ?

Зачем?
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685957
WaspNewCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Агнец за бортом,

Если токен выдается одним сервером, а используются другими, то должно быть доверие к токену. Иначе может получится, что Сервер1 отправит Серверу2 запрос "а переведи-ка на этот счет пару миллиардов долларов. Вот токен подтверждающий мое право".
Соответственно доверие к токену у клиента должно быть.

Возможно, что стандартном подходе Клиент-Сервер, может и не нужно особое доверие к токену. Но тоже спорно.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685994
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCoreСоответственно доверие к токену у клиента должно быть.

Это сомнительное удовольствие, валидировать токен на клиенте.
Вам когда паспорт выдают, вы как его проверяете? :)

Доверие должно быть со стороны сервера, а клиент просто получил бумажку для получения доступа к ресурсам.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39685997
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCore,

Да и не сможете вы проверить валидность токена на клиенте, так как секрет клиенту не известен.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39686132
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

есть способы, в принципе https на этом пострено
в частности с паспортом, его же не по почте присылают, валидацией выступает работник паспортной службы у которого его получаешь и знаки защиты
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39686138
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)есть способы, в принципе https на этом пострено
в частности с паспортом, его же не по почте присылают, валидацией выступает работник паспортной службы у которого его получаешь и знаки защиты

Ну так и клиент получает токен у сервера авторизации. Благодаря HTTPS, можно сказать, что напрямую. Зачем его ещё валидировать?

При чём, это невозможно, так как валидировать может только сервер, куда клиент получает доступ с помощью токена.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39686159
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)hVostt,

есть способы, в принципе https на этом пострено
в частности с паспортом, его же не по почте присылают, валидацией выступает работник паспортной службы у которого его получаешь и знаки защиты
Не понимаю, почему тут не принято давать ссылки на документацию?
авторJSON Web Token (JWT) — это открытый стандарт (RFC 7519) для создания токенов доступа, основанный на JSON формате. Как правило, используется для передачи данных авторизации в клиент-серверных приложениях. Токены создаются сервером, подписываются секретным ключом и передаются клиенту, который в дальнейшем использует данный токен для подтверждения своей личности.
Иными словами, токен это заменитель куки и он для сервера а не для клиента.
Т.е. чтобы сервер тебя узнал при повторном входе.
Если клиент сам стал сервером, тогда другой разговор.
А так, ни куки, ни токены валидировать не надо.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39686165
WaspNewCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttWaspNewCore,

Да и не сможете вы проверить валидность токена на клиенте, так как секрет клиенту не известен.

Ассиметричные алгоритмы работают так, что проверить можно. Т.к. шифруется все секретным ключем, а проверяется открытым ключем.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39686170
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCore,
Все можно написать, только это уже не стандарт и с сервером надо договорится.
Можно отпечатки пальцев слать.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39686172
WaspNewCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123kealon(Ruslan)hVostt,

есть способы, в принципе https на этом пострено
в частности с паспортом, его же не по почте присылают, валидацией выступает работник паспортной службы у которого его получаешь и знаки защиты
Не понимаю, почему тут не принято давать ссылки на документацию?
авторJSON Web Token (JWT) — это открытый стандарт (RFC 7519) для создания токенов доступа, основанный на JSON формате. Как правило, используется для передачи данных авторизации в клиент-серверных приложениях. Токены создаются сервером, подписываются секретным ключом и передаются клиенту, который в дальнейшем использует данный токен для подтверждения своей личности.
Иными словами, токен это заменитель куки и он для сервера а не для клиента.
Т.е. чтобы сервер тебя узнал при повторном входе.
Если клиент сам стал сервером, тогда другой разговор.
А так, ни куки, ни токены валидировать не надо.


Нет. Это не просто кука. А некий "паспорт" где прописаны права доступа предоставленные юзеру (к примеру).
Токен нужен не только самому серверу - проверить, что токен не подделали, но и возможной третьей стороне.

В яндексе на этом многое построено, вот почитайте
https://tech.yandex.ru/oauth/

Юзер логинится в свой акк только раз, а уже сотни приложений могут использовать яндексовый токен как тот самый паспорт юзера.
Соответственно встает необходимость убеждатся, что токен не подделан. Что его сгенерировал Яндекс.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39686174
WaspNewCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123WaspNewCore,
Все можно написать, только это уже не стандарт и с сервером надо договорится.
Можно отпечатки пальцев слать.

Это именно что стандарт.
Обычно как раз таки JWT Токен (или OAth токен) может генерится сервером авторизации. А использоватся уже на других серверах. Достаточно стандартный подход.

Вон целая компания только этим и живет, что предоставляет свои сервера для генерации токенов.
https://auth0.com/

Хотя все это можно сделать и самому и бесплатно :)
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39686202
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCoreНет. Это не просто кука. А некий "паспорт" где прописаны права доступа предоставленные юзеру (к примеру).ну дак сервер их читает т.к. забыл этот список при переходе по страничкам.

WaspNewCoreВ яндексе на
Тогда тему на oauth надо менять.
И стандарт его как раз приводить.
...
Рейтинг: 0 / 0
JWT токен с симметричным алгоритмом.
    #39686203
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WaspNewCore,
Я к тому что jwt не должен валидироваться и согласен с hWostt.
А ТС пусть уточняет про oauth.
...
Рейтинг: 0 / 0
25 сообщений из 30, страница 1 из 2
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / JWT токен с симметричным алгоритмом.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]