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

Уведомление

Icon
Error

3 Страницы<123>
Опции
К последнему сообщению К первому непрочитанному
Offline Татьяна  
#11 Оставлено : 15 октября 2013 г. 14:17:53(UTC)
Татьяна

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

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

Поблагодарили: 40 раз в 37 постах
Нужно чтобы имя секции совпадало с префиксом имени фукнции mskey_media_get_handle

То есть, mskey_media_get_handle будет работать со считывателем MSKEY, а с MSKEYS и MSKEYD -- нет.
Интересно, вызвается ли mskey_media_get_handle при попытки настройки носителя.
Татьяна
ООО Крипто-Про
thanks 1 пользователь поблагодарил Татьяна за этот пост.
al оставлено 15.10.2013(UTC)
Offline al  
#12 Оставлено : 15 октября 2013 г. 15:15:59(UTC)
al

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

Группы: Участники
Зарегистрирован: 13.06.2013(UTC)
Сообщений: 83
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 16 раз
Поблагодарили: 1 раз в 1 постах
Пересобрал библиотеку с выводом отладочной информации в файл.
Пересчитал и перепрописал хеш либы.
Перегрузил машину.
Хеш при загрузке проверился (во время работы /etc/init.d/cprocsp).
Пытаюсь добавить носитель:
cpconfig -hardware media -add <Имя секции> -name <Параметр Name внутри секции>:

root@debian:# cpconfig -hardware media -add MSKEY -name MSkey
Adding new media:
Nick name: MSKEY
Name device: MSkey
Failed, code:0x1008
Error code:4104, Connection error.

В логе ничего не появляется. Т.е. mskey_media_get_handle не вызывается...

Татьяна, я наверное у Вас уже много времени оторвал. Вы уж простите.
Вы меня пока бросьте - я сейчас возьму тайм-аут на денек, перечитаю reader_3_6.chm.
Но если появятся идеи, пишите - буду очень признателен.

Offline Татьяна  
#13 Оставлено : 15 октября 2013 г. 17:18:36(UTC)
Татьяна

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

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

Поблагодарили: 40 раз в 37 постах
а в системных логах (/var/log/messages или /var/log/auth) есть какие-то ошибки? пришлите библиотеку посмотреть на kondakova at cryptopro.ru
Татьяна
ООО Крипто-Про
Offline al  
#14 Оставлено : 15 октября 2013 г. 17:40:04(UTC)
al

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

Группы: Участники
Зарегистрирован: 13.06.2013(UTC)
Сообщений: 83
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 16 раз
Поблагодарили: 1 раз в 1 постах
Татьяна, если речь об исходниках, то я должен спросить согласия руководства.
Offline al  
#15 Оставлено : 15 октября 2013 г. 17:59:08(UTC)
al

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

Группы: Участники
Зарегистрирован: 13.06.2013(UTC)
Сообщений: 83
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 16 раз
Поблагодарили: 1 раз в 1 постах
А в логах, действительно есть ошибки (в /var/log/auth):

Oct 15 18:18:21 debian2 cprdr[4612]: sup_lib 18:18:21.131780 support_n_dlopen:45 p:4612 t:0x0x402d60 Error: EINTR/-1 retry exceeded by support_n_dlopen(), retry=20 errno = Неизвестная ошибка 18446744073709551615(-1)
Oct 15 18:18:21 debian2 cprdr[4612]: sup_lib 18:18:21.131794 support_load_dll:217 p:4612 t:0x0x402d60 support_load_dll(): dlerror() = /opt/cprocsp/lib/amd64/librdrmskey.so: undefined symbol: mskey_info_version
O

в /var/log/messages ошибок нет.
Offline Татьяна  
#16 Оставлено : 15 октября 2013 г. 18:16:39(UTC)
Татьяна

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

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

Поблагодарили: 40 раз в 37 постах
Нет, не об исходниках, о готовой библиотеке.
Я как раз просила её чтобы проверить что в библиотеке нет undefined символов и её можно загрузить с помощью dlopen.
Как видно из логов -- нельзя.

Чтобы наш провайдер мог работать с библиотекой, с ней должен работать Вызов dlopen и вызов dlsym на фукнцию mskey_media_get_handle. Это стандартные для unix способы загрузить библиотеку и получить адрес функции из этой библиотеки.
Татьяна
ООО Крипто-Про
thanks 1 пользователь поблагодарил Татьяна за этот пост.
al оставлено 16.10.2013(UTC)
Offline al  
#17 Оставлено : 15 октября 2013 г. 18:37:12(UTC)
al

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

Группы: Участники
Зарегистрирован: 13.06.2013(UTC)
Сообщений: 83
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 16 раз
Поблагодарили: 1 раз в 1 постах
Татьяна, спасибо за дельные советы.
Я как-то сам не подумал взглянуть на системные логи (голова уже не варит...).
Библиотеу выслал. Сам тоже сделаю тестовую програмку, где попробую загрузить библиотеку.
Спасибо за помощь.
Offline al  
#18 Оставлено : 15 октября 2013 г. 18:57:45(UTC)
al

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

Группы: Участники
Зарегистрирован: 13.06.2013(UTC)
Сообщений: 83
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 16 раз
Поблагодарили: 1 раз в 1 постах
да, вот, сделал:
Цитата:

#include <stdio.h>
#include <dlfcn.h>
int main(){
void * dl;
void (*fn)(void);
char * err;
dl= dlopen("/opt/cprocsp/lib/amd64/librdrmskey.so.3.6.1",RTLD_LAZY);
if(!dl){
printf("dlopen() error: %s\n", dlerror());
return 1;
}
fn = dlsym(dl, "mskey_media_get_handle");
if ((err = dlerror()) != NULL){
printf("%s\n", err);
return 1;
}
dlclose(dl);
printf("ok\n");
return 0;
}


user@debian:~$ gcc a.c -o a.exe -ldl

Вы совершенно правы - библиотека не грузится:
Цитата:

user@debian:~$ ./a.exe
dlopen() error: /opt/cprocsp/lib/amd64/librdrmskey.so.3.6.1: undefined symbol: mskey_info_version


Еще раз спасибо! Буду разбираться...

Отредактировано пользователем 15 октября 2013 г. 18:59:50(UTC)  | Причина: Не указана

Offline al  
#19 Оставлено : 16 октября 2013 г. 10:14:12(UTC)
al

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

Группы: Участники
Зарегистрирован: 13.06.2013(UTC)
Сообщений: 83
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 16 раз
Поблагодарили: 1 раз в 1 постах
Татьяна, спасибо большое!
Ошибки исправил - всё заработало.
Библиотека загрузилась:

сpconfig -hardware media -view
Nick name: TRUSTD
Connect name:
Media name: Magistra Debug

Nick name: TRUSTS
Connect name:
Media name: Magistra SocCard

Nick name: TRUST
Connect name:
Media name: Magistra

Nick name: OSCAR2
Connect name: KChannel
Media name: �����

Nick name: OSCAR2
Connect name: CSP
Media name: ����� CSP 2.0

Nick name: OSCAR
Connect name:
Media name: ����

Nick name: MSKEY
Connect name:
Media name: MSkey

Ключевой носитель опознается:

csptest -enum -info -type PP_ENUMREADERS -flags 32
CSP (Type:75) v3.6.5364 KC1 Release Ver:3.6.7491 OS:Linux CPU:AMD64 FastCode:READY:AVX.
CryptAcquireContext succeeded.HCRYPTPROV: 36298643
GetProvParam(...PP_ENUMREADERS...) until it returns false
Flags: 0x20
Len Byte NickName/Name/Media
___________________________________
0x012a 0x72 OMNIKEY CardMan 3x21 00 00
All PC/SC readers
MSkey_741ABCB2
0x012a 0x58 FLASH
FLASH
NO_MEDIA
0x012a 0x18 HDIMAGE
��������� ������� �� ������� ����
NO_UNIQUE
Cycle exit when getting data. 3 items found. Level completed without error.
Total:
[ErrorCode: 0x00000000]

Всё тесты прошли (генерация пары, установка сертификата на носитель, формирование/проверка подписи, зашифрование/расшифрование).
Теперь-то уж точно вопрос можно закрывать!
Offline Татьяна  
#20 Оставлено : 16 октября 2013 г. 11:07:30(UTC)
Татьяна

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

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

Поблагодарили: 40 раз в 37 постах
Отлично.
Татьяна
ООО Крипто-Про
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
3 Страницы<123>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.