AEAD menambah integritas, bukan login atau rute yang berfungsi
Enkripsi terautentikasi menyembunyikan isi dan mendeteksi perubahan sekaligus. Identitas, kebaruan, dan perutean adalah mekanisme terpisah dengan buktinya sendiri.
Enkripsi terautentikasi mengembalikan dua hal sekaligus: teks terenkripsi yang menyembunyikan isi, dan tag yang memungkinkan penerima mendeteksi perubahan. Dulu fungsi-fungsi ini dirakit dari bagian terpisah, dan kombinasi yang buruk menghasilkan kegagalan halus. Konstruksi modern menetapkan kombinasi dan syarat berlakunya. Kata terautentikasi di sini merujuk pada tag, bukan pada orang.
Kedua jaminan berlaku untuk paket yang dilindungi dan tidak berlaku di luarnya.
Dua jaminan dalam satu konstruksi
Enkripsi menjawab apakah pengamat dapat membaca ini; integritas menjawab apakah isinya telah diubah. Terowongan memerlukan keduanya, karena isi yang diubah lebih buruk daripada isi yang tak terbaca. AEAD menetapkan cara menggabungkannya di bawah satu kunci, bersama data terkait yang diautentikasi tetapi tidak dienkripsi. Penerima menolak masukan yang gagal dalam pemeriksaan.
Data terkait mengikat bidang yang terlihat ke dalam pemeriksaan. Bidang mana yang termasuk bergantung pada protokol, dan itu bukan janji bahwa setiap alamat luar menjadi rahasia: sebuah bidang dapat tertutup tag dan tetap terbaca di jaringan.
Nonce bukan detail kecil
Kunci dan nonce harus ditangani dengan benar, dan penggunaan ulang nonce gagal dengan buruk. Mengulang nonce di bawah satu kunci dapat menyingkap hubungan antar pesan dan meruntuhkan jaminan integritas sepenuhnya. Karena itu protokol, bukan aplikasi, yang memiliki pembangkitan dan urutan nonce.
Itu syarat jaminan, bukan saran implementasi. Nonce yang sembarangan tidak memberikan sifat yang diiklankan.
Perlindungan pengulangan adalah keadaan terpisah
Paket lama yang sah dapat diputar ulang sementara tagnya utuh, karena tag membuktikan keaslian dan bukan kebaruan. Penanganan pengulangan memerlukan keadaannya sendiri: nomor urut, jendela, dan aturan tentang apa yang diterima. Keadaan itu hidup dalam implementasi protokol dan tidak berkaitan dengan pilihan cipher. Terowongan dengan enkripsi kuat tanpa perlindungan pengulangan tetap menerima lalu lintas kemarin.
Kedua mekanisme bekerja sama tanpa menjadi satu, dan yang satu dapat benar sementara yang lain tidak ada.
Apa yang tidak dikatakan tag
Identitas rekan ditetapkan oleh sertifikat atau kunci yang dibagikan sebelumnya, bukan karena cipher diautentikasi. Perutean, resolusi nama, dan kebijakan log operator berada di luar batas kriptografis. Negosiasi algoritme yang berhasil hanya mengatakan kedua ujung menyetujui satu rangkaian, itu soal kompatibilitas, bukan kualitas implementasi di kedua sisi.
Bagi pengguna: pilih konfigurasi protokol yang dirawat dan didukung. AEAD adalah sifat konfigurasi itu, bukan undangan membangun enkripsi dengan tangan di sekitar terowongan.
Catat rangkaian mana yang dinegosiasikan, apakah perlindungan pengulangan aktif, dan bagaimana rekan diidentifikasi. Tiga fakta, tiga jaminan berbeda.