1
0
mirror of https://github.com/veracrypt/VeraCrypt.git synced 2025-11-11 11:08:02 -06:00

Windows: Add possibility to sign binaries using SHA256 only. This fixes Windows Smart Screen warning when launching installer

This commit is contained in:
Mounir IDRASSI
2020-07-22 23:33:21 +02:00
parent c4a6269c8c
commit b6b6710d2b
2 changed files with 75 additions and 1 deletions

View File

@@ -389,6 +389,16 @@ static unsigned char gpbSha1CodeSignCertFingerprint[64] = {
0xE9, 0x65, 0xA5, 0x61
};
static unsigned char gpbSha256CodeSignCertFingerprint[64] = {
0x88, 0x60, 0xC4, 0x26, 0x6D, 0x42, 0x59, 0x1B, 0xDF, 0x89, 0x0F, 0x1A,
0x2F, 0x70, 0x8D, 0xBB, 0xC0, 0xF0, 0x03, 0x1F, 0x37, 0x11, 0xF9, 0x24,
0x78, 0xDF, 0xD3, 0x60, 0xFB, 0xF3, 0xDC, 0xCA, 0x0D, 0x95, 0x06, 0x6A,
0x5E, 0xAD, 0x5C, 0xA3, 0x3E, 0x75, 0x55, 0x96, 0x7B, 0xD1, 0x0D, 0xC1,
0x00, 0xFE, 0xA0, 0x95, 0x13, 0x23, 0x20, 0x63, 0x26, 0x57, 0xFA, 0x6C,
0xE4, 0x27, 0xF8, 0x36
};
typedef HRESULT (WINAPI *SHGETKNOWNFOLDERPATH) (
_In_ REFKNOWNFOLDERID rfid,
_In_ DWORD dwFlags,
@@ -13891,7 +13901,9 @@ BOOL VerifyModuleSignature (const wchar_t* path)
BYTE hashVal[64];
sha512 (hashVal, pProviderCert->pCert->pbCertEncoded, pProviderCert->pCert->cbCertEncoded);
if (0 == memcmp (hashVal, gpbSha1CodeSignCertFingerprint, 64))
if ( (0 == memcmp (hashVal, gpbSha1CodeSignCertFingerprint, 64))
|| (0 == memcmp (hashVal, gpbSha256CodeSignCertFingerprint, 64))
)
{
bResult = TRUE;
}