На Delphi у меня сделано так Код (Text): FCert: PCCERT_CONTEXT; ... constructor TCert.Create(cert_stream: TStream); var encCertLen: DWORD;// - размер закодированного сертификата encCert: PByte;// - данные сертификата begin //--- Открыть файл и считать его содержимое в буфер. encCertLen := cert_stream.Size-cert_stream.Position; encCert := AllocMem(encCertLen); cert_stream.Read(encCert^,encCertLen); //--- создать контекст сертификата FCert:= wcrypt2.CertCreateCertificateContext(PKCS_7_ASN_ENCODING or X509_ASN_ENCODING, encCert, encCertLen); if FCert = nil then raise TCryptException.Create(ceOtherCryptError); end;