Pemahaman Anda benar. Semua hal lain dianggap sama, tidak masalah; tapi ada keriput.
Salah satu keuntungan membuat mereka di server yang dimaksud adalah meminimalkan kemungkinan kunci dikompromikan saat transit. Selama Anda menggunakan mesin yang aman untuk menghasilkannya, dan metode yang aman (kebal terhadap serangan MITM) untuk memindahkannya ke server, Anda akan lolos dari itu. Jangan lupa untuk menghapusnya dengan aman di sistem penghasil, kecuali Anda sengaja menyimpan salinannya, dan dijamin aman.
Satu keuntungan untuk menghasilkan pada mesin yang terpisah: biasanya, ini akan menjadi desktop Anda. Kumpulan entropi pada mesin desktop hampir selalu lebih dalam daripada pada server yang tidak dijaga, karena desktop memiliki sumber besar keacakan yang terhubung melalui kabel keyboard dan mouse (yaitu, Anda!). Kekurangan entropi dapat menyebabkan pembuatan kunci membutuhkan waktu lama, atau menyebabkannya menggunakan /dev/urandom
output PRNG, tergantung pada seberapa paranoid alat pembangkitnya, dan ini dapat menyebabkan kunci yang lebih lemah; mesin desktop cenderung tidak memiliki masalah ini.
Sunting kemudian : berdasarkan diskusi di tempat lain yang terhubung di sini, dua poin telah dikemukakan. Pertama, Anda bisa pergi untuk sebuah rumah setengah jalan dengan menghasilkan entropi pada desktop Anda dengan misalnya dd if=/dev/random bs=1k count=10 of=/tmp/entropy.dat
, menyalin bahwa ke server jauh, dan makan itu untuk proses pembangkitan kunci Anda baik secara langsung atau dengan memperdalam kolam renang entropi remote server. Saya belum menemukan cara untuk melakukan yang pertama, dan melakukan yang terakhir umumnya memerlukan hak istimewa, yang - jika saluran antara Anda dan server jauh tidak aman, yang lebih merupakan titik dari seluruh keberatan - juga tidak aman.
Kedua, mjg59 yang diperkirakan menimbulkan masalah modul keamanan perangkat keras - yaitu, perangkat tempat Anda meletakkan, atau di dalam mana Anda membuat, kunci pribadi, dan yang kemudian melakukan operasi kunci tanpa pernah membiarkan kunci keluar. Itu poin yang sangat baik, tetapi di luar ruang lingkup pertanyaan ini.
Tetapi hasil yang lebih umum dari utas - bahwa Anda harus memiliki model ancaman yang tepat, dan memilih respons Anda dengan tepat - adalah yang baik. Model ancaman saya adalah bahwa saluran komunikasi saya aman tetapi titik akhir saya sedang diserang dengan cerdas. Itu berarti saya akan menghasilkan keypairs SSL yang kuat secara entropis secara lokal dan mendistribusikannya. Jika ternyata model saya tidak akurat dan comms saya ternyata rentan, saya akan segera tahu untuk berasumsi bahwa semua keypairs SSL saya terganggu. Jika model ancaman Anda berbeda, Anda harus menyesuaikan praktik Anda sesuai.