Форум КриптоПро
	 » 
	Средства криптографической защиты информации
	 » 
	КриптоПро CSP 4.0
	 » 
	Множественная подпись PKCS#7 с разными алгоритмами хеширования (ГОСТ 34.11-94 и ГОСТ 34.11-2012)
	 
	
        
            
            
    
        
	Статус: Участник
  Группы: Участники
 Зарегистрирован: 09.02.2017(UTC) Сообщений: 24  Сказал(а) «Спасибо»: 7 раз
  
	 
	
     | 
    
        
            
		      
                Здравствуйте, команда КриптоПро! При реализации подписи PKCS#7 с использованием КриптоПро CSP 4.0 R3 столкнулись с проблемой, что невозможно наложить на документ две подписи с разными алгоритмами хеширования. При попытке наложить вторую подпись с отличающимся алгоритмом получаем ошибку "Неизвестный криптографический алгоритм. (0x80091002)". Ту же картину наблюдаем при попытке подписания документа в КриптоАРМ. Если изначально подписать документ с использованием сертификата ГОСТ 2001, а потом попробовать добавить подпись с использованием сертификата ГОСТ 2012, то: 1. При выборе сертификата для подписи КриптоАРМ фильтрует список сертификатов по хэш-алгоритму первой подписи; 2. Если удается указать сертификат с ГОСТ 2012, то КриптоАРМ выводит сообщение "был указан хэш-алгоритм, несовместимый с данным файлом подписи". Большая просьба пояснить, чем вызваны данные ограничения? Это ограничение стандартов электронной подписи? На форуме уже поднимался вопрос данного технического ограничения в КриптоПро CSP, но причины так и не были разъяснены. https://www.cryptopro.ru...aspx?g=posts&t=10915https://www.cryptopro.ru....aspx?g=posts&t=5712P.S.: дополнительно по поводу КриптоАРМ. Ограничение наблюдается в версиях (с сайта КриптоПро): - 5 Обновление 4.1 (сборка 93 от 17.07.2017 г.) - сертифицированная
  - 5 (сборка 5.4.2.258 от 16.10.2018 г.)
 
 На версиях с сайта разработчика проблема не проявляется, АРМ дает подписать обоими ГОСТ-ами: - 5 (сборка 5.4.2.280)
  - КриптоАРМ ГОСТ 1.4.3
 
 Отредактировано пользователем 17 января 2019 г. 13:19:21(UTC)
 | Причина: Не указана  
            
	  
         
     | 
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
            
        
            
            
    
        
	Статус: Участник
  Группы: Участники
 Зарегистрирован: 09.02.2017(UTC) Сообщений: 24  Сказал(а) «Спасибо»: 7 раз
  
	 
	
     | 
    
        
            
		      
                Как выяснилось:1. Стандарты ЭП не вносят ограничений на подпись сертификатами с разными алгоритмами. 2. В сертифицированной версии КриптоАРМ данное ограничение было сделано специально. В последних же версиях ограничение было снято для ГОСТ 2001 и ГОСТ 2012. Остается вопрос:В нашей java-реализации подписи PKCS#7 встречается ошибка при попытке наложить на документ вторую подпись с другим алгоритмом подписи (первая ГОСТ 2001, вторая ГОСТ 2012). Используется функция cryptMsgControl в режиме CMSG_CTRL_ADD_SIGNER. В итоге имеем ошибку: Цитата:Error in function cryptMsgControl occured. Unknown cryptographic algorithm. (0x80091002)  КриптоПро CSP 4.0 R3, ОС Гослинукс 7.11 x64 (IC5), java 1.8.0_172. Команда КриптоПро, просьба пояснить, чем может быть вызвана данная ошибка, в чем может быть проблема? Отредактировано пользователем 17 января 2019 г. 18:24:25(UTC)
 | Причина: Не указана  
            
	  
         
     | 
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
    
        
            
            
    
        
	Статус: Сотрудник
  Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,556
  Сказал(а) «Спасибо»: 44 раз Поблагодарили: 650 раз в 448 постах
  
	 
	
     | 
    
        
            
		      
                В КриптоПро CSP 4.0 / 5.0 ошибку не подтверждаю. Подписи с разными алгоритмами можно успешно добавлять вызовом СryptMsgControl(CMSG_CTRL_ADD_SIGNER). Например, в этом можно убедиться с помощью csptestf: Код:csptestf -lowsign -sign -in /tmp/test.dat -out /tmp/test.dat.1.sgn -my CN=g2012_512 -alg GOST12_512 -add 
csptestf -lowsign -addsign -in /tmp/test.dat.1.sgn -out /tmp/test.dat.2.sgn -my CN=g2012_256 -alg GOST12_256 -add
csptestf -lowsign -addsign -in /tmp/test.dat.2.sgn -out /tmp/test.dat.3.sgn -my CN=g2001_256 -alg GOST94_256 -add
 
 Прикладывайте системный журнал, будем разбираться.    | 
 | 
            
	 
        
    
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
            
        
            
            
    
        
	Статус: Участник
  Группы: Участники
 Зарегистрирован: 09.02.2017(UTC) Сообщений: 24  Сказал(а) «Спасибо»: 7 раз
  
	 
	
     | 
    
        
            
		      
                Сообщения messages в момент ошибки: Код:Jan 18 11:12:09 localhost java[10059]: capi20: CryptMsgControl () Exception :'Ошибка x80091002: Неизвестный криптографический алгоритм.' at file:'/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/capilite/CMSSignedMessage.cpp' line:2412
Jan 18 11:12:09 localhost java[10059]: capi10: CryptDestroyHash () invalid argument(s)!
Jan 18 11:12:09 localhost java[10059]: capi10: CryptDestroyHash () invalid argument(s)! 
  
            
	  
         
     | 
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
    
        
            
            
    
        
	Статус: Сотрудник
  Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,556
  Сказал(а) «Спасибо»: 44 раз Поблагодарили: 650 раз в 448 постах
  
	 
	
     | 
    
        
            
		      
                Воспроизвели: ошибка только при detached-подписи. Поправим. Запрос для ориентира в changelog - CPCSP-9640.    | 
 | 
            
	 
        
    
    | 
         
             
     | 
    
         
            
         
     | 
    | 
        
	
     | 
        
        
        
    
	                           
	Форум КриптоПро
	 » 
	Средства криптографической защиты информации
	 » 
	КриптоПро CSP 4.0
	 » 
	Множественная подпись PKCS#7 с разными алгоритмами хеширования (ГОСТ 34.11-94 и ГОСТ 34.11-2012)
	 
	
    
        Быстрый переход
         
	
    
    Вы не можете создавать новые темы в этом форуме.
	
	Вы не можете отвечать в этом форуме.
	
	Вы не можете удалять Ваши сообщения в этом форуме.
	
	Вы не можете редактировать Ваши сообщения в этом форуме.
	
	Вы не можете создавать опросы в этом форуме.
	
	Вы не можете голосовать в этом форуме.
	
	
    
    
        Important Information:
        The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
        
        
More Details
        Close