GNU/Linux >> Belajar Linux >  >> Linux

RdRand dari /dev/random

Ini adalah implementasi perangkat keras yang belum diuji secara formal, dan merupakan hak milik. Kekhawatiran potensial adalah bahwa Intel dapat melakukan backdoor implementasi atas permintaan NSA.

Cara saat ini untuk mencampur keluaran rdrand ke dalam kernel Linux PRNG adalah bahwa ia di-xor'ed ke dalam kumpulan, yang secara matematis berarti bahwa tidak ada cara yang mungkin bagi keluaran yang lemah dari implementasi rdrand untuk melemahkan keseluruhan kumpulan - itu akan memperkuatnya atau tidak melakukan apa pun terhadap keamanan.

Namun, risiko sebenarnya adalah bahwa instruksi xor di-backdoor dengan cara yang mendeteksi penggunaan rdrand dalam skenario khusus, kemudian menghasilkan keluaran yang berbeda ketika xor dipanggil, menyebabkan hanya keluaran rdrand yang sengaja dilemahkan untuk ditempatkan ke dalam kumpulan.

Bisa dilakukan? Ya. Masuk akal? Mengingat wahyu baru-baru ini, mungkin. Jika backdoor, apakah Linus terlibat di dalamnya? Tebakan Anda sebaik tebakan saya.

Selain itu, ada makalah bagus tentang menyembunyikan pintu belakang perangkat keras pada level transistor di CPU.

Edit, Februari 2019. Pengguna Luc berkomentar di bawah bahwa banyak hal telah berubah sejak jawaban ini awalnya ditulis:

Pada Linux 4.19, kernel memercayai RDRAND untuk menyemai CSPRNG-nya secara penuh, kecuali seseorang melewati flag random.trust_cpu=0 saat boot (atau menetapkan waktu kompilasi). Ini seharusnya tidak menjadi masalah jika ini bukan boot pertama Anda, tetapi sistem yang baru diinstal atau VM yang baru dibuat mungkin memiliki file seed startup yang dapat diprediksi (atau tidak ada file seed sama sekali), jadi untuk sistem tersebut, ini relevan untuk mengumpulkan entropi yang baik.


Instruksi RdRand rusak di Ivy Bridge karena bug perangkat keras yang muncul di prosesor tersebut. Bukan tidak mungkin ada alasan selain kesalahan untuk itu. Algoritme kriptografi yang telah diunggulkan menggunakan algoritme pseudo-acak deterministik mungkin 100 juta kali lebih mudah untuk dipecahkan daripada yang diunggulkan dengan nomor acak asli. Saya sebenarnya memiliki aplikasi teknik yang akan mendapat manfaat dari instruksi itu tetapi menyebabkan pengecualian instruksi ilegal dari laptop Ivy Bridge baru saya. Bisakah saya mendapatkan uang saya kembali? Anda dapat melihat entri Wikipedia di RdRand untuk informasi awal tentang bug perangkat keras.


Linux
  1. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  2. Seberapa Portabel /dev/stdin, /dev/stdout Dan /dev/stderr?

  3. Kapan Menggunakan /dev/random Vs /dev/urandom?

  1. Linux – Apa Arti Huruf 'u' Di /dev/urandom?

  2. Cara memetakan perangkat /dev/sdX dan /dev/mapper/mpathY dari perangkat /dev/dm-Z

  3. Bagaimana cara menyandikan base64 /dev/random atau /dev/urandom?

  1. Kapan saya harus menggunakan /dev/shm/ dan kapan saya harus menggunakan /tmp/?

  2. Mengapa dd from /dev/random memberikan ukuran file yang berbeda?

  3. Linux:Perbedaan antara /dev/console , /dev/tty dan /dev/tty0