Ich möchte eine signierte ausführbare Datei überprüfen. Die Anforderung besteht darin, zu validieren, dass die ausführbare Datei selbst gültig ist und woher sie stammt (wahrscheinlich vom Betreff des Zertifikats). Der Zertifikatstyp ist PKCS.Signatur auf EXE mit CertGetCertificateChain validieren
ich hier einen ähnlichen Eintrag gefunden, Validate Authenticode signature on EXE - C++ without CAPICOM
die Microsoft-Dokumentation unter anderem scheint CertGetCertificateChain zu zeigen, aber die Beispiele sind in der Regel mit Zertifikaten arbeiten, die in einem Geschäft sind. Kann jemand eine signierte ausführbare Datei mit CertGetCertificateChain und verwandten APIs validieren?
Zwei Stücke von Informationen sind erwünscht. - Ist die App signiert? - Wer ist der Unterzeichner? Um die ausführbare Datei zu überprüfen WinVerifyTrust funktioniert. Wie auch immer, blieb hängen, wie man weiß, wer der Unterzeichner ist. Jemand (MSalters) hat auf den ursprünglichen Beitrag geantwortet, dass CertGetCertificateChain hilfreich wäre. Es konnte jedoch nicht herausgefunden werden, wie von einer ausführbaren Datei auf der Festplatte zu allen ungeraden Param-Typen von CertGetCertificateChain überzugehen ist. – cobaia
es klingt wie Josh K hat dich in die richtige Richtung gezeigt. Wenn nicht, kann ich alten Code, den ich geschrieben habe, ausgraben und ein Sample erstellen. WinVerifyTrust ist der kritische Schritt; darüber hinaus sind es nur ein paar sprünge, die in msdn und ähnlich erklärt werden. –