Поддерживаемые параметры для создания ключевой пары (PKCS#11)

Добрый день!

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

Может быть, у Вас есть какой-то аналогичный документ, как вот этот:
https://developer.aladdin-rd.ru/pkcs11/ … arams.html
И, если есть что-то подобное, то не могли бы Вы им поделится?

Re: Поддерживаемые параметры для создания ключевой пары (PKCS#11)

Добрый день!
Есть что-то подобное и даже лучше:
* Комплект разработчика с примерами генерации ключей ГОСТ 34.10-2012 -- https://www.rutoken.ru/developers/sdk/
* Портал документации с наводкой на искомый вами раздел -- https://dev.rutoken.ru/pages/viewpage.a … 34.10-2012

Re: Поддерживаемые параметры для создания ключевой пары (PKCS#11)

Большое спасибо!

В SDK - примеры генерации ключей.
В портале с документацией - также приведены примеры для генерации ключей, с двумя параметрами.
Из портала с документацией мы видим, что для генерации 34.10 2012 256 я могу использовать следующие параметры: 1.2.643.2.2.35.1 и 1.2.643.7.1.2.1.1.2
Но из данных источников непонятно, что поддерживается на ЭЦП 2.0, что поддерживается на ЭЦП 3.0, а что на рутокене S.
Также нигде не указано, что не поддерживается 1.2.643.2.2.35.0 и 1.2.643.7.1.2.1.1.1.
Также не указано, что поддерживаются 1.2.643.2.2.35.2 и 1.2.643.7.1.2.1.1.3

Хотелось бы видеть такой список, а не примеры генерации ключевой пары.

Re: Поддерживаемые параметры для создания ключевой пары (PKCS#11)

Вы правы, такой информации в публичной документации не хватает. Вынужден делиться ею здесь.

1. Токены Рутокен ЭЦП 2.0 и Рутокен ЭЦП 3.0 имеют сквозную нумерацию микропрограммы. Узнать номер микропрограммы можно из поля firmwareVersion.major структуры CK_TOKEN_INFO.
2. Поддержка ГОСТ34.10-2012 появилась в Рутокен с микропрограммы #20.
3. Рутокен ЭЦП с версией микропрограммы #20 и выше поддерживает следующие наборы параметров:

* ГОСТ34.10 2001:

kGostR3410ParamsetA = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x23, 0x01 }
kGostR3410ParamsetXa = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x24, 0x00 }

kGostR3410ParamsetB = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x23, 0x02 }

kGostR3410ParamsetC = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x23, 0x03 }
kGostR3410ParamsetXb = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x24, 0x01 }

* ГОСТ34.10 2012 (256):

kGostR3410ParamsetA = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x23, 0x01 }
kGostR3410ParamsetXa = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x24, 0x00 }
kGostR3410ParamsetB256 = { 0x06, 0x09, 0x2A, 0x85, 0x03, 0x07, 0x01, 0x02, 0x01, 0x01, 0x02 }

kGostR3410ParamsetB = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x23, 0x02 };
kGostR3410ParamsetC256 = { 0x06, 0x09, 0x2A, 0x85, 0x03, 0x07, 0x01, 0x02, 0x01, 0x01, 0x03 };

kGostR3410ParamsetC = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x23, 0x03 };
kGostR3410ParamsetXb = { 0x06, 0x07, 0x2A, 0x85, 0x03, 0x02, 0x02, 0x24, 0x01 };
kGostR3410ParamsetD256 = { 0x06, 0x09, 0x2A, 0x85, 0x03, 0x07, 0x01, 0x02, 0x01, 0x01, 0x04 };

* ГОСТ34.10 2012 (512):

kGostR3410ParamsetA512 = { 0x06, 0x09, 0x2A, 0x85, 0x03, 0x07, 0x01, 0x02, 0x01, 0x02, 0x01 };

kGostR3410ParamsetB512 = { 0x06, 0x09, 0x2A, 0x85, 0x03, 0x07, 0x01, 0x02, 0x01, 0x02, 0x02 };

4. Рутокен ЭЦП с версией микропрограммы #24 и выше дополнительно поддерживает следующие наборы параметров:

* ГОСТ34.10 2012 (256):

kGostR3410ParamsetA256 = { 0x06, 0x09, 0x2A, 0x85, 0x03, 0x07, 0x01, 0x02, 0x01, 0x01, 0x01 };

* ГОСТ34.10 2012 (512):

kGostR3410ParamsetC512 = { 0x06, 0x09, 0x2A, 0x85, 0x03, 0x07, 0x01, 0x02, 0x01, 0x02, 0x03 };

5. Рутокен S не позволяет выполнять генерацию ассимметричных ключей на токене. Таблица, отражающая возможности устройств и их поддержку в rtPKCS11 и rtPKCS11ECP размещена здесь: https://dev.rutoken.ru/pages/viewpage.a … Id=3178538

Re: Поддерживаемые параметры для создания ключевой пары (PKCS#11)

Отлично!

Большое спасибо за оперативный и развёрнутый ответ!

Хорошего Вам дня!