Хотя SSL-соединение может проверять подлинность клиента с помощью сертификата на стороне клиента, чаще всего оно используется только для проверки подлинности сервера и создания зашифрованного соединения между идентифицированным сервером (на основании сертификата, привязанного к имени домена) и анонимного клиента.
Для использования клиентских сертификатов клиент должен сгенерировать пару ключей PKCS, запрос на подпись сертификата и получить его.подписано органом, которому доверяет сервер.В отсутствие этого процесса аутентификация клиента обычно выполняется по протоколу поверх SSL, который требует некоторого секрета, который знает только клиент.Обычно это пароль, например, хороший старый логин на сайте.
И наоборот , то, что вы описываете, на самом деле является эфемерным, сгенерированным машиной (из воздуха) пароль (их часто называют «ключами», но важно понимать, что это действительно специальный пароль).То есть после первоначального подключения, аутентифицированного с помощью пароля, введенного пользователем, вы отправляете клиенту эфемерный пароль для хранения и использования для последующих подключений.
Для обработки смены пароля вам просто нужно изменить свой протокол наразрешить эфемерный пароль.Если это неверно, но на сервере он есть, вы можете заблокировать учетную запись, если попытка взлома (хотя это может быть открытие DoS).В противном случае, если это неверно, потому что на сервере нет эфемерного ключа (т. Е. На стороне сервера он был закрыт, потому что пароль был изменен), тогда вы просто отправляете ответ клиенту, чтобы запросить у пользователя текущий пароль.Затем пользователь вводит пароль и, предполагая, что он совпадает, сервер генерирует и передает новый эфемерный пароль.
РЕДАКТИРОВАТЬ: Чтобы уточнить, даже если вы генерируете пары ключей PKCS, не делая это на стороне клиентаи связывание их в сертификат, это не аутентификация сертификата на стороне клиента.Это просто криптографически надежный, сгенерированный машиной эфемерный пароль .
И, имейте в виду, что в конце концов ваша система будет настолько же сильна, как и исходный парольчто привело к созданию (или замене) пары ключей.