Добрый день форумчанам. Подскажите, пожалуйста, как получить подробную информацию о сертификате, которым подписан файл? Интересует, как минимум, имя подписавшего и издатель.
https://technet.microsoft.com/ru-ru/library/f657tk8f(v=vs.100) http://www.heaventools.ru/pe-explorer-digital-signature.htm
Внутри Cert2Sspc.exe обнаружил следующий колл стек: Спойлер: клац Пара минут в гугле привели к этому: https://blogs.msdn.microsoft.com/al...verify-with-cryptoapi-and-a-user-certificate/ https://stackoverflow.com/questions/15024583/how-to-retrieve-files-digital-signature-information
Всё равно не то: мне нужно не валидировать подпись, а прочитать издателя и того, кто подписал (и сопутствующую инфу - алгоритм, таймштамп и т.д.). Из гугла: CryptQueryObject -> CryptMsgGetParam. В итоге получаю CERT_INFO. Но в Issuer нечто наполовину закодированное, а Subject пустой. Сабж: https://hastebin.com/sadovagoxo.m Итоговый результат:
Upd: CertNameToStr(..., &pCertInfo->Issuer, ...); - декодирует в нормальную строку. Но как быть с Subject'ом (тем, на кого оформлен серт)?