KEY SYNC

Transfer Kunci Perangkat-ke-Perangkat yang Aman

Transfer kunci enkripsi Anda ke perangkat baru menggunakan kode QR. Pertukaran kunci X25519 ECDH + transfer terenkripsi AES-256-GCM.

1

Perangkat Sumber

Di perangkat yang memiliki kunci Anda: Pengaturan → Key Sync → "Transfer Keys". Kode QR ditampilkan (berlaku selama 5 menit).

2

Perangkat Target

Di perangkat baru Anda: Setelah login, pilih "Scan QR" dan pindai kode QR dari perangkat sumber dengan kamera Anda.

3

Transfer Selesai

Kunci ditransfer dengan aman melalui saluran terenkripsi. Checksum SHA-256 memverifikasi integritas data. Sesi kedaluwarsa otomatis.

Protokol Transfer

Source Device                        Target Device
     │                                    │
     │  1. Create Session (Firestore)     │
     │  2. Generate X25519 Ephemeral Key  │
     │  3. Display QR Code               │
     │          ─── QR Scan ───►          │
     │                                    │  4. Parse QR → sessionId + publicKey
     │                                    │  5. Generate X25519 Ephemeral Key
     │                                    │  6. ECDH → Shared Secret
     │                                    │  7. HKDF-SHA256 → AES Key
     │          ◄── Firestore ──          │  8. Write encrypted response
     │  9. ECDH → Same Shared Secret     │
     │  10. Encrypt keys (AES-256-GCM)   │
     │          ── Firestore ──►          │
     │                                    │  11. Decrypt → Import keys
     │                                    │  12. SHA-256 Checksum verify
     │  13. Cleanup session               │
     └────────────────────────────────────┘
              Session TTL: 5 minutes

Kunci yang Ditransfer

KunciAlgoritmaTujuan
Identity Key PairX25519Verifikasi identitas / PQXDH
Signing Key PairEd25519Tanda tangan pesan (AEGIS XEdDSA)
Signed PreKey PairX25519Pembentukan sesi X3DH
Registration IDPengidentifikasi sesi

One-Time PreKeys TIDAK ditransfer. Kunci diregenerasi di perangkat baru untuk menghindari persaingan kunci antar perangkat.

Dukungan Platform

PlatformPindai QRPenyimpanan KunciAlternatif
iOSDidukungKeychain
AndroidDidukungAndroid Keystore
macOSTergantung kameraKeychainRegenerate Keys
PWA (Web)Tergantung izin kameraWeb Crypto APIRegenerate Keys

Regenerate Keys: Jika pemindaian QR tidak tersedia (PWA/macOS), pilih "Regenerate Keys" untuk membuat kunci enkripsi baru. Sesi baru akan dibuat dengan semua kontak, tetapi pesan sebelumnya tidak dapat didekripsi.

Penggunaan Multi-Perangkat

Pertimbangan penting saat menggunakan akun yang sama di beberapa perangkat.

Akun Sama, Beberapa Perangkat

  • Setiap perangkat menyimpan kunci enkripsi independen
  • Key Sync diperlukan untuk mendekripsi pesan dari perangkat asli
  • Konflik One-Time PreKey mungkin terjadi dengan perangkat simultan
  • Batas perangkat: Essential 1 / Premium & Intelligence 3

Akun Berbeda, Perangkat Sama

  • Semua sesi enkripsi direset sepenuhnya
  • Pesan akun sebelumnya tidak dapat didekripsi secara permanen
  • Tidak ada tabrakan kunci antar akun berbeda
  • Dialog peringatan ditampilkan sebelum pergantian akun

Arc vs Signal: Model Multi-Perangkat

FiturSignalArc V2
Model PerangkatPrimary/LinkedIndependent key sets
Penambahan PerangkatVia PrimaryDirect registration + Key Sync
Distribusi KunciPrimary distributes to LinkedPeer-to-peer QR exchange
Autentikasi PerangkatImplicit trustEd25519 signature verification
Kegagalan PrimaryAll Linked devices orphanedNo impact (independent)