Cryptology Academy · Pelajaran

Mode SIV: AEAD yang Tahan terhadap Penyalahgunaan Nonce

Jelajahi mode Synthetic IV (SIV) dan cara mode ini melindungi dari penggunaan ulang nonce yang berakibat fatal.

Pelajaran 2 dari 413 langkah

Mode SIV: AEAD yang Tahan terhadap Penyalahgunaan Nonce adalah pelajaran Cryptology Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Cryptology Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Cryptology Academy mencakup 4 pelajaran total.

Penggunaan Ulang Nilai Sekali Pakai: Kegagalan Fatal

Sandi AEAD berbasis mode CTR seperti AES-GCM memerlukan nilai sekali pakai yang unik untuk setiap enkripsi. Jika nilai yang sama digunakan kembali dengan kunci yang sama, penyerang yang mengamati dua teks sandi dapat menggabungkannya dengan XOR untuk mendapatkan hasil XOR dari kedua teks biasa, sehingga kerahasiaan langsung runtuh.

Penggunaan Ulang Nilai Sekali Pakai pada GCM Membocorkan Kunci Autentikasi

Penggunaan ulang nilai sekali pakai dalam AES-GCM bahkan lebih fatal daripada dalam mode CTR biasa. Saat dua pesan dienkripsi menggunakan nilai dan kunci yang sama, penyerang dapat memulihkan seluruh kunci autentikasi GHASH H. Setelah mengetahui H, penyerang dapat memalsukan pesan terautentikasi apa pun.

Mode IV Sintetis Diperkenalkan

Mode IV sintetis (SIV), yang didefinisikan dalam RFC 5297, dirancang untuk menghilangkan kerentanan akibat penggunaan ulang nilai sekali pakai. Alih-alih memerlukan nilai sekali pakai acak atau berbasis pencacah, SIV menurunkan IV secara sintetis dari teks biasa itu sendiri menggunakan fungsi semuacak, sehingga bersifat deterministik dan tahan terhadap penyalahgunaan nilai sekali pakai.

Mekanisme Penurunan Nilai Sekali Pakai SIV

Dalam SIV, nilai sekali pakai, yang disebut IV sintetis, dihitung dengan rumus SIV = PRF(kunci, teks biasa, data terkait). IV ini kemudian digunakan sebagai pencacah untuk enkripsi mode CTR. Karena IV diturunkan dari teks biasa, mengenkripsi teks biasa yang sama selalu menghasilkan teks sandi yang sama.

Konsekuensi Penggunaan Ulang Nonce pada SIV

Jika nonce digunakan kembali pada SIV karena teks biasa yang sama dienkripsi dua kali, pengamat hanya mengetahui bahwa dua pesan identik telah dikirim. Isi teks biasa itu sendiri tetap tersembunyi. Ini merupakan peningkatan besar dibandingkan AEAD berbasis CTR, yang membuat XOR teks biasa terlihat ketika nonce digunakan kembali.

Konstruksi AES-SIV

AES-SIV (RFC 5297) menggunakan fungsi S2V (PRF berantai yang berbasis pada AES-CMAC) untuk menghasilkan IV sintetis, kemudian mengenkripsi dengan AES-CTR menggunakan subkunci kedua. Metode ini memerlukan dua kunci AES, sehingga pengelolaan kunci sedikit lebih kompleks daripada mode AEAD dengan satu kunci.

AES-GCM-SIV: Alternatif Modern

AES-GCM-SIV (RFC 8452) adalah AEAD tahan terhadap penyalahgunaan nonce yang lebih efisien, dirancang untuk menggabungkan kinerja GCM dengan keamanan serupa SIV. Metode ini menurunkan subkunci per pesan dari nonce dan menggunakan autentikator Polyval, sehingga kinerjanya lebih baik daripada AES-SIV sekaligus mempertahankan ketahanan terhadap penyalahgunaan nonce.

Biaya Kinerja Dua Lintasan

SIV memerlukan dua lintasan atas data: satu untuk menghitung IV sintetis dan satu untuk enkripsi. Biaya komputasinya kira-kira dua kali lipat dibandingkan mode AEAD satu lintasan seperti AES-GCM. Untuk aplikasi yang sensitif terhadap keterlambatan atau memiliki laju pemrosesan tinggi, biaya tambahan ini harus dipertimbangkan.

Kapan Memilih SIV daripada GCM

SIV lebih disukai ketika pembuatan nonce tidak dapat diandalkan, ketika aplikasi tidak menyimpan status dan tidak dapat mempertahankan penghitung nonce, atau ketika enkripsi deterministik merupakan persyaratan. Contohnya adalah mengenkripsi bidang basis data ketika nilai yang sama harus selalu menghasilkan teks tersandi yang sama untuk keperluan pengindeksan.

Layanan Tanpa Status dan Enkripsi Deterministik

Layanan mikro tanpa status yang tidak dapat mengoordinasikan status nonce di antara replika merupakan kandidat utama untuk mode SIV. Alih-alih mempertaruhkan penggunaan ulang nonce secara tidak sengaja melalui penghitung global, SIV memberikan keamanan secara otomatis. Pembungkusan kunci (RFC 3394) juga menggunakan prinsip SIV untuk enkripsi kunci deterministik.

SIV dalam Praktik

AES-SIV tersedia dalam pustaka kriptografi utama, termasuk libsodium (sebagai crypto_aead_aes256gcm_siv pada versi terbaru) dan Google Tink. AES-GCM-SIV didukung oleh BoringSSL dan pustaka standar Go. Ketika pengelolaan nonce sulit dilakukan, pilihan-pilihan ini lebih aman daripada AES-GCM standar.

Pemeriksaan Penyalahgunaan Nonce pada SIV

Apa yang terjadi ketika kunci yang sama digunakan untuk mengenkripsi teks biasa yang sama sebanyak dua kali dengan AES-SIV?

Ringkasan Pelajaran: SIV untuk Keamanan Nonce

Mode SIV menghilangkan dampak parah penggunaan ulang nonce dengan menurunkan IV dari teks biasa itu sendiri. Penggunaan ulang nonce hanya mengungkapkan bahwa pesan identik telah dikirim, bukan isinya. AES-GCM-SIV (RFC 8452) menyediakan ketahanan efisien terhadap penyalahgunaan nonce untuk aplikasi modern yang memerlukan enkripsi tanpa status atau deterministik.

Gratis untuk memulai

Belajar Cryptology Academy dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
67
Pelajaran
261

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Mode SIV: AEAD yang Tahan terhadap Penyalahgunaan Nonce” gratis?

Ya — teks lengkap “Mode SIV: AEAD yang Tahan terhadap Penyalahgunaan Nonce” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Cryptology Academy, upgrade ke CoddyKit PRO. Kursus Cryptology Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Mode SIV: AEAD yang Tahan terhadap Penyalahgunaan Nonce”?

Jelajahi mode Synthetic IV (SIV) dan cara mode ini melindungi dari penggunaan ulang nonce yang berakibat fatal. Kamu berlatih Cryptology Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Cryptology Academy?

Tidak diperlukan pengalaman sebelumnya. Cryptology Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Mode SIV: AEAD yang Tahan terhadap Penyalahgunaan Nonce” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Cryptology Academy ini?

Ya. Setiap pelajaran Cryptology Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mengapa Encrypt-Then-MAC Lebih Unggul daripada MAC-Then-Encrypt
  2. Mode SIV: AEAD yang Tahan terhadap Penyalahgunaan Nonce
  3. AEGIS: Enkripsi Terautentikasi Berkecepatan Tinggi
  4. Memilih AEAD untuk Sistem Produksi
← Kembali ke Cryptology Academy