TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชชเชฐเชฟเชšเชฏ

เชชเซเชฐเชฅเชฎ เชญเชพเช—เชฎเชพเช‚ เชฒเซ‡เช– เช…เชฎเซ‡ เชเชจเช•เซเชฐเชฟเชชเซเชŸเซ‡เชก SNI (eSNI) เชฎเชฟเช•เซ‡เชจเชฟเชเชฎเชจเซเช‚ เชธเช‚เช•เซเชทเชฟเชชเซเชค เชตเชฐเซเชฃเชจ เช†เชชเซเชฏเซเช‚ เช›เซ‡. เชคเซ‡เช“เช เชฌเชคเชพเชตเซเชฏเซเช‚ เช•เซ‡, เชคเซ‡เชจเชพ เช†เชงเชพเชฐเซ‡, เช†เชงเซเชจเชฟเช• เชกเซ€เชชเซ€เช†เชˆ เชธเชฟเชธเซเชŸเชฎเซเชธ (เชฌเซ€เชฒเชพเชˆเชจ เชกเซ€เชชเซ€เช†เชˆ เช…เชจเซ‡ เชชเซเชฐเชคเชฟเชฌเช‚เชงเชฟเชค เช†เชฐเช•เซ‡เชเชจ เชฐเซ‚เชŸ เชŸเซเชฐเซ‡เช•เชฐเชจเชพ เช‰เชฆเชพเชนเชฐเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡) เชฆเซเชตเชพเชฐเชพ เชถเซ‹เชง เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชŸเชพเชณเชตเซ€ เชถเช•เซเชฏ เช›เซ‡, เช…เชจเซ‡ เช† เชชเชฆเซเชงเชคเชฟเชจเชพ เช†เชงเชพเชฐเซ‡ เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—เชจเชพ เชจเชตเชพ เชธเช‚เชธเซเช•เชฐเชฃเชจเซ€ เชชเชฃ เชถเซ‹เชง เช•เชฐเซ€.

เชฒเซ‡เช–เชจเชพ เชฌเซ€เชœเชพ เชญเชพเช—เชฎเชพเช‚, เช…เชฎเซ‡ เชตเชงเซ เชตเซเชฏเชตเชนเชพเชฐเซ เชฌเชพเชฌเชคเซ‹ เชคเชฐเชซ เช†เช—เชณ เชตเชงเซ€เชถเซเช‚ เชœเซ‡ RedTeam เชจเชฟเชทเซเชฃเชพเชคเซ‹เชจเซ‡ เชคเซ‡เชฎเชจเชพ เชฎเซเชถเซเช•เซ‡เชฒ เช•เชพเชฎเชฎเชพเช‚ เช‰เชชเชฏเซ‹เช—เซ€ เชฅเชถเซ‡. เช…เช‚เชคเซ‡, เช…เชฎเชพเชฐเซ‹ เชงเซเชฏเซ‡เชฏ เช…เชตเชฐเซ‹เชงเชฟเชค เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ€ เชเช•เซเชธเซ‡เชธ เชฎเซ‡เชณเชตเชตเชพเชจเซ‹ เชจเชฅเซ€ (เช†เชตเซ€ เชคเซเชšเซเช› เชฌเชพเชฌเชคเซ‹ เชฎเชพเชŸเซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชธเชพเชฐเชพ เชœเซ‚เชจเชพ VPN เช›เซ‡). เชธเชฆเชญเชพเช—เซเชฏเซ‡, เชฆเชฐเซ‡เช• เชธเซเชตเชพเชฆ, เชฐเช‚เช— เช…เชจเซ‡ เชฌเชœเซ‡เชŸ เชฎเชพเชŸเซ‡, เชคเซ‡เช“ เช•เชนเซ‡ เช›เซ‡ เชคเซ‡เชฎ, VPN เชชเซเชฐเชฆเชพเชคเชพเช“เชจเซ€ เชตเชฟเชถเชพเชณ เชตเชฟเชตเชฟเชงเชคเชพ เช›เซ‡.

เช…เชฎเซ‡ เช†เชงเซเชจเชฟเช• RedTeam เชŸเซ‚เชฒเซเชธ เชชเชฐ เชกเซ‹เชฎเซ‡เชจ-เชซเซเชฐเชจเซเชŸเชฟเช‚เช— เชฎเชฟเช•เซ‡เชจเชฟเชเชฎ เชฒเชพเช—เซ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€เชถเซเช‚, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชœเซ‡เชฎ เช•เซ‡ เช•เซ‹เชฌเชพเชฒเซเชŸ เชธเซเชŸเซเชฐเชพเชˆเช•, เชเชฎเซเชชเชพเชฏเชฐ, เชตเช—เซ‡เชฐเซ‡, เช…เชจเซ‡ เชคเซ‡เชฎเชจเซ‡ เช†เชงเซเชจเชฟเช• เชธเชพเชฎเช—เซเชฐเซ€ เชซเชฟเชฒเซเชŸเชฐเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎเซเชธเชจเซ€ เชจเช•เชฒ เช•เชฐเชตเชพ เช…เชจเซ‡ เชŸเชพเชณเชตเชพ เชฎเชพเชŸเซ‡ เชตเชงเชพเชฐเชพเชจเซ€ เช•เซเชทเชฎเชคเชพเช“ เช†เชชเซ€เชถเซเช‚.

เช›เซ‡เชฒเซเชฒเซ€ เชตเช–เชคเซ‡ เช…เชฎเซ‡ OpenSSL เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เชฎเชพเช‚ eSNI เชฎเชฟเช•เซ‡เชจเชฟเชเชฎเชจเซ‹ เช…เชฎเชฒ เช•เชฐเซเชฏเซ‹ เชนเชคเซ‹ เช…เชจเซ‡ เชชเชฐเชฟเชšเชฟเชค เช•เชฐเซเชฒ เช‰เชชเชฏเซ‹เช—เชฟเชคเชพเชฎเชพเช‚ เชธเชซเชณเชคเชพเชชเซ‚เชฐเซเชตเช• เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเชฏเซ‹ เชนเชคเซ‹. เชชเชฐเช‚เชคเซ, เชœเซ‡เชฎ เชคเซ‡เช“ เช•เชนเซ‡ เช›เซ‡, เชคเชฎเซ‡ เชฎเชพเชคเซเชฐ เชเช• เชšเชฟเช•เชจเชฅเซ€ เชธเช‚เชคเซเชทเซเชŸ เชฅเชถเซ‹ เชจเชนเซ€เช‚. เช…เชฒเชฌเชคเซเชค, เชนเซเช‚ เช‰เชšเซเชš-เชธเซเชคเชฐเชจเซ€ เชญเชพเชทเชพเช“เชฎเชพเช‚ เชธเชฎเชพเชจ เช•เช‚เชˆเช• เช…เชฎเชฒ เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ เช›เซเช‚. เชชเชฐเช‚เชคเซ, เช•เชฎเชจเชธเซ€เชฌเซ‡, เชธเชฎเช—เซเชฐ เชˆเชจเซเชŸเชฐเชจเซ‡เชŸ เชชเชฐ เชเช• เชเชกเชชเซ€ เชถเซ‹เชง เช…เชฎเชจเซ‡ เชจเชฟเชฐเชพเชถ เช•เชฐเซ‡ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ eSNI เชฎเชฟเช•เซ‡เชจเชฟเชเชฎ เชฎเชพเชŸเซ‡เชจเซ‹ เชธเชชเซ‹เชฐเซเชŸ เชซเช•เซเชค GOLANGเชฎเชพเช‚ เชœ เชธเช‚เชชเซ‚เชฐเซเชฃเชชเชฃเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เช›เซ‡. เช†เชฎ, เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชตเชงเซ เชชเชธเช‚เชฆเช—เซ€ เชจเชฅเซ€: เช•เชพเช‚ เชคเซ‹ เช…เชฎเซ‡ เชชเซ‡เชš เช•เชฐเซ‡เชฒเซ€ OpenSSL เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชถเซเชฆเซเชง C เช…เชฅเชตเชพ C++ เชฎเชพเช‚ เชฒเช–เซ€เช เช›เซ€เช, เช…เชฅเชตเชพ เช…เชฎเซ‡ CloudFlareเชฎเชพเช‚เชฅเซ€ เช…เชฒเช— GOLANG เชซเซ‹เชฐเซเช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เช…เชฎเชพเชฐเชพ เชŸเซ‚เชฒเซเชธเชจเซ‡ เชคเซเชฏเชพเช‚ เชชเซ‹เชฐเซเชŸ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€เช เช›เซ€เช. เชธเซˆเชฆเซเชงเชพเช‚เชคเชฟเช• เชฐเซ€เชคเซ‡, เชคเซเชฏเชพเช‚ เชฌเซ€เชœเซ‹ เชตเชฟเช•เชฒเซเชช เช›เซ‡, เชตเชงเซ เช•เซเชฒเชพเชธเชฟเช•, เชชเชฐเช‚เชคเซ เชคเซ‡ เชœ เชธเชฎเชฏเซ‡ เชธเชฎเชฏ เชฎเชพเช‚เช—เซ€ เชฒเซ‡เชคเซ‹ - เชชเชพเชฏเชฅเซ‹เชจ เชฎเชพเชŸเซ‡ eSNI เชธเชชเซ‹เชฐเซเชŸเชจเซ‹ เช…เชฎเชฒ เช•เชฐเชตเซ‹. เช›เซ‡เชตเชŸเซ‡, เชชเชพเชฏเชฅเซ‹เชจ https เชนเซ‡เชจเซเชกเชฒ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ OpenSSL เชจเซ‹ เชชเชฃ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡. เชชเชฐเช‚เชคเซ เช…เชฎเซ‡ เช† เชตเชฟเช•เชฒเซเชช เชฌเซ€เชœเชพ เช•เซ‹เชˆเชจเชพ เชตเชฟเช•เชพเชธ เชฎเชพเชŸเซ‡ เช›เซ‹เชกเซ€ เชฆเชˆเชถเซเช‚, เช…เชจเซ‡ เช…เชฎเซ‡ เชชเซ‹เชคเซ‡ เช—เซ‹เชฒเชพเช‚เช—เชฎเชพเช‚ เช…เชฎเชฒเซ€เช•เชฐเชฃเชฅเซ€ เชธเช‚เชคเซเชทเซเชŸ เชฅเชˆเชถเซเช‚, เช–เชพเชธ เช•เชฐเซ€เชจเซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เช…เชฎเชพเชฐเซ€ เชชเซเชฐเชฟเชฏ เช•เซ‹เชฌเชพเชฒเซเชŸ เชธเซเชŸเซเชฐเชพเชˆเช• เชคเซƒเชคเซ€เชฏ-เชชเช•เซเชท เชธเชพเชงเชจเซ‹ (เชฌเชพเชนเซเชฏ C2 เชšเซ‡เชจเชฒ) เชฆเซเชตเชพเชฐเชพ เชจเชฟเชฐเซเชฎเชฟเชค เชธเช‚เชšเชพเชฐ เชšเซ‡เชจเชฒ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชฐเซ€เชคเซ‡ เชธเช•เซเชทเชฎ เช›เซ‡. - เช…เชฎเซ‡ เชฒเซ‡เช–เชจเชพ เช…เช‚เชคเซ‡ เช† เชตเชฟเชถเซ‡ เชตเชพเชค เช•เชฐเซ€เชถเซเช‚.

เชตเชงเซ เชจเช•เซเช•เชฐ เชชเซเชฐเชฏเชคเซเชจ เช•เชฐเซ‹...

Go เชฎเชพเช‚ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชพเชฏเซ‡เชฒ เชธเชพเชงเชจเซ‹เชฎเชพเช‚เชฅเซ€ เชเช• เชจเซ‡เชŸเชตเชฐเซเช•เชฎเชพเช‚ เชชเชฟเชตเชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเซ‹ เช…เชฎเชพเชฐเซ‹ เชตเชฟเช•เชพเชธ เช›เซ‡ - เชเช• เชŸเชจเชฒเชฐ rsockstun, เชœเซ‡, เชฎเชพเชฐเซเช— เชฆเซเชตเชพเชฐเชพ, เชนเชตเซ‡ เชตเซˆเชถเซเชตเชฟเช• เชธเซเชฅเชฟเชฐเชคเชพเชจเซ‡ เชตเชฟเช•เซเชทเซ‡เชชเชฟเชค เช•เชฐเชตเชพเชจเชพ เชนเซ‡เชคเซเชฅเซ€ เช–เซ‚เชฌ เชœ เชฆเซ‚เชทเชฟเชค เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เชคเชฐเซ€เช•เซ‡ Microsoft เช…เชจเซ‡ Symantec เชจเชพ เชŸเซ‚เชฒเซเชธ เชฆเซเชตเชพเชฐเชพ เชถเซ‹เชงเชพเชฏเซ‡เชฒ เช›เซ‡...

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เช† เช•เชฟเชธเซเชธเชพเชฎเชพเช‚ เชชเชฃ เช…เช—เชพเช‰เชจเชพ เชตเชฟเช•เชพเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชคเซ‡ เชธเชฐเชธ เชฐเชนเซ‡เชถเซ‡. เชชเชฐเช‚เชคเซ เช…เชนเซ€เช‚ เชเช• เชจเชพเชจเซ€ เชธเชฎเชธเซเชฏเชพ เชŠเชญเซ€ เชฅเชพเชฏ เช›เซ‡. เชนเช•เซ€เช•เชค เช เช›เซ‡ เช•เซ‡ เชถเชฐเซ‚เช†เชคเชฎเชพเช‚ rsockstun เชธเชฐเซเชตเชฐ เชธเชพเชฅเซ‡ เชธเชฟเช‚เช•เซเชฐเชจเชธ SSL เชธเช‚เชšเชพเชฐ เชšเซ‡เชจเชฒเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชธเซ‚เชšเชตเซ‡ เช›เซ‡. เช†เชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เชœเซ‹เชกเชพเชฃ เชเช•เชตเชพเชฐ เชธเซเชฅเชพเชชเชฟเชค เชฅเชพเชฏ เช›เซ‡ เช…เชจเซ‡ เชŸเชจเชฒเชจเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€เชจเชพ เชธเชฎเช—เซเชฐ เชธเชฎเชฏเช—เชพเชณเชพ เชฎเชพเชŸเซ‡ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เช›เซ‡. เช…เชจเซ‡, เชœเซ‡เชฎ เชคเชฎเซ‡ เชธเชฎเชœเซ‹ เช›เซ‹, https เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒ เช“เชชเชฐเซ‡เชถเชจเชจเชพ เช† เชฎเซ‹เชก เชฎเชพเชŸเซ‡ เชฌเชจเชพเชตเชพเชฏเซ‡เชฒ เชจเชฅเซ€ - เชคเซ‡ เชตเชฟเชจเช‚เชคเซ€-เชชเซเชฐเชคเชฟเชธเชพเชฆ เชฎเซ‹เชกเชฎเชพเช‚ เช•เชพเชฐเซเชฏ เช•เชฐเซ‡ เช›เซ‡, เชœเซเชฏเชพเช‚ เชฆเชฐเซ‡เช• เชจเชตเซ€ HTTP เชตเชฟเชจเช‚เชคเซ€ เชจเชตเชพ tcp เช•เชจเซ‡เช•เซเชถเชจเชฎเชพเช‚ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เช›เซ‡.

เช† เชธเซเช•เซ€เชฎเชจเซ‹ เชฎเซเช–เซเชฏ เช—เซ‡เชฐเชฒเชพเชญ เช เช›เซ‡ เช•เซ‡ เชœเซเชฏเชพเช‚ เชธเซเชงเซ€ เช•เซเชฒเชพเชฏเชจเซเชŸ เชจเชตเซ€ HTTP เชตเชฟเชจเช‚เชคเซ€ เชฎเซ‹เช•เชฒเซ‡ เชจเชนเซ€เช‚ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€ เชธเชฐเซเชตเชฐ เช•เซเชฒเชพเชฏเช‚เชŸเชจเซ‡ เชกเซ‡เชŸเชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเซ€ เชถเช•เชคเซเช‚ เชจเชฅเซ€. เชชเชฐเช‚เชคเซ, เชธเชฆเชญเชพเช—เซเชฏเซ‡, เช† เชธเชฎเชธเซเชฏเชพเชจเซ‡ เชนเชฒ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช˜เชฃเชพ เชฌเชงเชพ เชตเชฟเช•เชฒเซเชชเซ‹ เช›เซ‡ - HTTP เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒ เชฆเซเชตเชพเชฐเชพ เชกเซ‡เชŸเชพ เชธเซเชŸเซเชฐเซ€เชฎเชฟเช‚เช— (เช›เซ‡เชตเชŸเซ‡, เช…เชฎเซ‡ เช•เซ‹เชˆเช• เชฐเซ€เชคเซ‡ เช…เชฎเชพเชฐเชพ เชฎเชจเชชเชธเช‚เชฆ เชŸเซ€เชตเซ€ เชถเซ‹ เชœเซ‹เชตเชพเชจเซเช‚ เช…เชจเซ‡ https เชชเชฐ เชšเชพเชฒเชคเชพ เชชเซ‹เชฐเซเชŸเชฒเชฎเชพเช‚เชฅเซ€ เชธเช‚เช—เซ€เชค เชธเชพเช‚เชญเชณเชตเชพเชจเซเช‚ เชฎเซ‡เชจเซ‡เชœ เช•เชฐเซ€เช เช›เซ€เช, เชชเชฐเช‚เชคเซ เชตเชฟเชกเชฟเช“ เช…เชจเซ‡ เช‘เชกเชฟเช“ เชŸเซเชฐเชพเชจเซเชธเชฎเชฟเชŸ เช•เชฐเชตเซเช‚ เช เชฌเซ€เชœเซเช‚ เช•เช‚เชˆ เชจเชฅเซ€. เชธเซเชŸเซเชฐเซ€เชฎเชฟเช‚เช— เชกเซ‡เชŸเชพ เช•เชฐเชคเชพเช‚). HTTP เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒ เชชเชฐ เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเซเชตเชฟเชงเชพเชฏเซเช•เซเชค TCP เช•เชจเซ‡เช•เซเชถเชจเชจเซเช‚ เช…เชจเซเช•เชฐเชฃ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเซ€ เชคเช•เชจเซ€เช•เซ‹เชฎเชพเช‚เชจเซ€ เชเช• เช›เซ‡ WebSockets เชŸเซ‡เช•เซเชจเซ‹เชฒเซ‹เชœเซ€, เชœเซ‡เชจเซ‹ เชฎเซเช–เซเชฏ เชธเชพเชฐ เช•เซเชฒเชพเชฏเช‚เชŸ เช…เชจเซ‡ เชตเซ‡เชฌ เชธเชฐเซเชตเชฐ เชตเชšเซเชšเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเซเชตเชฟเชงเชพเชฏเซเช•เซเชค เชจเซ‡เชŸเชตเชฐเซเช• เช•เชจเซ‡เช•เซเชถเชจ เช—เซ‹เช เชตเชตเชพเชจเซ‹ เช›เซ‡.

เชธเชฆเชญเชพเช—เซเชฏเซ‡ เช…เชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ (เชนเซเชฐเซ‡!!!), เช† เชŸเซ‡เช•เซเชจเซ‹เชฒเซ‹เชœเซ€ เชกเชฟเชซเซ‹เชฒเซเชŸ เชฐเซ‚เชชเซ‡ เชคเชฎเชพเชฎ CloudFlare เชŸเซ‡เชฐเชฟเชซ เชชเซเชฒเชพเชจเชฎเชพเช‚ เชธเชพเชฎเซ‡เชฒ เช›เซ‡ เช…เชจเซ‡ eSNI เชธเชพเชฅเซ‡ เชฎเชณเซ€เชจเซ‡ เช‰เชคเซเชคเชฎ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡. เช…เชฎเซ‡ เช…เชฎเชพเชฐเชพ เชŸเชจเชฒเชฐเชจเซ‡ เชกเซ‹เชฎเซ‡เชจ-เชซเซเชฐเชจเซเชŸเชฟเช‚เช—เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เช…เชจเซ‡ เช†เชงเซเชจเชฟเช• DPIs เชฅเซ€ เช›เซเชชเชพเชตเชตเชพเชจเซเช‚ เชถเซ€เช–เชตเชตเชพ เชฎเชพเชŸเซ‡ เช†เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชถเซเช‚.

WebSockets เชตเชฟเชถเซ‡ เชฅเซ‹เชกเซเช‚

เชธเซŒ เชชเซเชฐเชฅเชฎ, เช…เชฎเซ‡ เชธเช‚เช•เซเชทเชฟเชชเซเชคเชฎเชพเช‚ เช…เชจเซ‡ เชธเชฐเชณ เชถเชฌเซเชฆเซ‹เชฎเชพเช‚ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸเซเชธ เชตเชฟเชถเซ‡ เชตเชพเชค เช•เชฐเซ€เชถเซเช‚ เชœเซ‡เชฅเซ€ เชฆเชฐเซ‡เช•เชจเซ‡ เช–เซเชฏเชพเชฒ เช†เชตเซ‡ เช•เซ‡ เช†เชชเชฃเซ‡ เชถเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเซ€เชถเซเช‚.

เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ เชŸเซ‡เช•เซเชจเซ‹เชฒเซ‹เชœเซ€ เชคเชฎเชจเซ‡ เชธเซเชฅเชพเชชเชฟเชค TCP เช•เชจเซ‡เช•เซเชถเชจเชจเซ‡ เชคเซ‹เชกเซเชฏเชพ เชตเชฟเชจเชพ เช…เชธเซเชฅเชพเชฏเซ€ เชฐเซ‚เชชเซ‡ HTTP เช•เชจเซ‡เช•เซเชถเชจเชฎเชพเช‚เชฅเซ€ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เชจเซ‡เชŸเชตเชฐเซเช• เชธเซ‹เช•เซ‡เชŸ เชธเซเชŸเซเชฐเซ€เชฎเชฟเช‚เช— เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชœเซเชฏเชพเชฐเซ‡ เช•เซเชฒเชพเชฏเช‚เชŸ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ‡ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เชคเซ‡ เชคเซ‡เชจเซ€ HTTP เชตเชฟเชจเช‚เชคเซ€เชฎเชพเช‚ เช˜เชฃเชพ HTTP เชนเซ‡เชกเชฐเซ‹ เชธเซ‡เชŸ เช•เชฐเซ‡ เช›เซ‡. เชฌเซ‡ เชœเชฐเซ‚เชฐเซ€ เชนเซ‡เชกเชฐเซ‹ - เช•เชจเซ‡เช•เซเชถเชจ: เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเซ‹ ะธ เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเซ‹: เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ. เชคเซ‡ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒ เชธเช‚เชธเซเช•เชฐเชฃเชจเซ‡ เชฌเชณเชชเซ‚เชฐเซเชตเช• เชธเซเชชเชทเซเชŸ เชชเชฃ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡ (เชธเซ‡เช•-เชตเซ‡เชฌเชธเซ‹เช•เชธเซ‡เชŸ-เชธเช‚เชธเซเช•เชฐเชฃ: 13) เช…เชจเซ‡ เชฌเซ‡เช 64 เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ เช“เชณเช–เช•เชฐเซเชคเชพ เชœเซ‡เชตเซเช‚ เช•เช‚เชˆเช• (เชธเซ‡เช•-เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ-เช•เซ€: DAGDJSiREI3+KjDfwxm1FA==). เชธเชฐเซเชตเชฐ เชคเซ‡เชจเซ‡ HTTP เช•เซ‹เชก 101 เชธเซเชตเชฟเชšเชฟเช‚เช— เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒเซเชธ เชธเชพเชฅเซ‡ เชœเชตเชพเชฌ เช†เชชเซ‡ เช›เซ‡ เช…เชจเซ‡ เชนเซ‡เชกเชฐเซ‹ เชชเชฃ เชธเซ‡เชŸ เช•เชฐเซ‡ เช›เซ‡ เช•เชจเซ‡เช•เซเชถเชจ, เช…เชชเช—เซเชฐเซ‡เชก ะธ เชธเซ‡เช•-เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ-เชธเซเชตเซ€เช•เชพเชฐเซ‹. เชธเซเชตเชฟเชšเชฟเช‚เช— เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เชจเซ€เชšเซ‡เชจเชพ เชธเซเช•เซเชฐเซ€เชจเชถเซ‹เชŸเชฎเชพเช‚ เชธเซเชชเชทเซเชŸเชชเชฃเซ‡ เชฆเชฐเซเชถเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เช† เชชเช›เซ€, เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ เช•เชจเซ‡เช•เซเชถเชจเชจเซเช‚ เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจ เชชเซ‚เชฐเซเชฃ เช—เชฃเซ€ เชถเช•เชพเชฏ. เช•เซเชฒเชพเชฏเช‚เชŸ เช…เชจเซ‡ เชธเชฐเซเชตเชฐ เชฌเช‚เชจเซ‡เชฎเชพเช‚เชฅเซ€ เช•เซ‹เชˆเชชเชฃ เชกเซ‡เชŸเชพ เชนเชตเซ‡ http เชธเชพเชฅเซ‡ เชจเชนเซ€เช‚, เชชเชฐเช‚เชคเซ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ เชนเซ‡เชกเชฐเซ‹ เชธเชพเชฅเซ‡ เชชเซ‚เชฐเซ‹ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡ (เชคเซ‡เช“ เชฌเชพเชˆเชŸ 0x82 เชฅเซ€ เชถเชฐเซ‚ เชฅเชพเชฏ เช›เซ‡). เชนเชตเซ‡ เชธเชฐเซเชตเชฐเชจเซ‡ เชกเซ‡เชŸเชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช•เซเชฒเชพเชฏเช‚เชŸเชจเซ€ เชตเชฟเชจเช‚เชคเซ€เชจเซ€ เชฐเชพเชน เชœเซ‹เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€, เช•เชพเชฐเชฃ เช•เซ‡ tcp เช•เชจเซ‡เช•เซเชถเชจ เชคเซ‚เชŸเซ€ เช—เชฏเซเช‚ เชจเชฅเซ€.

เช—เซ‹เชฒเชพเช‚เช— เชชเชพเชธเซ‡ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸเซเชธ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช˜เชฃเซ€ เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เช“ เช›เซ‡. เชคเซ‡เชฎเชพเช‚เชฅเซ€ เชธเซŒเชฅเซ€ เชตเชงเซ เชฒเซ‹เช•เชชเซเชฐเชฟเชฏ เช›เซ‡ เช—เซ‹เชฐเชฟเชฒเชพ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ เช…เชจเซ‡ เชงเซ‹เชฐเชฃ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ. เช…เชฎเซ‡ เชชเช›เซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชถเซเช‚, เช•เชพเชฐเชฃ เช•เซ‡ ... เชคเซ‡ เชธเชฐเชณ, เชจเชพเชจเซเช‚ เช›เซ‡ เช…เชจเซ‡, เชœเซ‡เชฎ เชคเซ‡เช“ เช•เชนเซ‡ เช›เซ‡, เชฅเซ‹เชกเซเช‚ เชเชกเชชเซ€ เช•เชพเชฐเซเชฏ เช•เชฐเซ‡ เช›เซ‡.

rsockstun เช•เซเชฒเชพเชฏเชจเซเชŸ เช•เซ‹เชกเชฎเชพเช‚, เช…เชฎเชพเชฐเซ‡ net.dial เช…เชฅเชตเชพ tls.dial เช•เซ‰เชฒเซเชธเชจเซ‡ เชธเช‚เชฌเช‚เชงเชฟเชค เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ เช•เซ‰เชฒเซเชธ เชธเชพเชฅเซ‡ เชฌเชฆเชฒเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เช…เชฎเซ‡ เช…เชฎเชพเชฐเซ€ เชŸเชจเชฒเชจเซ‹ เช•เซเชฒเชพเชฏเชจเซเชŸ เชญเชพเช— เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช• เชฌเชจเชพเชตเชตเชพ เชฎเชพเช‚เช—เซ€เช เช›เซ€เช เช…เชจเซ‡ เชกเชพเชฏเชฐเซ‡เช•เซเชŸ SSL เช•เชจเซ‡เช•เซเชถเชจ เช…เชจเซ‡ เชตเซ‡เชฌเชธเซ‹เช•เชธเซ‡เชŸ เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒ เชฆเซเชตเชพเชฐเชพ เชฌเช‚เชจเซ‡ เชฐเซ€เชคเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเช•เซเชทเชฎ เช›เซ€เช. เช† เชฎเชพเชŸเซ‡ เช†เชชเชฃเซ‡ เชเช• เช…เชฒเช— เชซเช‚เช•เซเชถเชจ เชฌเชจเชพเชตเซ€เชถเซเช‚ func connectForWsSocks(เชเชกเซเชฐเซ‡เชธ เชธเซเชŸเซเชฐเชฟเช‚เช—, เชชเซเชฐเซ‹เช•เซเชธเซ€ เชธเซเชŸเซเชฐเชฟเช‚เช—) เชญเซ‚เชฒ {โ€ฆ} เชธเชพเชฅเซ‡ เชธเชพเชฎเซเชฏเชคเชพ เชฆเซเชตเชพเชฐเชพ connectForSocks() เช…เชจเซ‡ เช…เชฎเซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชตเซ‡เชฌ เชธเซ‹เช•เซ‡เชŸเซเชธ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช•เชฐเซ€เชถเซเช‚ เชœเซ‹ เช•เซเชฒเชพเชฏเช‚เชŸ เชถเชฐเซ‚ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เชธเชฐเซเชตเชฐ เชธเชฐเชจเชพเชฎเซเช‚ ws: เช…เชฅเชตเชพ wss: (เชธเชฟเช•เซเชฏเซ‹เชฐ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸเชจเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚) เชฅเซ€ เชถเชฐเซ‚ เชฅเชพเชฏ เช›เซ‡.

เชŸเชจเชฒเชจเซ€ เชธเชฐเซเชตเชฐ เชฌเชพเชœเซ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชตเซ‡เชฌ เชธเซ‹เช•เซ‡เชŸเซเชธ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชเช• เช…เชฒเช— เชซเช‚เช•เซเชถเชจ เชชเชฃ เชฌเชจเชพเชตเซ€เชถเซเช‚. เชคเซ‡ http เช•เซเชฒเชพเชธเชจเซ‹ เชฆเชพเช–เชฒเซ‹ เชฌเชจเชพเชตเชถเซ‡ เช…เชจเซ‡ HTTP เช•เชจเซ‡เช•เซเชถเชจ เชนเซ‡เชจเซเชกเชฒเชฐ (wsHandler เชซเช‚เช•เซเชถเชจ) เชธเซ‡เชŸ เช•เชฐเชถเซ‡:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เช…เชจเซ‡ เช…เชฎเซ‡ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸ เช•เชจเซ‡เช•เซเชถเชจ เชนเซ‡เชจเซเชกเชฒเชฐเชฎเชพเช‚ เชคเชฎเชพเชฎ เช•เชจเซ‡เช•เซเชถเชจ เชชเซเชฐเซ‹เชธเซ‡เชธเชฟเช‚เช— เชฒเซ‹เชœเชฟเช• (เชชเชพเชธเชตเชฐเซเชกเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช•เซเชฒเชพเชฏเชจเซเชŸ เช…เชงเชฟเช•เซƒเชคเชคเชพ, เชฏเชพเชฎเช•เซเชธ เชธเชคเซเชฐ เชธเซ‡เชŸเช…เชช เช…เชจเซ‡ เชธเชฎเชพเชชเซเชค) เชฎเซ‚เช•เซ€เชถเซเช‚:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เช…เชฎเซ‡ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเซ‡ เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชธเชฐเซเชตเชฐ เชญเชพเช— เชฒเซ‹เช‚เชš เช•เชฐเซ€เช เช›เซ€เช:

./rsockstun โ€“listen ws:127.0.0.1:8080 โ€“pass P@ssw0rd

เช…เชจเซ‡ เชชเช›เซ€ เช—เซเชฐเชพเชนเช• เชญเชพเช—:

./rsockstun -connect ws:127.0.0.1:8080 โ€“pass P@ssw0rd

เช…เชจเซ‡ เช…เชฎเซ‡ เชธเซเชฅเชพเชจเชฟเช• เชนเซ‹เชธเซเชŸ เชชเชฐ เช•เชพเชฎ เชคเชชเชพเชธเซ€เช เช›เซ€เช:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชšเชพเชฒเซ‹ เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช— เชคเชฐเชซ เช†เช—เชณ เชตเชงเซ€เช

เช…เชฎเซ‡ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸเซเชธ เชถเซ‹เชงเซ€ เช•เชพเชขเซเชฏเชพ เชนเซ‹เชฏ เชคเซ‡เชตเซเช‚ เชฒเชพเช—เซ‡ เช›เซ‡. เชนเชตเซ‡ เชšเชพเชฒเซ‹ เชธเซ€เชงเชพ eSNI เช…เชจเซ‡ เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช— เชชเชฐ เชœเชˆเช. เช…เช—เชพเช‰ เชœเชฃเชพเชตเซเชฏเชพ เชฎเซเชœเชฌ, DoH เช…เชจเซ‡ eSNI เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช…เชฎเชพเชฐเซ‡ เช•เช‚เชชเชจเซ€ เชชเชพเชธเซ‡เชฅเซ€ เช–เชพเชธ เช—เซ‹เชฒเชพเช‚เช— เชถเชพเช–เชพ เชฒเซ‡เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เชฎเซ‡เช˜เชซเซเชฒเซ‡เชฐ. เช…เชฎเชจเซ‡ eSNI เชธเชชเซ‹เชฐเซเชŸ (pwu/esni) เชธเชพเชฅเซ‡ เชถเชพเช–เชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เชธเซเชฅเชพเชจเชฟเช• เชฐเซ€เชคเซ‡ เช•เซเชฒเซ‹เชจ เช•เชฐเซ€เช เช›เซ€เช เช…เชฅเชตเชพ เชธเช‚เชฌเช‚เชงเชฟเชค เชเชฟเชชเชจเซ‡ เชกเชพเช‰เชจเชฒเซ‹เชก เช…เชจเซ‡ เช…เชจเช•เซ‹เชฎเซเชชเซเชฐเซ‡เชธ เช•เชฐเซ€เช เช›เซ€เช:

git clone -b pwu/esni https://github.com/cloudflare/tls-tris.git

เชชเช›เซ€ เช†เชชเชฃเซ‡ GOROOT เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เชจเซ€ เชจเช•เชฒ เช•เชฐเชตเชพเชจเซ€, เช•เซเชฒเซ‹เชจ เช•เชฐเซ‡เชฒเซ€ เชถเชพเช–เชพเชฎเชพเช‚เชฅเซ€ เชธเช‚เชฌเช‚เชงเชฟเชค เชซเชพเช‡เชฒเซ‹เชจเซ‡ เชฌเชฆเชฒเชตเชพเชจเซ€ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชฎเชพเชธเซเชŸเชฐ เชคเชฐเซ€เช•เซ‡ เชธเซ‡เชŸ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เช† เชฎเชพเชฅเชพเชจเซ‹ เชฆเซเช–เชพเชตเซ‹เชฎเชพเช‚เชฅเซ€ เชฌเชšเชพเชตเชตเชพ เชฎเชพเชŸเซ‡, CloudFlare เชจเชพ เชฒเซ‹เช•เซ‹เช เชเช• เช–เชพเชธ เชธเซเช•เซเชฐเชฟเชชเซเชŸ เชคเซˆเชฏเชพเชฐ เช•เชฐเซ€ เช›เซ‡ - _dev/go.sh. เช…เชฎเซ‡ เชนเชฎเชฃเชพเช‚ เชœ เชคเซ‡เชจเซ‡ เชฒเซ‹เชจเซเชš เช•เชฐเซ€เช เช›เซ€เช. เชฎเซ‡เช•เชซเชพเช‡เชฒ เชธเชพเชฅเซ‡เชจเซ€ เชธเซเช•เซเชฐเชฟเชชเซเชŸ เชฌเชงเซเช‚ เชœ เชœเชพเชคเซ‡ เช•เชฐเชถเซ‡. เชฎเชพเชคเซเชฐ เชฎเชจเซ‹เชฐเช‚เชœเชจ เชฎเชพเชŸเซ‡, เชคเชฎเซ‡ เชตเชฟเช—เชคเซ‹ เชฎเชพเชŸเซ‡ เชฎเซ‡เช•เชซเชพเชˆเชฒเชจเซ€ เช…เช‚เชฆเชฐ เชœเซ‹เชˆ เชถเช•เซ‹ เช›เซ‹.

เชธเซเช•เซเชฐเชฟเชชเซเชŸ เชšเชฒเชพเชตเซเชฏเชพ เชชเช›เซ€, เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเซเช‚ เชธเช‚เช•เชฒเชจ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡, เช…เชฎเชพเชฐเซ‡ GOROOT เชคเชฐเซ€เช•เซ‡ เชธเซเช•เซเชฐเชฟเชชเซเชŸ เชฆเซเชตเชพเชฐเชพ เชคเซˆเชฏเชพเชฐ เช•เชฐเชพเชฏเซ‡เชฒ เชธเซเชฅเชพเชจเชฟเช• เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡. เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚ เชคเซ‡ เช†เชจเชพ เชœเซ‡เชตเซเช‚ เชฒเชพเช—เซ‡ เช›เซ‡:

GOROOT="/opt/tls-tris/_dev/GOROOT/linux_amd64" go build โ€ฆ.

เช†เช—เชณ, เช†เชชเชฃเซ‡ เช‡เชšเซเช›เชฟเชค เชกเซ‹เชฎเซ‡เชจ เชฎเชพเชŸเซ‡ เชธเชพเชฐเซเชตเชœเชจเชฟเช• eSNI เช•เซ€เชจเซ€ เชตเชฟเชจเช‚เชคเซ€ เช…เชจเซ‡ เชชเชพเชฐเซเชธเชฟเช‚เช—เชจเซ€ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพเชจเซ‡ เชŸเชจเชฒเชฎเชพเช‚ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เช† CloudFlare เชซเซเชฐเชจเซเชŸเชเชจเซเชก เชธเชฐเซเชตเชฐเซเชธเชจเซ€ เชธเชพเชฐเซเชตเชœเชจเชฟเช• eSNI เช•เซ€เช“ เชนเชถเซ‡. เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชคเซเชฐเชฃ เช•เชพเชฐเซเชฏเซ‹ เชฌเชจเชพเชตเซ€เชถเซเช‚:

func makeDoTQuery(dnsName string) ([]byte, error)
func parseTXTResponse(buf []byte, wantName string) (string, error)
func QueryESNIKeysForHost(hostname string) ([]byte, error)

เช•เชพเชฐเซเชฏเซ‹เชจเชพ เชจเชพเชฎ, เชธเซˆเชฆเซเชงเชพเช‚เชคเชฟเช• เชฐเซ€เชคเซ‡, เชชเซ‹เชคเชพเชจเซ‡ เชฎเชพเชŸเซ‡ เชฌเซ‹เชฒเซ‡ เช›เซ‡. เช…เชฎเซ‡ esni_query.go เชซเชพเช‡เชฒเชฎเชพเช‚เชฅเซ€ เชธเชพเชฎเช—เซเชฐเซ€ เชฒเชˆเชถเซเช‚, เชœเซ‡ tls-tris เชจเซ‹ เชญเชพเช— เช›เซ‡. เชชเซเชฐเชฅเชฎ เช•เชพเชฐเซเชฏ DoH (DNS-over-HTTPS) เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ CloudFlare DNS เชธเชฐเซเชตเชฐเชจเซ‡ เชตเชฟเชจเช‚เชคเซ€ เชธเชพเชฅเซ‡ เชจเซ‡เชŸเชตเชฐเซเช• เชชเซ‡เช•เซ‡เชŸ เชฌเชจเชพเชตเซ‡ เช›เซ‡, เชฌเซ€เชœเซเช‚ เช•เซเชตเซ‡เชฐเซ€ เชชเชฐเชฟเชฃเชพเชฎเซ‹เชจเซ‡ เชชเชพเชฐเซเชธ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชกเซ‹เชฎเซ‡เชจเชจเซ€ เชธเชพเชฐเซเชตเชœเชจเชฟเช• เช•เซ€เชจเชพ เชฎเซ‚เชฒเซเชฏเซ‹ เชฎเซ‡เชณเชตเซ‡ เช›เซ‡, เช…เชจเซ‡ เชคเซเชฐเซ€เชœเซเช‚ เชเช• เช›เซ‡. เชชเซเชฐเชฅเชฎ เชฌเซ‡ เชฎเชพเชŸเซ‡ เช•เชจเซเชŸเซ‡เชจเชฐ.

เช†เช—เชณ, เช…เชฎเซ‡ เช…เชฎเชพเชฐเชพ เชจเชตเชพ เชฌเชจเชพเชตเซ‡เชฒเชพ เชซเช‚เช•เซเชถเชจเชฎเชพเช‚ เชตเซ‡เชฌ เชธเซ‹เช•เซ‡เชŸ เช•เชจเซ‡เช•เซเชถเชจ เช‰เชฎเซ‡เชฐเซ€เช เช›เซ€เช connectForWsSocks เชกเซ‹เชฎเซ‡เชจ เชฎเชพเชŸเซ‡ eSNI เช•เซ€เชจเซ€ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเซ€ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ. เชœเซเชฏเชพเช‚ เชธเชฐเซเชตเชฐเชจเซ‹ เชญเชพเช— เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡, เช…เชฎเซ‡ TLS เชชเซ‡เชฐเชพเชฎเซ€เชŸเชฐ เชธเซ‡เชŸ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชจเช•เชฒเซ€ "เช•เชตเชฐ เชกเซ‹เชฎเซ‡เชจ"เชจเซเช‚ เชจเชพเชฎ เชชเชฃ เชธเซ‡เชŸ เช•เชฐเซ€เช เช›เซ€เช:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เช…เชนเซ€เช‚ เช เชจเซ‹เช‚เชงเชตเซเช‚ เชœเซ‹เชˆเช เช•เซ‡ เชถเชฐเซ‚เช†เชคเชฎเชพเช‚, tls-tris เชถเชพเช–เชพ เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—เชจเชพ เช‰เชชเชฏเซ‹เช— เชฎเชพเชŸเซ‡ เชฌเชจเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชจ เชนเชคเซ€. เชคเซ‡เชฅเซ€, เชคเซ‡ เชจเช•เชฒเซ€ เชธเชฐเซเชตเชฐ เชจเชพเชฎ เชชเชฐ เชงเซเชฏเชพเชจ เช†เชชเชคเซเช‚ เชจเชฅเซ€ (เชเช• เช–เชพเชฒเซ€ เชธเชฐเซเชตเชฐ เชจเซ‡เชฎ เชซเซ€เชฒเซเชก เช•เซเชฒเชพเชฏเช‚เชŸ-เชนเซ‡เชฒเซ‹ เชชเซ‡เช•เซ‡เชŸเชจเชพ เชญเชพเช— เชฐเซ‚เชชเซ‡ เชฎเซ‹เช•เชฒเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡). เช†เชจเซ‡ เช เซ€เช• เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเชพเชฐเซ‡ TlsConfig เชธเซเชŸเซเชฐเช•เซเชšเชฐเชฎเชพเช‚ เช…เชจเซเชฐเซ‚เชช FakeServerName เชซเซ€เชฒเซเชก เช‰เชฎเซ‡เชฐเชตเซเช‚ เชชเชกเชถเซ‡. เช…เชฎเซ‡ เชฌเช‚เชงเชพเชฐเชฃเชจเชพ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เชธเชฐเซเชตเชฐเชจเชพเชฎ เช•เซเชทเซ‡เชคเซเชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เชคเชพ เชจเชฅเซ€, เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช†เช‚เชคเชฐเชฟเช• tls เชฎเชฟเช•เซ‡เชจเชฟเชเชฎเซเชธ เชฆเซเชตเชพเชฐเชพ เชฅเชพเชฏ เช›เซ‡ เช…เชจเซ‡ เชœเซ‹ เชคเซ‡ เชฎเซ‚เชณ เช•เชฐเชคเชพเช‚ เช…เชฒเช— เชนเซ‹เชฏ, เชคเซ‹ tls เชนเซ‡เชจเซเชกเชถเซ‡เช• เชญเซ‚เชฒ เชธเชพเชฅเซ‡ เชธเชฎเชพเชชเซเชค เชฅเชถเซ‡. TlsConfig เชฌเช‚เชงเชพเชฐเชฃเชจเซเช‚ เชตเชฐเซเชฃเชจ เชซเชพเช‡เชฒเชฎเชพเช‚ เชธเชฎเชพเชฏเซ‡เชฒ เช›เซ‡ tls/common.go - เช†เชชเชฃเซ‡ เชคเซ‡เชจเซ‡ เช เซ€เช• เช•เชฐเชตเซเช‚ เชชเชกเชถเซ‡:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชตเชงเซเชฎเชพเช‚, เช…เชฎเชพเชฐเซ‡ เชซเชพเช‡เชฒเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐ เช•เชฐเชตเชพ เชชเชกเชถเซ‡ tls/handshake_client.goTLS เชนเซ‡เชจเซเชกเชถเซ‡เช• เชฌเชจเชพเชตเชคเซ€ เชตเช–เชคเซ‡ เช…เชฎเชพเชฐเชพ FakeServerName เชซเซ€เชฒเซเชกเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชฌเชธ เชเชŸเชฒเซเช‚ เชœ! เชคเชฎเซ‡ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเซ‡ เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เช•เชพเชฐเซเชฏ เชคเชชเชพเชธเซ€ เชถเช•เซ‹ เช›เซ‹. เชชเชฐเช‚เชคเซ เชคเชฎเซ‡ เชธเซเช•เซ‡เชจ เชšเชฒเชพเชตเซ‹ เชคเซ‡ เชชเชนเซ‡เชฒเชพเช‚, เชคเชฎเชพเชฐเซ‡ CloudFlare เชเช•เชพเช‰เชจเซเชŸ เชธเซ‡เชŸ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชธเชพเชฐเซเช‚, เชนเซเช‚ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชนเซ€ เชถเช•เซเช‚ เช•เซ‡ เชคเซ‡เชจเซ‡ เชธเซ‡เชŸ เช•เชฐเซ‹ - เชซเช•เซเชค เช•เซเชฒเชพเช‰เชกเชซเซเชฒเซ‡เชฐ เชชเชฐ เชเช• เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเซ‹ เช…เชจเซ‡ เชคเชฎเชพเชฐเชพ เชกเซ‹เชฎเซ‡เชจเชจเซ‡ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เชฒเชฟเช‚เช• เช•เชฐเซ‹. DoH, WebSocket เช…เชจเซ‡ ESNI เชฅเซ€ เชธเช‚เชฌเช‚เชงเชฟเชค เชคเชฎเชพเชฎ เชธเซเชตเชฟเชงเชพเช“ เชกเชฟเชซเซ‹เชฒเซเชŸ เชฐเซ‚เชชเซ‡ CloudFlare เชฎเชพเช‚ เชถเชพเชฎเซ‡เชฒ เช›เซ‡. DNS เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธ เช…เชชเชกเซ‡เชŸ เชฅเชฏเชพ เชชเช›เซ€, เชคเชฎเซ‡ eSNI เช•เซ€เชจเซ‡ เช•เซเชตเซ‡เชฐเซ€ เช•เชฐเซ€เชจเซ‡ เชกเซ‹เชฎเซ‡เชจเชจเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€ เชคเชชเชพเชธเซ€ เชถเช•เซ‹ เช›เซ‹:

dig +short txt _esni.df13tester.info 

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชœเซ‹ เชคเชฎเชจเซ‡ เชคเชฎเชพเชฐเชพ เชกเซ‹เชฎเซ‡เชจ เชฎเชพเชŸเซ‡ เช•เช‚เชˆเช• เชธเชฎเชพเชจ เชฆเซ‡เช–เชพเชฏ เช›เซ‡, เชคเซ‹ เชคเซ‡เชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เชฌเชงเซเช‚ เชคเชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ เช•เชพเชฎ เช•เชฐเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡ เช…เชจเซ‡ เชคเชฎเซ‡ เชชเชฐเซ€เช•เซเชทเชฃ เชฎเชพเชŸเซ‡ เช†เช—เชณ เชตเชงเซ€ เชถเช•เซ‹ เช›เซ‹.

เชฒเซ‹เช‚เชš เช•เชฐเซ‹ Ubuntu เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชกเชฟเชœเชฟเชŸเชฒเช“เชถเชจ เชชเชฐ VPS. เชชเซ€เชเชธ: เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เช…เชฎเชพเชฐเชพ เชชเซเชฐเชฆเชพเชคเชพ เชคเชฐเชซเชฅเซ€ เช…เชฎเชจเซ‡ เชฎเชณเซ‡เชฒ VPS IP เชธเชฐเชจเชพเชฎเซเช‚ เชฐเซ‹เชธเซเช•เซ‹เชฎเชจเชพเชกเชเซ‹เชฐเชจเซ€ เชฌเซเชฒเซ‡เช•เชฒเชฟเชธเซเชŸเชฎเชพเช‚ เชธเชฎเชพเชชเซเชค เชฅเชฏเซเช‚. เชคเซ‡เชฅเซ€ เชœเซ‹ เชคเชฎเชพเชฐเซ€ เชธเชพเชฅเซ‡ เชชเชฃ เช†เชตเซเช‚ เชœ เช•เช‚เชˆเช• เชฅเชพเชฏ เชคเซ‹ เช†เชถเซเชšเชฐเซเชฏ เชชเชพเชฎเชถเซ‹ เชจเชนเซ€เช‚. เชฎเชพเชฐเชพ VPS เชจเซ‡ เชเช•เซเชธเซ‡เชธ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฎเชพเชฐเซ‡ VPN เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชชเชกเซเชฏเซ‹.

เช…เชฎเซ‡ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเซ‡เชฒ rsockstun เชจเซ‡ VPS เชชเชฐ เช•เซ‰เชชเชฟ เช•เชฐเซ€เช เช›เซ€เช (เช† เชฐเซ€เชคเซ‡, เช—เซ‹เชฒเชพเช‚เช—เชจเซ€ เชฌเซ€เชœเซ€ เชธเซเช‚เชฆเชฐเชคเชพ เช›เซ‡ - เชคเชฎเซ‡ เชคเชฎเชพเชฐเชพ เชชเซ‹เชคเชพเชจเชพ เชชเชฐ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเซ‡ เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เช•เซ‹เชˆเชชเชฃ Linux เชชเชฐ เชšเชฒเชพเชตเซ€ เชถเช•เซ‹ เช›เซ‹, เชซเช•เซเชค เชธเชฟเชธเซเชŸเชฎเชจเซ€ เชฌเซ€เชŸ เช•เซเชทเชฎเชคเชพเชจเซเช‚ เช…เชตเชฒเซ‹เช•เชจ เช•เชฐเซ€เชจเซ‡) เช…เชจเซ‡ เชธเชฐเซเชตเชฐ เชญเชพเช— เชฒเซ‹เช‚เชš เช•เชฐเซ‹:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เช…เชจเซ‡ เชชเช›เซ€ เช—เซเชฐเชพเชนเช• เชญเชพเช—:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชœเซ‡เชฎ เช†เชชเชฃเซ‡ เชœเซ‹เชˆ เชถเช•เซ€เช เช›เซ€เช, เช•เซเชฒเชพเชฏเชจเซเชŸ เชตเซ‡เชฌเชธเซ‹เช•เซ‡เชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ CloudFlare เชซเซเชฐเชจเซเชŸเชเชจเซเชก เชธเชฐเซเชตเชฐ เชฆเซเชตเชพเชฐเชพ เชธเชฐเซเชตเชฐ เชธเชพเชฅเซ‡ เชธเชซเชณเชคเชพเชชเซ‚เชฐเซเชตเช• เช•เชจเซ‡เช•เซเชŸ เชฅเชฏเซเช‚ เช›เซ‡. เชŸเชจเชฒ เชŸเชจเชฒเชจเซ€ เชœเซ‡เชฎ เชฌเชฐเชพเชฌเชฐ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เชจเชนเซ€เช‚ เชคเซ‡ เชคเชชเชพเชธเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเซ‡ เชธเชฐเซเชตเชฐ เชชเชฐ เช–เซ‹เชฒเซ€เชจเซ‡, เชธเซเชฅเชพเชจเชฟเช• เชธเซ‰เช•เซเชธ 5 เชฆเซเชตเชพเชฐเชพ เช•เชฐเซเชฒ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชนเชตเซ‡ เชšเชพเชฒเซ‹ เชœเซ‹เชˆเช เช•เซ‡ DPI เชธเช‚เชšเชพเชฐ เชšเซ‡เชจเชฒเชฎเชพเช‚ เชถเซเช‚ เชœเซเช เช›เซ‡:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชชเซเชฐเชฅเชฎ, เชŸเชจเชฒเชฐ, DoH เชฎเชฟเช•เซ‡เชจเชฟเชเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เช—เช‚เชคเชตเซเชฏ เชกเซ‹เชฎเซ‡เชจ (เชชเซ‡เช•เซ‡เชŸเซ‹ เชจเช‚เชฌเชฐ 1-19) เชฎเชพเชŸเซ‡ eSNI เช•เซ€ เชฎเชพเชŸเซ‡ Cloudflare DNS เชธเชฐเซเชตเชฐเชจเซ‹ เชธเช‚เชชเชฐเซเช• เช•เชฐเซ‡ เช›เซ‡, เช…เชจเซ‡ เชชเช›เซ€ เชซเซเชฐเชจเซเชŸเชเชจเซเชก เชธเชฐเซเชตเชฐเชจเซ‹ เชธเช‚เชชเชฐเซเช• เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชกเซ‹เชฎเซ‡เชจเชจเซ€ เชชเชพเช›เชณ เช›เซเชชเชพเชˆเชจเซ‡ TLS เช•เชจเซ‡เช•เซเชถเชจ เชธเซเชฅเชพเชชเชฟเชค เช•เชฐเซ‡ เช›เซ‡. www.google.com (เช† เชกเชฟเชซเซ‰เชฒเซเชŸ เชฎเซ‚เชฒเซเชฏ เช›เซ‡ เชœเซเชฏเชพเชฐเซ‡ เช•เซเชฒเชพเชฏเช‚เชŸ เชถเชฐเซ‚ เชฅเชพเชฏ เชคเซเชฏเชพเชฐเซ‡ เช•เซ‹เชˆ เชจเช•เชฒเซ€ เชกเซ‹เชฎเซ‡เชจเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชคเซ‹ เชจเชฅเซ€). เชคเชฎเชพเชฐเชพ เชจเช•เชฒเซ€ เชกเซ‹เชฎเซ‡เชจเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ -fronfDomain เชชเชฐเชฟเชฎเชพเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เช†เชตเชถเซเชฏเช• เช›เซ‡:

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชนเชตเซ‡ เชเช• เชฌเซ€เชœเซ€ เชตเชพเชค. เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡, CloudFalre เชเช•เชพเช‰เชจเซเชŸ เชธเซ‡เชŸเชฟเช‚เช—เซเชธ เชฒเชตเชšเซ€เช• SSL เชชเชฐ เชธเซ‡เชŸ เช•เชฐเซ‡เชฒ เช›เซ‡. เช†เชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เช•เซเชฒเชพเชˆเชจเซเชŸเซ‹ เชคเชฐเชซเชฅเซ€ เช•เซเชฒเชพเช‰เชกเชซเซเชฒเซ‡เชฐ เชซเซเชฐเชจเซเชŸเชเชจเซเชก เชธเชฐเซเชตเชฐเซเชธเชจเซ‡ https เชตเชฟเชจเช‚เชคเซ€เช“ เช…เชฎเชพเชฐเชพ เชธเชฐเซเชตเชฐ เชชเชฐ เช…เชจเชเชจเซเช•เซเชฐเชฟเชชเซเชŸเซ‡เชก (http) เชซเซ‹เชฐเชตเชฐเซเชก เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡. เชเชŸเชฒเชพ เชฎเชพเชŸเซ‡ เช…เชฎเซ‡ เชŸเชจเชฒเชจเซ‹ เชธเชฐเซเชตเชฐ เชญเชพเช— เชจเซ‹เชจ-ssl เชฎเซ‹เชกเชฎเชพเช‚ เชฒเซ‹เชจเซเชš เช•เชฐเซเชฏเซ‹ ( โ€‹โ€‹-listen ws:0.0.0.0), เช…เชจเซ‡ เชจเชนเซ€เช‚ ( -listen wss:0.0.0.0).

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชธเช‚เชชเซ‚เชฐเซเชฃ เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เชฎเซ‹เชก เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ เชชเชธเช‚เชฆ เช•เชฐเชตเซเช‚ เช†เชตเชถเซเชฏเช• เช›เซ‡ เชชเซ‚เชฐเซเชฃ, เช…เชฅเชตเชพ เชธเช‚เชชเซ‚เชฐเซเชฃ (เช•เชกเช•) เชœเซ‹ เชธเชฐเซเชตเชฐ เชชเชฐ เชตเชพเชธเซเชคเชตเชฟเช• เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เช›เซ‡. เชฎเซ‹เชกเชจเซ‡ เชธเซเชตเชฟเชš เช•เชฐเซเชฏเชพ เชชเช›เซ€, เช…เชฎเซ‡ https เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ CloudFlare เชฎเชพเช‚เชฅเซ€ เช•เชจเซ‡เช•เซเชถเชจ เชธเซเชตเซ€เช•เชพเชฐเซ€ เชถเช•เซ€เชถเซเช‚. เชŸเชจเชฒเชจเซ€ เชธเชฐเซเชตเชฐ เชฌเชพเชœเซ เชฎเชพเชŸเซ‡ เชธเซเชต-เชนเชธเซเชคเชพเช•เซเชทเชฐเชฟเชค เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชœเชจเชฐเซ‡เชŸ เช•เชฐเชตเชพเชจเซเช‚ เชญเซ‚เชฒเชถเซ‹ เชจเชนเซ€เช‚.

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชœเชฟเชœเซเชžเชพเชธเซ เชตเชพเชšเช• เชชเซ‚เช›เชถเซ‡: โ€œเช•เซเชฒเชพเชฏเชจเซเชŸ เชตเชฟเชถเซ‡ เชถเซเช‚? Windows"เช›เซ‡เชตเชŸเซ‡, เชŸเชจเชฒเชฐเชจเซ‹ เชฎเซเช–เซเชฏ เช‰เชชเชฏเซ‹เช— เช•เชฆเชพเชš เช•เซ‹เชฐเซเชชเซ‹เชฐเซ‡เชŸ เชฎเชถเซ€เชจเซ‹ เช…เชจเซ‡ เชธเชฐเซเชตเชฐเซเชธเชฅเซ€ เชฌเซ‡เช•-เชเชจเซเชก เช•เชจเซ‡เช•เซเชถเชจ เชธเซเชฅเชพเชชเชฟเชค เช•เชฐเชตเชพเชจเซ‹ เช›เซ‡, เช…เชจเซ‡ เชคเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชนเช‚เชฎเซ‡เชถเชพ เชตเชฟเชจเซเชกเซ‹เช เชนเซ‹เชฏ เช›เซ‡. เชนเซเช‚ เชตเชฟเชจเซเชกเซ‹เช เชฎเชพเชŸเซ‡ เชŸเชจเชฒเชฐ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเซ€ เชถเช•เซเช‚, เช–เชพเชธ เช•เชฐเซ€เชจเซ‡ เชšเซ‹เช•เซเช•เชธ TLS เชธเซเชŸเซ‡เช• เชธเชพเชฅเซ‡?" เชนเชตเซ‡ เช†เชชเชฃเซ‡ เชฌเซ€เชœเซ€ เชธเซเชตเชฟเชงเชพ เชฐเชœเซ‚ เช•เชฐเซ€เชถเซเช‚ เชœเซ‡ เชฆเชฐเซเชถเชพเชตเซ‡ เช›เซ‡ เช•เซ‡ เช—เซ‹เชฒเชพเช‚เช— เช•เซ‡เชŸเชฒเซเช‚ เช…เชจเซเช•เซ‚เชณ เช›เซ‡. เช†เชชเชฃเซ‡ เชซเช•เซเชค GOOS=windows เชชเซ‡เชฐเชพเชฎเซ€เชŸเชฐ เช‰เชฎเซ‡เชฐเซ€เชจเซ‡ เช•เชพเชฒเซ€เชฅเซ€ เชธเซ€เชงเชพ เชตเชฟเชจเซเชกเซ‹เช เชฎเชพเชŸเซ‡ เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเซ€เช เช›เซ€เช:

GOARCH=amd64 GOROOT="/opt/tls-tris/_dev/GOROOT/linux_amd64" GOOS=windows  go build -ldflags="-s -w"

เช…เชฅเชตเชพ 32-เชฌเซ€เชŸ เชธเช‚เชธเซเช•เชฐเชฃ:

GOARCH=386 GOROOT="/opt/tls-tris/_dev/GOROOT/linux_amd64" GOOS=windows  go build -ldflags="-s -w"

เชฌเชงเชพ! เช…เชจเซ‡ เชตเชงเซ เชฎเซเชถเซเช•เซ‡เชฒเซ€เช“เชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€. เชคเซ‡ เช–เชฐเซ‡เช–เชฐ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡!

TLS 1.3 เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—. เชญเชพเช— 2

เชเช•เซเชเซ‡เช•เซเชฏเซเชŸเซ‡เชฌเชฒ เชซเชพเช‡เชฒเชฎเชพเช‚เชฅเซ€ เชฌเชฟเชจเชœเชฐเซ‚เชฐเซ€ เช•เชšเชฐเซ‹ เชฆเซ‚เชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ โ€“w เช…เชจเซ‡ โ€“s เช•เชฎเซเชชเชพเช‡เชฒเชฐ เชซเซเชฒเซ‡เช—เซเชธเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เชœเซ‡ เชคเซ‡เชจเซ‡ เชฅเซ‹เชกเชพ เชฎเซ‡เช—เชพเชฌเชพเช‡เชŸเซเชธ เชจเชพเชจเซ€ เชฌเชจเชพเชตเซ‡ เช›เซ‡. เชตเชงเซเชฎเชพเช‚, เชคเซ‡ เชชเช›เซ€ เช•เชฆเชจเซ‡ เชตเชงเซ เช˜เชŸเชพเชกเชตเชพ เชฎเชพเชŸเซ‡ UPX เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชชเซ‡เช•เซ‡เชœ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡.

เชคเซ‡เชจเชพ เชฌเชฆเชฒเซ‡ เชเช• เชจเชฟเชทเซเช•เชฐเซเชท

เชฒเซ‡เช–เชฎเชพเช‚, เช—เซ‹เชฒเชพเช‚เช—เชฎเชพเช‚ เชฒเช–เซ‡เชฒเซ€ เชŸเชจเชฒเชจเชพ เช‰เชฆเชพเชนเชฐเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เช…เชฎเซ‡ TLS 1.3 เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒเชจเซ€ เชเช• เชฐเชธเชชเซเชฐเชฆ เชธเซเชตเชฟเชงเชพ เชชเชฐ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชพเชฏเซ‡เชฒเซ€ เชจเชตเซ€ เชกเซ‹เชฎเซ‡เชจ-เชซเซเชฐเชจเซเชŸเชฟเช‚เช— เชŸเซ‡เช•เซเชจเซ‹เชฒเซ‹เชœเซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชธเซเชชเชทเซเชŸเชชเชฃเซ‡ เชฆเชฐเซเชถเชพเชตเซเชฏเซ‹ เช›เซ‡. เชคเซ‡เชตเซ€ เชœ เชฐเซ€เชคเซ‡, เชคเชฎเซ‡ CloudFlare เชธเชฐเซเชตเชฐเซเชธ เชฆเซเชตเชพเชฐเชพ เช•เชพเชฐเซเชฏ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ Golang เชฎเชพเช‚ เชฒเช–เซ‡เชฒเชพ เชนเชพเชฒเชจเชพ เชธเชพเชงเชจเซ‹เชจเซ‡ เช…เชจเซเช•เซ‚เชฒเชฟเชค เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡ เชฎเชฐเซเชฒเชฟเชจ - เชชเซเชฐเช–เซเชฏเชพเชค C2, เช…เชฅเชตเชพ เช•เซ‹เชฌเชพเชฒเซเชŸเชธเซเชŸเซเชฐเชพเช‡เช• เชฌเซ€เช•เชจเชจเซ‡ เช‡เชเชธเชเชจเช†เช‡ เชกเซ‹เชฎเซ‡เชจ-เชซเซเชฐเชจเซเชŸเชฟเช‚เช—เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฆเชฌเชพเชฃ เช•เชฐเซ‹ เชœเซเชฏเชพเชฐเซ‡ เชŸเซ€เชฎเชธเชฐเซเชตเชฐ เชธเชพเชฅเซ‡ เช† เชฆเซเชตเชพเชฐเชพ เช•เชพเชฎ เช•เชฐเซ‹ เชฌเชพเชนเซเชฏ C2 เชšเซ‡เชจเชฒ, เช—เซ‹เชฒเชพเช‚เช—เชฎเชพเช‚ เช…เชฅเชตเชพ OpenSSL เชจเชพ เชชเซ‡เชš เช•เชฐเซ‡เชฒ เชธเช‚เชธเซเช•เชฐเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค C++ เชฎเชพเช‚ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชพเชฏเซ‡เชฒ เช›เซ‡, เชœเซ‡เชจเชพ เชตเชฟเชถเซ‡ เช†เชชเชฃเซ‡ เชฒเซ‡เช–เชจเชพ เช›เซ‡เชฒเซเชฒเชพ เชญเชพเช—เชฎเชพเช‚ เชตเชพเชค เช•เชฐเซ€ เชนเชคเซ€. เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เช•เชฒเซเชชเชจเชพเชจเซ€ เช•เซ‹เชˆ เชฎเชฐเซเชฏเชพเชฆเชพ เชจเชฅเซ€.

เชŸเชจเชฒเชฐ เช…เชจเซ‡ เช•เซเชฒเชพเช‰เชกเชซเซเชฒเซ‡เชฐ เชธเชพเชฅเซ‡เชจเซเช‚ เช‰เชฆเชพเชนเชฐเชฃ เชเช• เช–เซเชฏเชพเชฒเชจเชพ เชธเซเชตเชฐเซ‚เชชเชฎเชพเช‚ เชฐเชœเซ‚ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡ เช…เชจเซ‡ เช† เชชเซเชฐเช•เชพเชฐเชจเชพ เชกเซ‹เชฎเซ‡เชจ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—เชจเซ€ เชฒเชพเช‚เชฌเชพ เช—เชพเชณเชพเชจเซ€ เชธเช‚เชญเชพเชตเชจเชพเช“ เชตเชฟเชถเซ‡ เช•เชนเซ‡เชตเซเช‚ เชนเชœเซ เชชเชฃ เชฎเซเชถเซเช•เซ‡เชฒ เช›เซ‡. เช† เช•เซเชทเชฃเซ‡, เชฎเชพเชคเซเชฐ CloudFlare eSNI เชจเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡, เชธเชฟเชฆเซเชงเชพเช‚เชคเชฎเชพเช‚, เชคเซ‡เชฎเชจเซ‡ เช† เชชเซเชฐเช•เชพเชฐเชจเชพ เชซเซเชฐเชจเซเชŸเชฟเช‚เช—เชจเซ‡ เช…เช•เซเชทเชฎ เช•เชฐเชตเชพเชฅเซ€ เช…เชจเซ‡, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชœเซ‹ SNI เช…เชจเซ‡ eSNI เชฎเซ‡เชณ เช–เชพเชคเชพ เชจ เชนเซ‹เชฏ เชคเซ‹ tls เช•เชจเซ‡เช•เซเชถเชจเซเชธ เชคเซ‹เชกเชตเชพเชฅเซ€ เชคเซ‡เชฎเชจเซ‡ เช•เช‚เชˆเชชเชฃ เช…เชŸเช•เชพเชตเชคเซเช‚ เชจเชฅเซ€. เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เชญเชตเชฟเชทเซเชฏ เช•เชนเซ‡เชถเซ‡. เชชเชฐเช‚เชคเซ เชนเชฎเชฃเชพเช‚ เชฎเชพเชŸเซ‡, "kremlin.ru เชจเชพ เช•เชตเชฐ" เชนเซ‡เช เชณ เช•เชพเชฎ เช•เชฐเชตเชพเชจเซ€ เชธเช‚เชญเชพเชตเชจเชพ เช–เซ‚เชฌ เช†เช•เชฐเซเชทเช• เชฒเชพเช—เซ‡ เช›เซ‡. เชคเซ‡ เชจเชฅเซ€?

เช…เชชเชกเซ‡เชŸ เช•เชฐเซ‡เชฒ เชŸเชจเชฒเชฐ เช•เซ‹เชก, เชคเซ‡เชฎเชœ เชธเช‚เช•เชฒเชฟเชค เชเช•เซเชเซ‡เช•เซเชฏเซเชŸเซ‡เชฌเชฒ เชเช•เซเชเซ‡เช•เซเชฏเซเชŸเซ‡เชฌเชฒ เชซเชพเช‡เชฒเซ‹, เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเซ€ เช…เชฒเช— เชถเชพเช–เชพเชฎเชพเช‚ เชธเซเชฅเชฟเชค เช›เซ‡. GitHub. GitHub เชชเชฐ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เชชเซƒเชทเซเช  เชชเชฐ เชคเชฎเชพเชฎ เชธเช‚เชญเชตเชฟเชค เชŸเชจเชฒเชฐ เชธเชฎเชธเซเชฏเชพเช“ เชตเชฟเชถเซ‡ เชเช• เชฎเซเชฆเซเชฆเซ‹ เชฒเช–เชตเชพเชจเซเช‚ เชตเชงเซ เชธเชพเชฐเซเช‚ เช›เซ‡.

เชธเซ‹เชฐเซเชธ: www.habr.com

DDoS เชธเซเชฐเช•เซเชทเชพ, VPS VDS เชธเชฐเซเชตเชฐ เชงเชฐเชพเชตเชคเซ€ เชธเชพเช‡เชŸเซเชธ เชฎเชพเชŸเซ‡ เชตเชฟเชถเซเชตเชธเชจเซ€เชฏ เชนเซ‹เชธเซเชŸเชฟเช‚เช— เช–เชฐเซ€เชฆเซ‹ ๐Ÿ”ฅ DDoS เชธเซเชฐเช•เซเชทเชพ, VPS VDS เชธเชฐเซเชตเชฐเซเชธ เชธเชพเชฅเซ‡ เชตเชฟเชถเซเชตเชธเชจเซ€เชฏ เชตเซ‡เชฌเชธเชพเช‡เชŸ เชนเซ‹เชธเซเชŸเชฟเช‚เช— เช–เชฐเซ€เชฆเซ‹ | ProHoster