(...) отправьте им разные publi c ключи и (...) расшифруйте его, используя один закрытый ключ, который у меня есть.
Насколько я знаю RSA закрытый ключ может иметь только один publi c ключ .
Но теперь из-за некоторых соображений безопасности мне нужно отправлять им разные publi c keys (...)
Они все еще "publi c", если вам нужно послать разные publi c ключ каждому клиенту?
Если я хорошо понимаю ваш Проблема, я бы рекомендовал переключиться на PKI с сертификатами (например, X.509), в которых вы являетесь органом власти. Поток будет:
- Клиент генерирует закрытый ключ
- Клиент создает CSR
- Клиент отправляет вам CSR
- Вы подписываете CSR своим CA
- Вы отправляете обратно CRT
- Клиент использует свой закрытый ключ для подписи JWT
- Клиент отправляет вам JWT
- Вы проверяете это в своем CA
С этим решением вы получите все преимущества аутентификации сертификата клиента.
Если в какой-то момент вы больше не доверяете клиенту, вы можете использовать список отзыва.
Кстати, я никогда не видел такого потока ... и поскольку я не знаю Не знаю, чего именно вы хотите достичь, вы должны прочитать это как ответ на вопрос «Как я могу реализовать аутентификацию сертификата клиента с помощью JWT?»