Статус: Новичок
Группы: Участники
Зарегистрирован: 28.08.2015(UTC) Сообщений: 7 Откуда: Москва Сказал(а) «Спасибо»: 1 раз
|
Почему-то в указанной конфигурации (КриптоПро 4.0 на Debian 8 с процессором Baikal) не удается запустить работавшую на предыдущей версии КриптоПро под Linux на процессоре Intel программу. Выдается ошибка при создании handler хеша. Вот минимальная программа Код:
#include <WinCryptEx.h>
#include <sstream>
#include <stdio.h>
using namespace std;
static void HandleError(const char *s)
{
ostringstream outs;
LPTSTR pBuffer = NULL;
DWORD err = GetLastError();
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, err, 0, (LPTSTR) &pBuffer, 0, NULL);
outs << s << ". " << pBuffer << " (0x" << hex << err << ")";
LocalFree(pBuffer);
throw outs.str();
}
int main()
{
HCRYPTPROV hProv = 0;
HCRYPTHASH hHash = 0;
try {
if (!CryptAcquireContext(&hProv, NULL, NULL, PROV_GOST_2001_DH, CRYPT_VERIFYCONTEXT))
HandleError("CryptAcquireContext");
printf("hProv: %llu\n", hProv);
if (!CryptCreateHash(hProv, CALG_GR3411, 0, 0, &hHash))
HandleError("CryptCreateHash");
} catch(const string &s) {
printf("exception: %s\n", s.c_str());;
}
if (hHash)
CryptDestroyHash(hHash);
if (hProv)
CryptReleaseContext(hProv, 0);
return 0;
}
которая выдает Код:
hProv: 4387395
exception: CryptCreateHash. The parameter is incorrect. (0x57)
Можете подсказать, из-за чего может такое быть? В какую сторону смотреть?
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 28.08.2015(UTC) Сообщений: 7 Откуда: Москва Сказал(а) «Спасибо»: 1 раз
|
Вот какие библиотеки подключаются: Код:
libcpasn1.so.4 => /opt/cprocsp/lib/mipsel/libcpasn1.so.4 (0x771ec000)
libssp.so.4 => /opt/cprocsp/lib/mipsel/libssp.so.4 (0x77100000)
libcapi10.so.4 => /opt/cprocsp/lib/mipsel/libcapi10.so.4 (0x770e0000)
libcapi20.so.4 => /opt/cprocsp/lib/mipsel/libcapi20.so.4 (0x76a48000)
librdrsup.so.4 => /opt/cprocsp/lib/mipsel/librdrsup.so.4 (0x76a00000)
libpthread.so.0 => /lib/mipsel-linux-gnu/libpthread.so.0 (0x769d4000)
libstdc++.so.6 => /usr/lib/mipsel-linux-gnu/libstdc++.so.6 (0x768c0000)
libm.so.6 => /lib/mipsel-linux-gnu/libm.so.6 (0x76830000)
libgcc_s.so.1 => /lib/mipsel-linux-gnu/libgcc_s.so.1 (0x767f4000)
libc.so.6 => /lib/mipsel-linux-gnu/libc.so.6 (0x76670000)
libcpalloc.so.0 => /opt/cprocsp/lib/mipsel/libcpalloc.so.0 (0x7665c000)
libjemalloc.so.0 => /opt/cprocsp/lib/mipsel/libjemalloc.so.0 (0x7660c000)
libdl.so.2 => /lib/mipsel-linux-gnu/libdl.so.2 (0x765f8000)
liburlretrieve.so.4 => /opt/cprocsp/lib/mipsel/liburlretrieve.so.4 (0x765e4000)
libcplib.so.4 => /opt/cprocsp/lib/mipsel/libcplib.so.4 (0x765d0000)
libcpext.so.4 => /opt/cprocsp/lib/mipsel/libcpext.so.4 (0x7651c000)
/lib/ld.so.1 => /lib64/ld.so.1 (0x778f4000)
Может КриптоПро не работает на процессорах Baikal?
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,374 Откуда: КРИПТО-ПРО Сказал «Спасибо»: 32 раз Поблагодарили: 704 раз в 613 постах
|
Очень странно, у нас даже plugin работает на Байкал. Какую версию устанавливали? |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 28.08.2015(UTC) Сообщений: 7 Откуда: Москва Сказал(а) «Спасибо»: 1 раз
|
Разобрался сам, переменные окружения были от старой сборки, отличался, например, SIZEOF_VOID_P. На Baikal он равен 4 вместо 8 на Intel.
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close