Verifikasi sendiri

Jangan percaya siapa pun. Buktikan sendiri.

Solo2 adalah aplikasi web. Itu berarti browser Anda sudah memiliki semua alat yang Anda butuhkan untuk mengaudit apa yang kami lakukan. Tekan F12, buka DevTools, dan buktikan sendiri setiap pernyataan di Manifes kami. Di sini kami memberi tahu Anda caranya.

Buktikan dalam 2 menit

Tekan F12 di browser Anda. Tanpa menginstal apa pun. Tanpa perlu tahu pemrograman.

Pernyataan Cara memverifikasinya Tab
Tidak ada cookie jenis apa pun Application → Cookies → kosong. Solo2 tidak memasang cookie apa pun. Sesi Anda dipertahankan di localStorage, bukan di cookie. Tanpa _ga Application
Tidak ada layanan pihak ketiga di aplikasi Network → filter berdasarkan domain → hanya permintaan ke solo2.net Network
Analitik hanya di landing, tidak di aplikasi Network → di /* Network
Riwayat Anda hidup di browser Anda Application → IndexedDB → solo2-vault-{userId} Application
Daftar kontak hanya lokal Application → IndexedDB → store pares Application
Tanpa CDN eksternal Network → semua JS/CSS dimuat dari domain yang sama. Tidak ada cdn.jsdelivr.net Network
Sesi maksimal 24 jam Application → localStorage → solo2_session Application
Anda dapat melihat jenis koneksi apa yang Anda gunakan Di UI obrolan: indikator P2P (hijau) vs Mirror/TURN (oranye) terlihat setiap saat UI
Umami bersifat cookieless Application → Cookies → tidak ada cookie dari stats.menzuri.com Application
Kunci master Anda dihasilkan secara acak Application → saat mendaftar, Solo2 menghasilkan 24 kata unik. Kata-kata tersebut tidak berasal dari kata sandi Anda — melainkan kunci independen dengan entropi nyata 256 bit Application

Jika Anda tahu cara menggunakan DevTools

Verifikasi yang membutuhkan pengetahuan teknis. Jika Anda mengerti HTTP, WebRTC, dan kriptografi dasar, Anda dapat mengonfirmasi pernyataan ini.

Pernyataan Cara memverifikasinya
Pesan terenkripsi E2E Network → permintaan ke /cmd
Sinyal WebRTC terenkripsi E2E Network → pesan sinyal berpindah sebagai blob biner terenkripsi. Bukan JSON yang dapat dibaca dengan offer
Kunci master independen dari kata sandi Network → login menerima wrapped_master_key
Padding seragam di mirror Network → paket WebSocket/DataChannel memiliki ukuran tetap saat menggunakan relai. Periksa ukuran di tab Network
Kata sandi terlindungi (tidak dikirim dalam teks biasa) Network → login mengirimkan hash, bukan teks biasa. Anda tidak dapat memverifikasi algoritma apa yang digunakan server (Argon2id), tetapi Anda dapat memverifikasi bahwa kata sandi asli Anda tidak pernah keluar dari browser
Permintaan penautan kedaluwarsa dalam 3 hari Buat permintaan, jangan dijawab, verifikasi setelah 3 hari bahwa permintaan tersebut menghilang. Membutuhkan kesabaran dan dua akun
Notifikasi push terenkripsi Network → permintaan push ke Service Worker tiba dalam keadaan terenkripsi (standar Web Push). Payload terenkripsi terlihat di tab Network
Koneksi P2P langsung vs relai chrome://webrtc-internals/

Ini tidak dapat Anda verifikasi

Kami akan munafik jika kami mengatakan bahwa semuanya dapat diverifikasi. Pernyataan ini mengharuskan Anda untuk memercayai kami — atau menunggu sampai kami memublikasikan kodenya.

Pernyataan Mengapa tidak dapat diverifikasi
Double Ratchet dengan rotasi kunci Operasi kriptografi terjadi di dalam biner WASM. Pengguna melihat bahwa biner tersebut dimuat, tetapi tidak dapat membaca algoritma apa yang dijalankannya
Kunci master dihasilkan dengan entropi nyata (256 bit) Generasi menggunakan crypto.getRandomValues di dalam browser. Anda dapat melihat bahwa 24 kata dihasilkan, tetapi Anda tidak dapat memverifikasi kualitas entropi atau keamanan CSPRNG dari F12
X25519 + Ed25519 + ChaCha20-Poly1305 Masalah yang sama: tumpukan kriptografi ada di dalam WASM. Kurva dan algoritma tidak dapat dikonfirmasi dari browser
Server "sepenuhnya buta" Anda dapat memverifikasi bahwa klien tidak mengirimkan data yang dapat dibaca. Apa yang dilakukan server dengan metadata koneksi (IP, timestamp) membutuhkan kepercayaan atau audit server
Server tidak menyimpan hubungan setelah penautan Membutuhkan akses ke kode dan database server
Alamat IP tidak dicatat Anda tidak dapat memverifikasi apa yang dicatat server dalam log-nya
Kunci berotasi pada setiap pesan Terjadi di dalam WASM. Anda melihat pesan dikirim, tetapi Anda tidak dapat mengamati rotasi kunci
Data yang dihapus benar-benar menghilang Anda dapat menghapus dari IndexedDB lokal, tetapi Anda tidak dapat memverifikasi bahwa server tidak menyimpan salinannya (meskipun Manifes mengatakan ia tidak pernah memilikinya)

Mengapa WASM adalah penghalang nyata

Lapisan kriptografi Solo2 dikompilasi dalam WebAssembly — format biner yang dijalankan browser Anda tetapi tidak dapat Anda baca sebagai teks. Ini berarti Anda tidak dapat memverifikasi algoritma apa yang kami gunakan dari F12.

JavaScript yang diminimalkan (yang kami gunakan untuk antarmuka) memang dapat dikembalikan: browser dapat memformat ulangnya dan struktur kodenya terbaca. Ini adalah hambatan praktis, bukan penghalang nyata. Namun WASM yang dikompilasi dari Zig secara fundamental berbeda

Kami mengatakan bahwa ini adalah Double Ratchet dengan X25519. Anda dapat memercayai kata-kata kami, atau Anda dapat menunggu sampai kami memublikasikan kode sumber lapisan kripto agar siapa pun dapat mengauditnya. Kami sedang mengerjakannya.

Apa yang kami lakukan agar Anda dapat lebih percaya

1

Memublikasikan hash SHA-256 dari file .wasm

Kami akan memublikasikan hash kriptografi dari setiap file WASM dalam produksi. Dengan demikian, auditor mana pun dapat memverifikasi bahwa biner yang berjalan di browser Anda sesuai persis dengan yang kami kompilasi.

2

Membuka lapisan kripto sebagai kode sumber terbuka

Memublikasikan kode sumber lapisan kriptografi (Zig) sebagai repositori publik. Model yang sama dengan Signal: protokol kriptografi terbuka, sisa kodenya tertutup. Siapa pun dapat mengompilasi kode sumber tersebut dan membandingkan hash .wasm yang dihasilkan dengan yang ada dalam produksi.

3

Keamanan tidak bergantung pada kegelapan

Model keamanan kami dirancang untuk berfungsi bahkan jika kode sumbernya bersifat publik. Jika keamanan bergantung pada fakta bahwa tidak ada yang bisa membaca kodenya, itu bukanlah keamanan — itu adalah harapan.

4

5 lapisan keamanan yang didokumentasikan

Kata sandi (akses server), 24 kata (kunci master asli), rahasia perangkat (perlindungan brankas), dan rotasi Double Ratchet. Setiap lapisan bersifat independen dan dapat diverifikasi dalam Manifes Transparansi kami.

Solo2 — Percakapan Anda hanya milik Anda.