Het TFC-project heeft een USB-splitter ontwikkeld voor een messenger bestaande uit 3 computers


Het TFC-project heeft een USB-splitter ontwikkeld voor een messenger bestaande uit 3 computers

Het TFC-project (Tinfoil Chat) stelde een hardwareapparaat voor met 3 USB-poorten om 3 computers aan te sluiten en een paranoïde beveiligd berichtensysteem te creëren.

De eerste computer fungeert als toegangspoort om verbinding te maken met het netwerk en de verborgen Tor-service te starten; deze manipuleert reeds gecodeerde gegevens.

De tweede computer beschikt over de decoderingssleutels en wordt alleen gebruikt om ontvangen berichten te decoderen en weer te geven.

De derde computer beschikt over de encryptiesleutels en wordt alleen gebruikt om nieuwe berichten te coderen en te verzenden.

De USB-splitter werkt op optocouplers volgens het "datadiode"-principe en geeft fysiek gegevens alleen in bepaalde richtingen door: gegevens verzenden naar de tweede computer en gegevens ontvangen van de derde computer.

Als u de eerste computer compromitteert, krijgt u geen toegang tot de coderingssleutels, de gegevens zelf, en kunt u de aanval op de overige apparaten niet voortzetten.

Wanneer een tweede computer wordt aangetast, leest de aanvaller berichten en sleutels, maar kan deze niet naar de buitenwereld verzenden, omdat de gegevens alleen van buitenaf worden ontvangen en niet naar buiten worden verzonden.

Als een derde computer wordt aangetast, kan een aanvaller zich voordoen als een abonnee en namens hem berichten schrijven, maar kan hij geen gegevens lezen die van buitenaf komen (aangezien deze naar de tweede computer gaan en daar worden gedecodeerd).

De codering is gebaseerd op het 256-bits XChaCha20-Poly1305-algoritme en de langzame Argon2id-hashfunctie wordt gebruikt om de sleutels met een wachtwoord te beveiligen. Voor sleuteluitwisseling worden X448 (Diffie-Hellman-protocol gebaseerd op Curve448) of PSK-sleutels (vooraf gedeeld) gebruikt. Elk bericht wordt verzonden in de modus Perfect Forward Secrecy (PFS, Perfect Forward Secrecy) op basis van Blake2b-hashes, waarbij het compromitteren van een van de langetermijnsleutels de ontsleuteling van een eerder onderschepte sessie niet mogelijk maakt.

De applicatie-interface is uiterst eenvoudig en omvat een venster dat in drie gebieden is verdeeld: verzenden, ontvangen en een opdrachtregel met een logboek van interactie met de gateway. De bediening wordt uitgevoerd via een speciale reeks opdrachten.

Programma de projectcode is geschreven in Python en beschikbaar onder de GPLv3-licentie. Splittercircuits zijn inbegrepen (PCB) en zijn verkrijgbaar onder de GNU FDL 1.3-licentie, de splitter kan worden samengesteld uit beschikbare onderdelen.

Bron: linux.org.ru

Voeg een reactie