( SzBlackY | 2020. 06. 22., h – 12:30 )

azt csinálja és úgy csinálja, ahogy kell.

És hogy döntöd el, hogy az a szoftver fut-e az előtted levő gépen? Persze: megnézed a hash-ét. Honnan tudod, hogy nincs patchelve alatta a kernel, hogy a fájlt megnyitva visszaadjon X blokkot, a fájlt futtatva Y blokkot. Persze, hash-eled az OS-t. Honnan tudod, hogy helyes az OS hash-e? Ott a Secure boot. Tegyük fel, hogy nem bízol az SB-ben (mert ugyanazzal a tanúsítvánnyal más kódot is alá lehet írni...), úgyhogy megnézed a hash-t. Honnan tudod, hogy nem patchelt az UEFI, hogy egy hash-t írjon ki, validáláskor meg másikat használjon? ...
Vihetjük tovább, a lényeg, hogy VALAHOL VALAMIKOR lesz valami, amiben MEG KELL bíznod.

És ez a kioszkon kívül is van ám: tegyük fel, teljes mértékben validált rendszeren leadsz egy szavazatot. Biztos lehetsz-e abban, hogy a tényleges szavazatszámláló géppel beszélsz-e a túloldalon, vagy "véletlenül" az egyik switch egy másik géphez viszi az adatot. Ami - mivel ugyanaz üzemelteti - ismerheti a "rendes" gép privát kulcsát, úgyhogy nem tudsz különbséget tenni köztük. De ugyanígy, ahogy szerver oldali fejlesztéskor a kliensben nem bízhatsz, a kliens nem bízhat meg a szerverben: hogy tudod ellenőrizni, hogy az a kód fut a szerveren (és AZON a szerveren!), aminek kellene?

BlackY