Saya baru menggunakan GnuPG dan mencoba memahami cara terbaik untuk menggunakannya. Saya telah mengulas penjelasan singkat, mudah dimengerti tentang GPG / PGP untuk orang-orang non-teknis? , tetapi sebagian besar panduan menjelaskan PGP dengan perspektif mesin tunggal.
Saya ingin menggunakan GnuPG pada tiga perangkat komputasi: PC Linux, laptop Linux, dan ponsel Android.
Kasing penggunaan mendasar adalah mengenkripsi / mendekripsi email yang dikelola oleh layanan IMAP, sehingga semua perangkat memerlukan kunci pribadi yang sama untuk dekripsi.
Saya pikir pilihan saya adalah:
Cukup salin semua kunci saya ke keyring pada setiap perangkat dan terutama bergantung pada kata sandi kunci pribadi untuk perlindungan.
Buat kunci master (dengan --gen-key) untuk mewakili identitas saya, lalu buat kunci sekali pakai terpisah (lagi dengan --gen-key) untuk mengenkripsi / mendekripsi email dan menandatangani dengan kunci master. Yang pertama hanya berada di PC saya, yang terakhir didistribusikan ke setiap perangkat. Selama perangkat seluler saya tidak terganggu, maka kunci sekali pakai tetap valid.
Saya mungkin terlalu paranoid dan membuat ini lebih rumit dari yang seharusnya, tapi tolong saya. Saya percaya tidak menaruh semua telur Anda dalam satu keranjang.
Kunci master seharusnya menjadi identitas digital saya. Banyak usaha akan dihabiskan untuk membangun kepercayaan di sekitar identitas itu, dan saya lebih suka menderita ketidaknyamanan paranoia saya daripada kehilangan kunci saya dari kecerobohan dan harus membangun kepercayaan di sekitar kunci master baru (mungkin ini tidak seburuk yang saya berpikir, tapi saya baru dalam hal ini) .
Saya lebih cenderung kehilangan laptop atau ponsel saya daripada PC saya. Jika kehilangan == kompromi, maka saya lebih suka kehilangan pasangan kunci sekali pakai (yang dapat saya batalkan) daripada pasangan kunci utama saya. Saya selalu bisa memberikan kepercayaan kunci master saya pada kunci sekali pakai baru.
Maaf untuk pertanyaan yang sangat panjang. :-)
TL; DR
Apakah kata sandi perlindungan yang cukup untuk menyimpan kunci pribadi master saya di beberapa perangkat?
Apakah rencana saya untuk opsi # 2 layak? Apakah saya mendapatkan sesuatu yang salah atau dapatkah itu diperbaiki?
Jika opsi # 2 adalah ide yang buruk, lalu apa praktik terbaik saat menggunakan GnuPG untuk satu pengguna di beberapa perangkat?
Sebagai seseorang yang juga tidak suka satu titik kegagalan (termasuk kunci utama dan terutama kata sandi), ini adalah cara saya akan melakukannya. Hal ini memungkinkan perangkat untuk beroperasi melalui web kepercayaan, sambil tetap memungkinkan identitas terdesentralisasi.
Saya tidak tahu apakah sudah ada sistem yang sudah ada untuk ini, tapi saya pikir itu mungkin bisa scrobbled bersama dengan cron job dan beberapa baris Bash.
Dalam sistem ini, Anda memiliki dua kelas keypair: keypair perangkat dan keypairs kerangka waktu . Satu keypair perangkat dihasilkan untuk pengguna di setiap perangkat, dan tetap pada perangkat itu untuk seumur hidup. Sebuah keypair jangka waktu yang dihasilkan oleh server pusat pada interval rutin (bulanan, harian, jam - tergantung pada seberapa paranoid Anda ingin menjadi). Kunci publik diumumkan secara publik (server itu sendiri memiliki perangkat keypair untuk menandatangani dengan), dan kunci pribadi didistribusikan dienkripsi dengan kunci publik dari setiap perangkat yang dimaksudkan untuk memiliki akses ke kunci ini. (Distribusi ini harus bersifat pribadi mungkin, mis. Memiliki perangkat yang terhubung ke server secara langsung.)
Untuk menandatangani pesan, Anda akan menggunakan kunci perangkat dari perangkat apa pun yang Anda kirimi pesan. Jika seseorang ingin mengirimi Anda pesan, mereka dapat menandatanganinya dengan kunci waktu publik Anda saat ini. (Mereka harus memiliki sistem otomatis untuk mengikuti pengumuman.) Anda kemudian dapat membaca pesan mereka dari perangkat apa pun.
Untuk membaca pesan terenkripsi yang lebih lama, keypairs kerangka waktu yang lebih lama dicadangkan di setiap perangkat sesuai dengan strategi yang sesuai (termasuk server penghasil jangka waktu-keypair, jika Anda menginginkannya - lagi, tergantung pada tingkat paranoia Anda), di mana Anda memiliki perangkat lain dari keypairs yang dilindungi kata sandi yang melindungi kunci lama (dengan banyak kata sandi dari waktu ke waktu karena Anda merasa nyaman mengingat).
Jika suatu perangkat dicuri atau dikompromikan, Anda dapat menggunakan salah satu dari perangkat Anda yang dipercayai publik untuk membuat pesan yang ditandatangani secara publik untuk memverifikasi identitas Anda (dengan cara apa pun, misalnya mencatat bahwa Anda akan menghadiri pertemuan umum dan / atau memiliki teman tepercaya memverifikasi Anda secara langsung) dan mencabut kunci perangkat yang disusupi dan kunci waktu apa pun yang dapat diaksesnya. Saat mencabut kunci, Anda juga menghapus perangkat yang dicuri dari daftar perangkat tepercaya server (dengan kata sandi dan kunci perangkat tepercaya Anda).
Kebijakan untuk mempercayai kunci perangkat yang baru diumumkan harus mengikuti sesuatu seperti kebijakan kepercayaan saat ini - Saya percaya kebijakan yang tepat adalah mempercayai server penghasil, perangkat seluler, dan perangkat besar dan berat, karena sulit untuk mencuri / menyusup ke dalam telepon pengguna, PC desktop, dan VPS dalam pencurian terpadu sebelum pemberitahuan pengguna.
Jika server Anda dikompromikan, Anda hanya mencabutnya dengan prosedur yang sama dengan yang dijelaskan untuk perangkat lain yang dikompromikan (mungkin dengan kebijakan yang lebih kuat mirip dengan yang menambahkan perangkat baru), dan menggunakan server yang diamankan ulang atau sama sekali baru (dengan keypair perangkat baru) maju.
sumber