Apakah ada block cipher yang juga merupakan permutasi pseudo-random atas kunci
Karena cipher blok didefinisikan sebagai permutasi pseudo-random atas data (dikunci dengan kunci), saya bertanya-tanya, jika ada juga konstruksi yang kunci dan datanya dapat dialihkan dan cipher adalah permutasi atas ruang kunci untuk input (data) tetap?
Jadi pertanyaannya adalah, jika ruang keluaran $E_k(a)$ untuk semua kemungkinan $k$ mencakup seluruh ruang $\{0,1\}^n$
Lebih formal:
$E_k$ adalah sandi blok dengan ukuran kunci sama dengan ukuran blok: $\{ 0, 1 \}^n \times \{ 0, 1 \}^n \rightarrow \{ 0, 1 \}^n $
dan $\exists a \forall k_1, k_2: E_{k_1}(a) = E_{k_2}(a) \Rightarrow k_1 = k_2$
Atau lebih umum: dengan $f$ sebuah fungsi $\{ 0, 1 \}^n \rightarrow \{ 0, 1 \}^n$
$\forall k_1, k_2: E_{k_1}(f(k_1)) = E_{k_2}(f(k_2)) \Rightarrow k_1 = k_2$
Atau apakah ini benar untuk setiap block cipher?
Jawaban
Saya tidak yakin tentang "lebih umum" karena dalam definisi terakhir Anda menerapkan fungsi tombol. Ini sekarang membuatnya terkait dengan keamanan melingkar. Mengenai pertanyaan dasar, ini tidak benar secara umum, dan saya tidak tahu apakah mungkin untuk membangun konstruksi seperti itu. Yang dapat saya katakan adalah bahwa ada konstruksi di mana properti pseudorandomness berlaku jika kuncinya acak ATAU jika datanya acak. Gagasan ini dipelajari dalam makalah Symmetric and Dual PRFs from Standard Assumptions: A Generic Validation of an HMAC Assumption oleh Mihir Bellare dan Anna Lysyanskaya. Makalah ini akan menjadi titik awal yang baik untuk penelitian.