Forum Discussion
TLS 1.2 Enabled registry value-"0xffffffff" 0r 1
Could you please confirm what should be the correct TLS 1.2 "Enabled" registry value-"0xffffffff" 0r 1.
There are multiple articles in internet that refer to each one of these. Does "0xffffffff" value performs same function as decimal value 1? Is this the OS Default value?
We have exchange 2010/2013 servers.
10 Replies
- https://docs.microsoft.com/en-us/windows-server/security/tls/tls-registry-settings
To enable the TLS 1.2 protocol, create an Enabled entry in either the Client or Server subkey as described in the following table. This entry does not exist in the registry by default. After you have created the entry, change the DWORD value to 1.
Hope that helps
Best, Chris- Roger VögeliCopper Contributor
ChrisHoardMVP it is not 100% sure that it is a value of 1.
Have a look under
https://docs.microsoft.com/en-us/dotnet/framework/network-programming/tls?WT.mc_id
Configuring Schannel protocols in the Windows Registry
You can use the registry for fine-grained control over the protocols that your client and/or server app negotiates. Your app's networking goes through Schannel (which is another name for https://docs.microsoft.com/en-us/windows/desktop/SecAuthN/secure-channel. By configuring Schannel, you can configure your app's behavior.
Start with the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols registry key. Under that key you can create any subkeys in the set SSL 2.0, SSL 3.0, TLS 1.0, TLS 1.1, and TLS 1.2. Under each of those subkeys, you can create subkeys Client and/or Server. Under Client and Server, you can create DWORD values DisabledByDefault (0 or 1) and Enabled (0 or 0xFFFFFFFF).
I know that your article is newer but at the end I think it makes not a difference if you try 0xffffffff or use a 1.Best regards
Roger
- AndrePKIIron Contributor
Roger Vögeli It is not completely clear from the Microsoft docs what the value should be.
It is either specified as 1 or "non zero". 0xFFFFFFFF is clearly non-zero, but I have had tickets with MS Premier support to solve TLS/SChannel issues by modifying the value to 1
The article you refer to does not contain the value 0xFFFFFFFF anymore.
From docs.microsoft.com, clearly 0 or 1
To disable a cipher, create an Enabled entry in the appropriate subkey. This entry does not exist in the registry by default. After you have created the entry, change the DWORD value to 0. When you disable any algorithm, you disallow all cipher suites that use that algorithm. To enable the cipher, change the DWORD value to 1.
and another here too
Start with the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols registry key. Under that key you can create any subkeys in the set SSL 2.0, SSL 3.0, TLS 1.0, TLS 1.1, and TLS 1.2. Under each of those subkeys, you can create subkeys Client and/or Server. Under Client and Server, you can create DWORD values DisabledByDefault (0 or 1) and Enabled (0 or 1).
But not here
In order to override a system default and set a supported (D)TLS or SSL protocol version to the Enabled state, create a DWORD registry value named "Enabled" with a non-zero value, and a DWORD registry value named "DisabledByDefault" with a value of zero, under the corresponding version-specific subkey.
(I have entered a github issue for this page)
It seems that the 0xFFFFFFFF value stems from CIS/DISA STIG baselines, with may be correct (non-zero) but leading to issues if it is not 1.