3
我有一個數字簽名的二進制APP.EXE。證書由商業CA頒發。在文件屬性(在Windows上),數字簽名信息說這個數字簽名是好的。如果我以某種方式修改二進制文件(例如,通過在資源黑客改變資源)的數字簽名信息說,該數字簽名是無效。X509Certificate2.Verify行爲
我試圖以編程方式驗證證書,但X509Certificate2.Verify()返回true
無論我使用哪個文件 - 原始(app.exe)或篡改(app-modified.exe)。
string filename = "app.exe"; // "app-modified.exe"
X509Certificate cert1 = X509Certificate.CreateFromSignedFile(filename);
X509Certificate2 cert2 = new X509Certificate2(cert1);
bool isValid = cert2.Verify();
爲什麼這個函數在兩種情況下都返回true?這是驗證文件數字簽名的正確方法嗎?