VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Common
diff options
context:
space:
mode:
authorMounir IDRASSI <mounir.idrassi@idrix.fr>2022-02-02 01:54:18 +0100
committerMounir IDRASSI <mounir.idrassi@idrix.fr>2022-02-02 01:55:23 +0100
commit5c319dec9460e58381f8e570ed9c075fc674fcd3 (patch)
tree48d510364b71b08cf23d7e98040ab8656b30f768 /src/Common
parentebb67499f1eda64d3a6f7705fe6ec0c5fd12a1e3 (diff)
downloadVeraCrypt-5c319dec9460e58381f8e570ed9c075fc674fcd3.tar.gz
VeraCrypt-5c319dec9460e58381f8e570ed9c075fc674fcd3.zip
Windows: Fix failure to verify driver file signature since it is signed by Microsoft not us.
This caused a failure when creating Traveler Disk
Diffstat (limited to 'src/Common')
-rw-r--r--src/Common/Dlgcode.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/Common/Dlgcode.c b/src/Common/Dlgcode.c
index 683e5c43..f757fb47 100644
--- a/src/Common/Dlgcode.c
+++ b/src/Common/Dlgcode.c
@@ -425,6 +425,15 @@ static unsigned char gpbSha256CodeSignCertFingerprint[64] = {
0xDB, 0x6F, 0xC0, 0x62
};
+static unsigned char gpbSha256MSCodeSignCertFingerprint[64] = {
+ 0x9C, 0x96, 0x81, 0x3B, 0x88, 0x54, 0xCB, 0x81, 0xB5, 0x94, 0x40, 0x4E,
+ 0x15, 0x81, 0x20, 0xA1, 0x19, 0x00, 0x4E, 0x49, 0x8A, 0xA8, 0x98, 0x13,
+ 0x9D, 0xE2, 0x86, 0x6A, 0xC1, 0xFA, 0xD3, 0x00, 0x0D, 0xAC, 0xE9, 0xE3,
+ 0x3B, 0xFC, 0x6B, 0x26, 0xCE, 0xC8, 0xE2, 0x36, 0x3B, 0x60, 0x9C, 0x8E,
+ 0x0A, 0x2A, 0x74, 0x20, 0xD7, 0x4E, 0x0F, 0xEE, 0x2E, 0x79, 0xE2, 0xAF,
+ 0x1C, 0x90, 0x0B, 0x9C
+};
+
typedef HRESULT (WINAPI *SHGETKNOWNFOLDERPATH) (
_In_ REFKNOWNFOLDERID rfid,
@@ -14224,7 +14233,9 @@ BOOL VerifyModuleSignature (const wchar_t* path)
BYTE hashVal[64];
sha512 (hashVal, pProviderCert->pCert->pbCertEncoded, pProviderCert->pCert->cbCertEncoded);
- if (0 == memcmp (hashVal, gpbSha256CodeSignCertFingerprint, 64))
+ if ( (0 == memcmp (hashVal, gpbSha256CodeSignCertFingerprint, 64))
+ || (0 == memcmp (hashVal, gpbSha256MSCodeSignCertFingerprint, 64))
+ )
{
bResult = TRUE;
}