Статус: Эксперт
Группы: Участники
Зарегистрирован: 05.03.2015(UTC) Сообщений: 1,602 Откуда: Иркутская область Сказал(а) «Спасибо»: 110 раз Поблагодарили: 395 раз в 366 постах
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 03.03.2022(UTC) Сообщений: 4
|
Добрый день. Возникает конфликт System.Security.Cryptography.Xml.dll между NuGET пакетом и из сборки CoreFX через Reference. Когда подключаешь СМЭВ wcf то ставится пакет System.ServiceModel.Security, который включает в себя System.Security.Cryptography.Xml.dll и начинаются проблемы. Отредактировано пользователем 3 марта 2022 г. 16:29:41(UTC)
| Причина: Не указана
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 09.03.2022(UTC) Сообщений: 1
|
Добрый день. Разворачиваю Docker-linux на debian. Установлена CryptoPro R3 (последней версии). NetCore 3.1. CoreFx скачал последние библиотеки. Использую runtime/linux-x64/... При попытке создать классическим путём сигнатуру: Цитата: var cmsSigner = new CmsSigner(_cert); var contentInfo = new ContentInfo(message); var signedCms = new SignedCms(contentInfo, true); signedCms.ComputeSignature(cmsSigner); var signature = signedCms.Encode();
Выпадает ошибка: Unable to load shared library 'crypt32.dll' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: libcrypt32.dll: cannot open shared object file: No such file or directory Конечно, crypt32 - библиотека из Windows, и ей не от куда взяться в Unix, но всё же может быть есть решение?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 20.02.2017(UTC) Сообщений: 216
Сказал(а) «Спасибо»: 4 раз Поблагодарили: 62 раз в 58 постах
|
Автор: Mekkeliard Добрый день. Разворачиваю Docker-linux на debian. Установлена CryptoPro R3 (последней версии). NetCore 3.1. CoreFx скачал последние библиотеки. Использую runtime/linux-x64/... При попытке создать классическим путём сигнатуру: Цитата: var cmsSigner = new CmsSigner(_cert); var contentInfo = new ContentInfo(message); var signedCms = new SignedCms(contentInfo, true); signedCms.ComputeSignature(cmsSigner); var signature = signedCms.Encode();
Выпадает ошибка: Unable to load shared library 'crypt32.dll' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: libcrypt32.dll: cannot open shared object file: No such file or directory Конечно, crypt32 - библиотека из Windows, и ей не от куда взяться в Unix, но всё же может быть есть решение? Добрый день. Убедитесь, что используете корректный nuget пакет с рантаймом для unix (различные пакеты по win и unix). Подробнее - в инструкции к тестовому проекту (пункты 4 и 5). https://github.com/Crypt...lob/master/docs/Linux.md |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.03.2022(UTC) Сообщений: 1
|
Добрый день Какой roadmap по .net core со стороны КриптоПро? Я смотрю в репозитории 2 года уже не было телодвижений. В частности интересует планируется ли (и если да то когда) обновление на .net 6
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 03.03.2022(UTC) Сообщений: 4
|
Добрый день. В примерах по подключению к net core описан способ подключения Cryptography.Xml.dll, но если в проекте уже есть пакеты nuget, содержащие System.Security.Cryptography.Xml.dll, то подключить таким способом не получается: <Reference Include="System.Security.Cryptography.Xml.dll"> <HintPath>path\to\System.Security.Cryptography.Xml.dll</HintPath> </Reference>
Как тогда подключить System.Security.Cryptography.Xml.dll от крипто про?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 20.02.2017(UTC) Сообщений: 216
Сказал(а) «Спасибо»: 4 раз Поблагодарили: 62 раз в 58 постах
|
Автор: Владимир Сид Добрый день. В примерах по подключению к net core описан способ подключения Cryptography.Xml.dll, но если в проекте уже есть пакеты nuget, содержащие System.Security.Cryptography.Xml.dll, то подключить таким способом не получается: <Reference Include="System.Security.Cryptography.Xml.dll"> <HintPath>path\to\System.Security.Cryptography.Xml.dll</HintPath> </Reference>
Как тогда подключить System.Security.Cryptography.Xml.dll от крипто про? Добрый день. Не смогу подсказать в сожалению. Если зависимость, которая использует System.Security.Cryptography.Xml, с открытым кодом - возможно стоит попробовать пересобрать её с использованием System.Security.Cryptography.Xml из форка. |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 03.03.2022(UTC) Сообщений: 4
|
Автор: Артём Макаров Автор: Владимир Сид Добрый день. В примерах по подключению к net core описан способ подключения Cryptography.Xml.dll, но если в проекте уже есть пакеты nuget, содержащие System.Security.Cryptography.Xml.dll, то подключить таким способом не получается: <Reference Include="System.Security.Cryptography.Xml.dll"> <HintPath>path\to\System.Security.Cryptography.Xml.dll</HintPath> </Reference>
Как тогда подключить System.Security.Cryptography.Xml.dll от крипто про? Добрый день. Не смогу подсказать в сожалению. Если зависимость, которая использует System.Security.Cryptography.Xml, с открытым кодом - возможно стоит попробовать пересобрать её с использованием System.Security.Cryptography.Xml из форка. Вот например NuGet пакет - System.ServiceModel.Http (4.9.0) Если даже просто его добавить в проект примера DotnetSampleProject, то ссылка на System.Security.Cryptography.Xml автоматически переключается на /user/.nuget/..
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 16.09.2021(UTC) Сообщений: 24
|
Автор: Артём Макаров Автор: ZiCold Добрый день! Возникла ошибка при попытке запустить приложение WebApi с CoreFx на сервере. Код: System.MissingMethodException: Method not found: 'System.Security.Cryptography.HashAlgorithmName System.Security.Cryptography.HashAlgorithmName.get_Gost3411_2012_256()'.\r\n
at Internal.Cryptography.PkcsHelpers.GetDigestAlgorithm(String oidValue, Boolean forVerification)\r\n at System.Security.Cryptography.Pkcs.SignerInfo.GetDigestAlgorithm() in C:\\projects\\corefx\\src\\System.Security.Cryptography.Pkcs\\src\\System\\Security\\Cryptography\\Pkcs\\SignerInfo.cs:line 737\r\n
at System.Security.Cryptography.Pkcs.SignerInfo.PrepareDigest(Boolean compatMode) in C:\\projects\\corefx\\src\\System.Security.Cryptography.Pkcs\\src\\System\\Security\\Cryptography\\Pkcs\\SignerInfo.cs:line 510\r\n
at System.Security.Cryptography.Pkcs.SignerInfo.VerifySignature(CmsSignature signatureProcessor, X509Certificate2 certificate, Boolean compatMode) in C:\\projects\\corefx\\src\\System.Security.Cryptography.Pkcs\\src\\System\\Security\\Cryptography\\Pkcs\\SignerInfo.cs:line 698\r\n
at System.Security.Cryptography.Pkcs.SignerInfo.Verify(X509Certificate2Collection extraStore, X509Certificate2 certificate, Boolean verifySignatureOnly) in C:\\projects\\corefx\\src\\System.Security.Cryptography.Pkcs\\src\\System\\Security\\Cryptography\\Pkcs\\SignerInfo.cs:line 647\r\n
at System.Security.Cryptography.Pkcs.SignerInfo.CheckSignature(X509Certificate2Collection extraStore, Boolean verifySignatureOnly) in C:\\projects\\corefx\\src\\System.Security.Cryptography.Pkcs\\src\\System\\Security\\Cryptography\\Pkcs\\SignerInfo.cs:line 415\r\n
at System.Security.Cryptography.Pkcs.SignedCms.CheckSignatures(SignerInfoCollection signers, X509Certificate2Collection extraStore, Boolean verifySignatureOnly) in C:\\projects\\corefx\\src\\System.Security.Cryptography.Pkcs\\src\\System\\Security\\Cryptography\\Pkcs\\SignedCms.cs:line 595\r\n
at System.Security.Cryptography.Pkcs.SignedCms.CheckSignature(X509Certificate2Collection extraStore, Boolean verifySignatureOnly) in C:\\projects\\corefx\\src\\System.Security.Cryptography.Pkcs\\src\\System\\Security\\Cryptography\\Pkcs\\SignedCms.cs:line 578\r\n
at System.Security.Cryptography.Pkcs.SignedCms.CheckSignature(Boolean verifySignatureOnly) in C:\\projects\\corefx\\src\\System.Security.Cryptography.Pkcs\\src\\System\\Security\\Cryptography\\Pkcs\\SignedCms.cs:line 569\r\n
Сам проект WebApi собирал согласно инструкции CoreFX инструкции. Всё на локальное машине работает. На сервере устанавливал SDK и Hosting пакеты - не помогло. Даже полностью вычищал все установленные версии Net Core. Что еще можно сделать? Добрый день. Каким образом и на какой операционной системе происходит попытка запуска приложения на сервере? IIS + Windows увы пока не поддерживаем, ибо рантайм для IIS не в курсе нашего изменённого рантайма. upd: что то похожее было тут в начале https://github.com/CryptoPro/corefx/issues/29. Ещё раз проверить, что установлены именно требуемые версии рантаймов и что используется модифицированная сборка pcks. Каким образом и на какой операционной системе происходит попытка запуска приложения на сервере? Windows Server 2012 R2 + IIS. IIS + Windows увы пока не поддерживаем, ибо рантайм для IIS не в курсе нашего изменённого рантайма.Вот это было неожиданно. Вы хотя бы написали про это где-нибудь. Тогда остаётся вариант только с .NetFramework реализовывать. Правда реально странно, что на локальной машине с Windows 10 всё в порядке. Создам этот же запрос на гитхабе пожалуй.
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 03.03.2022(UTC) Сообщений: 4
|
В текущей ситуации в мире стоит надеяться на выход под .Net6 ?
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close