Форум КриптоПро
	 » 
	Средства криптографической защиты информации
	 » 
	КриптоПро .NET
	 » 
	System.NotSupportedException Алгоритм ключа сертификата не поддерживается
	 
	
        
            
            
    
        
	Статус: Новичок
  Группы: Участники
 Зарегистрирован: 10.06.2019(UTC) Сообщений: 2   
	 
	
     | 
    
        
            
		      
                Подписывал запросы для ГИС ЖКХ используя ГОСТ2012(256), все отлично работало до тех пор пока не решил обновить КриптоПро .NET, теперь приложение падает с ошибкой: Код:System.NotSupportedException: "Алгоритм ключа сертификата не поддерживается." 
 Пробовал полностью переустанавливать КриптоПро CSP(4.0.9944/4.0.9963), КриптоПро .NET(1.0.6893/1.0.7089), ошибка сохраняется. osinfo.xml прикладываю   osinfo(86).xml  (71kb) загружен 2 раз(а).  osinfo(64).xml  (78kb) загружен 2 раз(а).Код:Необработанное исключение: System.NotSupportedException: Алгоритм ключа сертификата не поддерживается.
Server stack trace:
   в System.Security.Cryptography.X509Certificates.X509Certificate2.get_PrivateKey()
   в Xades.Implementations.GostCryptoProvider.GetAsymmetricAlgorithm(X509Certificate2 certificate, String privateKeyPassword)
   в Xades.XadesBesSignedXml.ComputeSignature(X509Certificate2 certificate, String privateKeyPassword)
   в Xades.Implementations.GostXadesBesService.Sign(String xmlData, String elementId, String certificateThumbprint, String certificatePassword)
   в Gis.Crypto.SignatureMessageInspector.GetSignElement(String messageString) в C:\Workflow\Apps\Mint\gis-gkh-web\Gis\Crypto\SignatureMessageInspector.cs:строка 78
   в Gis.Crypto.SignatureMessageInspector.BeforeSendRequest(Message& request, IClientChannel channel) в C:\Workflow\Apps\Mint\gis-gkh-web\Gis\Crypto\SignatureMessageInspector.cs:строка 33
   в System.ServiceModel.Dispatcher.ImmutableClientRuntime.BeforeSendRequest(ProxyRpc& rpc)
   в System.ServiceModel.Channels.ServiceChannel.PrepareCall(ProxyOperationRuntime operation, Boolean oneway, ProxyRpc& rpc)
   в 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) 
 Контейнер, отпечаток и пароль даю верные. Как починить теперь не знаю. Отредактировано пользователем 10 июня 2019 г. 12:59:49(UTC)
 | Причина: Не указана  
            
	  
         
     | 
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
            
        
            
            
    
        
	Статус: Сотрудник
  Группы: Участники
 Зарегистрирован: 20.02.2017(UTC) Сообщений: 225
  Сказал(а) «Спасибо»: 4 раз Поблагодарили: 67 раз в 62 постах
  
	 
	
     | 
    
        
            
		      
                Добрый день. 
  Похоже вы обновили .NET Framework до версии 4.8. Версию 4.8 пока не поддерживаем, в данный момент ведём работы.
  В качестве временного решения - попробуйте откатиться до версии 4.7.1 или 4.7.2    | 
 | 
            
	 
        
    
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
    
        
            
            
    
        
	Статус: Новичок
  Группы: Участники
 Зарегистрирован: 11.06.2019(UTC) Сообщений: 2  Откуда: Санкт-Петербург  
	 
	
     | 
    
        
            
		      
                Вы уже в двух темах пишите, что надо откатиться до 4.7.1/4.7.2. А можно какой-нибудь гайд, как это сделать под Windows 10? Я удалил всё, что связано с net в Удалении и изменении программ. Я использовал NET Framework Cleanup Tool. 4.8 осталась на месте. В реестре по прежнему прописана версия 4.8. Инсталлятор 4.7.2 кидает на  эту страницу, где четко описано, что нельзя откатиться.  
            
	  
         
     | 
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
            
        
            
            
    
        
	Статус: Сотрудник
  Группы: Участники
 Зарегистрирован: 20.02.2017(UTC) Сообщений: 225
  Сказал(а) «Спасибо»: 4 раз Поблагодарили: 67 раз в 62 постах
  
	 
	
     | 
    
        
            
		      
                Добрый день.
  Удалить .net на win10 можно через Панель управления (Установленные обновления, раздел Microsoft Windows).
  На моей машине с сегодняшней установкой номер обновления kb4486153.    | 
 | 
            
	 
        
    
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
    
        
            
            
    
        
	Статус: Новичок
  Группы: Участники
 Зарегистрирован: 10.06.2019(UTC) Сообщений: 2   
	 
	
     | 
    
        
            
		      
                Всем спасибо! Вы правы, дело было в установленном обновлении Windows 10. Удалил его через интерфейс "Установленные обновления" и все заработало. Номер обновления не записал, заканчивалось на *44. Последнюю версию проверял через ASoft .NET Version Detector 19 R1. Отредактировано пользователем 13 июня 2019 г. 10:15:09(UTC)
 | Причина: Не указана  
            
	  
         
     | 
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
            
        
            
            
    
        
	Статус: Новичок
  Группы: Участники
 Зарегистрирован: 11.06.2019(UTC) Сообщений: 2  Откуда: Санкт-Петербург  
	 
	
     | 
    
        
            
		      
                Да, удаление обновления kb4486153 решает проблему, но это не решение самой проблемы, а лечение симптомов. Что делать с Windows 10 1903, где 4.8 идет "из коробки"? Такие ПК уже тоже появляются... 
            
	  
         
     | 
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
    
        
            
            
    
        
	Статус: Сотрудник
  Группы: Администраторы
 Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,417  Откуда: КРИПТО-ПРО Сказал «Спасибо»: 37 раз Поблагодарили: 729 раз в 630 постах
  
	 
	
     | 
    
         | 
 | 
            
	 
        
    
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
            
        
            
            
    
        
	Статус: Сотрудник
  Группы: Администраторы
 Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,417  Откуда: КРИПТО-ПРО Сказал «Спасибо»: 37 раз Поблагодарили: 729 раз в 630 постах
  
	 
	
     | 
    
         | 
 | 
            
	 
        
    
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
    
        
            
            
    
        
	Статус: Участник
  Группы: Участники
 Зарегистрирован: 26.02.2014(UTC) Сообщений: 26  Откуда: Москва Поблагодарили: 4 раз в 4 постах
  
	 
	
     | 
    
        
            
		      
                Автор: Максим Коллегин   Здравствуйте. Работаем на версии 1.0.7132.0 от 12.07.2019 с сайта  https://www.cryptopro.ru/products/net/downloads, номер версии старше указанной альфы, дата свежее. Сейчас обновляемся с 4.5.1 на 4.8. Получаем ошибку: Код:The private key is not present in the X.509 certificate.
System.NotSupportedException: The private key is not present in the X.509 certificate.
Server stack trace: 
   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)
  
 В теме  https://www.cryptopro.ru...posts&t=1013&p=3 пишется о поддержке 4.7 начиная с 1.0.6397.0 Экспериментально установили, что на 4.6.2 ещё работает, а начиная с 4.7 выдает указанную выше ошибку. Просьба уточнить, имеет ли смысл проверять на указанной выше альфе с номером версии ниже? Какая актуальная ситуация с поддержкой WCF на 4.7/4.8?  
            
	  
         
     | 
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
            
        
            
            
    
        
	Статус: Сотрудник
  Группы: Участники
 Зарегистрирован: 20.02.2017(UTC) Сообщений: 225
  Сказал(а) «Спасибо»: 4 раз Поблагодарили: 67 раз в 62 постах
  
	 
	
     | 
    
         | 
 | 
            
	 
        
    
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
    
	                           
	Форум КриптоПро
	 » 
	Средства криптографической защиты информации
	 » 
	КриптоПро .NET
	 » 
	System.NotSupportedException Алгоритм ключа сертификата не поддерживается
	 
	
    
        Быстрый переход
         
	
    
    Вы не можете создавать новые темы в этом форуме.
	
	Вы не можете отвечать в этом форуме.
	
	Вы не можете удалять Ваши сообщения в этом форуме.
	
	Вы не можете редактировать Ваши сообщения в этом форуме.
	
	Вы не можете создавать опросы в этом форуме.
	
	Вы не можете голосовать в этом форуме.
	
	
    
    
        Important Information:
        The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
        
        
More Details
        Close