Sifer Aliran
Sifer aliran mengenkripsi data dengan menghasilkan aliran kunci pseudorandom dari kunci rahasia dan menggabungkannya dengan teks biasa, biasanya satu bit atau byte pada satu waktu, meniru one-time pad yang sangat aman dengan kunci pendek.
Definition
Sifer aliran adalah skema enkripsi simetris yang menghasilkan aliran kunci pseudorandom panjang dari kunci rahasia (dan biasanya nonce) dan mengenkripsi dengan menggabungkan aliran kunci dengan teks biasa, paling umum dengan XOR bitwise.
Scope
Topik ini mencakup desain dan analisis sifer aliran: generator aliran kunci yang dibangun dari register geser umpan balik linier, konstruksi penggabung dan filter, serta desain modern berorientasi perangkat lunak seperti ChaCha20 dan portofolio eSTREAM. Ini membahas hubungan dengan one-time pad, persyaratan kritis untuk tidak pernah menggunakan kembali aliran kunci, dan serangan yang timbul dari penggunaan kembali aliran kunci atau generator yang lemah. Ini tidak termasuk sifer blok, meskipun sifer blok dalam mode penghitung secara efektif berfungsi sebagai sifer aliran.
Core questions
- Bagaimana kunci pendek dapat direntangkan menjadi aliran kunci yang panjang dan tidak dapat diprediksi yang meniru one-time pad?
- Mengapa penggunaan kembali aliran kunci bersifat katastropik, dan bagaimana nonce mencegahnya?
- Apa yang membuat generator aliran kunci kuat secara kriptografis daripada hanya acak secara statistik?
- Bagaimana sifer aliran modern seperti ChaCha20 mencapai kecepatan tanpa perangkat keras khusus?
- Serangan klasik apa (korelasi, aljabar) yang merusak desain berbasis LFSR yang lemah?
Key concepts
- aliran kunci
- one-time pad
- register geser umpan balik linier
- nonce dan vektor inisialisasi
- penggunaan kembali aliran kunci (two-time pad)
- ChaCha20 dan Salsa20
- serangan korelasi
- sifer sinkron vs. sifer penyinkronan mandiri
Key theories
- One-time pad dan kerahasiaan sempurna
- Enkripsi dengan XOR menggunakan kunci yang benar-benar acak sepanjang pesan mencapai kerahasiaan sempurna Shannon; sifer aliran mendekati ini dengan mengganti aliran kunci pseudorandom untuk pad yang benar-benar acak yang tidak praktis.
- Generasi aliran kunci dan keacakan semu kriptografis
- Sifer aliran yang aman adalah generator pseudorandom: aliran kuncinya harus tidak dapat dibedakan secara komputasi dari acak, sehingga tidak ada musuh yang efisien yang dapat memprediksi bit aliran kunci di masa depan bahkan setelah mengamati banyak.
Mechanisms
Sifer aliran sinkron menginisialisasi status internal dari kunci dan nonce, kemudian berulang kali memperbarui status dan mengeluarkan keluaran aliran kunci yang independen dari teks biasa. Aliran kunci di-XOR dengan teks biasa untuk mengenkripsi dan dengan teks tersandi untuk mendekripsi. Desain berdasarkan register geser umpan balik linier cepat dalam perangkat keras tetapi memerlukan penggabung nonlinier untuk menahan serangan aljabar; sifer perangkat lunak seperti ChaCha20 menggunakan operasi penambahan-rotasi-XOR (ARX) pada status besar untuk kecepatan dan keamanan.
Clinical relevance
ChaCha20 (dengan otentikator Poly1305) banyak digunakan dalam TLS 1.3, OpenSSH, WireGuard, dan pesan seluler, di mana ia lebih disukai daripada AES pada perangkat yang tidak memiliki akselerasi perangkat keras AES. Sifer aliran sangat cocok untuk media streaming dan tautan latensi rendah. Secara historis, sifer aliran RC4 melindungi SSL/TLS awal dan WEP Wi-Fi hingga biasnya menyebabkan depresiasi.
Evidence & guidelines
ChaCha20-Poly1305 distandarisasi dalam RFC 8439 dan disetujui untuk TLS. RC4 dilarang dalam TLS oleh RFC 7465 karena bias aliran kunci. Proyek eSTREAM (2004-2008) menghasilkan portofolio sifer aliran yang telah diverifikasi. Aturan utama di semua standar adalah bahwa pasangan (kunci, nonce) tidak boleh digunakan kembali.
History
Sifer aliran berasal dari sifer Vernam (1917) dan one-time pad. Sistem militer Perang Dingin menggunakan generator aliran kunci berdasarkan register geser. RC4, yang dirancang oleh Ron Rivest pada tahun 1987, menjadi sangat luas tetapi akhirnya berhasil dipecahkan dalam penggunaan protokolnya. Kompetisi eSTREAM dan keluarga Salsa20/ChaCha20 Daniel Bernstein (2008) mendefinisikan generasi modern yang ramah perangkat lunak yang sekarang disukai dalam protokol internet.
Key figures
- Claude Shannon
- Daniel J. Bernstein
- Ronald Rivest
- Adi Shamir
Related topics
Seminal works
- shannon1949
- katz2020
- menezes1996
Frequently asked questions
- Apa yang terjadi jika aliran kunci sifer aliran digunakan kembali?
- Melakukan XOR dua teks tersandi yang dienkripsi dengan aliran kunci yang sama akan membatalkan aliran kunci, menyisakan XOR dari kedua teks biasa — yang sering kali mengungkapkan kedua pesan. Inilah sebabnya mengapa setiap enkripsi harus menggunakan nonce baru sehingga aliran kunci tidak pernah berulang di bawah kunci tetap.
- Apakah sifer aliran kurang aman dibandingkan sifer blok?
- Tidak secara inheren. Sifer aliran modern seperti ChaCha20 dianggap sama amannya dengan AES dan terkadang lebih cepat dalam perangkat lunak. Ketidakamanan muncul dari penyalahgunaan (penggunaan kembali aliran kunci) atau desain warisan yang lemah seperti RC4, bukan dari konsep sifer aliran itu sendiri.