TFC projektas sukūrė USB skirstytuvą, skirtą Messenger, kurį sudaro 3 kompiuteriai


TFC projektas sukūrė USB skirstytuvą, skirtą Messenger, kurį sudaro 3 kompiuteriai

TFC (Tinfoil Chat) projektas pasiūlė aparatinę įrangą su 3 USB prievadais, kad būtų galima sujungti 3 kompiuterius ir sukurti nuo paranoidų apsaugotą pranešimų siuntimo sistemą.

Pirmasis kompiuteris veikia kaip vartai jungiantis prie tinklo ir paleidžiant paslėptą „Tor“ paslaugą; jis manipuliuoja jau užšifruotais duomenimis.

Antrasis kompiuteris turi iššifravimo raktus ir naudojamas tik gautoms žinutėms iššifruoti ir rodyti.

Trečiasis kompiuteris turi šifravimo raktus ir naudojamas tik naujiems pranešimams užšifruoti ir siųsti.

USB skirstytuvas veikia optronais „duomenų diodo“ principu ir fiziškai perduoda duomenis tik nurodytomis kryptimis: siunčia duomenis į antrą kompiuterį ir gauna duomenis iš trečiojo kompiuterio.

Pirmojo kompiuterio kompromitavimas neleis prieiti prie šifravimo raktų, pačių duomenų ir neleis tęsti atakos prieš likusius įrenginius.

Kai bus pažeistas antrasis kompiuteris, užpuolikas skaitys pranešimus ir raktus, bet negalės jų perduoti išoriniam pasauliui, nes duomenys tik gaunami iš išorės, bet nesiunčiami į išorę.

Jei trečiasis kompiuteris yra pažeistas, užpuolikas gali apsimesti abonentu ir rašyti pranešimus jo vardu, tačiau negalės nuskaityti iš išorės gaunamų duomenų (nes jie patenka į antrą kompiuterį ir ten iššifruojami).

Šifravimas pagrįstas 256 bitų XChaCha20-Poly1305 algoritmu, o lėta Argon2id maišos funkcija naudojama raktams apsaugoti slaptažodžiu. Keitimuisi raktais naudojami X448 (Diffie-Hellman protokolas, pagrįstas Curve448) arba PSK raktai (iš anksto bendrinami). Kiekvienas pranešimas perduodamas tobulo persiuntimo slaptumo (PFS, Perfect Forward Secrecy) režimu, pagrįstu Blake2b maišais, kai vieno iš ilgalaikių raktų kompromisas neleidžia iššifruoti anksčiau perimtos sesijos.

Programos sąsaja yra labai paprasta ir apima langą, padalintą į tris sritis – siuntimo, priėmimo ir komandų eilutę su sąveikos su šliuzu žurnalu. Valdymas atliekamas naudojant specialų komandų rinkinį.

Programa parašytas projekto kodas Python versijoje ir prieinama pagal GPLv3 licenciją. Įtrauktos skirstytuvo grandinės (PCB) ir yra prieinami pagal GNU FDL 1.3 licenciją, skirstytuvą galima surinkti iš turimų dalių.

Šaltinis: linux.org.ru

Добавить комментарий