| 
	Статус: Новичок
 Группы: Участники
Зарегистрирован: 19.04.2010(UTC)
 Сообщений: 4
 Откуда: Kazan
 
 | 
            
		      
                Добрый день! При помощи CAPICOM`а подписываю документ
 string Документ  = "Подписываемый документ"
 ИнтерфейсПодписиДанных.GetType().InvokeMember("Content", BindingFlags.SetProperty, null, ИнтерфейсПодписиДанных, new object[] { Документ });
 
 Подпись = (string)ИнтерфейсПодписиДанных.GetType().InvokeMember("Sign", BindingFlags.InvokeMethod, null, ИнтерфейсПодписиДанных, new object[] { ИнтерфейсСертификата, true, CAPICOM_ENCODING_TYPE.CAPICOM_ENCODE_BASE64 });
 
 
 Далее полученную подпись проверяю след. образом
 
 byte[] msg = Encoding.Unicode.GetBytes( Документ  );
 
 byte[] dataCms = Convert.FromBase64String(Подпись);
 
 ContentInfo contentInfo = new ContentInfo(msg);
 SignedCms signedCms = new SignedCms(contentInfo, true);
 signedCms.Decode(encodedSignature);
 
 signedCms.CheckSignature(true); // здесь он мне говорит что "The hash value is not correct."
 
 Подскажите пож., что я делаю неправильно...
 
 | 
    | 
             | 
            
         | 
    |  | 
        
        
        
            
        
            
            
    | 
	Статус: Активный участник
 Группы: Участники
 Зарегистрирован: 24.12.2007(UTC) Сообщений: 390  Откуда: КриптоПроПоблагодарили: 2 раз в 2 постах
 | 
            
		      
                Не силен в CapiCom, но...В Sharpei (.Net) осуществляется подпись бинарных данных, являющихся Unicode представлением строки "Подписываемый документ". В CAPICOM подписываются бинарные данные, являющиеся представлением строки "Подписываемый документ" в текущей кодировке.
 encodedSignature и dataCms одно и то же?
 
 | 
| С уважением, Александр. | 
    | 
             | 
            
         | 
    |  | 
        
        
        
    
        
            
            
    | 
	Статус: Новичок
 Группы: Участники
Зарегистрирован: 19.04.2010(UTC)
 Сообщений: 4
 Откуда: Kazan
 
 | 
            
		      
                да, это одно и тоже. (Не досмотрел при написании сообщения) | 
    | 
             | 
            
         | 
    |  | 
        
        
        
            
        
            
            
    | 
	Статус: Активный участник
 Группы: Участники
 Зарегистрирован: 24.12.2007(UTC) Сообщений: 390  Откуда: КриптоПроПоблагодарили: 2 раз в 2 постах
 | 
            
		      
                Про совместимость с CAPICOM, кодировки, и примеры из Microsoft SDK см. ветку форума | 
| С уважением, Александр. | 
    | 
             | 
            
         | 
    |  | 
        
        
        
    
        
            
            
    | 
	Статус: Сотрудник
 Группы: Участники
 Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733  Откуда: КРИПТО-ПРОПоблагодарили: 177 раз в 168 постах
 | 
            
		      
                Самый простой способ проверить соответствие или несоответствие кодировок подписанного и проверяемого документов - сделать присоединенную подпись и затем посмотреть ее dumpasn1 или аналогичной утилитой. | 
|  | 
    | 
             | 
            
         | 
    |  | 
        
        
        
    
	                           
	
    
        Быстрый переход
         
	
    
    Вы не можете создавать новые темы в этом форуме.
	
	Вы не можете отвечать в этом форуме.
	
	Вы не можете удалять Ваши сообщения в этом форуме.
	
	Вы не можете редактировать Ваши сообщения в этом форуме.
	
	Вы не можете создавать опросы в этом форуме.
	
	Вы не можете голосовать в этом форуме.
	
	
    
    
        Important Information:
        The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
        
        
More Details
        Close