El projecte TFC ha desenvolupat un divisor USB per a un missatger format per 3 ordinadors


El projecte TFC ha desenvolupat un divisor USB per a un missatger format per 3 ordinadors

El projecte TFC (Tinfoil Chat) va proposar un dispositiu de maquinari amb 3 ports USB per connectar 3 ordinadors i crear un sistema de missatgeria protegit contra els paranoics.

El primer ordinador actua com a passarel·la per connectar-se a la xarxa i llançar el servei ocult Tor; manipula dades ja xifrades.

El segon ordinador té les claus de desxifrat i només s'utilitza per desxifrar i mostrar els missatges rebuts.

El tercer ordinador té les claus de xifratge i només s'utilitza per xifrar i enviar missatges nous.

El divisor USB funciona amb optoacobladors segons el principi del "díode de dades" i passa físicament dades només en direccions especificades: enviant dades cap al segon ordinador i rebent dades del tercer ordinador.

Comprometre el primer ordinador no us permetrà accedir a les claus de xifratge, les dades en si, i no us permetrà continuar l'atac a la resta de dispositius.

Quan un segon ordinador es veu compromès, l'atacant llegirà missatges i claus, però no els podrà transmetre al món exterior, ja que les dades només es reben de l'exterior, però no s'envien a l'exterior.

Si un tercer ordinador es veu compromès, un atacant pot suplantar la identitat d'un subscriptor i escriure missatges en nom seu, però no podrà llegir les dades que vinguin de fora (ja que van al segon ordinador i allà es desxifra).

El xifratge es basa en l'algorisme XChaCha256-Poly20 de 1305 bits i la funció hash Argon2id s'utilitza per protegir les claus amb una contrasenya. Per a l'intercanvi de claus, s'utilitzen claus X448 (protocol Diffie-Hellman basat en Curve448) o PSK (precompartides). Cada missatge es transmet en mode secret forward perfecte (PFS, Perfect Forward Secrecy) basat en hash Blake2b, en el qual el compromís d'una de les claus a llarg termini no permet desxifrar una sessió prèviament interceptada.

La interfície de l'aplicació és extremadament senzilla i inclou una finestra dividida en tres àrees: enviament, recepció i una línia d'ordres amb un registre d'interacció amb la passarel·la. El control es realitza mitjançant un conjunt especial d'ordres.

Programa s'ha escrit el codi del projecte en Python i disponible sota la llicència GPLv3. S'inclouen circuits divisors (PCB) i estan disponibles sota la llicència GNU FDL 1.3, el divisor es pot muntar a partir de les peces disponibles.

Font: linux.org.ru

Afegeix comentari