Алгоритмы подписания сертификатов сервера, используемые в соответствии с ГОСТ 2001 и 2012, несовместимы

Что такое ЭЦП

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

Токены ЭЦП. Обзор основных разновидностей токенов в России

Токенами называют USB-носители, предназначенные для хранения и применения ключа электронной подписи. В России сертифицировано несколько разновидностей токенов. В статье мы рассмотрим наиболее распространённые варианты ключевых носителей и расскажем, по какому принципу их выбирать.

Что такое сертификат ключа электронной подписи

В сертификате ключа ЭЦП содержатся сведения о владельце электронной подписи. В ЭДО сертификат ключа служит подтверждением того, что подтверждением того, что электронная подпись действительно принадлежит её владельцу. Информация о составе сертификата ключа и о том, какие учреждения занимаются выпуском сертификатов — в нашей статье.

Что такое штамп времени в ЭП

В момент подписания электронного документа с помощью ЭЦП формируется атрибут, который называется штамп времени. Он содержит информацию о дате и времени подписании документа. При подписании документа программа для работы с ЭЦП обращается к службе TSA (time stamping authority), которая сообщает точные дату и время, после чего формируется штамп. Рассказываем об этом здесь.

Область применения ЭП довольно широка. Например, многие специальные сервисы требуют верификации пользователя с её помощью: Госуслуги, онлайн-сервисы для управления средствами в банке и электронные площадки и другие. Поэтому любые технические неполадки, возникающие при использовании ЭП, могут вызвать различные серьёзные: от упущенной выгоды до материальных убытков.

вопросы

Из нашей статьи вы узнаете:

Программа «КриптоАРМ» сегодня входит в число стандартного ПО для простановки электронной цифровой подписи. Она постоянно совершенствуется, дорабатывается для предотвращения сбоев при использовании.

В большинстве случаев проблем при работе с «КриптоАРМ» не возникает, так как интерфейс программы интуитивно понятен, а алгоритмы безопасности полностью соответствуют актуальным стандартам. Однако пользователи периодически жалуются на наличие ошибки в виде отсутствия полного доверия к сертификату цифровой подписи. Выглядит ошибка так:

 
«КриптоАРМ»

 
«КриптоАРМ»1

Проблему можно исправить своими силами, без обращения за помощью к техническим специалистам.

Для перехода на 2012 ГОСТ необходимо:

1) Обновить КриптоПро CSP 3.9 до версии 4.02) Сборка УЦ 2.0 минимум 2.0.6142.3) К моменту перехода УЦ на новые ГОСТ пользователи этого УЦ должны обновить у себя средство ЭП как минимум до версии КриптоПро CSP 4.0 (т.е. c новыми ГОСТами, чтобы цепочка сертификатов могла строиться). Уже     сейчас целесообразно новым пользователям предоставлять 4.0, а старым, когда приходят делать плановую смену ключей, — обновлять до версии 4.0. Таким образом за год (в обычном режиме без спешки) у пользователей     на рабочих местах появятся средства ЭП с новыми ГОСТами.4) Если УЦ аккредитован, то сначала нужно дождаться перехода Головного УЦ на новые ГОСТ. 5) Если все пункты выполнены, то в УЦ можно делать плановую смену ключей , выбирая провайдер для нового ГОСТа.

Собственно все. УЦ продолжает работать, как и работал. Только теперь выдает сертификаты с ключами проверки ЭП по новому ГОСТу.

Длина ключа ГОСТ 2012 может быть 256 или 512 бит.

Для смены ГОСТа (до операции по выпуску перевыпуску сертификата) необходимо выполнить следующие:

Перейти на ГОСТ 2012 256 бит

certutil2 -config ‘localhost\<Имя ЦС>’ -setentry ca\CSP\HashAlgorithm 32801certutil2 -config ‘localhost\<Имя ЦС>’ -setentry ca\CSP\ProviderType 80certutil2 -config ‘localhost\<Имя ЦС>’ -setentry ca\CSP\Provider «Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider»certutil2 -config ‘localhost\<Имя ЦС>’ -setentry ca\CSP\RenewalKeyLength 512certutil2 -config ‘localhost\<Имя ЦС>’ -control ApplyConfiguredSettings

Перейти на ГОСТ 2012 Strong 512 бит

certutil2 -config ‘localhost\<Имя ЦС>’ -setentry ca\CSP\HashAlgorithm 32802certutil2 -config ‘localhost\<Имя ЦС>’ -setentry ca\CSP\ProviderType 81certutil2 -config ‘localhost\<Имя ЦС>’ -setentry ca\CSP\Provider «Crypto-Pro GOST R 34.10-2012 Strong Cryptographic Service Provider»certutil2 -config ‘localhost\<Имя ЦС>’ -setentry ca\CSP\RenewalKeyLength 1024certutil2 -config ‘localhost\<Имя ЦС>’ -control ApplyConfiguredSettings

Расскажем, какие есть нюансы перехода к использованию сертификатов на новом ГОСТ 2012 года.

Согласно Уведомлению об организации перехода на использование схемы электронной подписи по ГОСТ Р 34.10-2012 (ГОСТ 2012) электронные подписи, выпущенные по ГОСТ Р 34.10-2001, можно использовать до 31.12.2019.

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

Подпись на новом алгоритме можно будет получить при плановом продлении сертификата в 2019 году.

Выпускать сертификаты на ГОСТ 2012 для Экстерн Удостоверяющий Центр планирует начать c 01.01.2019 года. Потребности в срочной замене сертификатов нет, так как контролирующие органы пока не готовы принимать документы, подписанные сертификатами по ГОСТ 2012.

СКБ Контур будет использовать все доступные каналы связи для оповещения своих клиентов о необходимости замены сертификата.

  1. Получить новый сертификат, сформированный на ГОСТ 2012 или дождаться планового обновления сертифката.
  2. Установить КриптоПро версии 4.0 и выше.
  3. Приобрести лицензию на КриптоПро версии 4.0, если используется сертификат без встренной лицензии. Для работы КриптоПро CSP на серверных операционных системах (Windows Server 2003/2008/2012/2016) необходимо приобрести и активировать Серверную лицензию. Для приобретения Серверной лицензии обратитесь в сервисный центр.
  4. Установить Контур.Плагин версии 3.10.0.256 или выше.

extern

При использовании КриптоПро CSP 3.9 или 4.0 появляется сообщение:
«С 1 января 2019 года запрещено формирование электронной подписи с помощью ключей ЭП ГОСТ Р 34.10-2001. Вам необходимо перейти на использование ключей ЭП ГОСТ Р 34.10-2012. Продолжить использование ключа ЭП ГОСТ Р 34.10-2001?»

Алгоритмы подписания сертификатов сервера, используемые в соответствии с ГОСТ 2001 и 2012, несовместимы

Пока наш Удостоверяющий Центр не выдает сертификаты на новом алгоритме можно убрать окно с сообщение следующими способами:

  1. Поставить галку «Не напоминать в течение месяца» и нажать «ОК» — сообщение пропадет на 1 месяц. Если сообщение не пропало, то воспользоваться пунктом 2.
  2. Скрыть сообщение до 01.11.2019. Для этого необходимо пройти диагностику и в рекомендуемых действиях выбрать «Скрывать сообщения КриптоПро о переходе на новый ГОСТ»

Алгоритмы подписания сертификатов сервера, используемые в соответствии с ГОСТ 2001 и 2012, несовместимы

Основные проблемы в работе ЭЦП

Мы выделили самые часто встречающиеся ошибки в работе КЭП. Ниже мы будем описывать причину проблемы и путь её решения.

Выбранная подпись не авторизована

Такая проблема появляется, когда используется новая КЭП на ЭТП (электронной торговой площадке), если пользователь не был зарегистрирован. То же самое происходит, когда не был зарегистрирован сам сертификат.

Решением данной проблемы является авторизация:

  1. Перейдите на главную страницу торговой площадки, а затем → ‎«Вход по ЭЦП».
  2. Выберите ‎«Авторизация ЭЦП‎» и нажмите кнопку «Пользователь организации‎».
  3. Подтвердите выбор нового ключа ЭЦП.
  4. В появившемся окне ‎«Идентификационные данные»‎ заполните все обязательные поля и нажмите «Отправить на рассмотрение‎».

В течение часа подпись будет зарегистрирована и ошибка исчезнет. Если же она всё-таки повторятся, то отключите антивирус или поставьте электронную торговую площадку в исключения.

ЭЦП проставлено сертификатом, на который нет заключённого соглашения

Такая проблема появляется при обращении в ПФР без заключённого с ними соглашения.

Чтобы решить проблему, нужно заключить договор с ПФР в письменном виде. Если же он уже был заключён, нужно проверить соответствие данных в документе с данными в сертификате электронной подписи.

‎Алгоритм ключа сертификата не поддерживается

Название ошибки говорит само за себя — тут либо программное обеспечение несовместимо, либо неправильно установлена КриптоПро CSP.

В первую очередь нужно проверить компьютер на совместимость с программными средствами. Если здесь всё нормально, то попробуйте переустановить КриптоПро CSP. Также проверьте хранилище сертификатов на наличие там закрытого ключа. В крайнем случае понадобится переустановка операционной системы.

Электронная подпись документа невалидна

Такая ошибка появляется при работе в системах «1С» как следствие того, что на устройстве не установлен корневой сертификат УЦ. Он нужен для подтверждения того, что удостоверяющий центр сертифицирован Минцифры.

Исправить ошибку можно путём установки соответствующего сертификата в правильное хранилище → ‎«‎Доверенные корневые центры сертификации»‎. Найти его можно на сайте удостоверяющего центра.

Невозможно создание объекта сервером программирования объектов ЭЦП

Подобная проблема может проявиться при подписании электронных документов и при создании запросов в информационных системах.

Чтобы исправить ошибку, достаточно переустановить КриптоПро CSP и КриптоПро ЭЦП Browser plug-in. Если ошибка сохраняется, то скачайте и установите capicom.dll. В крайнем случае отключите защитник Windows и центр обеспечения безопасности.

Ваш сертификат ключа подписи включён в список отозванных

Такая ошибка появляется, когда истекает срок действия сертификата. Решением является продление срока действия.

Если же ошибка возникает, а срок сертификата ещё не подошёл к концу, то нужно установить СОС (список отозванных сертификатов) и перезагрузить компьютер. Если это не помогло, свяжитесь с удостоверяющим центром.

Техническая поддержка продуктов «Астрал-ЭТ» и «1С-ЭТП» работает круглосуточно и поможет решить любую возникшую проблему.

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


Offline

plg

 

Оставлено
:

11 сентября 2018 г. 16:07:34(UTC)

Добрый день!

После замены сертификатов, выданных по ГОСТ от 2001 года на новые сертификаты (ГОСТ от 2012) не удается настроить взаимодействие между WCF клиентами и WCF службой.
Возникает ошибка следующего содержания:

Цитата:

Токен подписывания DerivedKeySecurityToken:
Generation: -1
Offset: 0
Length: 32
Label:
Nonce: /4OJuZGnunI7MpmDrMZbzA==
TokenToDeriveFrom:
<o:SecurityTokenReference xmlns:o=»http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd>
<o:Reference URI=»#uuid-9db8ffb3-48ea-4f0f-9e3b-cc57a3c79d05-1″ />
</o:SecurityTokenReference> не имеет ключа, поддерживающего набор алгоритмов CryptoPro.Sharpei.ServiceModel.Gost2012_256AlgorithmSuite.

Stack Trace:

Цитата:

в System.ServiceModel.Security.SecurityAlgorithmSuite.GetSignatureAlgorithmAndKey(SecurityToken token, String&amp; signatureAlgorithm, SecurityKey&amp; key, XmlDictionaryString&amp; signatureAlgorithmDictionaryString)
в System.ServiceModel.Security.WSSecurityOneDotZeroSendSecurityHeader.StartPrimarySignatureCore(SecurityToken token, SecurityKeyIdentifier keyIdentifier, MessagePartSpecification signatureParts, Boolean generateTargettableSignature)
в System.ServiceModel.Security.SendSecurityHeader.StartSignature()
в CryptoPro.Sharpei.ServiceModel.CPSendSecurityHeader.StartSignature()
в System.ServiceModel.Security.SendSecurityHeader.StartSecurityApplication()
в System.ServiceModel.Security.SecurityAppliedMessage.OnWriteMessage(XmlDictionaryWriter writer)
в System.ServiceModel.Channels.BufferedMessageWriter.WriteMessage(Message message, BufferManager bufferManager, Int32 initialOffset, Int32 maxSizeQuota)
в System.ServiceModel.Channels.TextMessageEncoderFactory.TextMessageEncoder.WriteMessage(Message message, Int32 maxMessageSize, BufferManager bufferManager, Int32 messageOffset)
в System.ServiceModel.Channels.HttpOutput.SerializeBufferedMessage(Message message)
в System.ServiceModel.Channels.HttpOutput.Send(TimeSpan timeout)
в System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.SendRequest(Message message, TimeSpan timeout)
в System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
в System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.Request(Message message, TimeSpan timeout)
в System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.DoOperation(SecuritySessionOperation operation, EndpointAddress target, Uri via, SecurityToken currentToken, TimeSpan timeout)
в System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpan timeout)
в CryptoPro.Sharpei.ServiceModel.CPSecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpan timeout)
в System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpan timeout)
в System.ServiceModel.Security.SecuritySessionClientSettings`1.ClientSecuritySessionChannel.OnOpen(TimeSpan timeout)
в System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
в System.ServiceModel.Channels.ReliableChannelBinder`1.ChannelSynchronizer.SyncWaiter.TryGetChannel()
в System.ServiceModel.Channels.ReliableChannelBinder`1.ChannelSynchronizer.SyncWaiter.TryWait(TChannel&amp; channel)
в System.ServiceModel.Channels.ReliableChannelBinder`1.ChannelSynchronizer.TryGetChannel(Boolean canGetChannel, Boolean canCauseFault, TimeSpan timeout, MaskingMode maskingMode, TChannel&amp; channel)
в System.ServiceModel.Channels.ReliableChannelBinder`1.ChannelSynchronizer.TryGetChannelForOutput(TimeSpan timeout, MaskingMode maskingMode, TChannel&amp; channel)
в System.ServiceModel.Channels.ClientReliableChannelBinder`1.Request(Message message, TimeSpan timeout, MaskingMode maskingMode)
в System.ServiceModel.Channels.RequestReliableRequestor.OnRequest(Message request, TimeSpan timeout, Boolean last)
в System.ServiceModel.Channels.ReliableRequestor.Request(TimeSpan timeout)
в System.ServiceModel.Channels.ClientReliableSession.Open(TimeSpan timeout)
в System.ServiceModel.Channels.ReliableRequestSessionChannel.OnOpen(TimeSpan timeout)
в System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan timeout)
в System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(TimeSpan timeout, CallOnceManager cascade)
в System.ServiceModel.Channels.ServiceChannel.EnsureOpened(TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
в System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
в System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&amp; msgData, Int32 type)

КриптоПро CSP 4.0.9944
КриптоПро .NET 1.0.6397.0

Файлы конфигураций сервера и клиента: Алгоритмы подписания сертификатов сервера, используемые в соответствии с ГОСТ 2001 и 2012, несовместимы Client.exe.config (3kb) загружен 6 раз(а).Алгоритмы подписания сертификатов сервера, используемые в соответствии с ГОСТ 2001 и 2012, несовместимы Server.exe.config (2kb) загружен 3 раз(а).


Offline

Артём Макаров

 

Оставлено
:

13 сентября 2018 г. 13:12:36(UTC)

Добрый день.

Попробуйте текущую сборку отсюда.


Offline

plg

 

Оставлено
:

13 сентября 2018 г. 16:31:59(UTC)

Генерируется новое исключение:

Цитата:

<Exception>
<ExceptionType>System.ServiceModel.Security.SecurityNegotiationException, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType>
<Message>Сбой согласования режима безопасности SOAP с «http://localhost:8800/CalculatorService.svc» для целевого объекта «http://localhost:8800/CalculatorService.svc». Подробнее см. внутреннее исключение.</Message>
<StackTrace>
в System.ServiceModel.Security.IssuanceTokenProviderBase`1.DoNegotiation(TimeSpan timeout)
в System.ServiceModel.Security.SspiNegotiationTokenProvider.OnOpen(TimeSpan timeout)
в System.ServiceModel.Security.TlsnegoTokenProvider.OnOpen(TimeSpan timeout)
в System.ServiceModel.Security.WrapperSecurityCommunicationObject.OnOpen(TimeSpan timeout)
в System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
в System.ServiceModel.Security.SecurityUtils.OpenCommunicationObject(ICommunicationObject obj, TimeSpan timeout)
в System.ServiceModel.Security.SymmetricSecurityProtocol.OnOpen(TimeSpan timeout)
в System.ServiceModel.Security.WrapperSecurityCommunicationObject.OnOpen(TimeSpan timeout)
в System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
в System.ServiceModel.Channels.SecurityChannelFactory`1.ClientSecurityChannel`1.OnOpen(TimeSpan timeout)
в System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
в System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.DoOperation(SecuritySessionOperation operation, EndpointAddress target, Uri via, SecurityToken currentToken, TimeSpan timeout)
в System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpan timeout)
в CryptoPro.Sharpei.ServiceModel.CPSecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpan timeout)
в System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpan timeout)
в System.ServiceModel.Security.SecuritySessionClientSettings`1.ClientSecuritySessionChannel.OnOpen(TimeSpan timeout)
в System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
в System.ServiceModel.Channels.ReliableChannelBinder`1.ChannelSynchronizer.SyncWaiter.TryGetChannel()
в System.ServiceModel.Channels.ReliableChannelBinder`1.ChannelSynchronizer.SyncWaiter.TryWait(TChannel&amp; channel)
в System.ServiceModel.Channels.ReliableChannelBinder`1.ChannelSynchronizer.TryGetChannel(Boolean canGetChannel, Boolean canCauseFault, TimeSpan timeout, MaskingMode maskingMode, TChannel&amp; channel)
в System.ServiceModel.Channels.ReliableChannelBinder`1.ChannelSynchronizer.TryGetChannelForOutput(TimeSpan timeout, MaskingMode maskingMode, TChannel&amp; channel)
в System.ServiceModel.Channels.ClientReliableChannelBinder`1.Request(Message message, TimeSpan timeout, MaskingMode maskingMode)
в System.ServiceModel.Channels.RequestReliableRequestor.OnRequest(Message request, TimeSpan timeout, Boolean last)
в System.ServiceModel.Channels.ReliableRequestor.Request(TimeSpan timeout)
в System.ServiceModel.Channels.ClientReliableSession.Open(TimeSpan timeout)
в System.ServiceModel.Channels.ReliableRequestSessionChannel.OnOpen(TimeSpan timeout)
в System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan timeout)
в System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(TimeSpan timeout, CallOnceManager cascade)
в System.ServiceModel.Channels.ServiceChannel.EnsureOpened(TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
в System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
в System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&amp; msgData, Int32 type)
в ICalculator.Add(Double n1, Double n2)
в CalculatorClient.Add(Double n1, Double n2)
в Sample.Gost.Client.Main()
</StackTrace>
<InnerException>
<ExceptionType>System.ComponentModel.Win32Exception, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType>
<Message>Не удается установить связь с локальной системой безопасности</Message>
<StackTrace>
в CryptoPro.Sharpei.ServiceModel.CPTlsSspiNegotiation.DecryptWSTrustKey(Byte[] wrappedKey)
в CryptoPro.Sharpei.ServiceModel.CPWrappedKeyTokenEntry.CreateWrappedKeyToken(String id, String encryptionMethod, String carriedKeyName, SecurityKeyIdentifier unwrappingTokenIdentifier, Byte[] wrappedKey, SecurityTokenResolver tokenResolver)
в System.ServiceModel.Security.WSSecurityJan2004.WrappedKeyTokenEntry.ReadTokenCore(XmlDictionaryReader reader, SecurityTokenResolver tokenResolver)
в System.ServiceModel.Security.WSSecurityTokenSerializer.ReadTokenCore(XmlReader reader, SecurityTokenResolver tokenResolver)
в System.ServiceModel.Security.WSTrust.Driver.GetIssuedToken(RequestSecurityTokenResponse rstr, SecurityTokenResolver resolver, IList`1 allowedAuthenticators, SecurityKeyEntropyMode keyEntropyMode, Byte[] requestorEntropy, String expectedTokenType, ReadOnlyCollection`1 authorizationPolicies, Int32 defaultKeySize, Boolean isBearerKeyType)
в CryptoPro.Sharpei.ServiceModel.CPWSTrustDriver.GetIssuedToken(Object rstr, SecurityTokenResolver resolver, IList`1 allowedAuthenticators, SecurityKeyEntropyMode keyEntropyMode, Byte[] requestorEntropy, String expectedTokenType, ReadOnlyCollection`1 authorizationPolicies, Int32 defaultKeySize, Boolean isBearerKeyType)
в System.ServiceModel.Security.RequestSecurityTokenResponse.GetIssuedToken(SecurityTokenResolver resolver, IList`1 allowedAuthenticators, SecurityKeyEntropyMode keyEntropyMode, Byte[] requestorEntropy, String expectedTokenType, ReadOnlyCollection`1 authorizationPolicies, Int32 defaultKeySize, Boolean isBearerKeyType)
в System.ServiceModel.Security.SspiNegotiationTokenProvider.OnNegotiationComplete(SspiNegotiationTokenProviderState sspiState, RequestSecurityTokenResponse negotiationRstr, RequestSecurityTokenResponse authenticatorRstr)
в CryptoPro.Sharpei.ServiceModel.CPSspiNegotiationTokenProvider.OnNegotiationComplete(Object sspiState, Object negotiationRstr, Object authenticatorRstr)
в System.ServiceModel.Security.SspiNegotiationTokenProvider.GetNextOutgoingMessageBody(Message incomingMessage, SspiNegotiationTokenProviderState sspiState)
в System.ServiceModel.Security.IssuanceTokenProviderBase`1.GetNextOutgoingMessage(Message incomingMessage, T negotiationState)
в System.ServiceModel.Security.IssuanceTokenProviderBase`1.DoNegotiation(TimeSpan timeout)
</StackTrace>
<NativeErrorCode>80090304</NativeErrorCode>
</InnerException>
</Exception>

В системном журнале следующая ошибка: КриптоПро TLS. Ошибка 0x80090005 при обращении к CSP: Плохие данные.


Offline

Артём Макаров

 

Оставлено
:

17 сентября 2018 г. 9:17:15(UTC)

Теперь ошибка связана с TLS.

Проверьте работоспособность TLS с использованием 2012 ГОСТа через браузер и csptest.

Если есть возможность переведите проект на более свежий фреймворк (4.0+).


Offline

Skylimited

 

Оставлено
:

25 октября 2018 г. 15:22:50(UTC)

Здравствуйте.

Также проблема с распознаванием ответа подписанного по гост 2012
Установили патч из этой темы и вылезает такое сообщение:

Цитата:

Message: The algorithm ‘urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256’ is not accepted for operation ‘AsymmetricSignature’ by algorithm suite CryptoPro.Sharpei.ServiceModel.GostAlgorithmSuite.
Stack: Server stack trace: at System.ServiceModel.Security.SecurityAlgorithmSuite.EnsureAcceptableAsymmetricSignatureAlgorithm(String algorithm) at System.ServiceModel.Security.SecurityAlgorithmSuite.EnsureAcceptableSignatureAlgorithm(SecurityKey verificationKey, String algorithm) at System.ServiceModel.Security.WSSecurityOneDotZeroReceiveSecurityHeader.VerifySignature(SignedXml signedXml, Boolean isPrimarySignature, SecurityHeaderTokenResolver resolver, Object signatureTarget, String id) at System.ServiceModel.Security.ReceiveSecurityHeader.ProcessPrimarySignature(SignedXml signedXml, Boolean isFromDecryptedSource) at System.ServiceModel.Security.ReceiveSecurityHeader.ExecuteSignatureEncryptionProcessingPass() at System.ServiceModel.Security.LaxModeSecurityHeaderElementInferenceEngine.ExecuteProcessingPasses(ReceiveSecurityHeader securityHeader, XmlDictionaryReader reader) at System.ServiceModel.Security.ReceiveSecurityHeader.Process(TimeSpan timeout, ChannelBinding channelBinding, ExtendedProtectionPolicy extendedProtectionPolicy) at System.ServiceModel.Security.MessageSecurityProtocol.ProcessSecurityHeader(ReceiveSecurityHeader securityHeader, Message& message, SecurityToken requiredSigningToken, TimeSpan timeout, SecurityProtocolCorrelationState[] correlationStates) at System.ServiceModel.Security.AsymmetricSecurityProtocol.VerifyIncomingMessageCore(Message& message, String actor, TimeSpan timeout, SecurityProtocolCorrelationState[] correlationStates) at System.ServiceModel.Security.MessageSecurityProtocol.VerifyIncomingMessage(Message& message, TimeSpan timeout, SecurityProtocolCorrelationState[] correlationStates) at System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.ProcessReply(Message reply, SecurityProtocolCorrelationState correlationState, TimeSpan timeout) at System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.Request(Message message, TimeSpan timeout) at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message) Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) at EsskWrapper.EsskServiceReference.EsskService.GetQueue(GetQueue1 request) at EsskWrapper.EsskServiceReference.EsskServiceClient.EsskWrapper.EsskServiceReference.EsskService.GetQueue(GetQueue1 request) at EsskWrapper.EsskServiceReference.EsskServiceClient.GetQueue(HeaderType& Header, GetQueueType GetQueue1) at GosServiceWrapper.ESSKWrapper.GetQueye(Boolean TakeJobsOnly, Boolean TakeOnlyDownloaded) at ATRGatewayRuntime.Program.Main(String[] args)


Offline

Артём Макаров

 

Оставлено
:

25 октября 2018 г. 15:30:56(UTC)

Добрый день.

Устанавливаете ли вы явно в коде или в конфигурации GostAlgorithmSuite?

В случае 2012 ГОСТов нужно использовать Gost2012_256AlgorithmSuite и Gost2012_512AlgorithmSuite


Offline

Skylimited

 

Оставлено
:

25 октября 2018 г. 15:48:03(UTC)

Здравствуйте, нет.
У нас ситуация, что наши запросы в СМЭВ подписываются сертификатом ГОСТ 2001, а ответ СМЭВ стали подписывать ГОСТ 2012 (256 бит).

Цитата:

<basicHttpBinding>
<binding name=»EsskService» messageEncoding=»Text» textEncoding=»utf-8″ closeTimeout=»00:10:00″ receiveTimeout=»00:10:00″ openTimeout=»00:01:00″ sendTimeout=»00:10:00″ maxReceivedMessageSize=»2147483647″>
<security mode=»Message»>
<transport clientCredentialType=»None» proxyCredentialType=»None» />
<message clientCredentialType=»Certificate» algorithmSuite=»BasicGostObsolete» />
</security>
</binding>
</basicHttpBinding>
</bindings>

Если в message менять на Gost2012_256AlgorithmSuite, то падает с ошибкой уже отправки

Цитата:

Message: Параметр должен поддерживать алгоритм GOST R 34.10-2012 256.
Stack: Server stack trace: at CryptoPro.Sharpei.Gost2012_256SignatureFormatter.SetKey(AsymmetricAlgorithm key) at System.Security.Cryptography.SignatureDescription.CreateFormatter(AsymmetricAlgorithm key) at System.IdentityModel.Tokens.X509AsymmetricSecurityKey.GetSignatureFormatter(String algorithm) at CryptoPro.Sharpei.IdentityModel.CPX509AsymmetricSecurityKey.GetSignatureFormatter(String algorithm) at System.IdentityModel.SignedXml.ComputeSignature(SecurityKey signingKey) at System.ServiceModel.Security.WSSecurityOneDotZeroSendSecurityHeader.CompletePrimarySignatureCore(SendSecurityHeaderElement[] signatureConfirmations, SecurityToken[] signedEndorsingTokens, SecurityToken[] signedTokens, SendSecurityHeaderElement[] basicTokens, Boolean isPrimarySignature) at System.ServiceModel.Security.SendSecurityHeader.CompleteSignature() at System.ServiceModel.Security.SendSecurityHeader.CompleteSecurityApplication() at System.ServiceModel.Security.SecurityAppliedMessage.OnWriteMessage(XmlDictionaryWriter writer) at System.ServiceModel.Channels.BufferedMessageWriter.WriteMessage(Message message, BufferManager bufferManager, Int32 initialOffset, Int32 maxSizeQuota) at System.ServiceModel.Channels.TextMessageEncoderFactory.TextMessageEncoder.WriteMessage(Message message, Int32 maxMessageSize, BufferManager bufferManager, Int32 messageOffset) at CryptoPro.Sharpei.ServiceModel.SMEVTextMessageEncoder.WriteMessage(Message message, Int32 maxMessageSize, BufferManager bufferManager, Int32 messageOffset) at System.ServiceModel.Channels.HttpOutput.SerializeBufferedMessage(Message message, Boolean shouldRecycleBuffer) at System.ServiceModel.Channels.HttpOutput.Send(TimeSpan timeout) at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.SendRequest(Message message, TimeSpan timeout) at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout) at System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.Request(Message message, TimeSpan timeout) at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message) Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) at EsskWrapper.EsskServiceReference.EsskService.GetQueue(GetQueue1 request) at EsskWrapper.EsskServiceReference.EsskServiceClient.EsskWrapper.EsskServiceReference.EsskService.GetQueue(GetQueue1 request) at EsskWrapper.EsskServiceReference.EsskServiceClient.GetQueue(HeaderType& Header, GetQueueType GetQueue1) at GosServiceWrapper.ESSKWrapper.GetQueye(Boolean TakeJobsOnly, Boolean TakeOnlyDownloaded) at ATRGatewayRuntime.Program.Main(String[] args)

Отредактировано пользователем 25 октября 2018 г. 15:49:36(UTC)
 | Причина: ГОСТ 2012 (256 бит)


Offline

Артём Макаров

 

Оставлено
:

25 октября 2018 г. 15:55:06(UTC)

Смешанный сценарий (2001 + 2012) не заработает.

Если нужен 2012 ГОСТ то запросы и ответы должны быть на 2012 ГОСТе.

thanks 1 пользователь поблагодарил Артём Макаров за этот пост.


Offline

bony599

 

Оставлено
:

23 сентября 2019 г. 16:53:45(UTC)

Автор: Артём Макаров Перейти к цитате

Добрый день.

Устанавливаете ли вы явно в коде или в конфигурации GostAlgorithmSuite?

В случае 2012 ГОСТов нужно использовать Gost2012_256AlgorithmSuite и Gost2012_512AlgorithmSuite

1.Как в файле конфигурации для атрибутов algorithmSuite или defaultAlgorithmSuite использовать Gost2012_256AlgorithmSuite ?

2.Нашелся ли способ решения проблемы? Сегодня сменили сертификат Банка на новый ГОСТ2012, а ответы по-прежнему приходят ГОСТ2001, CryptoPro.Sharpei.ServiceModel клиент перестал работать.

Отредактировано пользователем 23 сентября 2019 г. 16:54:17(UTC)
 | Причина: Не указана


Offline

Артём Макаров

 

Оставлено
:

24 сентября 2019 г. 9:56:17(UTC)

1. В файле конфигурации при указании привязки необходимо задать поле algorithmSuite.
Пример

Код:

    <bindings>
      <ws2007HttpBinding>
        <binding name="STS-WS2007HttpBinding" >
          <security mode="TransportWithMessageCredential">
            <transport clientCredentialType="None" />
            <message clientCredentialType="IssuedToken" establishSecurityContext="false" algorithmSuite="BasicGost2012_256"  />
          </security>
        </binding>
      </ws2007HttpBinding>
    </bindings>

2. Какая именно у вас проблема? Какая ошибка? Установлена ли последняя версия КриптоПро.NET? Какую версию .net framework используете? Какая привязка используется? Если возможно — приложите trace и message log во время возникновения ошибки, конфигурацию клиента и сервера, и используемые сертификаты.


Offline

bony599

 

Оставлено
:

24 сентября 2019 г. 10:59:23(UTC)

Автор: Артём Макаров Перейти к цитате

Какая именно у вас проблема? Какая ошибка?

при обработке ответа исключение: The algorithm ‘http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411’ is not accepted for operation ‘AsymmetricSignature’ by algorithm suite CryptoPro.Sharpei.ServiceModel.Gost2012_256AlgorithmSuite.

Автор: Артём Макаров Перейти к цитате

Установлена ли последняя версия КриптоПро.NET? Какую версию .net framework используете?

1.0.6893, 4.0

Автор: Артём Макаров Перейти к цитате

Какая привязка используется?

customBinding

Автор: Артём Макаров Перейти к цитате

Если возможно — приложите trace и message log во время возникновения ошибки

— нормальный ответ от службы. Подпись ГОСТ2001.

Автор: Артём Макаров Перейти к цитате

конфигурацию клиента и сервера

Цитата:

<system.serviceModel>
<extensions>
<bindingElementExtensions>
<add name=»SMEVTextMessageEncoder» type=»CryptoPro.Sharpei.ServiceModel.SMEVMessageEncodingElement, CryptoPro.Sharpei.ServiceModel, Version=1.4.0.1, Culture=neutral, PublicKeyToken=473b8c5086e795f5″/>
</bindingElementExtensions>
</extensions>
<bindings>
<customBinding>
<binding name=»PaymentsBindingAsync»>
<SMEVTextMessageEncoder />
<security defaultAlgorithmSuite=»BasicGost2012_256″ allowSerializedSigningTokenOnReply=»true»
authenticationMode=»MutualCertificateDuplex» includeTimestamp=»false»
messageProtectionOrder=»SignBeforeEncrypt» messageSecurityVersion=»WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10″>
<localClientSettings detectReplays=»false» />
<localServiceSettings detectReplays=»false» />
</security>
<httpTransport maxBufferPoolSize=»2147483647″ maxReceivedMessageSize=»2147483647″
maxBufferSize=»2147483647″ />
</binding>
</customBinding>
</bindings>
<client>
<endpoint address=»http://oraas.rt.ru:7777/gateway/services/SID0004769/1.00″
binding=»customBinding» bindingConfiguration=»PaymentsBindingAsync»
contract=»Service.VerificationServicePortType» name=»DataVerificationPort» />
</client>

Автор: Артём Макаров Перейти к цитате

используемые сертификаты

— обычные валидные сертификаты: наш — ГОСТ2012, сервера — ГОСТ2001, который содержится в ответе.

Отредактировано пользователем 24 сентября 2019 г. 11:00:36(UTC)
 | Причина: Не указана


Offline

Артём Макаров

 

Оставлено
:

24 сентября 2019 г. 11:06:25(UTC)

Как я писал выше:

Цитата:

Смешанный сценарий (2001 + 2012) не заработает.

Если нужен 2012 ГОСТ то запросы и ответы должны быть на 2012 ГОСТе.

Ошибка возникает из-за того, что клиент пытается использовать 2012 гост, а сервер 2001. На сервере нужно изменить сертификат и, если необходимо, конфигурацию для использования 2012 ГОСТа.


Offline

bony599

 

Оставлено
:

24 сентября 2019 г. 11:23:23(UTC)

Автор: Артём Макаров Перейти к цитате

Как я писал выше:

Цитата:

Смешанный сценарий (2001 + 2012) не заработает.

Если нужен 2012 ГОСТ то запросы и ответы должны быть на 2012 ГОСТе.

Ошибка возникает из-за того, что клиент пытается использовать 2012 гост, а сервер 2001. На сервере нужно изменить сертификат и, если необходимо, конфигурацию для использования 2012 ГОСТа.

Как я писал выше: Нашелся ли способ решения проблемы?

Сертификат на сервере устанавливает поставщик информации в СМЭВ2 и я на всех поставщиков, использующих сертификат ГОСТ2001, повлиять никак не могу.
Также не могу получить новый сертификат КЭП ГОСТ2001.


Offline

Артём Макаров

 

Оставлено
:

24 сентября 2019 г. 11:31:18(UTC)

Тут принципиальная проблема в том как работает WCF: параметры и алгоритмы должны совпадать на сервере и на клиенте. Если сервер использует 2001 ГОСТ — ваш единственный выход тоже использовать ГОСТ 2001.

Если необходимо работать с системами и ГОСТ 2012 и ГОСТ 2001 — то придётся делать 2 клиента с разными сертификатами, с соответствующими ключами. Подружить 2012 клиента с 2001 сервером никак не выйдет, увы.

Отредактировано пользователем 24 сентября 2019 г. 11:32:12(UTC)
 | Причина: Не указана


Offline

bony599

 

Оставлено
:

24 сентября 2019 г. 12:00:13(UTC)

Автор: Артём Макаров Перейти к цитате

Тут принципиальная проблема в том как работает WCF: параметры и алгоритмы должны совпадать на сервере и на клиенте. Если сервер использует 2001 ГОСТ — ваш единственный выход тоже использовать ГОСТ 2001.

Если необходимо работать с системами и ГОСТ 2012 и ГОСТ 2001 — то придётся делать 2 клиента с разными сертификатами, с соответствующими ключами. Подружить 2012 клиента с 2001 сервером никак не выйдет, увы.

Как это возможно? Метод у сервиса один.


Offline

Артём Макаров

 

Оставлено
:

24 сентября 2019 г. 12:04:04(UTC)

Немного не понял вопрос.

Если сервер использует ГОСТ 2001 — пишите для него клиент, который использует 2001 сертификат.
Сервер использует ГОСТ 2012 — пишите и используете для него клиент, который использует 2012 сертификат.


Offline

two_oceans

 

Оставлено
:

24 сентября 2019 г. 12:32:59(UTC)

По самой проблеме я думаю это какая-то ерунда что алгоритм подписи должен быть одинаковым. Понимаю когда должен совпадать алгоритм TLS (потому что он между сторонами в один момент времени). Для ясности — соединение со смэв нешифрованное, так как идет по защищенному Vipnet каналу, то есть TLS к клиенту-серверу вообще никаким боком, для отдельная программа или железка. Подпись же по сути независимая на каждой стороне, зачем ее согласовывать? Разве трудно сделать case по urn алгоритма подписи и создавать нужный объект?

К хорошему. Судя по объявлению на технических порталах СМЭВ 9-11 октября 2019 года сервера СМЭВ предполагается перевести на ГОСТ-2012, сертификат сервера уже выложен для смэв 3, так что проблеме существовать осталось полмесяца. Правда обещали гост-2012 еще в апреле и переносили 3 раза.

Отредактировано пользователем 24 сентября 2019 г. 12:34:16(UTC)
 | Причина: Не указана

thanks 1 пользователь поблагодарил two_oceans за этот пост.

Сертификат связан с модулем криптографии «Crypto-Pro GOST R 34. 10-2001 Cryptographic Service Provider» с типом 75

Дата обновления: 28.06.2022

Номер карточки: SD0006074

У данной ошибки имеется два сценария воспроизведения:

1. При подписании электронных документов.

При возникновении ошибки «Сертификат, связанный с закрытым ключом, указывает на модуль криптографии, отличный от текущего. Сертификат связан с модулем криптографии «Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider» с типом 75..» необходимо выполнить проверку сертификата электронной подписи.

Алгоритм проверки электронной подписи:

В программном продукте 1С необходимо

— перейти в раздел «Администрирование» —  «Обмен электронными документами» — «Настройка электронной подписи и шифрования».

— На вкладке «Сертификаты» открыть используемый сертификат.

— Убедиться, что в поле программа установлено значение «КриптоПро CSP (ГОСТ 2012)».

— Нажать на кнопку «Проверить».

СертификатСвязанСМодулемКриптографииСТипом75Рис.1.jpg

— Ввести пароль закрытой части ключа и нажать «Проверить».

СертификатСвязанСМодулемКриптографииСТипом75Рис.2.jpg

Если в ходе проверки напротив пункта «Подписание данных» возникнет сигнализирующий об ошибке красный символ, на него необходимо нажать для открытия технической информации об ошибке.

СертификатСвязанСМодулемКриптографииСТипом75Рис.3.jpg

Если в технической информации об ошибке указано «Сертификат, связанный с закрытым ключом, указывает на модуль криптографии, отличный от текущего. Сертификат связан с модулем криптографии «Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider» с типом 75..» необходимо перепривязать сертификат к контейнеру закрытого ключа (см. ниже в разделе «Решение»).

СертификатСвязанСМодулемКриптографииСТипом75Рис.4.jpg

2. При добавлении нового сертификата в настройки электронной подписи и шифрования.

Воспроизведение: Перейти в раздел Администрирование — Обмен электронными документами — Настройки электронной подписи и шифрования, во вкладке «Сертификаты» нажать «Добавить» и во всплывающем меню выбрать «Из установленных на компьютере».

СертификатСвязанСМодулемКриптографииСТипом75Рис.5.jpg

В открывшемся окне необходимо выбрать актуальный сертификат и нажать «Далее».

В следующем окне добавления сертификата необходимо ввести пароль и нажать «Добавить».

СертификатСвязанСМодулемКриптографииСТипом75Рис.7.jpg

Далее возможно возникновение ошибки «Сертификат, связанный с закрытым ключом, указывает на модуль криптографии, отличный от текущего. Сертификат связан с модулем криптографии «Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider» с типом 75.».

СертификатСвязанСМодулемКриптографииСТипом75Рис.8.jpg

В случае её возникновения в предыдущем окне добавления сертификата необходимо нажать на кнопку «Показать данные сертификата, которые сохраняются в файле». Данная кнопка визуализирована в виде иконки сертификата.

СертификатСвязанСМодулемКриптографииСТипом75Рис.9.jpg

И в открывшемся окне нажать «Сохранить в файл…» и выполнить сохранение сертификата в любую доступную директорию компьютера и перейти к решению (см. ниже).

СертификатСвязанСМодулемКриптографииСТипом75Рис.10.jpg

Решение.

Для устранения ошибки «Сертификат, связанный с закрытым ключом, указывает на модуль криптографии, отличный от текущего. Сертификат связан с модулем криптографии «Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider» с типом 75.» необходимо заново связать сертификат с закрытым ключом.

Запустить КриптоПро CSP. Для этого необходимо перейти в Пуск — Панель управления — КриптоПро CSP

СертификатСвязанСМодулемКриптографииСТипом75Рис.11.jpg

В открывшемся окне криптопровайдера перейти на вкладку «Сервис» и нажать «Установить личный сертификат».

СертификатСвязанСМодулемКриптографииСТипом75Рис.12.jpg

В следующем окне необходимо выбрать директорию расположения файла сертификата нажав кнопку «Обзор».

СертификатСвязанСМодулемКриптографииСТипом75Рис.13.jpg

Указать директорию, в которую ранее был сохранён сертификат и нажать «Открыть».

СертификатСвязанСМодулемКриптографииСТипом75Рис.14.jpg

В следующем окне мастера установки сертификатов поставить галочку «Найти контейнер автоматически». Контейнер должен определиться в окне ниже. Если найти контейнер автоматически не удалось, необходимо нажать «Обзор» и самостоятельно указать контейнер. Затем необходимо нажать «Далее».

СертификатСвязанСМодулемКриптографииСТипом75Рис.15.jpg

После необходимо поставить галочку «Установить сертификат (цепочку сертификатов) в контейнер”. Затем нажать «Далее» и завершить установку.

СертификатСвязанСМодулемКриптографииСТипом75Рис.16.jpg

После установки связи между сертификатом и закрытой частью ключа ошибка исправится.

СертификатСвязанСМодулемКриптографииСТипом75Рис.17.jpg

Сертификат связан с модулем криптографии «Infotecs Cryptographic Service Provider» с типом 2

Дата обновления: 28.06.2022

Номер карточки: SD0000704

У данной ошибки имеется два сценария воспроизведения:

1. При подписании электронных документов.

При возникновении ошибки «Сертификат, связанный с закрытым ключом, указывает на модуль криптографии, отличный от текущего. Сертификат связан с модулем криптографии «Infotecs Cryptographic Service Provider» с типом 2.» необходимо выполнить проверку сертификата электронной подписи.

Алгоритм проверки электронной подписи:

В программном продукте 1С необходимо: — Перейти в раздел «Администрирование» —  «Обмен электронными документами» — «Настройка электронной подписи и шифрования».

— На вкладке «Сертификаты» открыть используемый сертификат.

— Убедиться, что в поле программа установлено значение «ViPNet CSP (ГОСТ 2012)».

— Нажать на кнопку «Проверить».

СертификатСвязанСМодулемКриптографииСТипом2Рис.1.jpg

— Ввести пароль закрытой части ключа и нажать «Проверить».

СертификатСвязанСМодулемКриптографииСТипом2Рис.2.jpg

Если в ходе проверки напротив пункта «Подписание данных» возникнет сигнализирующий об ошибке красный символ, на него необходимо нажать для открытия технической информации об ошибке.

СертификатСвязанСМодулемКриптографииСТипом2Рис.3.jpg

Если в технической информации об ошибке указано «Сертификат, связанный с закрытым ключом, указывает на модуль криптографии, отличный от текущего. Сертификат связан с модулем криптографии «Infotecs Cryptographic Service Provider» с типом 2.», необходимо повторно связать сертификат с контейнером. Как связать сертификат с контейнером  указано ниже.

СертификатСвязанСМодулемКриптографииСТипом2Рис.4.jpg

2. При добавлении нового сертификата в настройки электронной подписи и шифрования.

Воспроизведение: Перейти в раздел Администрирование — Обмен электронными документами — Настройки электронной подписи и шифрования и во вкладке «Сертификаты» нажать «Добавить» и в открывшемся меню выбрать «Из установленных на компьютере».

СертификатСвязанСМодулемКриптографииСТипом2Рис.5.jpg

В открывшемся окне необходимо выбрать актуальный сертификат и нажать «Далее

В следующем окне необходимо ввести пароль и нажать «Добавить».

СертификатСвязанСМодулемКриптографииСТипом2Рис.7.jpg

Далее возможно возникновение ошибки «Сертификат, связанный с закрытым ключом, указывает на модуль криптографии, отличный от текущего. Сертификат связан с модулем криптографии «Infotecs Cryptographic Service Provider» с типом 2.»

СертификатСвязанСМодулемКриптографииСТипом2Рис.8.jpg

В случае её возникновения в предыдущем окне добавления сертификата необходимо нажать на кнопку «Показать данные сертификата, которые сохраняются в файле». Данная кнопка визуализирована в виде иконки сертификата.

СертификатСвязанСМодулемКриптографииСТипом2Рис.9.jpg

В открывшемся окне нажать «Сохранить в файл…» и выполнить сохранение сертификата в любую доступную директорию компьютера и перейти к решению (см. ниже)

СертификатСвязанСМодулемКриптографииСТипом2Рис.10.jpg

Решение.

Для устранения ошибки «Сертификат, связанный с закрытым ключом, указывает на модуль криптографии, отличный от текущего. Сертификат связан с модулем криптографии «Infotecs Cryptographic Service Provider» с типом 2.» необходимо связать сертификат с закрытым ключом.

В окне ViPNet CSP нажать «Установить сертификат»

СертификатСвязанСМодулемКриптографииСТипом2Рис.11.jpg

В открывшемся окне необходимо выбрать директорию, куда был сохранен сертификат, выбрать сохраненный ранее сертификат и нажать «Открыть».

СертификатСвязанСМодулемКриптографииСТипом2Рис.12.jpg

В мастере установки сертификатов нажать «Далее»

СертификатСвязанСМодулемКриптографииСТипом2Рис.13.jpg

При выборе хранилища необходимо выбрать «Текущий пользователь» и нажать «Далее»

СертификатСвязанСМодулемКриптографииСТипом2Рис.14.jpg

В следующем окне необходимо выбрать «Найти контейнер с закрытым ключом» и нажать «Далее».

СертификатСвязанСМодулемКриптографииСТипом2Рис.15.jpg

Контейнер с закрытым ключом определится автоматический. В том случае, когда контейнер не определился необходимо нажать «Обзор» и выбрать контейнер вручную, а затем нажать «ОК» и завершить установку.

СертификатСвязанСМодулемКриптографииСТипом2Рис.16.jpg

После установки связи между сертификатом и закрытой частью ключа ошибка исправится.

СертификатСвязанСМодулемКриптографииСТипом2Рис.17.jpg

Какие бывают ошибки

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

  • Проблемы с сертификатом Они появляются, когда сертификат не выбран, не найден или не верен.

  • Проблемы с подписанием документа. Ошибки возникают при попытке подписать документ.

  • Проблема при авторизации на торговых площадках.

Рассмотрим неполадки подробнее и разберёмся, как их решать.

Сертификат не найден

Иногда при попытке подписать электронный документ с помощью ЭП пользователь может столкнуться с ошибкой «Не удалось найти ни одного сертификата, пригодного для создания подписи»

У подобных ошибок могут быть следующие причины:

1. На компьютере не установлены корневые сертификаты Удостоверяющего Центра (УЦ), в котором была получена ЭП. Необходимо установить либо обновить корневой сертификат. Установка корневых сертификатов удостоверяющего центра подробно описана в нашей инструкции.

2. На ПК не установлено ни одного личного сертификата ЭП. Для применения ЭП необходимы и личные сертификаты. Об их установке мы писали в другой статье.

3. Установленные на компьютере необходимые сертификаты не валидны. Сертификаты отозваны или просрочены. Уточните статус сертификата в УЦ. Ошибка с текстом «Ваш сертификат ключа подписи включён в список отозванных» возникает, если у сертификата закончился срок действия или на ПК нужно обновить список сертификатов. В последней ситуации следует вручную загрузить перечень отозванных сертификатов.

Для установки списка отозванных сертификатов:

  • Откройте личный сертификат пользователя в окне Свойства браузера. Чтобы открыть его, наберите «Свойства браузера» в поисковой строке меню Пуск. Перейдите во вкладку Содержание и нажмите кнопку «Сертификаты».


  • 
личный сертификат пользователя

  • Во вкладке Состав выберите из списка пункт «Точки распространения списков отзыва».

  • В блоке Имя точки распространения скопируйте ссылку на загрузку файла со списком отзыва.


  • 
личный сертификат пользователя Состав

  • Следуйте указаниям «Мастера импорта сертификатов».

Не виден сертификат на носителе

Как правило, причина такой проблемы — сбой в работе программных компонентов. Для её решения достаточно перезагрузить компьютер. Однако иногда этого бывает недостаточно, поэтому требуется переустановка драйверов или обращение в службу техподдержки.

К наиболее распространённым причинам такой проблемы относятся следующие случаи:

  1. Долгое опознание носителя. Для решения проблемы необходимо дождаться завершения процесса или обновить версию операционной системы.

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

  3. Неисправность носителя. Если при подключении токена к другому компьютеру или USB-порту система не определяет его, значит, проблема в самом носителе. Устранение неисправности возможно в данном случае лишь одним путём — нужно обратиться в сервисный центр для выпуска нового носителя.

ЭП не подписывает документ

Причин у подобной проблемы множество. Среди самых распространённых можно выделить следующие неполадки:

  1. Закрытый ключ на используемом контейнере не соответствует открытому ключу сертификата. Возможно был выбран не тот контейнер, поэтому следует проверить все закрытые контейнеры на компьютере. Если необходимый контейнер по тем или иным причинам отсутствует, владельцу придётся обращаться в удостоверяющий центр для перевыпуска ЭП.

  2. Ошибка «Сертификат недействителен» (certificate is not valid). Следует повторно установить сертификат ЭП по инструкциям УЦ в зависимости от используемого криптопровайдера — КриптоПро CSP, ViPNet CSP или другого.

  3. Сертификат ЭП определяется как непроверенный. В этом случае необходимо переустановить корневой сертификат удостоверяющего центра.

  4. Истёк срок действия криптопровайдера. Для решения этой проблемы необходим новый лицензионный ключ к программе-криптопровайдеру. Для его получения необходимо обращаться к специалистам УЦ или к ответственным сотрудникам своей организации.

  5. Подключён носитель с другим сертификатом. Убедитесь, что подключён правильный токен. Проверьте также, не подключены ли носители других сертификатов. Отключите другие носители в случае их обнаружения.

В момент подписания электронных документов или формирования запроса в различных может возникнуть ошибка «Невозможно создание объекта сервером программирования объектов».


ошибка

В этой ситуации помогает установка и регистрация библиотеки Capicom:

  • Распакуйте и переместите файлы capicom.dll и capicom.inf в каталог syswow64, находящийся в корневой папке ОС.

  • Откройте командную строку от имени администратора — для этого в меню Пуск наберите «Командная строка», нажмите по найденному приложению правой кнопкой мыши и выберите Запуск от имени администратора.


  • 
 командную строку

  • Введите «c:\windows\syswow64\regsvr32.exe capicom.dll» (без кавычек) и нажмите ENTER. Должно появиться уведомление о том, что команда выполнена успешно.


  • 
 команда выполнена успешно.

Получение выписки ЕГРН с помощью электронной подписи

Вопрос получения такого свидетельства актуален при совершении любой сделки с недвижимостью. Заказать выписку можно на бумаге, либо в электронном формате.
Рассказываем, как получить электронную выписку с помощью ЭЦП и сколько это будет стоить.

Как получить выписку из ЕГРЮЛ с ЭЦП ФНС

Выписка из Единого государственного реестра юридических лиц содержит все основные сведения о юрлице. Она необходима для того, чтобы удостовериться или подтвердить данные государственной регистрации, уточнить сведения об адресе местонахождения юрлица и др. Выписку в электронном виде можно получить с помощью электронной подписи. Как это сделать? Отвечаем на этот вопрос в нашей статье.

Как оформить заявление на получение ЭЦП

Согласно правилам оформления ЭП, для получения электронной подписи необходимо подготовить пакет документов и подать заявление в удостоверяющий центр или МФЦ (в зависимости от вида подписи). В статье мы подробно рассмотрим все вопросы оформления электронной подписи: какие документы нужны, в каком порядке происходит получение сертификата и куда нужно обращаться.

Как выглядит электронная подпись

Увидеть ЭЦП в электронном документе своими глазами в буквальном смысле, конечно, нельзя, потому что это не просто какой-то графический символ. Однако можно, например, проверить документ, чтобы наглядно убедиться, что он подписан с помощью электронной подписи. В статье мы раскроем все основные вопросы, касающиеся подписания документов электронной подписью, а также выясним, какие средства и реквизиты для этого применяются.

Как зарегистрироваться в ЕИС

Единая информационная система в сфере закупок (ЕИС) создана для формирования, обработки и хранения данных о закупках. Это позволяет в значительной мере упростить доступ к сведениям о торгах. Рассказываем, что нужно для регистрации в ЕИС и в каком порядке проходит регистрация.

Как работает ЭП

Применение ЭЦП обеспечивает сохранность данных и неизменность подписанного документа, а также позволяет идентифицировать подписанта. Как же работает электронная подпись? Чтобы ответить на этот вопрос, нужно сначала разобраться как устроена подпись и какие средства шифрования используются для её применения. Об этом и пойдёт речь далее.

Как сделать КЭП для торгов

Для участия в торгах необходима квалифицированная электронная подпись. Она потребуется на всех этапах — от регистрации на электронной торговой площадке до подписания договора с контрагентом. Чтобы оформить квалифицированную ЭЦП для торгов, необходимо подать заявление в аккредитованный удостоверяющий центр. Детальное описание процедуры выпуска КЭП — в нашей статье.

Продление сертификата ЭП

Сертификаты электронной подписи имеют срок годности, по истечении которого нужно обращаться в удостоверяющий центр для продления. Рассказываем, как узнать срок действия сертификата и в каком порядке подаётся заявление на его продление.

Создание заявления на получение ЭП

Чтобы оформить на себя электронную подпись электронную подпись, необходимо подать специальное заявление в аккредитованный удостоверяющий центр. Мы подготовили пошаговые инструкции для юридических лиц, индивидуальных предпринимателей, а также физических лиц. С их помощью вы сможете без труда оформить заявку на получение ЭЦП в личном кабинете пользователя сервиса «Астрал-ЭТ».

Срок действия ключа электронной подписи

Максимальный срок, на который выдаётся сертификат ключа ЭП, составляет 12 месяцев. Чтобы продлить действие сертификата, владелец электронной подписи должен за 14 дней до истечения срока подать заявку на продление действия сертификата. В противном случае работа сертификата будет приостановлена, как только срок его действия истечёт. Подробнее в нашей статье.

Особенности ошибки

Проблема «Нет полного доверия к сертификату подписи» свидетельствует о невозможности определить уровень доверия к удостоверяющему центру, который оформил данный сертификат.

Непосредственно эта ошибка никак не влияет на работу «КриптоАРМ» или электронной подписи, но для предотвращения последующих конфликтов во время проверки комплекта ключей стоит её исправить. Сделать это можно самостоятельно, выполнив несколько следующих шагов.

Как установить отозванные

В отдельных случаях для решения проблемы КриптоАРМ «Нет полного доверия к сертификату подписи» понадобится установка списка отозванных сертификатов (СОС) в дополнительном порядке. Для этого выполните следующие действия:

  1. Откройте Internet Explorer.
  2. Перейдите в разделе «Сервис» по пути «Свойства» — «Содержание» — «Сертификаты».
  3. В подразделе «Имя точки» скопируйте в файл имеющуюся ссылку на список.
  4.  
«Имя точки»

  5. Сохраните файл на жёстком диске компьютера.
  6.  
Сохраните файл

  7. Кликните по этому файлу правой кнопкой мыши для вызова контекстного меню.
  8. Следуйте инструкциям «мастера».

Иногда в перечне списка СОС может быть две ссылки. В этом случае понадобится повторить данный шаг.

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

Если вам понадобилась дополнительная техническая консультация или появилась необходимость оформить электронную подпись, сделать это можно в УЦ «Калуга Астрал».

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

Решение проблемы

Шаг № 1. Переводим программу в экспертный режим, который предоставляет доступ к полному перечню функций.

 
экспертный режим

Шаг № 2. Выбираем подозрительный для операционной системы сертификат ЭЦП. Для этого:

  1. Подключаем носитель с электронной подписью к компьютеру.
  2.  
Подключаем носитель

  3. Выбираем действующий криптопровайдер и тип носителя.
  4.  
тип носителя

  5. Выбираем контейнер с подписью (если на токене их несколько, выбираем проблемный).
  6.  
контейнер с подписью

  7. Вводим PIN-код для доступа (стандартный пароль для eToken — 1234567890, для Рутокен — 12345678).
  8.  
PIN-код для доступа

Шаг № 3. Добавляем проблемный сертификат в перечень доверенных (именно отсутствие в последнем служит причиной появления ошибки). Для этого:

  1. Перейдите в меню программы «КриптоАРМ».
  2. Войдите во вкладку «Свойства» конкретного проблемного сертификата (её можно найти в подразделе «Личное хранилище» раздела «Сертификаты»).
  3.  
«Свойства»

  4. Зайдите во вкладку «Статус».
  5.  
«Статус»

  6. Кликните по кнопке «Посмотреть».
  7. Нажмите «Установить».
  8.  
«Установить»

  9. Выберите раздел «Поместить сертификаты в хранилище».
  10.  
«Поместить сертификаты в хранилище»

  11. Нажмите «Обзор» и выберите пункт «Доверенные корневые сертификаты».
  12.  
«Доверенные корневые сертификаты»

  13. Подтвердите действие.
  14.  
Подтвердите действие

Сам процесс занимает несколько секунд и требует последующей перезагрузки системы.

Шаг № 4. Финальным этапом остаётся проверка сертификата по перечню отозванных. Для этого:

  1. Выберите нужный сертификат во вкладке «Свойства сертификата»;
  2. Выберите пункт «По CRL, полученному в УЦ»;
  3. Кликните по кнопке «Проверить».
  4.  
«Проверить»

  5. Теперь можно перейти в личное хранилище, где должна быть обновлена вся информация. Если появилась зелёная галочка, то это признак устранения проблемы, связанной с тем, что сертификат подписи выпущен не доверенным УЦ и наличия полного доверия со стороны операционной системы к данной подписи.
  6.  
перейти в личное хранилище

Выбранная подпись не авторизована

Подобная ошибка возникает при попытке авторизации в личном кабинете на электронных торговых площадках. Например, при входе на площадку ZakazRF отображается сообщение «Выбранная ЭЦП не авторизована».


Выбранная подпись не авторизована

Эта ошибка возникает из-за того, что пользователь не зарегистрирован на площадке, либо не зарегистрирован новый сертификат ключа ЭП. Решением проблемы будет регистрация нового сертификата.

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

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


Если ваша проблема с электронной подписью не решена, но обратитесь к нашим специалистам техподдержки.

Читать также:  Евраз сертификат качества на швеллер скачать

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *