Изворниот код е објавен, лиценцата е чиста, а врската сепак не може да се провери од крај до крај. Таа празнина е вообичаена и не е скандал. Објавувањето код прави една компонента проверлива од луѓе што не биле поканети, и тоа е вистинско и необично својство. Од тоа не следува дека бинарната датотека што сте ја инсталирале доаѓа од тој код, ниту дека нешто што давателот го води од другата страна воопшто е прегледано.

Одделете ја компонентата од производот

Четири работи можат да ја носат ознаката отворен код и ретко сите се отворени. Клиентската апликација е она што луѓето го мислат. Имплементацијата на протоколот под неа е друг артефакт, понекогаш библиотека, а понекогаш код во дрвото. Серверскиот софтвер е трет, а сопствената инфраструктура на давателот, порталот за сметки и алатките за поддршка се четврти. Секој од нив може да биде отворен или затворен независно.

Затоа тврдењата како "нашата апликација е со отворен код" ја опишуваат првата ставка и го оставаат остатокот без одговор, што не е нечесност, туку повеќе лизгање на категорија. Корисното прашање е кое складиште, на која ознака, одговара на компонентата на која се потпирате.

Оваа разлика објаснува и зошто два производи со идентични отворени клиенти можат да понудат многу различни гаранции. Клиентот е делот што можете да го проверите; однесувањето на операторот е делот што треба да го оцените на други начини.

Совпаѓајте ја инсталираната градба со објавената ознака

Складиштето е запис на намера; бинарната датотека на вашиот диск е она што се извршува. Затворањето на таа празнина е механичка вежба и започнува со точно утврдување што е инсталирано, наместо што рекламирала страницата за преземање.

ComponentWhat inspection can showWhat it leaves untouched
Client sourceHow profiles, packets and optional telemetry are handledWhether the shipped binary matches that source
Build outputWhether a declared build reproduces a matching artefactWhether the source is correct or the toolchain is clean
Server softwareWhat the implementation is capable of loggingWhat the operator actually configures and retains
Account and support systemsAlmost nothing, unless they are separately publishedEverything about how those systems treat your data

Метаподатоците на пакетот ви ја кажуваат верзијата и потеклото, што го исклучува едноставниот случај на застарен или заменет пакет. Тие не ви кажуваат како е компајлиран пакетот, а токму на тоа прашање постојат репродуцирачки градби. Репродуцирачки градби им овозможуваат на независна страна да изгради повторно од истиот извор и да го спореди излезот бајт по бајт, така што несовпаѓањето станува доказ, а не сомнеж.

Дури и совршено совпаѓање докажува помалку отколку што луѓето се надеваат. Тоа покажува дека артефактот одговара на изворот и на рецептот за градба, но не дека изворот е без недостатоци и не дека користениот синџир алатки бил доверлив. Двете вреди да се знаат, но тоа се различни тврдења.

dpkg -S /usr/bin/wg
apt-cache policy wireguard-tools
sha256sum /usr/bin/wg

Каде обично започнува симптомот

Жалбата што води до ова читање ретко е "кодот е затворен". Обично е конкретно набљудување: клиент што се јавува некаде неочекувано, верзија што се разликува од белешките за изданието, или процес за поддршка што бара повеќе отколку што на тунелот му треба. Секоја од овие точки укажува на друга компонента.

Неочекуваниот мрежен сообраќај од клиентот е прашање на изворниот код на клиентот и може да се одговори со читање на кодната патека што ја отвора врската. Несовпаѓањето на верзијата е прашање на пакување. Процес за поддршка што бара документи за идентитет е прашање на системот за сметки и никаков клиентски одит нема да го реши.

Именувањето на компонентата ја претвора нејасната недоверба во конкретна проверка. На конкретна проверка може да се одговори, да се расправа или да се затвори. Алтернативата е постојан сомнеж без следен чекор.

Што не може да достигне прегледот и што да правите наместо тоа

Зачувувањето на серверите на давателот е надвор од дофатот на клиентот. Исто така и однесувањето на портал за наплата, на добавувач за проверка на измами или на служба за поддршка што чува прилози. Преглед на клиентот што се протега до "извршивме одит на услугата" дава тврдење што доказите не го поддржуваат.

Прочитајте што објавува операторот за зачувување и барања, забележете го датумот и третирајте го како изјава на заинтересирана страна, а не како мерење. Тоа е послаба форма на доказ и јасното именување на разликата е покорисно отколку подигање на нејзината вредност при прераскажувањето.

Потоа користете го тоа што го имате како еден од неколку влезови: идентитетот на инсталираното издание, дали софтверот се одржува, како е конфигуриран клиентот и што вели операторот за своите системи. Отворениот код го зајакнува тоа оценување во една точка. Тој не го заменува остатокот.

Тврдењето за одит треба секогаш да ги именува своите компоненти и верзии. Ако извештајот не може да каже кое складиште и која градба ја испитал, тој опишува намера, а не производ.

Поврзани статии