Hogyan verifikálnád?

 ( wachag | 2017. július 6., csütörtök - 8:07 )

A feladat elméleti, de érdekel. Szerintem nem megoldható. Kíváncsi vagyok, ti hogyan látjátok. Valószínű, hogy az egyik blogpost is ráhangolta erre a gondolkodásomat, de más úton merült fel bennem a kérdés:

Van egy szoftver, ami nyílt forrású, akit érdekel, az letöltheti, átnézheti.

Te binárisokat is közreadsz az egyszerűség kedvéért.

Hogyan tudja a user verifikálni, hogy az általad felrakott bináris a publikus forrásokból lett buildelve?

(Ez még relatíve könnyen megoldható)

Mi a helyzet, ha ez egy online szolgáltatás? (az egyik blogban volt erre a szavazós dolog, nekem az alapgondolatom, ami felmerült, egy online augmented reality játék, ahol szeretnéd bizonyítani, hogy nem trackeled a usert)

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

sub

Hogyan tudja a user verifikálni, hogy az általad felrakott bináris a publikus forrásokból lett buildelve?

A kulcsszó:
Reproducible Builds

Mi a helyzet, ha ez egy online szolgáltatás?
Ha nem Te szolgáltatod, akkor sehogy. El kell hinned amit a szolgáltató mond/igér.

--
zrubi.hu

> Reproducible Builds
Ezért mondtam, hogy ez még megoldható :-)

első felére:
Ahol a forrás elérhető, ott nem lehet egyúttal a bináris is?

második kérdésre: (online szolgáltatás)
Nem láttam még erre megoldást, maga az online szolgáltatás háttere absztrakt a felhasználó számára, hiába adod közre a kódot, kívülről nem lehet verifikálni (szép is lenne, ha hozzáférhető lenne pl. böngészőből egy webshop kódja). Viszont mostanában felületesen olvasva többször belefutottam blockchain alapú rendszerekbe, pl. ebay alternatíva, fb alternatíva létezik (nem tudom milyen fejledtséggel) ilyen formában, decentralizált formában, ilyenekben nem tudom a verziókezelés, egymás verifikálása hogy történik. De tippre ott is ha már az adat az én gépemen van, csinálok vele amit akarok, és ebből elmondok neked amit akarok.

szociálisabb megoldás:
Hitelesítő szervezet? Ha egy jogvédő csoport auditálja? :) Persze naponta, minden commit-ot. :)

> Ahol a forrás elérhető, ott nem lehet egyúttal a bináris is?

Ez önmagában még nem bizonyíték.

Miért adnád közre a forrást, és raknál mellé egy módosított binárist, ugyan ott, egyszerűen ellenőrizhető formában?

Mert mire valaki észrevenné, hogy rosszalkodik, addigra már rég a Kanári-szigeteken van a fejlesztő, az aljas módon kicsalt űrkreditekből vett villájában?

Azért egy automatikus build rendszert x felhasználó felett sokan beállítanának. Elvi szinten megoldható, amit írsz, de az azért nem egy bonyolult megoldás, hogy egy forrásból build-elek, és összehasonlítom. Jelenleg is egy rakás project van, ami ilyen formában adja közre a binárisokat.

Ennél sokkal egyszerűbben is el lehet jutni a Kanári-szigetekre, főleg úgy, hogy nem rakod oda a töltött pisztolyt az asztalra.

Ha egy jogvédő csoport auditálja?

Akkor meg bennük kell megbízni, és el kell hinni amit ők mondanak ;)
--
zrubi.hu

+1

Így igaz, bármikor létrehozhatok én is egy "jogvédő csoportot".

Persze, de nem is olyan jogvédőnek hisznek az emberek, akik 5 perce jöttek létre. Hanem akik 15 éve, már csőd szélén vannak, és lefize... ok nem szóltam.

:-)

Az emberek annak hisznek, akinek jó a marketingje.

Ezért :)-ztam én is, és ezért írtam, hogy szociális, nem azt, hogy tudományos, vagy legalább üzleti megoldás. De mivel minden bizalmi kérdés (mi van ha valaki az általam használt forrást binárissá alakító eszközegyüttesbe csent bele egy módosítást, ami miatt belefordulnak a genyó részek a gépemen, olyanok, amik a forrásban nem voltak?), ezért raktam oda "praktikus", "általános", "jelenkori" megoldásként.

"praktikus", "általános", "jelenkori" megoldásként.

Erre van is gyakorlati példa: a jelenkori SSL tanúsítványkiadók. ;)

Míg a többségre a zöld lakat látványa megnyugtatóan hat, addig a biztosngái szakemberek (és a hackerek) rég tisztában vannak vele, hogy ez így ebben a formában több kárt okoz, mint hasznot...

--
zrubi.hu

Hát ez így ebben a formában nem igaz.

mi van ha valaki az általam használt forrást binárissá alakító eszközegyüttesbe csent bele egy módosítást, ami miatt belefordulnak a genyó részek a gépemen, olyanok, amik a forrásban nem voltak?

a reproducible build azellen is véd, "csak" a build környezetetnek is ilyennek kell lennie, és magadnak kell fordítani...

--
zrubi.hu

meg akkor már a kernelt és a C libet is. Mély nyúlüreg ez, csak a személyes paranoia mértéke szab neki határt... :D

Gentoo-t láttál-e már?
Na mert az "csak" egy from-scratch distribució, ahol tényleg 0-ból fordíthattál mindent (igen, még magát a fordítót is!) magadnak.

Nyilván nem mindenkinek van ilyenre szüksége, de akinek van, annak a lehetőség adott.

--
zrubi.hu

És a fordítót (amivel fordítod majd a saját fordítódat) ki fordította le? Mert ugye abban is lehet kártékony kód, ami a fordítás közben még befordít valami mást is.