Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline Андрей_  
#1 Оставлено : 17 декабря 2009 г. 18:29:15(UTC)
Андрей_

Статус: Активный участник

Группы: Участники
Зарегистрирован: 07.05.2009(UTC)
Сообщений: 41

Добрый день!

Прошу ответить на вопрос. Возможно ли использованием програмы использующей вызовы Крипто-API Крипто-Про в среде MONO Apache2. Программа написана на C#.
Использует среду mono.
Выявлены ошибки в вызове CryptSignMessage. Ошибки никакие- кодов нет.
Хотя консольное приложение запускается через mono без ошибок
Apache тоже использует mono для компиляции C#, но видимо иначе чем для консоли.

Видимо есть разница. Просьба откликнуться.

С уважением, Андрей
Offline Татьяна  
#2 Оставлено : 17 декабря 2009 г. 19:43:00(UTC)
Татьяна

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 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 .

Татьяна
ООО Крипто-Про
Offline Андрей_  
#3 Оставлено : 17 декабря 2009 г. 20:56:59(UTC)
Андрей_

Статус: Активный участник

Группы: Участники
Зарегистрирован: 07.05.2009(UTC)
Сообщений: 41

Спасибо за ответ.

Но проблема решилась с подписью и шифрованием. Просто запустили среду Apache mono c учетной записью rupert из группы users.

Возникла другая проблема на сервере где происходит расшифровка не удалось расшифровать файл. Как обеспечить символьную совместимость ?
Offline Татьяна  
#4 Оставлено : 17 декабря 2009 г. 21:14:43(UTC)
Татьяна

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.02.2008(UTC)
Сообщений: 1,491
Откуда: Крипто-Про

Поблагодарили: 40 раз в 37 постах
а можете уточнить вопрос: символьная совместимость в смысле little-endian/big-endian или в каком смысле, в чем именно проблема? какие функции для шифрования и для проверки используете?
Татьяна
ООО Крипто-Про
Offline Андрей_  
#5 Оставлено : 24 декабря 2009 г. 19:34:16(UTC)
Андрей_

Статус: Активный участник

Группы: Участники
Зарегистрирован: 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)  | Причина: Не указана

Offline Татьяна  
#6 Оставлено : 24 декабря 2009 г. 20:33:04(UTC)
Татьяна

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.02.2008(UTC)
Сообщений: 1,491
Откуда: Крипто-Про

Поблагодарили: 40 раз в 37 постах
А ключи как создавали?
Как устанавливали сертификат?

Приведите пожалуйста команды, уточните от чьего имени они запускались.
Татьяна
ООО Крипто-Про
Offline Андрей_  
#7 Оставлено : 24 декабря 2009 г. 20:44:27(UTC)
Андрей_

Статус: Активный участник

Группы: Участники
Зарегистрирован: 07.05.2009(UTC)
Сообщений: 41

В дополнение. Расшифровка прошла успешно. Т.е. зашифрованный на Linux машине успешно расшифрован и проверен по подписи на Windows машине. Функции использую самые обычные Крипто-API. Выбором набора символов не занимался. Возможно это и неверно.Для шифрования использую стандартную высокоуровневую функцию CryptEncryptMessage.

Отредактировано пользователем 24 декабря 2009 г. 20:46:05(UTC)  | Причина: Не указана

Offline Татьяна  
#8 Оставлено : 24 декабря 2009 г. 20:51:40(UTC)
Татьяна

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.02.2008(UTC)
Сообщений: 1,491
Откуда: Крипто-Про

Поблагодарили: 40 раз в 37 постах
Это не совсем та информация, которую я запрашивала: судя по логу, проблема в том, что не удается найти ключ.

Это может произойти если ключ был создан и установлен от имени другого пользователя, не хватает прав на чтение контейнера и тд. Поэтому интересно было бы посмотреть как делался ключ.

Кроме того, можете привести

ls -la /var/opt/cprocsp/keys

и ls -la для всех подкаталогов.
Татьяна
ООО Крипто-Про
Offline Андрей_  
#9 Оставлено : 25 декабря 2009 г. 17:56:18(UTC)
Андрей_

Статус: Активный участник

Группы: Участники
Зарегистрирован: 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)  | Причина: Не указана

Offline Андрей_  
#10 Оставлено : 25 декабря 2009 г. 18:21:29(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'
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.