Does SChannel support TLS1.3 ? Do we have example client/server programs in C/C++ for implementing TLS 1.3 using SChannel?

Om 1 Reputation point
2022-03-01T01:58:27.583+00:00

I am able to find SChannel.h defined SP_PROT_TLS1_3_CLIENT 0x00002000.

But https://learn.microsoft.com/en-us/windows/win32/api/schannel/ns-schannel-schannel_cred#see-also grbitEnabledProtocols not mentioned about TLS1.3. I was unable to find any other internet information to document that SChannel support TLS1.3.

Windows API - Win32
Windows API - Win32
A core set of Windows application programming interfaces (APIs) for desktop and server applications. Previously known as Win32 API.
2,422 questions
C++
C++
A high-level, general-purpose programming language, created as an extension of the C programming language, that has object-oriented, generic, and functional features in addition to facilities for low-level memory manipulation.
3,527 questions
Windows 11
Windows 11
A Microsoft operating system designed for productivity, creativity, and ease of use.
8,166 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Junjie Zhu - MSFT 14,751 Reputation points Microsoft Vendor
    2022-03-01T06:40:36.263+00:00

    Hello,
    Welcome to Microsoft Q&A!

    SChannel support TLS1.3, In order to use TLS 1.3 with schannel, you should use the SCH_CREDENTIALS structure with AcquireCredentialsHandle().
    SCH_CREDENTIALS - Win32 apps | Microsoft Learn

    SchannelCred.grbitEnabledProtocols = SP_PROT_TLS1_3_CLIENT;  
    

    The SCHANNEL_CRED structure has been deprecated. Starting with Windows 10, 1809 (October 2018 Update), you should use SCH_CREDENTIALS.

    Thank you.


    If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.