| ||||
| ||||
проблема следующего плана: проверяю работоспособность cryptopro на redhat - установил дистрибутив криптопро: rpm -qa |grep cpcsp cpcsp-rdr-3.0.4-9 cpcsp-pkcs11-3.0.4-9 cpcsp-3.0.4-9 cpcsp-drv-3.0.4-9 cpcsp-kc2-3.0.4-9 cpcsp-capilite-3.0.4-9 . Затем установил дистрибутив криптопро для виндовс. В тестовом уц получил тестовый сертификат - под виндовс. Выполнил экспорт открытого ключа, перенёс файлик на redhat. Далее - проверяю работоспособность криптопро: /usr/CPROcsp/bin/cryptcp -encr -f t_test_cpro.cer test.txt test3.msg CryptCP 3.00 (c) "Crypto-Pro", 2002-2003. Command prompt Utility for data protection. -encr - Encrypts data and creates a message. The following certificate will be used: RDN:Test, RU, lmar@mail.ru Valid from 27.05.2007 22:34:00 to 27.05.2008 22:43:00 Certificate chain aren't checked for this certificate: RDN:Test, RU, lmar@mail.ru Valid from 27.05.2007 22:34:00 to 27.05.2008 22:43:00 Certificate chain aren't checked for this certificate (error code 65536): Do you want to use this certificate ([Y]es, [N]o, [C]ancel)? Certificate chains are checked. Encrypting the data... Encrypted message is created. [ErrorCode: 0x00000000] Смотрю в файлик test3.txt - мешанина из букв и цифр. Вроде зашифровалось. Теперь в качестве проверки пытаюсь распаковать это в Red-Hat. Для этого с помощью оснастки криптопро в виндах копирую контейнер с сертификатами на дискету. Монтирую под редхатом. Вижу содержимое каталожки "floppy2" - файлы с расширением .key . Пытаюсь скопировать их в контейнер системы : /usr/CPROcsp/bin/cryptcp -CSPcert -km -cont "\\.\HDIMAGE\floppy2" Результат - CryptCP 3.00 (c) "Crypto-Pro", 2002-2003. Command prompt Utility for data protection. -CSPcert - Copies certificate from a CSP's key container to specified store. Openning container... Error: мЕОПЮБХКЭМШИ ОЮПЮЛЕРП МЮАНПЮ ЙКЧВЕИ. (0x8009001F) [ErrorCode: 0x8009001f] По коду ошибки на форуме искал, ничего могущего помочь не нашел. Что я делаю не правильно ? | ||||
Ответы: | ||||
| ||||
Да, собственно "в лоб" выполнить дешифровку с открытым ключём (я знаю что это не правильно, но вдруг) тоже не помогает: /usr/CPROcsp/bin/cryptcp -decr -f t_test_cpro.cer test1.msg test1.txt CryptCP 3.00 (c) "Crypto-Pro", 2002-2003. Command prompt Utility for data protection. -decr - Decrypts data from a message. The following certificate will be used: RDN:Test, RU, lmar@mail.ru Valid from 27.05.2007 22:34:00 to 27.05.2008 22:43:00 Certificate chain aren't checked for this certificate: RDN:Test, RU, lmar@mail.ru Valid from 27.05.2007 22:34:00 to 27.05.2008 22:43:00 Certificate chain aren't checked for this certificate (error code 65536): Do you want to use this certificate ([Y]es, [N]o, [C]ancel)? Certificate chains are checked. Decrypting the data... Error: нАЗЕЙР ХКХ ЯБНИЯРБН МЕ МЮИДЕМН. (0x80092004) [ErrorCode: 0x80092004] | ||||
| ||||
Если ключевой контейнер на дискетке, то префикс имени контейнера не такой. HDIMAGE - это только для контейнера на винчестере. Далее, не факт, что имя контейнера совпадает с именем папки. Перечислить все доступные контейнеры можно на линуксе так: csptest -keyset -verifycontext -enum_containers -fqcn в результате определим имя. Проверить работоспособность контейнера по имени можно так: csptest -keyset -check -container имя, где имя получено на предыдущем шаге. | ||||
| ||||
Спасибо за быстрый ответ. Вот результаты: [root@localhost ~]# /usr/CPROcsp/bin/csptest -keyset -verifycontext -enum_containers -fqcn CSP (Type:71) v3.0.3304 KC2 Release OS:Linux CPU:IA32 FastCode:READY,ENABLED. CSP (Type:75) v3.0.3304 KC2 Release OS:Linux CPU:IA32 FastCode:READY,ENABLED. CryptAcquireContext succeeded.HCRYPTPROV: 134664256 OK. Total: [ErrorCode: 0x00000000] [root@localhost ~]# Что тут является префиксом, если конечно он вообще тут есть ? | ||||
| ||||
Говорит, что нет ни одного доступного контейнера. Причина - одна из двух: 1) дискета отсутствует либо неправильно смонтирована (с недостаточными правами) 2) дискета не настроена как считыватель ключей CSP | ||||
| ||||
Соответственно какие права правильные и как настроить дискету как ключевую ? Вопросы примитивнейшие, но документации не вижу, пользуюсь тем что нашел - "КРИПТО-ПРО Приложение командной строки (версия 3.1x)", там описана вообще только одна команда, в разделе "документация" на сайте есть доки только на 2 версию, в руководстве администратора ответов на вышезаданное не нашел. | ||||
| ||||
Уважаемые специалисты Крипто Про, проблема всё еще актуальна, помогите решить. Или сообщите что это не возможно, чтобы не терять времени и выбирать другие продукты. | ||||
| ||||
Дискета должна подключаться как считыватель при установке. Она могла не подключиться, например, в случае, если в тот момент была смонтирована и использовалась другими процессами. Для управления считывателями служит утилита cpconfig (/usr/CPROcsp/sbin/cpconfig): При запуске без параметров она расскажет, что умеет. Просмотреть список считывателей: /usr/CPROcsp/sbin/cpconfig -hardware reader -view Пример добавления дисковода как считывателя: /usr/CPROcsp/sbin/cpconfig -hardware reader -add fat12 -connect 0 -name 'Дисковод #0' | ||||
| ||||
Вот оно как раз смонтировалось автоматически, но почему его нет в csptest ? Вот вывод cspconfig: [root@localhost CPROcsp]# /usr/CPROcsp/sbin/cpconfig -hardware reader -view Nick name: HDIMAGE Connect name: 0 Reader name: Directory, 0 Nick name: HDIMAGE Connect name: Reader name: яРПСЙРСПЮ ДХЯЙЕРШ МЮ ФЕЯРЙНЛ ДХЯЙЕ Nick name: FAT12 Connect name: 0 Reader name: дХЯЙНБНД #0 [root@localhost CPROcsp]# Верхний смонтированый хдимидж - это уже мои эксперименты. Но опять же странно - два считывателя вроде-бы как добавлены в систему, но csptest их не видит. | ||||
| ||||
Такой эксперимент. Размонтируйте дискету (но не вынимайте её). И потом выполните: csptest -keyset -verifycontext -enum_containers -fqcn По идее, он должен сам её смонтировать и прочитать. | ||||
| ||||
Выполнил, только такое ощущение что лучше не стало: [root@localhost CPROcsp]# umount /dev/fd0 [root@localhost CPROcsp]# /usr/CPROcsp/bin/csptest -keyset -verifycontext -enum_containers -fqcn CSP (Type:71) v3.0.3304 KC2 Release OS:Linux CPU:IA32 FastCode:READY,ENABLED. CSP (Type:75) v3.0.3304 KC2 Release OS:Linux CPU:IA32 FastCode:READY,ENABLED. CryptAcquireContext succeeded.HCRYPTPROV: 134664256 \\.\FAT12_0\floppy2 OK. Total: [ErrorCode: 0x00000000] А можно вообще отказаться от дискет отказаться и попробовать каким-то образом использовать контейнер на жестком диске ? | ||||
| ||||
Как раз лучше стало - он теперь показывает данный контейнер в списке, а раньше его не было. Стало быть, контейнер доступен. Теперь нужно с помощью storeman установить сертификат в хранилище My с привязкой к контейнеру - и можно расшифровывать. Документация на Storeman (Storeman.pdf) входит в состав дистрибутивного диска. Если у Вас нет этого файла - можете взять отсюда: http://www.cryptopro.ru/pub/Storeman.pdf | ||||