Не находится открытый ключ на токене

Здравствуйте. Проблема следующая: на токене есть сертификат. Сертификат найти могу через шаблон, а вот открытых ключей почему-то ноль. Почему так? Шаблонный поиск свёл к мининуму, т.к. на токене всего лишь 1 сертификат и из него нужен открытый ключ. Как получить открытый ключ для дальнейшей проверки подписи? Спасибо.

...

CK_ATTRIBUTE publicKeyTemplate[] =
{
    { CKA_CLASS, &publicKeyObject, sizeof(publicKeyObject) }
};

...

r = findObjects(functionList, session, publicKeyTemplate, arraysize(publicKeyTemplate),
        &objects, &objectCount);
CHECK(" findObjects", r == 0, free_signature);

CHECK_AND_LOG(" Checking number of keys found", objectCount > 0, "No objects found\n", free_signature); //здесь получаю ошибку, т.к. objectCount = 0

Re: Не находится открытый ключ на токене

Binger, добрый день!

Покажите, пожалуйста, содержимое токена.
Отправьте скриншот Панели Управления Рутокен на вкладке Сертификаты (нужно установить Драйверы Рутокен) или результат команды
pkcs11-tool --list-objects --module=<путь к PKCS#11> --login --pin 12345678

Какой функцией вы проверяете подпись?

Re: Не находится открытый ключ на токене

Павел Анфимов пишет:

Binger, добрый день!

Покажите, пожалуйста, содержимое токена.
Отправьте скриншот Панели Управления Рутокен на вкладке Сертификаты (нужно установить Драйверы Рутокен) или результат команды
pkcs11-tool --list-objects --module=<путь к PKCS#11> --login --pin 12345678

Какой функцией вы проверяете подпись?

C_Verify

http://forum.rutoken.ru/uploads/images/2020/07/b0f3b2f659b7b300aee02643f46dc044.png

Re: Не находится открытый ключ на токене

Павел Анфимов, можно вам ещё один вопрос? Не в тему, конечно. Вы, как человек хорошо разбирающийся в криптографии, можете мне подсказать почему в значениях подписи сертификатов и списков отзыва первый байт(он же последний после переворота подписи) всегда = 0? В pkcs7, например, нет такого (при подписывании каких-либо данных). На просторах интернета что-то не нашёл ничего толкового на этот счёт. Прикрепил скрин с примером одного из сертификатов:
http://forum.rutoken.ru/uploads/images/2020/07/b02e77bc3ba13b27b4aaf8441d3b92ec.png
http://forum.rutoken.ru/uploads/images/2020/07/43946f9a2b70aaed183c32b35b7dd4f4.png

Данные сертификата:

MIICXDCCAcigAwIBAgIJAMfG35czsLOYMAoGCCqFAwcBAQMDMHoxDzANBgNVBAgMBk1vc2NvdzEPMA0G
A1UEBwwGTW9zY293MRYwFAYDVQQKDA1BTyBBa3Rpdi1Tb2Z0MRAwDgYDVQQLDAdSdXRva2VuMSwwKgYD
VQQDDCNSdXRva2VuIFRFU1QgQ0EgKFApIEdPU1QgUiAyMDEyLTUxMjAeFw0xOTExMDgwODEzMjNaFw0y
MDExMDgwODEzMjNaMDoxFDASBgNVBAMMC1N1cGVyS2V5MjU2MQswCQYDVQQGEwJSVTEVMBMGA1UECAwM
0JzQvtGB0LrQstCwMGYwHwYIKoUDBwEBAQEwEwYHKoUDAgIjAQYIKoUDBwEBAgIDQwAEQC6nxHhV73uK
L0c3yuFGuPFxph29Z6kAWYJDBDEYZfPwr7WUGCsquM9sjMVNfe/OxwJazA7yLJoYM+bXFcA4COKjajBo
MAsGA1UdDwQEAwIGwDATBgNVHSUEDDAKBggrBgEFBQcDBDATBgNVHSAEDDAKMAgGBiqFA2RxATAvBgUq
hQNkbwQmDCTQodCa0JfQmCAi0KDRg9GC0L7QutC10L0g0K3QptCfIDIuMCIwCgYIKoUDBwEBAwMDgYEA
48ufGMN9mm0qb2t8BNZ2vfGCC3BQyGOVJP0eu53wr49mFrsLYLZ49/722wMq51X5dvEcniyrH9WWtvwI
n7rwCRLsTUENpWh6aTnYgcNVgReULKsAHbg8C0cUKhs/a2kBTqDi2+5H3gRlfAVBzbWSldmWndZI5y07
a4k7ne0gjRs===

Re: Не находится открытый ключ на токене

Binger, у вас на токене сертификат без ключевой пары, поэтому не ищется открытый ключ.

По второму вопросу: в первом октете значения bitstring указывается количество неиспользуемых бит.
Согласно п. 8.6.2.2 X.690