Enforce TLS 1.3 in Windows Registry via Regedit
This guide explains how to enforce TLS 1.3 as the default secure communication protocol on Windows operating systems using the Registry Editor (Regedit). By configuring specific registry subkeys within the Schannel security provider, you can enable TLS 1.3 for both client and server roles, enhancing cryptographic security and network performance across supported Windows 11 and Windows Server 2022 environments.
Step 1: Open the Registry Editor
- Press
Win + Rto open the Run dialog box. - Type
regeditand press Enter (or click OK). - Click Yes when prompted by User Account Control (UAC).
Step 2: Navigate to the Protocols Key
In the Registry Editor address bar, navigate to the following path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
Step 3: Create the TLS 1.3 Key Hierarchy
If the TLS 1.3 keys do not already exist, you must create them:
- Right-click on the
Protocolsfolder, select New > Key, and name itTLS 1.3. - Right-click on the newly created
TLS 1.3key, select New > Key, and name itClient. - Right-click again on the
TLS 1.3key, select New > Key, and name itServer.
Step 4: Add and Configure DWORD Values
You must create two DWORD (32-bit) Values under both
the Client and Server subkeys.
For the Client Key:
- Select the
Clientkey. - In the right pane, right-click, select New >
DWORD (32-bit) Value, and name it
DisabledByDefault. Set its value to0(Hexadecimal). - Right-click again, select New > DWORD
(32-bit) Value, and name it
Enabled. Set its value to1(Hexadecimal).
For the Server Key:
- Select the
Serverkey. - In the right pane, right-click, select New >
DWORD (32-bit) Value, and name it
DisabledByDefault. Set its value to0(Hexadecimal). - Right-click again, select New > DWORD
(32-bit) Value, and name it
Enabled. Set its value to1(Hexadecimal).
Step 5: (Optional) Disable Legacy TLS Protocols
To strictly enforce TLS 1.3 and prevent fallbacks to insecure
protocols, ensure older versions (TLS 1.0, TLS 1.1) are disabled under
Protocols:
- Under
Protocols, create keys forTLS 1.0andTLS 1.1(withClientandServersubkeys for each). - Inside the
ClientandServersubkeys of each legacy version, set:Enabled=0(DWORD)DisabledByDefault=1(DWORD)
Step 6: Restart the System
Close the Registry Editor and restart your computer or server to apply the changes to the Windows Schannel security provider. Once rebooted, Windows will default to TLS 1.3 for secure handshakes whenever supported by the remote host.