Protokola dokumento estas kontrakto inter realigoj, kaj zorga legado diras al vi, kion du kongruaj kunuloj interŝanĝos kaj kiujn ecojn la dizajnistoj celis garanti. Ĝi ne diras, kiu binara dosiero ruliĝas sur la servilo, al kiu vi konektiĝas, kiel tiu servilo estis agordita, nek kio poste okazas al via konta registro. Tiuj estas tri malsamaj specoj de pruvo, kaj trakti la specifon kiel ĉiujn tri estas la maniero, kiel protokola nomo komencas fari laboron, kiun ĝi ne povas fari. Teni la tri apartaj estas la tuta ekzerco.

La dokumento estas la komenco de argumento, ne ĝia konkludo.

Kion la dokumento efektive specifas

Por WireGuard, la protokola priskribo difinas Noise IK-manpremon, fiksan aron da primitivoj, mesaĝajn aranĝojn kaj la transportan kadrigon, kiu poste portas pakaĵojn. Por IKEv2 la komparebla artefakto estas RFC 7296, kiu specifas interŝanĝojn, utilajn ŝarĝojn kaj la intertraktadon de proponoj. En ambaŭ kazoj la amplekso estas preciza: la mesaĝoj, la stata maŝino kaj la supozoj, sub kiuj validas la sekurecaj celoj.

Laŭvolaj reĝimoj komplikigas la legadon. Eco, kiu validas por unu manpremo, eble ne aplikiĝas al deplojo kun alia aŭtentiga aranĝo aŭ rezerva agordo.

Kie la garantioj ĉesas

Formala analizo respondas demandon pri modelo. La validiga laboro de WireGuard uzas simbola modelo en la pruvilo Tamarin, kiu povas montri, ke la dizajno rezistas al certaj atakoj laŭ siaj supozoj; ĝi ne montras, ke liverita realigo en uzantspaco ne havas memorsekurecan cimon. En tiu breĉo inter modelo kaj maŝino vivas realaj okazaĵoj. Legi pruvon kiel realigan atestilon estas kategoria eraro.

Antaŭena privateco ilustras la saman limon. La eco dependas de tio, ke ŝlosiloj estas detruitaj tiel, kiel la protokolo intencas, kaj tio estas eco de la realigo kaj ĝia medio, ne de la mesaĝformato. Dizajno, kiu preskribas forigon, ne povas devigi ĝin sur platformo, kiu paĝas memoron al disko.

Tavolaj dependecoj plilarĝigas la breĉon plu: la TLS-biblioteko malantaŭ TLS-bazita tunelo, la kerninterfaco, kiun uzas uzantspaca tunelo, kaj la hazarda nombrogenerilo ĉiuj staras ekster la protokola teksto.

Sekvu la bajtojn en la konstruaĵon

Movu de dokumento al artefaktoj identigante versiojn, poste komparante ilin kun tio, kio efektive servas trafikon. Produkto, kiu nomas protokolon, povas aldoni provizajn, telemetriajn kaj administrajn komponantojn, kiujn la specifo neniam priskribas.

openvpn --version | head -3
wg --version
dpkg -l | grep -E 'openvpn|wireguard|libssl'
ss -lunp | grep -E '1194|51820'
sha256sum ./wireguard-tools_1.0.20210914_amd64.deb

Riprodukteblaj konstruaĵoj kaj publikigitaj kontrolsumoj ebligas ligi fontarbaron al distribuita binara dosiero. Sen tiu ligo, publikigita fonto pruvas nur, ke inspektado eblas, ne ke la kuranta dosiero kongruas kun ĝi.

Agordo apartenas al la sama paŝo. Ĉifraj aroj, permesitaj kunuloj kaj enkursigaj agordoj estas deploaj elektoj, kaj kongrua konstruaĵo agordita senzorge ankoraŭ produktas malfortan tunelon.

Tenu operaciajn praktikojn aparte

Kontaj registroj, pagdatumoj kaj subtenaj sendaĵoj estas decidoj de la funkciiganto, kiujn neniu protokola teksto limigas. Revizia raporto kovras nomitajn komponantojn laŭ deklarita amplekso, kaj privateca politiko priskribas intencojn kaj praktikojn; nek unu anstataŭas la alian, kaj nek unu estas kriptografia aserto.

La preciza konkludo estas akumula: la specifo klarigas la dizajnon, la konstruaĵo kaj agordo klarigas la tunelon, kaj la dokumentitaj praktikoj de la funkciiganto klarigas ĉion, kion la tunelo neniam vidas. Diru, kion el tio vi kontrolis, kaj la aserto restas vera.

Rilataj artikoloj