Projek TFC telah membangunkan pembahagi USB untuk messenger yang terdiri daripada 3 komputer


Projek TFC telah membangunkan pembahagi USB untuk messenger yang terdiri daripada 3 komputer

Projek TFC (Tinfoil Chat) mencadangkan peranti perkakasan dengan 3 port USB untuk menyambungkan 3 komputer dan mencipta sistem pemesejan yang dilindungi paranoid.

Komputer pertama bertindak sebagai pintu masuk untuk menyambung ke rangkaian dan melancarkan perkhidmatan tersembunyi Tor; ia memanipulasi data yang telah disulitkan.

Komputer kedua mempunyai kunci penyahsulitan dan hanya digunakan untuk menyahsulit dan memaparkan mesej yang diterima.

Komputer ketiga mempunyai kunci penyulitan dan hanya digunakan untuk menyulitkan dan menghantar mesej baharu.

Pembahagi USB beroperasi pada optocoupler pada prinsip "diod data" dan secara fizikal menghantar data hanya dalam arah tertentu: menghantar data ke komputer kedua dan menerima data dari komputer ketiga.

Mengkompromi komputer pertama tidak akan membenarkan anda mendapat akses kepada kunci penyulitan, data itu sendiri, dan tidak akan membenarkan anda meneruskan serangan ke atas peranti yang tinggal.

Apabila komputer kedua dikompromi, penyerang akan membaca mesej dan kunci, tetapi tidak akan dapat menghantarnya ke dunia luar, kerana data hanya diterima dari luar, tetapi tidak dihantar ke luar.

Jika komputer ketiga dikompromi, penyerang boleh menyamar sebagai pelanggan dan menulis mesej bagi pihaknya, tetapi tidak akan dapat membaca data yang datang dari luar (kerana ia pergi ke komputer kedua dan dinyahsulitkan di sana).

Penyulitan adalah berdasarkan algoritma 256-bit XChaCha20-Poly1305, dan fungsi cincang Argon2id yang perlahan digunakan untuk melindungi kunci dengan kata laluan. Untuk pertukaran kunci, X448 (protokol Diffie-Hellman berdasarkan Curve448) atau kunci PSK (pra-kongsi) digunakan. Setiap mesej dihantar dalam mod kerahsiaan hadapan sempurna (PFS, Rahsia Hadapan Sempurna) berdasarkan cincang Blake2b, yang mana penjejasan salah satu kunci jangka panjang tidak membenarkan penyahsulitan sesi yang dipintas sebelum ini.

Antara muka aplikasi adalah sangat mudah dan termasuk tetingkap yang dibahagikan kepada tiga kawasan - menghantar, menerima dan baris arahan dengan log interaksi dengan get laluan. Kawalan dijalankan melalui set arahan khas.

Program kod projek telah ditulis dalam Python dan tersedia di bawah lesen GPLv3. Litar pemisah disertakan (BPA) dan tersedia di bawah lesen GNU FDL 1.3, pembahagi boleh dipasang dari bahagian yang tersedia.

Sumber: linux.org.ru

Tambah komen