Sahkannya sendiri

Jangan percaya sesiapa. Periksanya sendiri.

Solo2 ialah aplikasi web. Itu bermaksud pelayar anda sudah mempunyai semua alat yang anda perlukan untuk mengaudit apa yang kami buat. Tekan F12, buka DevTools dan periksanya sendiri setiap pernyataan dalam Manifesto kami. Di sini kami beritahu anda dengan tepat bagaimana.

Periksanya dalam 2 minit

Tekan F12 dalam pelayar anda. Tanpa memasang apa-apa. Tanpa perlu tahu memprogram.

Pernyataan Bagaimana mengesahkannya Tab
Tiada kuki dari sebarang jenis Application → Cookies → kosong. Solo2 tidak memasang sebarang kuki. Sesi anda dikekalkan dalam localStorage, bukan dalam kuki. Tanpa _ga Application
Tiada perkhidmatan pihak ketiga dalam aplikasi Network → tapis mengikut domain → hanya permintaan ke solo2.net Network
Analitik hanya pada landing, bukan dalam aplikasi Network → dalam /* Network
Sejarah anda hidup dalam pelayar anda Application → IndexedDB → solo2-vault-{userId} Application
Senarai kenalan hanya tempatan Application → IndexedDB → store pares Application
Tanpa CDN luaran Network → semua JS/CSS dimuatkan daripada domain yang sama. Tiada cdn.jsdelivr.net Network
Sesi 24j maksimum Application → localStorage → solo2_session Application
Anda boleh melihat jenis sambungan apa anda guna Dalam UI sembang: penunjuk P2P (hijau) vs Mirror/TURN (oren) kelihatan setiap masa UI
Umami adalah cookieless Application → Cookies → tidak muncul sebarang kuki dari stats.menzuri.com Application
Kunci induk anda dihasilkan secara rawak Application → semasa mendaftar, Solo2 menghasilkan 24 perkataan unik. Ia tidak diterbitkan daripada kata laluan anda — ia kunci bebas dengan 256 bit entropi sebenar Application

Jika anda tahu guna DevTools

Pengesahan yang memerlukan pengetahuan teknikal. Jika anda faham HTTP, WebRTC dan kriptografi asas, anda boleh mengesahkan pernyataan ini.

Pernyataan Bagaimana mengesahkannya
Mesej tersulit E2E Network → permintaan ke /cmd
Isyarat WebRTC tersulit E2E Network → mesej isyarat mengembara sebagai blob binari tersulit. Bukan JSON yang boleh dibaca dengan offer
Kunci induk bebas daripada kata laluan Network → log masuk menerima satu wrapped_master_key
Padding seragam dalam mirror Network → paket WebSocket/DataChannel mempunyai saiz tetap semasa menggunakan relai. Periksa saiz dalam tab Network
Kata laluan terlindungi (tidak mengembara dalam bentuk biasa) Network → log masuk menghantar satu hash, bukan teks biasa. Anda tidak boleh mengesahkan algoritma apa pelayan guna (Argon2id), tetapi memang kata laluan asal anda tidak pernah keluar daripada pelayar
Permintaan pautan luput dalam 3 hari Cipta satu permintaan, jangan balas, periksa selepas 3 hari yang ia lenyap. Memerlukan kesabaran dan dua akaun
Notifikasi push tersulit Network → permintaan push ke Service Worker sampai secara tersulit (standard Web Push). Kelihatan payload tersulit dalam tab Network
Sambungan P2P terus vs relai chrome://webrtc-internals/

Ini anda tidak boleh periksanya

Kami akan jadi hipokrit jika kami katakan segalanya boleh disahkan. Pernyataan ini memerlukan anda percaya kepada kami — atau tunggu sehingga kami menerbitkan kodnya.

Pernyataan Mengapa tidak boleh disahkan
Double Ratchet dengan pusingan kunci Operasi kriptografi berlaku di dalam satu binari WASM. Pengguna nampak ia dimuatkan, tetapi tidak boleh membaca algoritma apa ia jalankan
Kunci induk dihasilkan dengan entropi sebenar (256 bit) Penghasilan menggunakan crypto.getRandomValues di dalam pelayar. Anda boleh nampak yang 24 perkataan dihasilkan, tetapi tidak boleh mengesahkan daripada F12 kualiti entropi mahupun yang CSPRNG adalah selamat
X25519 + Ed25519 + ChaCha20-Poly1305 Masalah yang sama: tindanan kriptografi berada di dalam WASM. Tidak boleh mengesahkan lengkungan mahupun algoritma daripada pelayar
Pelayan adalah "buta sepenuhnya" Anda boleh mengesahkan yang klien tidak menghantar data yang boleh dibaca. Apa yang pelayan buat dengan metadata sambungan (IP, timestamp) memerlukan kepercayaan atau audit pelayan
Pelayan tidak menyimpan hubungan selepas pautan Memerlukan akses ke kod dan pangkalan data pelayan
IP tidak direkodkan Anda tidak boleh mengesahkan apa yang pelayan rekodkan dalam lognya
Kunci berpusing dengan setiap mesej Berlaku di dalam WASM. Anda nampak mesej dihantar, tetapi tidak boleh memerhatikan pusingan kunci
Data yang dipadam benar-benar lenyap Anda boleh memadam daripada IndexedDB tempatan, tetapi tidak boleh mengesahkan yang pelayan tidak menyimpan salinan (walaupun Manifesto mengatakan ia tidak pernah mempunyainya)

Mengapa WASM adalah satu sempadan nyata

Lapisan kriptografi Solo2 dikompil dalam WebAssembly — satu format binari yang pelayar anda jalankan tetapi anda tidak boleh baca sebagai teks. Ini bermaksud anda tidak boleh mengesahkan daripada F12 algoritma apa yang kami guna.

JavaScript yang dikecilkan (yang kami guna untuk antara muka) memang boleh dibalikkan: pelayar boleh memformatnya semula dan struktur kod adalah boleh dibaca. Ia satu halangan praktikal, bukan satu sempadan nyata. Tetapi WASM yang dikompil daripada Zig adalah berbeza secara fundamental

Kami katakan ia adalah Double Ratchet dengan X25519. Anda boleh percaya pada kata-kata kami, atau anda boleh tunggu sehingga kami menerbitkan kod sumber lapisan kripto supaya sesiapa sahaja boleh mengauditnya. Kami sedang mengusahakannya.

Apa yang kami sedang buat supaya anda boleh lebih percaya

1

Menerbitkan hash SHA-256 bagi .wasm

Kami akan menerbitkan hash kriptografi setiap fail WASM dalam produksi. Dengan itu mana-mana juruaudit akan dapat mengesahkan yang binari yang dijalankan dalam pelayar anda sepadan dengan tepat dengan yang kami kompil.

2

Membuka lapisan kripto sebagai kod sumber terbuka

Menerbitkan kod sumber lapisan kriptografi (Zig) sebagai repositori awam. Model yang sama dengan Signal: protokol kriptografi terbuka, baki kod tertutup. Sesiapa sahaja akan dapat mengompil kod sumber dan membandingkan hash .wasm yang terhasil dengan yang berada dalam produksi.

3

Keselamatan tidak bergantung pada kegelapan

Model keselamatan kami direka untuk berfungsi walaupun jika kod sumber adalah awam. Jika keselamatan bergantung kepada tiada sesiapa boleh membaca kod tersebut, ia bukan keselamatan — ia adalah harapan.

4

5 lapisan keselamatan yang didokumenkan

Kata laluan (akses pelayan), 24 perkataan (kunci induk sebenar), rahsia peranti (perlindungan peti besi) dan pusingan Double Ratchet. Setiap lapisan adalah bebas dan boleh disahkan dalam Manifesto Ketelusan kami.

Solo2 — Perbualan anda milik anda sahaja.