Mae pobl yn disgrifio VPN fel un „sy'n defnyddio amgryptio allwedd gyhoeddus“ ac yna'n dychmygu bod pob pecyn yn cael ei gloi â thystysgrif y gweinydd. Mae'r darlun hwnnw'n anghywir mewn ffordd sy'n bwysig pan fyddwch yn darllen ffeil ffurfweddu neu'n cipio pecynnau. Mae hanner allwedd gyhoeddus VPN yn ymwneud â phrofi pwy yw'r cymar a chytuno ar ddeunydd cyfrin; yr hanner cymesurol yw'r hyn sy'n amddiffyn y traffig mewn gwirionedd, pecyn ar ôl pecyn, am oes y sesiwn.

Mae gan y ddau hanner oes, dulliau methu a phethau gwahanol y gallwch eu cyhoeddi'n ddiogel. Unwaith y byddwch yn eu gwahanu, mae cwestiynau fel „a yw RSA 2048 yn wannach nag AES-128“ yn stopio drysu, oherwydd nid oedden nhw erioed yn gymharadwy.

Tair gweithred sy'n cael eu cymysgu

Mae cryptograffeg allwedd gyhoeddus yn ymbarél dros o leiaf dair gweithred wahanol. Mae llofnod yn profi bod deiliad allwedd breifat wedi cymeradwyo neges benodol. Mae cytundeb allwedd yn gadael dau gymar i ddeillio cyfrinach a rennir o werthoedd maen nhw'n eu cyfnewid yn gyhoeddus. Mae amgryptio allwedd gyhoeddus yn cuddio data o dan allwedd gyhoeddus rhywun fel mai dim ond yr allwedd breifat all ei agor.

Mae ysgydwadau llaw VPN yn defnyddio'r ddau gyntaf yn bennaf. Nid yw tystysgrif yn allwedd amgryptio; mae'n ddatganiad llofnodedig sy'n clymu enw ag allwedd gyhoeddus, sy'n gadael i'r ochr arall benderfynu a ddylid ymddiried yn yr allwedd a gafwyd ganddi'n union. Er enghraifft, mae sefydlu allweddi TLS 1.3 yn seiliedig ar gytundeb allwedd (EC)DHE ynghyd â llofnodion tystysgrif, nid ar amgryptio'r sesiwn ag allwedd gyhoeddus y gweinydd.

Beth mae'r ysgydwad llaw yn ei gynhyrchu mewn gwirionedd

Mewn ysgydwad llaw modern, mae pob ochr yn cynhyrchu pâr allwedd byrhoedlog, yn cyfnewid y haneri cyhoeddus, ac yn cyfrifo cyfrinach a rennir na fydd byth yn croesi'r wifren. Mae'r gyfrinach honno wedyn yn mynd trwy swyddogaeth deillio allweddi i gynhyrchu allweddi ar wahân ar gyfer pob cyfeiriad, ynghyd â'r nonces a'r deunydd IV y mae'r haen record ei angen. Mae WireGuard yn gwneud hyn â'i adeiladwaith sy'n seiliedig ar Noise; mae TLS 1.3 yn gwneud hyn ag HKDF dros drawsgrifiad yr ysgydwad llaw.

Mae'r cymhwyster tymor hir — tystysgrif ac allwedd breifat, neu allwedd WireGuard statig — yn dilysu'r cyfnewid hwnnw. Mae'n llofnodi neu'n cymysgu i'r trawsgrifiad fel na all dieithryn gwblhau'r ysgydwad llaw yn lle'r cymar. Ar ôl hynny, nid yw'r cymhwyster yn gwneud gwaith fesul pecyn. Pe bai'n gwneud, byddai angen gweithred allwedd breifat ar bob pecyn, a byddai twnnel prysur yn cael ei gyfyngu gan y weithred arafaf yn y pentwr.

Mae dau effaith ochr yn dilyn. Yn gyntaf, mae'r allweddi sesiwn yn ffres bob tro, a dyna pam na all ymosodwr sy'n dwyn yr allwedd tymor hir yn ddiweddarach ddadgryptio sesiynau a recordiwyd yn gynt, ar yr amod bod y cytundeb wedi bod yn fyrhoedlog. Yn ail, mae allwedd sesiwn wedi'i gollwng yn peryglu un sesiwn, nid yr hunaniaeth.

Pam mae data swmp yn defnyddio allweddi cymesurol

Mae seiffrau cymesurol yn ymdopi'n dda â chyfaint: mae AES-GCM neu ChaCha20-Poly1305 yn prosesu pob pecyn ag allwedd sydd eisoes mewn cof, yn dilysu'r pennawd, ac yn cynyddu cownter. Mae'r ochr sy'n derbyn yn gwirio'r nonce a'r tag dilysu, ac yn gollwng unrhyw beth sy'n methu neu'n ailchwarae. Mae hynny'n ddigon rhad i redeg ar gyfradd llinell ar galedwedd cyffredin, ac mae'r un adeiladwaith yn rhoi cyfrinachedd a chywirdeb mewn un pas.

Yr adeiladwaith hefyd yw lle mae'r rhan fwyaf o fygiau gweithredu yn byw. Mae nonce ailadroddus yn GCM yn torri cyfrinachedd a dilysrwydd ar unwaith, felly mae protocolau'n deillio allweddi fesul cyfeiriad ac yn cynnal cownter neu epoc penodol. Os ydych yn darllen cipiad pecynnau ac mae hyd y testun sifr yn cyfateb i'r testun clir ynghyd â gorbenion sefydlog, yr haen gymesurol sy'n gweithio, nid gweithred allwedd gyhoeddus sy'n digwydd fesul pecyn.

Oes, ail-allweddio a chyfrinachedd ymlaen

Mae allweddi sesiwn i fod i ddod i ben. Mae TLS 1.3 yn caniatáu neges KeyUpdate i dreiglo'r allweddi traffig; mae WireGuard yn ail-allweddio sesiwn ar ôl amser neu gyfrif negeseuon wedi'i ffurfweddu ac yn cadw'r hen un yn fyr ar gyfer pecynnau ar y ffordd. Mae OpenVPN yn ailnegodi allweddi ei sianel ddata ar amserlen, gyda reneg-sec yn rheoli'r cyfwng.

Nid yw unrhyw un o'r troelli hynny yr un peth ag adnewyddu tystysgrif. Gall tystysgrif fod yn ddilys am flwyddyn tra bo'r allweddi sesiwn yn newid bob ychydig funudau, a gellir disodli tystysgrif heb gyffwrdd ag allweddi'r twnnel sy'n rhedeg. Pan fyddwch yn cynllunio dyddiad dod i ben, gofynnwch pa wrthrych rydych yn ei droelli; mae'r ateb yn penderfynu a fydd cleientiaid yn ailgysylltu neu'n syml yn ail-allweddio.

Darllen ffurfweddiadau a diagnosteg heb gymysgu gwrthrychau

Yn ymarferol, rydych yn dewis protocol cyflawn a'i gyntefigion a gefnogir, nid yn cydosod eich un eich hun. Mae allwedd --tls-crypt OpenVPN yn amddiffyn y sianel reoli; mae'r sianel ddata yn defnyddio seiffrau cymesurol wedi'u negodi. Mae cofnodion PrivateKey a PublicKey WireGuard yn ddeunydd hunaniaeth, tra bo ei allweddi cludo yn cael eu deillio'n fewnol. Mae darllen y meysydd hynny fel yr un math o gyfrinach yn arwain at gamgymeriadau fel gludo allwedd gyhoeddus lle mae un breifat yn perthyn.

Cadwch ddeunydd cyhoeddus ar wahân i breifat. Mae tystysgrif, allwedd gyhoeddus WireGuard ac ôl bys yn ddiogel i'w rhannu mewn tocyn. Nid yw allwedd breifat, allwedd a rennir ymlaen llaw ac allwedd sesiwn a allforiwyd. Pan fyddwch yn cymharu cryfderau, cymharwch o fewn math: mae dynodwr cromlin eliptig, maint modwlws RSA a maint allwedd AES yn mesur pethau gwahanol o dan dybiaethau gwahanol. Mae manyleb TLS 1.3 yn gyfeirnod defnyddiol ar gyfer sut mae'r ddwy haen yn ffitio gyda'i gilydd, hyd yn oed pan nad yw eich twnnel yn TLS.

Erthyglau cysylltiedig