Чтобы доказать отсутствие подделки данных, пользователь будет использовать цифровую подпись, которая будет хешем сертификата с закрытым ключом пользователя.
Нет, цифровая подпись генерируется поверх данных сообщения с использованием закрытого ключа. Сертификат используется для его проверки
Сервер в ответ проверяет Цифровой сертификат и получает открытый ключ для проверки Цифровой подписи, и после проверки Сервер зашифрует данные с помощью Открытого ключа и отправит пользователю. Я также использую https для безопасной передачи информации.
Вы должны связать открытый ключ с учетной записью пользователя при регистрации
с https, дополнительное шифрование избыточно и бесполезно
шифрование с открытым ключом (при условии RSA) ограничено размером ключа.
Откуда я могу получить цифровой сертификат, в основном это доверенный CA?
У каждого браузера есть свой список доверенных. Кроме того, в ЕС существует список квалифицированных поставщиков сертификатов. Списки разные.
Вы также можете создать свой собственный CA
Существует ли REST API Центром сертификации, куда я отправляю сертификат для подтверждения сертификата?
формат сообщения для запроса сертификата стандартизирован (pkcs # 10), но протокол соединения с ЦС - нет. Возможно, что CA имеет службы REST, но в любом случае CA никогда не выдаст сертификат без проверки пользовательских данных, включенных в сертификат
.
Есть ли какая-нибудь библиотека для анализа сертификата для извлечения информации?
Конечно, ищите ваш язык программирования