Ugawaji wa ufunguo wa TLS dhidi ya cheti cha mteja: kipi huingia?
Tenganisha makubaliano ya ufunguo na uthibitishaji wa mteja na utambulisho wa programu, na usome jumbe za kupeana mikono zinazoonyesha kipi muunganisho ulitumia kwa kweli.
Kubeba thamani ya umma ya kubadilishana ufunguo katika kupeana mikono si tukio lile lile la mteja kuingia. Kimoja huweka hali ya kriptografia kwa muunganisho; kingine husema mteja ni nani, na hutokea tu wakati seva inaiomba na ubadilishanaji unaiunga mkono. Kuichukua ya kwanza kama ya pili hupelekea hitimisho zisizo sahihi kuhusu kile VPN inaficha na kile isichokificha. Soma jumbe, kisha amua ni sifa ipi kati ya nne uliyoiona kwa kweli.
Vitu viwili vinavyofanana katika rekodi
Mteja wa TLS 1.3 anaweza kuchangia nyenzo za kubadilishana ufunguo katika safari yake ya kwanza bila kuwasilisha cheti chochote. Mchango huo ni wa umma kwa muundo, kwa sababu seva inauhitaji ili kupata siri inayoshirikiwa. Cheti cha mteja ni ujumbe mwingine, na hutumwa tu baada ya seva kuomba kimoja. Hubeba utambulisho ambao seva huthibitisha baadaye, na uthibitishaji wa pande zote ni uamuzi wa seva, si sifa inayodokezwa na seti ya usimbaji fiche. Utambulisho wa programu ni jambo la tatu kabisa: fomu ya kuingia, tokeni ya kubeba, kuki. Hakuna kati ya hivyo kinachoonekana katika kupeana mikono, na vyote hivyo huishi kupita mabadiliko ya njia ya mtandao.
| Object in play | What it establishes |
|---|---|
| Key-exchange share | Cryptographic state for this connection |
| Server certificate | Which server the client reached |
| Client certificate | Client authentication, when requested |
| Application session | Account identity inside the application |
Safu nne ni huru. Muunganisho unaweza kuwa na safu ya kwanza na ya pili, kuruka ya tatu, na bado kubeba ya nne katika kichwa cha kuki.
Amua kupeana mikono kunakoweza kuthibitisha nini
Kutokana na kupeana mikono pekee, mwangalizi hujifunza toleo lililojadiliwa, seti ya usimbaji fiche, cheti cha seva na thamani za umma za kubadilishana ufunguo. Hiyo inatosha kuchukua alama ya kidole ya utekelezaji wa mteja na kuona seva ipi iliwasiliana nayo. Kinachokosa ni hali ya faragha inayohitajika kufungua muunganisho, ambayo usiri wake unakaa juu ya ubadilishanaji wa muda mfupi na si sehemu ya umma. Pia hakitoi utambulisho wa akaunti, ambao haukuwa kamwe katika kupeana mikono tangu mwanzo.
Kwa hiyo hitimisho la uaminifu ni embamba: hakuna cheti cha mteja kilichowasilishwa katika ubadilishanaji huu. Siyo kwamba mteja hakutuma kitu chochote kinachoweza kuunganishwa, na kwa hakika si kwamba kikao hakikubeba kitambulisho chochote.
Soma jumbe, si jina la usimbaji fiche
Uliza seva inaomba nini, badala ya kukisia kutokana na seti ya usimbaji fiche. Kupeana mikono kwa TLS 1.3 kunakojumuisha ombi la cheti kunaonekana katika nakala, na kutokuwepo kwake kunaonekana vilevile.
openssl s_client -connect app.example.net:443 -tls1_3 -msg < /dev/null 2>&1 | grep -i -E 'key_share|CertificateRequest'
Kisha rudia ukiwa na cheti cha mteja kilichowekwa, na linganisha. Mzunguko wa pili unapaswa kuonyesha cheti kikihamwa na kikikubaliwa; wa kwanza haupaswi kuonyesha chochote, na hiyo ndiyo tofauti halisi ambayo mabishano yanahusu.
openssl s_client -connect app.example.net:443 -tls1_3 -cert client.pem -key client.key -quiet
Ikiwa unahitaji tu kisa cha kawaida cha kuvinjari, matokeo ya kina ya mteja yanatosha kuona toleo la itifaki, matokeo ya uthibitishaji na kama cheti cha mteja kilitolewa. Seva isiyotuma ombi la cheti kamwe haiwezi kuwa ilipokea kimoja.
Mahali ambapo kuanza upya kunabadilisha jibu
Kuanza upya katika TLS 1.3 hutumia tiketi zilizounganishwa na hali ya siri, kwa hiyo muunganisho wa baadaye unaweza kukamilika bila kubadilishana cheti kamili. Hilo hupunguza kile mwangalizi anachokiona na kubadilisha kile nakala inathibitisha. Haliundi utambulisho mahali ambapo hapakuwa nao. Kikao kilichoanzishwa upya bado ni cha kikao kile kile cha programu, na kuki au tokeni yoyote katika kikao hicho inabaki kuwa kitambulisho cha muhimu.
Ndiyo sababu mapitio ya faragha yanayosimama kwenye "hakuna cheti cha mteja" hukosa sehemu ya kuvutia. Swali la kuuliza ni upande upi unashikilia kitambulisho thabiti, si ujumbe upi ulikosekana katika kupeana mikono kumoja.
Andika sifa nne, si hukumu moja
Andika makubaliano ya ufunguo, uthibitishaji wa seva, uthibitishaji wa mteja na utambulisho wa programu kama safu nne tofauti, pamoja na ushahidi kwa kila moja. Orodha hiyo hudumu mabadiliko ya toleo la itifaki, na hufanya hoja kuhusu faragha iweze kukaguliwa na mtu mwingine. Kisha ongeza kile njia ya mtandao inachochangia. VPN hubadilisha anwani chanzi ambayo huduma inaiona; hai ondoi kuingia, kuki au alama ya kidole ya kifaa ambayo programu tayari inayo.
Andika pamoja toleo lililojadiliwa la muunganisho na matokeo ya ombi la cheti, kwa sababu jozi hiyo ndiyo anayohitaji mkaguzi ili kuzalisha tena hitimisho lako bila rekodi yake mwenyewe.