Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2009(UTC) Сообщений: 41
|
Добрый день!
Прошу ответить на вопрос. Возможно ли использованием програмы использующей вызовы Крипто-API Крипто-Про в среде MONO Apache2. Программа написана на C#. Использует среду mono. Выявлены ошибки в вызове CryptSignMessage. Ошибки никакие- кодов нет. Хотя консольное приложение запускается через mono без ошибок Apache тоже использует mono для компиляции C#, но видимо иначе чем для консоли. Видимо есть разница. Просьба откликнуться.
С уважением, Андрей
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.02.2008(UTC) Сообщений: 1,491 Откуда: Крипто-Про
Поблагодарили: 40 раз в 37 постах
|
Писала Вам на почту. Для общественности приведу информацию и здесь:
Есть такая гипотеза: возможно, проблемы возникают из-за выгрузки наших библиотек из памяти.
Чтобы узнать какой вызов какую ошибку возвращает, можно включить максимальный уровень журналирования для нескольких модулей:
# /opt/cprocsp/sbin/архитектура/cpconfig -loglevel cpcsp -mask 0xF # /opt/cprocsp/sbin/архитектура/cpconfig -loglevel capi20 -mask 0xF # /opt/cprocsp/sbin/архитектура/cpconfig -loglevel capilite -mask 0xF
Сообщения о вызовах ф-й и ошибках пишутся в дефолтный системный журнал. Обычно это /var/log/messages .
|
Татьяна ООО Крипто-Про |
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2009(UTC) Сообщений: 41
|
Спасибо за ответ.
Но проблема решилась с подписью и шифрованием. Просто запустили среду Apache mono c учетной записью rupert из группы users.
Возникла другая проблема на сервере где происходит расшифровка не удалось расшифровать файл. Как обеспечить символьную совместимость ?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.02.2008(UTC) Сообщений: 1,491 Откуда: Крипто-Про
Поблагодарили: 40 раз в 37 постах
|
а можете уточнить вопрос: символьная совместимость в смысле little-endian/big-endian или в каком смысле, в чем именно проблема? какие функции для шифрования и для проверки используете? |
Татьяна ООО Крипто-Про |
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2009(UTC) Сообщений: 41
|
Добрый день! Привожу пример из указанного Вами лога. Dec 24 13:22:11 linux capi20[11610]: capi20:!CryptAcquireCertificatePrivateKey!() AcquireContext failed!! Dec 24 13:22:11 linux capi20[11610]: cpcsp:!read_keyset_by_rdr!search_container fail 300a! Dec 24 13:22:11 linux capi20[11610]: cpcsp:!read_keyset!code==RDR_ERR_FILE_NOT_FOUND fail! Для примера вот ошибки которые выдаются в /var/log/messages при попытке подписи пользователем wwwrun Dec 24 13:22:11 linux capi20[11610]: cpcsp:!read_keyset!read_keyset_by_rdr fail! Dec 24 13:22:11 linux capi20[11610]: cpcsp:!carrier_open!read_keyset fail! Dec 24 13:22:11 linux capi20[11610]: cpcsp:!key_carrier_open1of! carrier_open fail! Dec 24 13:22:11 linux capi20[11610]: cpcsp:!OpenContainer!OpenContainer key_carrier_open fail (0x80090019)! Dec 24 13:22:11 linux capi20[11610]: cpcsp: CPCAcquireContext (pszContainer=FAT12\\42dd98fc.000\F06E, dwFlags=0x20). Result=0, Err=0x80090019. hProv=0. Возможно Вы подскажете почему у этого пользователя не хватает прав, а у rupert/users достаточно для работы с LocalMachine. Просто настройка apache под другого пользователя нетривиальная процедура Отредактировано пользователем 24 декабря 2009 г. 19:58:29(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.02.2008(UTC) Сообщений: 1,491 Откуда: Крипто-Про
Поблагодарили: 40 раз в 37 постах
|
А ключи как создавали? Как устанавливали сертификат?
Приведите пожалуйста команды, уточните от чьего имени они запускались. |
Татьяна ООО Крипто-Про |
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2009(UTC) Сообщений: 41
|
В дополнение. Расшифровка прошла успешно. Т.е. зашифрованный на Linux машине успешно расшифрован и проверен по подписи на Windows машине. Функции использую самые обычные Крипто-API. Выбором набора символов не занимался. Возможно это и неверно.Для шифрования использую стандартную высокоуровневую функцию CryptEncryptMessage. Отредактировано пользователем 24 декабря 2009 г. 20:46:05(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.02.2008(UTC) Сообщений: 1,491 Откуда: Крипто-Про
Поблагодарили: 40 раз в 37 постах
|
Это не совсем та информация, которую я запрашивала: судя по логу, проблема в том, что не удается найти ключ.
Это может произойти если ключ был создан и установлен от имени другого пользователя, не хватает прав на чтение контейнера и тд. Поэтому интересно было бы посмотреть как делался ключ.
Кроме того, можете привести
ls -la /var/opt/cprocsp/keys
и ls -la для всех подкаталогов.
|
Татьяна ООО Крипто-Про |
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2009(UTC) Сообщений: 41
|
Добрый день! Для информации. linux:/home/rupert/Desktop/NOTICE # ls -la /var/opt/cprocsp/keys total 20 drwxrwxrwt 5 root root 4096 2009-12-15 11:00 . drwxr-xr-x 7 root root 4096 2009-12-14 15:44 .. drwx------ 2 root root 4096 2009-12-14 12:55 root drwx------ 2 rupert users 4096 2009-12-14 15:28 rupert drwx------ 2 wwwrun www 4096 2009-12-15 11:00 wwwrun linux:/home/rupert/Desktop/NOTICE # ls -la /var/opt/cprocsp/keys/root total 8 drwx------ 2 root root 4096 2009-12-14 12:55 . drwxrwxrwt 5 root root 4096 2009-12-15 11:00 .. linux:/home/rupert/Desktop/NOTICE # ls -la /var/opt/cprocsp/keys/rupert total 8 drwx------ 2 rupert users 4096 2009-12-14 15:28 . drwxrwxrwt 5 root root 4096 2009-12-15 11:00 .. linux:/home/rupert/Desktop/NOTICE # ls -la /var/opt/cprocsp/keys/wwwrun total 8 drwx------ 2 wwwrun www 4096 2009-12-15 11:00 . drwxrwxrwt 5 root root 4096 2009-12-15 11:00 .. Ошибка возникала при доступе к машинному хранилищу пользователем wwwrun. Еще один вопрос. При инициализации службы (демона) CRON происходит монтирование устройства /dev/fd0, но дискета при этом не становится доступной. А если я делаю вручную, то происходит конфликт с уже смонтированным устройством. Поэтому каждый раз при перезагрузке мне приходится отмонтировать fd0, а потом только монтировать свою дискету и выполнять команду cpсonfig.. . Напомню, что дискета вирутальная и находится на жестком диске. Может подскажете какие нужно внести изменения в конфигурацию, чтобы не делать указанные выше операции. С уважением, Андрей Отредактировано пользователем 25 декабря 2009 г. 17:57:27(UTC)
| Причина: Не указана
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 07.05.2009(UTC) Сообщений: 41
|
Ключи создавались на WINDOWS машине с использванием УЦ Крипто-Про. Установка с машинное хранилище осуществлялась root следующей командой ./certmgr -inst -store mMy -file '/home/rupert/Desktop/DiskA/42dd98fc.000/andre22.cer' -cont '\\.\FAT12_0\42dd98fc-c2a3-49af-a86e-695d8b82f9de'
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close