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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Lirein  
#1 Оставлено : 19 сентября 2015 г. 16:50:14(UTC)
Lirein

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

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

Сказал «Спасибо»: 18 раз
Поблагодарили: 50 раз в 39 постах
Добрый день, имеется следующая проблема:
Linux Mint 17.2 (3.13.0-37-generic)
Архитектура платформы x86_64 (amd64)
Установлен криптопровайдер КриптоПро CSP 4.0.9630
Программное обеспечение: 1С Предприятие 8.3 (8.3.6.2299) - Бухгалтерия предприятия 3.0 (3.0.41.57)

При попытке прописать криптографический провайдер возникает следующая ошибка: "Не установлена на компьютере. Ошибка при получении контекста модуля криптографии."
Путь прописан согласно рекомендациям 1С: /opt/cprocsp/lib/amd64/libcapilite.so:/opt/cprocsp/lib/amd64/libcapi10.so:/opt/cprocsp/lib/amd64/libcapi20.so
Библиотека libcapilite.so создавалась так же через GCC: gcc -shared -Wl,-soname,libcapi10.so.4.0.4,libcapi20.so.4.0.4 -o libcapilite.so
В путях так же указывались и другие варианты без указания библиотеки libcapilite.so, ситуация та же.
Библиотеки capilite, capi10 не загружаются (как я понимаю они и не нужны), ошибку вызывает библиотека /opt/cprocsp/lib/amd64/libcapi20.so
В чём может быть проблема?

Есть обходной вариант, но использование отдельного установленного криптопровайдера версии 3.6 внутри контейнера, является не целесообразным расходованием ресурсов машины и усложняет архитектуру.

В обозревателях Mozilla Firefox, CryptoFox, Chromium, Google Chrome плагин работает корректно. С командной строки подписывание и проверка ЭЦП работает корректно.

P.S. Решение:
Заведите в 1С новый тип криптопровайдера:
Представление: КриптоПро CSP 4.0
Имя программы: Crypto-Pro GOST R 34.10-2001 KC1 CSP
Тип программы: 75
Алгоритм подписи: GOST R 34.10-2001
Алгоритм хеширования: GOST R 34.11-94
Алгоритм шифрования: GOST 28147-89

Отредактировано пользователем 8 октября 2015 г. 19:39:01(UTC)  | Причина: Не указана

--- Эльфиек на всех не хватает...
*** А всё таки, она вертится!
Offline Lirein  
#2 Оставлено : 23 сентября 2015 г. 15:24:41(UTC)
Lirein

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

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

Сказал «Спасибо»: 18 раз
Поблагодарили: 50 раз в 39 постах
Удалил CSP 4.0, заменив его на CSP 3.9 R2, с ним всё работает, кроме браузер-плагина версии 2.0
--- Эльфиек на всех не хватает...
*** А всё таки, она вертится!
Offline cross  
#3 Оставлено : 23 сентября 2015 г. 16:03:00(UTC)
Анатолий Беляев

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

Группы: Администраторы, Участники
Зарегистрирован: 24.11.2009(UTC)
Сообщений: 965
Откуда: Crypto-Pro

Сказал(а) «Спасибо»: 3 раз
Поблагодарили: 172 раз в 151 постах
не понятно зачем вам создавать libcapilite.so....
что у вас показывает вывод ldd -r /opt/cprocsp/lib/amd64/libcapi20.so ?
Техническую поддержку оказываем тут.
Наша база знаний.
Наша страничка в Instagram.
Offline Lirein  
#4 Оставлено : 23 сентября 2015 г. 17:52:01(UTC)
Lirein

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

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

Сказал «Спасибо»: 18 раз
Поблагодарили: 50 раз в 39 постах
Автор: cross Перейти к цитате
не понятно зачем вам создавать libcapilite.so....
что у вас показывает вывод ldd -r /opt/cprocsp/lib/amd64/libcapi20.so ?


И без libcapilite прекрасно взлетает.

На рабочей библиотеке CSP 3.9 R2:
ldd -r /opt/cprocsp/lib/amd64/libcapi20.so
linux-vdso.so.1 => (0x00007fffdfbfe000)
libcpext.so.4 => /opt/cprocsp/lib/amd64/libcpext.so.4 (0x00007f37717cf000)
libcapi10.so.4 => /opt/cprocsp/lib/amd64/libcapi10.so.4 (0x00007f37716bb000)
liburlretrieve.so.4 => /opt/cprocsp/lib/amd64/liburlretrieve.so.4 (0x00007f37715b6000)
librdrsup.so.4 => /opt/cprocsp/lib/amd64/librdrsup.so.4 (0x00007f3771490000)
libasn1data.so.4 => /opt/cprocsp/lib/amd64/libasn1data.so.4 (0x00007f3770d2c000)
libpkivalidator.so.4 => /opt/cprocsp/lib/amd64/libpkivalidator.so.4 (0x00007f3770c03000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f37709ff000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f37707e1000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f37704dc000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f37701d6000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f376fe11000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f376fbfa000)
libcpalloc.so.0 => /opt/cprocsp/lib/amd64/libcpalloc.so.0 (0x00007f376faf9000)
libjemalloc.so.0 => /opt/cprocsp/lib/amd64/libjemalloc.so.0 (0x00007f376f9e0000)
libcplib.so.4 => /opt/cprocsp/lib/amd64/libcplib.so.4 (0x00007f376f8cf000)
libocsp.so.4 => /opt/cprocsp/lib/amd64/libocsp.so.4 (0x00007f376f780000)
libcpasn1.so.4 => /opt/cprocsp/lib/amd64/libcpasn1.so.4 (0x00007f376f606000)
/lib64/ld-linux-x86-64.so.2 (0x00007f3771b7f000)

На библиотеке CSP 4.0:
ldd -r /opt/cprocsp/lib/amd64/libcapi20.so
linux-vdso.so.1 => (0x00007ffff35fe000)
libcpext.so.4 => /opt/cprocsp/lib/amd64/libcpext.so.4 (0x00007fca3e9f6000)
libcapi10.so.4 => /opt/cprocsp/lib/amd64/libcapi10.so.4 (0x00007fca3e8e9000)
liburlretrieve.so.4 => /opt/cprocsp/lib/amd64/liburlretrieve.so.4 (0x00007fca3e7e3000)
libcpasn1.so.4 => /opt/cprocsp/lib/amd64/libcpasn1.so.4 (0x00007fca3e66a000)
libcplib.so.4 => /opt/cprocsp/lib/amd64/libcplib.so.4 (0x00007fca3e55a000)
librdrsup.so.4 => /opt/cprocsp/lib/amd64/librdrsup.so.4 (0x00007fca3e42c000)
libasn1data.so.4 => /opt/cprocsp/lib/amd64/libasn1data.so.4 (0x00007fca3dca7000)
libcpalloc.so.0 => /opt/cprocsp/lib/amd64/libcpalloc.so.0 (0x00007fca3dba6000)
libjemalloc.so.0 => /opt/cprocsp/lib/amd64/libjemalloc.so.0 (0x00007fca3da6d000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fca3d869000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fca3d64b000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fca3d346000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fca3d040000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fca3cc7b000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fca3ca64000)
/lib64/ld-linux-x86-64.so.2 (0x00007fca3ee40000)
--- Эльфиек на всех не хватает...
*** А всё таки, она вертится!
Offline Lirein  
#5 Оставлено : 24 сентября 2015 г. 7:45:53(UTC)
Lirein

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

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

Сказал «Спасибо»: 18 раз
Поблагодарили: 50 раз в 39 постах
Дополню по CSP 4.0, список экспортируемых функций возвращает не зарезолвеные объявления:
nm /opt/cprocsp/lib/amd64/libcapi20.so
00000000000c0cc0 T CertAddCertificateContextToStore
00000000000c1050 T CertAddCRLContextToStore
00000000000c0ef0 T CertAddEncodedCertificateToStore
00000000000c12c0 T CertAddEncodedCRLToStore
00000000000c13e0 T CertAddStoreToCollection
00000000000d7be0 T CertAlgIdToOID
0000000000037600 T CertCloseStore
00000000000c1970 T CertCompareCertificate
00000000000c15d0 T CertCompareCertificateName
00000000000c1a30 T CertCompareIntegerBlob
00000000000c1a80 T CertComparePublicKeyInfo
00000000000384e0 T CertCreateCertificateChainEngine
00000000000376a0 T CertCreateCertificateContext
0000000000037770 T CertCreateCRLContext
0000000000038430 T CertDeleteCertificateFromStore
0000000000038480 T CertDeleteCRLFromStore
00000000000def80 T CertDllVerifyPrivateKeyUsagePeriodCertificateChainPolicy
00000000000c1b10 T CertDuplicateCertificateChain
0000000000037840 T CertDuplicateCertificateContext
0000000000037870 T CertDuplicateCRLContext
0000000000037550 T CertDuplicateStore
00000000000380b0 T CertEnumCertificateContextProperties
00000000000c2000 T CertEnumCertificatesInStore
00000000000c2120 T CertEnumCRLsInStore
00000000000c2770 T CertFindAttribute
00000000000c72c0 T CertFindCertificateInCRL
00000000000378a0 T CertFindCertificateInStore
00000000000c2240 T CertFindChainInStore
00000000000379c0 T CertFindCRLInStore
00000000000c2710 T CertFindExtension
00000000000c5a90 T CertFindRDNAttr
00000000000c2c70 T CertFreeCertificateChain
0000000000038670 T CertFreeCertificateChainEngine
0000000000037640 T CertFreeCertificateContext
0000000000037670 T CertFreeCRLContext
00000000000c2800 T CertGetCertificateChain
0000000000037ad0 T CertGetCertificateContextProperty
00000000000c0fa0 T CertGetCRLContextProperty
00000000000c4480 T CertGetCRLFromStore
00000000000c5390 T CertGetEnhancedKeyUsage
00000000000c57b0 T CertGetIntendedKeyUsage
00000000000384d0 T CertGetIssuerCertificateFromStore
00000000000c6030 T CertGetNameStringA
00000000000c5db0 T CertGetNameStringW
00000000000da6d0 T CertGetPublicKeyLength
00000000000c58a0 T CertGetSubjectCertificateFromStore
00000000000e07a0 T CertIsRDNAttrsInCertificateName
00000000000c1b40 T CertIsValidCRLForCertificate
00000000000c6600 T CertNameToStrA
00000000000c6150 T CertNameToStrW
00000000000d7c30 T CertOIDToAlgId
00000000000374d0 T CertOpenStore
00000000000e00c0 T CertOpenSystemStore
0000000000037580 T CertOpenSystemStoreA
00000000000375e0 T CertOpenSystemStoreW
00000000000c5c60 T CertRDNValueToStrA
00000000000c5b50 T CertRDNValueToStrW
00000000000c1520 T CertRemoveStoreFromCollection
0000000000038070 T CertSaveStore
0000000000038100 T CertSetCertificateContextProperty
00000000000c1330 T CertSetCRLContextProperty
00000000000c7120 T CertStrToNameA
00000000000c6d30 T CertStrToNameW
00000000000c2ec0 T CertVerifyCertificateChainPolicy
00000000000d7880 T CertVerifyCRLTimeValidity
00000000000d7900 T CertVerifyRevocation
0000000000038680 T CertVerifySubjectCertificateContext
00000000000d7b00 T CertVerifyTimeValidity
00000000000d7b70 T CertVerifyValidityNesting
00000000000c7af0 T CPCryptGetDefaultHashOIDInfo
00000000000c77e0 T CPCryptGetDefaultSignatureOIDInfo
00000000000c9d00 T CPCryptGetPinCallback
00000000000c9c50 T CPCryptGetPinFromCallback
00000000000c7b20 T CPCryptGetProviderHashAlgId
00000000000c7410 T CPCryptGetPublicKeyOIDInfo
00000000000c75c0 T CPCryptGetSignatureOIDInfo
00000000000c90a0 T CPCryptInstallCertificate
00000000000c9510 T CPCryptInstallTemplate
00000000000c9cd0 T CPCryptSetPinCallback
00000000000c73a0 T CPGetDefaultGostHashAlgId
00000000000c9df0 T CryptAcquireCertificatePrivateKey
00000000000cad70 T CryptBinaryToStringA
00000000000ca520 T CryptBinaryToStringW
00000000000cbe10 T CryptDecodeObject
00000000000cc7a0 T CryptDecodeObjectEx
00000000000d0120 T CryptDecryptMessage
00000000000cb880 T CryptEncodeObject
00000000000cbc40 T CryptEncodeObjectEx
00000000000d0e00 T CryptEncryptMessage
0000000000038990 T CryptExportPublicKeyInfo
0000000000038880 T CryptExportPublicKeyInfoEx
00000000000d0020 T CryptGetMessageSignerCount
00000000000cc970 T CryptGetObjectUrl
00000000000ccd70 T CryptHashCertificate
00000000000cd1d0 T CryptHashToBeSigned
0000000000038820 T CryptImportPublicKeyInfo
0000000000038690 T CryptImportPublicKeyInfoEx
00000000000cf720 T CryptMsgCalculateEncodedLength
00000000000ce760 T CryptMsgClose
00000000000cefc0 T CryptMsgControl
00000000000ce730 T CryptMsgDuplicate
00000000000ce930 T CryptMsgGetParam
00000000000ced00 T CryptMsgOpenToDecode
00000000000cf2b0 T CryptMsgOpenToEncode
00000000000ceb20 T CryptMsgUpdate
00000000000d19c0 T CryptRetrieveObjectByUrlA
00000000000d2910 T CryptRetrieveObjectByUrlW
00000000000d4530 T CryptSignAndEncodeCertificate
00000000000d1090 T CryptSignMessage
00000000000d56b0 T CryptStringToBinaryA
00000000000d4b80 T CryptStringToBinaryW
00000000000d6190 T CryptVerifyCertificateSignature
00000000000d0b80 T CryptVerifyDetachedMessageSignature
00000000000d0cd0 T CryptVerifyMessageSignature
00000000000daf70 T IsValidByApplicationUsage
00000000000d7c60 T LocalAlloc
00000000000d7cc0 T LocalFree
000000000029da40 B pkivalidator_db_ctx
00000000000de470 T PrivateKeyUsagePeriodImpl
0000000000069500 T SendPKIRequest
00000000000db680 T SSLImpl
000000000029dc00 B _strictPkupCheck

В бибилиотеке CSP 3.9 R2 такой проблемы не наблюдается. При запуске клиента 1С с LD_PRELOAD недостающих библиотек получаю ту же ошибку "Не установлена на компьютере. Ошибка при получении контекста модуля криптографии.", в отладочном логе по библиотеке capi20 тишина:

LD_WARN=true LD_DYNAMIC_WEAK=true LD_DEBUG=all LD_PRELOAD=/opt/cprocsp/lib/amd64/libocsp.so.4:/opt/cprocsp/lib/amd64/libpkivalidator.so.4 /opt/1C/v8.3/x86_64/1cv8c 2>&1 | grep libcapi | grep -E 'warn|err'

Отредактировано пользователем 24 сентября 2015 г. 8:21:17(UTC)  | Причина: Не указана

--- Эльфиек на всех не хватает...
*** А всё таки, она вертится!
Offline Lirein  
#6 Оставлено : 8 октября 2015 г. 19:38:28(UTC)
Lirein

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

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

Сказал «Спасибо»: 18 раз
Поблагодарили: 50 раз в 39 постах
Проблема решена. В связи со сменой наименований криптопровайдера и изменения поддерживаемых алгоритмов в 4ой версии нужно сделать следующее:

Заведите в 1С новый тип криптопровайдера:
Представление: КриптоПро CSP 4.0
Имя программы: Crypto-Pro GOST R 34.10-2001 KC1 CSP
Тип программы: 75
Алгоритм подписи: GOST R 34.10-2001
Алгоритм хеширования: GOST R 34.11-94
Алгоритм шифрования: GOST 28147-89

Укажите данный криптопровайдер для библиотеки /opt/cprocsp/lib/amd64/libcapi20.so
Модуль загружается и показывает все установленные сертификаты, даёт подписывать документы и обеспечивает шифрование, что и требовалось.
--- Эльфиек на всех не хватает...
*** А всё таки, она вертится!
Offline maxnemirov  
#7 Оставлено : 15 ноября 2020 г. 10:31:00(UTC)
maxnemirov

Статус: Новичок

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

Автор: Lirein Перейти к цитате
Проблема решена. В связи со сменой наименований криптопровайдера и изменения поддерживаемых алгоритмов в 4ой версии нужно сделать следующее:

Заведите в 1С новый тип криптопровайдера:
Представление: КриптоПро CSP 4.0
Имя программы: Crypto-Pro GOST R 34.10-2001 KC1 CSP
Тип программы: 75
Алгоритм подписи: GOST R 34.10-2001
Алгоритм хеширования: GOST R 34.11-94
Алгоритм шифрования: GOST 28147-89

Укажите данный криптопровайдер для библиотеки /opt/cprocsp/lib/amd64/libcapi20.so
Модуль загружается и показывает все установленные сертификаты, даёт подписывать документы и обеспечивает шифрование, что и требовалось.


Понимаю прошло 5 лет, но не работает ваш метод ни 4 ни с 5 версией крипто про csp
1с пишет Не установлено на компьюторе. Ошибка загрузки динамической библиотеки.

Offline Lirein  
#8 Оставлено : 15 ноября 2020 г. 10:52:50(UTC)
Lirein

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

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

Сказал «Спасибо»: 18 раз
Поблагодарили: 50 раз в 39 постах
Уже два года как работает. Напишите в личку, можно в телегу или вайбер. Разберемся.
--- Эльфиек на всех не хватает...
*** А всё таки, она вертится!
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.