mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2025-11-11 11:08:02 -06:00
Display only allowed hashes when encrypting the system partition (now, SHA-256 and RIPEMD-160).
This commit is contained in:
@@ -3735,16 +3735,25 @@ BOOL CALLBACK PageDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
|
|||||||
if (SysEncInEffect ())
|
if (SysEncInEffect ())
|
||||||
{
|
{
|
||||||
hash_algo = DEFAULT_HASH_ALGORITHM_BOOT;
|
hash_algo = DEFAULT_HASH_ALGORITHM_BOOT;
|
||||||
RandSetHashFunction (DEFAULT_HASH_ALGORITHM_BOOT);
|
RandSetHashFunction (hash_algo);
|
||||||
|
|
||||||
|
for (hid = FIRST_PRF_ID; hid <= LAST_PRF_ID; hid++)
|
||||||
|
{
|
||||||
|
// For now, we keep RIPEMD160 for system encryption
|
||||||
|
if (((hid == RIPEMD160) || !HashIsDeprecated (hid)) && HashForSystemEncryption (hid))
|
||||||
|
AddComboPair (GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO), HashGetName(hid), hid);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
hash_algo = RandGetHashFunction();
|
|
||||||
|
|
||||||
for (hid = FIRST_PRF_ID; hid <= LAST_PRF_ID; hid++)
|
|
||||||
{
|
{
|
||||||
if (!HashIsDeprecated (hid))
|
hash_algo = RandGetHashFunction();
|
||||||
AddComboPair (GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO), HashGetName(hid), hid);
|
for (hid = FIRST_PRF_ID; hid <= LAST_PRF_ID; hid++)
|
||||||
|
{
|
||||||
|
if (!HashIsDeprecated (hid))
|
||||||
|
AddComboPair (GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO), HashGetName(hid), hid);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SelectAlgo (GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO), &hash_algo);
|
SelectAlgo (GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO), &hash_algo);
|
||||||
|
|
||||||
ToHyperlink (hwndDlg, IDC_LINK_HASH_INFO);
|
ToHyperlink (hwndDlg, IDC_LINK_HASH_INFO);
|
||||||
@@ -5227,15 +5236,17 @@ BOOL CALLBACK PageDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case IDC_COMBO_BOX_HASH_ALGO:
|
case IDC_COMBO_BOX_HASH_ALGO:
|
||||||
if (SysEncInEffect ()
|
if (SysEncInEffect ())
|
||||||
&& SendMessage (GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO), CB_GETITEMDATA,
|
|
||||||
SendMessage (GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO), CB_GETCURSEL, 0, 0), 0)
|
|
||||||
!= DEFAULT_HASH_ALGORITHM_BOOT)
|
|
||||||
{
|
{
|
||||||
hash_algo = DEFAULT_HASH_ALGORITHM_BOOT;
|
HWND hHashAlgoItem = GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO);
|
||||||
RandSetHashFunction (DEFAULT_HASH_ALGORITHM_BOOT);
|
LRESULT selectedAlgo = SendMessage (hHashAlgoItem, CB_GETITEMDATA, SendMessage (hHashAlgoItem, CB_GETCURSEL, 0, 0), 0);
|
||||||
Info ("ALGO_NOT_SUPPORTED_FOR_SYS_ENCRYPTION");
|
if (!HashForSystemEncryption(selectedAlgo))
|
||||||
SelectAlgo (GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO), &hash_algo);
|
{
|
||||||
|
hash_algo = DEFAULT_HASH_ALGORITHM_BOOT;
|
||||||
|
RandSetHashFunction (DEFAULT_HASH_ALGORITHM_BOOT);
|
||||||
|
Info ("ALGO_NOT_SUPPORTED_FOR_SYS_ENCRYPTION");
|
||||||
|
SelectAlgo (GetDlgItem (hwndDlg, IDC_COMBO_BOX_HASH_ALGO), &hash_algo);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user