PKCS # 11 аутентификация TLS - PullRequest
       36

PKCS # 11 аутентификация TLS

1 голос
/ 30 сентября 2011

Я новичок в PKCS # 11 и картах общего доступа, но, насколько я понимаю, на карте есть сертификаты, которые можно извлечь, и закрытый ключ (ключи), которые не могут. Я пытаюсь написать приложение, которое взаимодействует с веб-сервером, для которого требуются сертификаты для аутентификации. Библиотека PKCS, предоставляемая поставщиком оборудования, довольно тонкая. По сути, я могу получить доступ к объекту сертификата или подписать данные с помощью закрытого ключа на карте.

В чем я не уверен, как я справляюсь с рукопожатием и тому подобное при подключении к веб-серверу. Должен ли я предоставить сертификат вместе с чем-то еще, подписанным секретным ключом? Если да, что я подписываю с помощью закрытого ключа? Я гуглил это, но не смог найти какое-то объяснение этому процессу.

Ответы [ 2 ]

0 голосов
/ 14 июля 2012

Я думаю, вам просто нужно получить сертификат клиента с вашего устройства PKCS # 11 и затем использовать его вместе с запросом, который вы делаете на веб-сервере.Вам не нужно внедрять SSL, если вы используете существующие библиотеки.Они должны содержать все, что вам нужно.

0 голосов
/ 30 сентября 2011

Если вы используете ключ RSA на общей карте доступа для аутентификации, вам нужно отправить сообщение CertificateVerify в рукопожатие, которое содержит цифровые подписи над записями рукопожатия в этой точке.Конечно, вам также необходимо отправить сертификат клиента.Подробнее см. §7.4.8 спецификации TLS .

Надеемся, ваша библиотека TLS поддерживает использование криптографического модуля PKCS # 11.Если нет, возможно, вам придется переключиться.Реализация TLS самостоятельно, когда вы не знакомы со спецификацией, нецелесообразна.

...