Pemindahan Kunci Peranti-ke-Peranti yang Selamat
Pindahkan kunci penyulitan anda ke peranti baru menggunakan kod QR. Pertukaran kunci X25519 ECDH + pemindahan tersulitkan AES-256-GCM.
Peranti Sumber
Pada peranti yang mempunyai kunci anda: Tetapan → Key Sync → "Transfer Keys". Kod QR dipaparkan (sah selama 5 minit).
Peranti Sasaran
Pada peranti baru anda: Selepas log masuk, pilih "Scan QR" dan imbas kod QR dari peranti sumber dengan kamera anda.
Pemindahan Selesai
Kunci dipindahkan dengan selamat melalui saluran tersulitkan. Checksum SHA-256 mengesahkan integriti data. Sesi tamat tempoh secara automatik.
Protokol Pemindahan
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 minutesKunci yang Dipindahkan
| Kunci | Algoritma | Tujuan |
|---|---|---|
| Identity Key Pair | X25519 | Pengesahan identiti / PQXDH |
| Signing Key Pair | Ed25519 | Tandatangan mesej (AEGIS XEdDSA) |
| Signed PreKey Pair | X25519 | Penubuhan sesi X3DH |
| Registration ID | — | Pengecam sesi |
One-Time PreKeys TIDAK dipindahkan. Ia dijana semula pada peranti baru untuk mengelakkan persaingan kunci antara peranti.
Sokongan Platform
| Platform | Imbas QR | Storan Kunci | Alternatif |
|---|---|---|---|
| iOS | Disokong | Keychain | — |
| Android | Disokong | Android Keystore | — |
| macOS | Bergantung pada kamera | Keychain | Regenerate Keys |
| PWA (Web) | Bergantung pada kebenaran kamera | Web Crypto API | Regenerate Keys |
Regenerate Keys: Jika pengimbasan QR tidak tersedia (PWA/macOS), pilih "Regenerate Keys" untuk mencipta kunci penyulitan baru. Sesi baru akan diwujudkan dengan semua kenalan, tetapi mesej terdahulu tidak boleh dinyahsulit.
Penggunaan Berbilang Peranti
Pertimbangan penting apabila menggunakan akaun yang sama pada berbilang peranti.
Akaun Sama, Berbilang Peranti
- • Setiap peranti menyimpan kunci penyulitan bebas
- • Key Sync diperlukan untuk menyahsulit mesej dari peranti asal
- • Konflik One-Time PreKey mungkin berlaku dengan peranti serentak
- • Had peranti: Essential 1 / Premium & Intelligence 3
Akaun Berbeza, Peranti Sama
- • Semua sesi penyulitan direset sepenuhnya
- • Mesej akaun sebelumnya tidak boleh dinyahsulit secara kekal
- • Tiada perlanggaran kunci antara akaun berbeza
- • Dialog amaran dipaparkan sebelum pertukaran akaun
Arc vs Signal: Model Berbilang Peranti
| Ciri | Signal | Arc V2 |
|---|---|---|
| Model Peranti | Primary/Linked | Independent key sets |
| Penambahan Peranti | Via Primary | Direct registration + Key Sync |
| Pengedaran Kunci | Primary distributes to Linked | Peer-to-peer QR exchange |
| Pengesahan Peranti | Implicit trust | Ed25519 signature verification |
| Kegagalan Primary | All Linked devices orphaned | No impact (independent) |
