De boarne is publisearre, de lisinsje is skjin, en de ferbining kin noch hieltyd net fan begjin oant ein ferifiearre wurde. Dat gat is gewoan, en it is gjin skandaal. It publisearjen fan koade makket ien komponint ynspektearber foar minsken dy't net útnoege waarden, en dat is in echte en ûngewoane eigenskip. Dêr folget net út dat it binêre bestân dat jo ynstallearre hawwe út dy koade komt, of dat wat de oanbieder oan de oare kant draait hielendal neisjoen is.

Skied it komponint fan it produkt

Fjouwer dingen kinne it iepenboarne-label drage, en se binne selden allegear iepen. De kliïntapplikaasje is dejinge dy't minsken bedoele. De protokolymplemintaasje derûnder is in oar artefakt, soms in bibleteek en soms koade yn de beam. De serversoftware is de tredde, en de eigen ynfrastruktuer fan de oanbieder, it akkountportaal en de stipe-ark binne de fjirde. Elk kin ûnôfhinklik iepen of sletten wêze.

Utspraken lykas "ús app is iepenboarne" beskriuwe dêrom it earste item en litte de rest unbehannele, wat net ûnearlik is mar earder in kategoryglid. De nuttige fraach is hokker bewarplak, by hokker tag, oerienkomt mei it komponint dêr't jo op fertrouwe.

Dat ûnderskie ferklearret ek wêrom't twa produkten mei identike iepen kliïnten hiel ferskillende garânsjes biede kinne. De kliïnt is it diel dat jo kontrolearje kinne; it gedrach fan de operator is it diel dat jo op oare manieren beoardielje moatte.

Koppelje de ynstallearre build oan de publisearre tag

In bewarplak is in registraasje fan bedoeling; it binêre bestân op jo skiif is wat draait. It sluten fan dat gat is in meganyske oefening, en it begjint mei it krekt fêststellen wat ynstallearre is, ynstee fan wat de downloadside advertearre.

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

Pakketmetadata fertelle jo de ferzje en de oarsprong, wat it triviale gefal fan in ferâldere of ferfongen pakket útslút. Se fertelle jo net hoe't dat pakket kompilearre is, en krekt dy fraach besteane reprodusearbere builds foar. Reprodusearbere builds litte in ûnôfhinklike partij ta om fan deselde boarne wer te bouwen en de útfier byte foar byte te fergelykjen, sadat in ôfwiking bewiis wurdt ynstee fan fertinking.

Sels in perfekte oerienkomst bewiist minder as minsken hoopje. It lit sjen dat it artefakt oerienkomt mei de boarne en it buildresep, net dat de boarne frij fan flaters is, en net dat de brûkte arkketen betrouber wie. Beide bliuwe de muoite wurdich om te witten, mar it binne ferskillende bewearings.

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

Wêr't in symptoom meastentiids begjint

De klacht dy't dit lêzen triggeret is selden "de koade is sletten". It is meastentiids in konkrete observaasje: in kliïnt dy't earne ûnferwachts hinne skillet, in ferzje dy't ôfwykt fan de útjefte-notysjes, of in stipeproses dat mear freget as de tunnel nedich wêze soe. Elk fan dy punten wiist op in oar komponint.

Ûnferwachts netwurkferkear fan de kliïnt is in fraach oer de kliïntboarne, en it is te beantwurdzjen troch it koadepaat te lêzen dat de ferbining iepenet. In ferzje-ôfwiking is in fraach oer ferpakking. In stipeproses dat identiteitsdokuminten freget is in fraach oer it akkountsysteem, en gjin inkelde kliïntaudit sil dat oplosse.

It komponint beneame makket fan in ûndúdlik wantrouwen in konkrete kontrôle. In konkrete kontrôle kin beantwurde, bestriden of sletten wurde. It alternatyf is in permanint fermoeden sûnder folgjende stap.

Wat de resinsje net berikke kin, en wat jo ynstee dwaan moatte

Bewarring op de servers fan de oanbieder is bûten it berik fan de kliïnt. Dat jildt ek foar it gedrach fan in fakturaasjeportaal, in leveransier foar fraude-kontrôle of in stipetafel dy't taheakken bewarret. In kliïntresinsje dy't útlutsen wurdt ta "we hawwe de tsjinst audite" docht in bewearing dy't it bewiis net stypet.

Lês wat de operator publisearret oer bewarring en fersiken, notearje de datum, en behannelje it as in ferklearring fan in belanghawwende partij ynstee fan in mjitting. Dat is in swakkere foarm fan bewiis, en eksplisyt wêze oer it ferskil is nuttiger as it opwurdearje yn it neifertellen.

Brûk dan wat jo hawwe as ien ynput ûnder ferskate: de identiteit fan de ynstallearre útjefte, oft de software ûnderhâlden wurdt, hoe't de kliïnt konfigurearre is, en wat de operator oer syn eigen systemen seit. Iepen koade fersterket dy beoardieling op ien punt. It ferfangt de rest net.

In auditbewearing moat altyd syn komponinten en ferzjes neame. As in rapport net sizze kin hokker bewarplak en hokker build it ûndersocht hat, beskriuwt it in bedoeling ynstee fan in produkt.

Relatearre artikelen