| 
	Статус: Участник
 Группы: Участники
Зарегистрирован: 13.12.2011(UTC)
 Сообщений: 22
 
 | 
            
		      
                Андрей * написал:на данном форуме + на старом = все есть, уж поверь
 p.s.
 а ЭЦП через COM (Capicom) - уже осилил? или сразу, за CryptoAPI  ;)
 
 
 Андрей, тут однозначно что-то не так, подскажите, пожалуйста! Я, так и быть, решил сделать совершенно стандартную подпись без использования каких-то там уже имеющихся контейнеров, созданных с помощью КриптоПро 2.0 - ничего лишнего! Вот: Код:
Result:='';
  CryptAcquireContext(@Prov,nil,nil,PROV_RSA_FULL,0);
  CryptCreateHash(Prov,CALG_MD5,0,0,@Hash);
  CryptHashData(Hash,PByte(sMessage),Length(sMessage),0);
  BufLen:=0;
  CryptSignHash(Hash,AT_SIGNATURE,nil,0,nil,@BufLen);
  if BufLen>0 then begin
    SetLength(Result,BufLen);
    CryptSignHash(Hash,AT_SIGNATURE,nil,0,PByte(Result),@BufLen);
  end;
  CryptDestroyHash(Hash);
  CryptReleaseContext(Prov,0);
 Этот код можно встретить в каждом примере. Кстати, я даже подключил модуль Wcrypt2, хоть его и все не любят за его урезанность. Но для формирования ЭЦП его, кажется, достаточно. И что бы Вы думали - опять никаких результатов!    не подписывает и все тут! С каким ещё бубном тут плясать надо? |