??? TLS ?? ??
.NET Framework 4.7 ??????? ????? TLS 1.2? ?????. ??? ?? ?? ?? ??? ?? TLS ??? ???? ?? ?????. ??? ??? ????.
?? 1: ???? ??
? ???? ????? ???? GetRequestStream()
?? GetResponseStream()
??? ???? ?? TlsStream
??? ????? ??? ?????. TlsStream
???? SslState
??? ?? ???? ???? SslProtocol
??? ???????.
using System.IO.Compression; using System.Net; using System.Reflection; using System.Security.Authentication; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(decodedUri); using (Stream requestStream = request.GetRequestStream()) { SslProtocols sslProtocol = ExtractSslProtocol(requestStream); // 檢查SSL版本,如有必要采取適當(dāng)?shù)拇胧?} private SslProtocols ExtractSslProtocol(Stream stream) { BindingFlags bindingFlags = BindingFlags.Instance | BindingFlags.NonPublic; Stream metaStream = stream; // 處理GZip或Deflate流 if (stream is GZipStream) metaStream = (stream as GZipStream).BaseStream; else if (stream is DeflateStream) metaStream = (stream as DeflateStream).BaseStream; var tlsStream = metaStream.GetType().GetProperty("Connection", bindingFlags).GetValue(metaStream); if (!(bool)tlsStream.GetType().GetProperty("UsingSecureStream", bindingFlags).GetValue(tlsStream)) return SslProtocols.None; var tlsState = tlsStream.GetType().GetField("m_Worker", bindingFlags).GetValue(tlsStream); return (SslProtocols)tlsState.GetType().GetProperty("SslProtocol", bindingFlags).GetValue(tlsState); }
?? 2: TcpClient ??
?? TcpClient
???? ???? TCP ??? ??? ? ????. TcpClient
? SslStream
? ?? ???? ????? ??? TLS ??? ??? ? ????. ? ??? HTTP ??? ???? ?? TLS ??? ???? ?? ?? ?????.
TlsInfo tlsInfo = null; IPHostEntry dnsHost = await Dns.GetHostEntryAsync(HostURI.Host); using (TcpClient client = new TcpClient(dnsHost.HostName, 443)) { using (SslStream sslStream = new SslStream(client.GetStream(), false, TlsValidationCallback, null)) { sslstream.AuthenticateAsClient(dnsHost.HostName, null, (SslProtocols)ServicePointManager.SecurityProtocol, false); tlsInfo = new TlsInfo(sslStream); } } public class TlsInfo { public TlsInfo(SslStream secStream) { this.ProtocolVersion = secStream.SslProtocol; } public SslProtocols ProtocolVersion { get; set; } }
? ?? ?? ?? ?? HTTP ?? ?? ??? TLS ??? ???? ??? ????? ?? ?? ??? ?? ??? ??? ?? ? ????.
? ??? .NET Framework?? ??? TLS ??? ???? ??? ??????? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

??? ??











?? ???? ??? C?? ??? ??? ???? ??? : ? ????? ? ? ????? C? ??? ? ????? ?? ?? ??? ?? ??? ???? ?????. 1. ?? ??? ???? C? ?? ??? ???? ?? ?? ?? Curly Braces {}? ???? ?? ??? ?? ??? ???????. 2. ?? ??? ? ??? ?? ???? C?? ?? ??? ?? ????? ??? ???? ???? ???? ??? ?????? ???????. RAII ??? ?? ??? ??? ? ????. 3. ?? ? ??? ???? C? ?? ?, ??? ? ???? ?? ??? ??????? ??? ???? ?? ?? ??? ???????. 4. ?? ????? ???? STL? ??? ????? ????? ????? ???? ????? ????? ???????. 5

C STL? ????, ???? ? ???? ?? ?? ?? ??? ???? ??? ?? ??? ??? ? ?? ?????. ??, ??, ? ? ??? ?? ????? ???? ???? ? ?????. ??? ?? ???? ???? ?? ??? ?????. ?? ?? ? ??? ?????? ??? ??????. ?? ??? ???? ?? ? ??? ?????? ?? ??? ?? ??? ?????. ??, ??, ??, ?? ? ??? ?? ????? ????? ???? ???? ????? ??? ???? ?????. ???? ????? ????? ????, ????? ???? ??? ??? ???? ??? ??????. ?? ?? ???? ?? ??, ???, ?? ?, ??, ?? ?? ? ??? ??? ???? ???? ?????. STL? ??? c

STD :: Chrono? ?? ?? ??, ?? ?? ??, ?? ?? ? ?? ?? ? ?? ?? ??? ???? C?? ???? ??? ?????. 1. std :: chrono :: system_clock :: now ()? ???? ?? ??? ?? ? ??? ?? ??? ???? ?? ? ? ??? ??? ??? ???? ?? ?? ? ????. 2. std :: Chrono :: steady_clock? ???? ?? ??? ???? ?? ??? ???? duration_cast? ?? ?? ?, ? ? ?? ??? ??????. 3. ?? (time_point) ? ?? (??)? ?? ??? ? ? ??? ?? ??? ? ?? epoch (epoch)???? ???????.

C?? Cin ? Cout? ?? ?? ? ??? ?????. 1. Cout? ???? ??? ?? ???? ??? ?? ? ?? ??? ???? ????. 3. ??? ?? ? ???? ?? ? GetLine (CIN, STR)? ??????. 4. CIN ? GetLine? ??? ?? ??? ??? ??? ???????. 5. ?? ?? ? ?? ?? ??? ????? cin.clear () ? cin.ignore ()? ???????. ??? ?? ???? ????? ???? ?? ????? ??????.

C? ?????. ??? ? ? ?? ???? ???????. 1. ?? ??? ????? ?? ??? ??? ??? ?? ??, ??, ?? ??, ?? ?? ?? ??? ???????. 2. ??, ?, ??, ??? ? ??? ?? STL ????? ??? ????? ? ??? ???. 3. ?? ??? ?? ?? scanf ? printf ??? ?? ?? ?? ? ?? ??? ?????. 4. ???? ???? ???? ?? ??? ????? ???? ??????. 5. ?? ?? ? ??? ??? ?? ???? ?? ??? ?????.

STL (?? ??? ?????)? ????, ??? ? ????? ? ?? ?? ?? ??? ???? C ?? ?????? ??? ?????. 1. ??, ? ? ??? ?? ????? ???? ???? ? ?????. 2. ???? ???? ??? ????? ? ?????. 3. ?? ? ??? ?? ????? ???? ???? ? ?????. ????? ??? ? ??? ?? ??? ???? ?? ?? ? ??? ???? Deque? ?? ?? ?? ??? ???? MAP/Unordered_map? ? ? ? ??? ???? ??/UNORDERED_SET? ???? ?????. ????? ???? ?? ?? ??? ??????? ??? ? Lambda ???? ???????. ?? ???? ??? ??? ? ???? ?????? m? ???? ?????????.

C ???????? ??? ??? ???????? OpenGL? ?? ?????. ?? ?? ??? ???? GLFW ?? SDL? ???? ?? ??? GLEW ?? GLAD? ?? ???????? 3.3? ?? ???? ??? ???? ???????. ??, OpenGL? ?? ?? ??? ???? ?? ??? ????? ??????. ?? ??? ??? ?????, ??? ??? ? ???? ?? ??? ????, ?? ?? ??? ?????, ?? ??? ??? ???? ?? ?? ?? ????? LearnOpEngl, OpenGlredbook ? YouTube ??? ???? ?????. ?? ???

???? ?????? ??? ?? ???? ?? ? ??? ????? ???? ????? ??????. 1. ??? ?? ???? ????, ?? ??? ?? ?? ??? ????? (??? ?? C? std :: atomic? ?????). 2. ? ???? ??? ?? ? ?? ?? ???? ?? ???. 3. ??? ?? ??? ???? ???? ??? ????? ?? ? ??? ????? ??????. 4. ?????,? ?? ??? ?? ????? ?? ?? ??? ??? ?? ?? ?? ???? ?????. 5. ??? ?? ?? ??? ?? ? ? ??? ??? ??? ??? ??? ????.
