Программно-аппаратный токен lsToken Комитет ТК-26 подготовил документ « Методические рекомендации. Расширение PKCS#11 для использования российских стандартов ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012, ГОСТ Р 34.12-2015 и ГОСТ Р 34.13-2015». Данные рекомендации определяют расширение спецификаций PKCS#11 для использования криптографических алгоритмов ГОСТ Р 34.10-2012 (электронная подпись), ГОСТ Р 34.11-2012 (хэширование), ГОСТ Р34.12-2015 и ГОСТ Р 34.13-2015 (алгоритмы шифрования кузнечик и магма), а также алгоритмов, построенных на их основе, а также использования ключей, сертификатов, параметров алгоритмов и других объектов, предназначенных для работы с этими стандартами. Данный документ базируется на стандарте PKCS#11 v.2.40. На базе этих методических рекомендаций был разработан программно-аппаратный токен lsToken, реализующий российские криптографические стандарты ГОСТ Р 34.10-2001/2012, ГОСТ Р 34.11-94/2012, ГОСТ Р 34.12-2015 и ГОСТ Р 34.13-2015, а также ГОСТ 28147-89. Программно-аппаратный токен lsToken входит в состав семейства токенов LS11. В качестве ключевого носителя используется обыкновенная флешка - USB-флеш-накопитель. Токен lsToken может хранить объекты ключевой пары (CKO_PRIVATE_KEY, CKO_PUBLIC_KEY) типа CKK_GOSTR3410 или CKK_GOSTR3410_512, объекты сертификатов CKO_CERTIFICATE типа X.509, объекты данных CKO_DATA, ключи для симметричного шифрования и хеширования, а также параметры домена. lsToken поддерживает следующие механизмы PKCS#11: bash-4.3$ p11conf -m -A /usr/local/lib64/libls11usb2016.so -c 0 Mechanism #0 Mechanism: CKM_GOSTR3410_KEY_PAIR_GEN (0x1200) Key Size: 256-256 Flags: 0x10000 ( CKF_GENERATE_KEY_PAIR| ) Mechanism #1 Mechanism: CKM_GOSTR3410_512_KEY_PAIR_GEN (0xD4321005) Key Size: 512-512 Flags: 0x10000 ( CKF_GENERATE_KEY_PAIR| ) Mechanism #2 Mechanism: CKM_GOSTR3410 (0x1201) Key Size: 256-256 Flags: 0x2800 ( CKF_SIGN|CKF_VERIFY| ) Mechanism #3 Mechanism: CKM_GOSTR3410_512 (0xD4321006) Key Size: 512-512 Flags: 0x2800 ( CKF_SIGN|CKF_VERIFY| ) . . . Mechanism #48 Mechanism: CKM_TLS12_MASTER_KEY_DERIVE (0x3E0) Key Size: 48-48 Flags: 0x80000 ( CKF_DERIVE| ) Mechanism #49 Mechanism: CKM_TLS12_KEY_AND_MAC_DERIVE (0x3E1) Key Size: 32-32 Flags: 0x80000 ( CKF_DERIVE| ) Mechanism #50 Mechanism: CKM_TLS_MAC (0x3E4) Key Size: 12-48 Flags: 0x2800 ( CKF_SIGN|CKF_VERIFY| ) Mechanism #51 Mechanism: CKM_TLS_KDF (0x3E5) Key Size: 32-48 Flags: 0x80000 ( CKF_DERIVE| ) Mechanism #52 Mechanism: CKM_SHA_1 (0x220) Key Size: 0-0 Flags: 0x400 ( CKF_DIGEST| ) Mechanism #53 Mechanism: CKM_MD5 (0x210) Key Size: 0-0 Flags: 0x400 ( CKF_DIGEST| ) OK bash-4.3$ Программно-аппаратный токен поставляется как флешка, на которой создан токен, а также хранятся (каталог DISTR) для различных платформ (MS Windows/Linux/ARM/MK) и разрядности: Библиотека PKCS#11 ls11usb; Утилита p11conf; Руководство Программиста «lsToken – программно-аппаратная реализация PKCS#11 v2.40 с поддержкой ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012, ГОСТ Р 34.12-2015 и ГОСТ Р 34.13-2015»; Тестовые сертификаты; Дистрибутивы Firefox и Thunderbird с поддержкой российской криптографии; Дополнительное ПО по желанию заказчика (на цену не влияет), работающее через интерфейс PKCS#11. Если вы используете токен lsToken в Linux, то желательно, чтобы в системе было включено автомонтирование USB-устройств. Если этого нет, то необходимо примонтировать флэшку с токеном. После получения токена lsToken все, что требуется пользователю – скопировать с флэшки библиотеку ls11usb, а также установить требуемое ПО. И самое главное, поскольку. Пользователь получает токен с предустановленным User PIN (см. README.txt на флэшке) и первым делом в целях безопасности он должен сменить этот PIN-код. Для этого в состав поставки входит утилита p11conf : #p11conf -h usage: p11conf [-hitsmIupPred] -A APIpath [-c s-U userPin -S SOPin -n newPin -L label] -h display usage -i display PKCS11 info -t display token info -s display slot info -m display mechanism list -I initialize token -u initialize user PIN -p set the user PIN -P set the SO PIN -r remove all objects -e enumerate objects -d dump enumerated object attributes # И так, первое, что должен сделать пользователь после получения токена - это изменение user PIN: #p11conf -A /usr/local/lib64/ls11usb2016.so -p -c 0 Enter user PIN: ********* Enter the new user PIN: ************ Re-enter the new user PIN: *********** # Воспользовавшись этой утилитой, можно также получить всю информацию об обслуживаемых слотах и находящихся в них токенах: bash-4.3$ /usr/local/bin64/p11conf -s -A /usr/local/lib64/libls11usb2016.so Slot with ID 0 Info Description: Flash Udisk Manufacturer: Generic Flags: 0x7 ( TOKEN_PRESENT|REMOVABLE_DEVICE|HW_SLOT ) Hardware Version: 2.0 Firmware Version: 2.0 Token #0 Info: Label: LS11USB_RAB Manufacturer: Generic Model: Flash Udisk Serial Number: ECBC5E8FEA09E720 Flags: 0x80040D ( RNG|LOGIN_REQUIRED|USER_PIN_INITIALIZED|TOKEN_INITIALIZED) Sessions: 0/256 R/W Sessions: 0/256 PIN Length: 4-32 Public Memory: -1/-1 Private Memory: -1/-1 Hardware Version: 2.0 Firmware Version: 2.0 Time: 17:59:27 Slot with ID 1 Info Description: MassStorage Manufacturer: Rutoken Flags: 0x7 ( TOKEN_PRESENT|REMOVABLE_DEVICE|HW_SLOT ) Hardware Version: 2.0 Firmware Version: 2.0 Token #1 Info: Label: LS11USB_RUTOKEN_64 Manufacturer: Rutoken Model: MassStorage Serial Number: 40D17616A5F6F718 Flags: 0x80040D ( RNG|LOGIN_REQUIRED|USER_PIN_INITIALIZED|TOKEN_INITIALIZED|) Sessions: 0/256 R/W Sessions: 0/256 PIN Length: 4-32 Public Memory: -1/-1 Private Memory: -1/-1 Hardware Version: 2.0 Firmware Version: 2.0 Time: 17:59:27 . . . Slot with ID 3 Info Description: LS11USB2016 Slot 3 Manufacturer: LISSI-Soft Ltd Flags: 0x6 ( REMOVABLE_DEVICE|HW_SLOT ) Hardware Version: 2.0 Firmware Version: 2.0 OK bash-4.3$ Все, после копирования в систему библиотеки ls11usb и смены пользовательского PIN, токен lsToken готов к использованию в приложениях:, например, подключайте в Firefox, Thunderbird и пользутесь ГОСТ-ым https, подписывайте и шифруйте почту. Если у вас на токене lsToken хранится, ваш личный сертификат, полученный в одном из аккредитованных УЦ, то вы можете получить доступ в личный кабинет на портале Госуслуг. Альтернативой такому токену может быть облачный токен LS11CLOUD: Дополнительные материалы по PKCS#11:1. Доступ к порталу Госуслуг из Linux с токенами PKCS#112. Доступ в личный кабинет налоплательщика ФНС с помощью браузера Firefox с поддержкой российской криптографии 3. Браузер Redfox и почтовый клиент Redfoxmail 4. Токены PKCS#11: сертификаты и закрытые ключи 5. Токены PKCS#11: генерация ключевой пары и неизвлекаемость приватного ключа (Продолжение) |
© 2002-2018. ООО "ЛИССИ-Софт". Все права защищены Телефон: +7(495) 589-99-53 Техническая поддержка: +7(499) 110-90-40 E-mail: [email protected] |