KomputerKeselamatan

Algoritma Diffie-Hellman: janji

Rupanya, beberapa orang hari ini, menggunakan data yang melalui saluran komunikasi yang tidak aman, bayangkan apa algoritma Diffie-Hellman. Bahkan, banyak yang tidak memahami dan perlu. Namun, pengguna dari sistem komputer, sehingga untuk berbicara, lebih penasaran untuk memahami ini tidak bisa terluka. Secara khusus, pertukaran kunci Diffie-Hellman mungkin berguna bagi pengguna yang tertarik dalam isu-isu keamanan informasi dan kriptografi.

Apa metode Diffie-Hellman?

Jika kita mendekati pertanyaan dari algoritma itu sendiri, namun tanpa masuk ke rincian teknis dan matematis, kita dapat mendefinisikan sebagai metode enkripsi dan dekripsi dari informasi yang dikirimkan dan diterima antara dua atau lebih pengguna komputer atau sistem lain yang melibatkan pertukaran data dengan menggunakan saluran komunikasi yang tidak dilindungi.

Karena jelas, dengan tidak adanya saluran perlindungan untuk mencegat atau memodifikasi file dalam proses transmisi dan menerima, dan penyerang bisa. Namun, distribusi kunci Diffie-Hellman untuk akses untuk mengirim dan menerima data sehingga gangguan yang hampir sepenuhnya dihilangkan. Dalam komunikasi informasi ini terdaftar dengan saluran komunikasi (tanpa perlindungan daripadanya) menjadi aman jika kedua belah pihak menggunakan tombol yang sama.

prasejarah

Algoritma Diffie-Hellman diperkenalkan ke dunia kembali pada tahun 1976. penciptanya menjadi Uitfrid Diffie dan Martin Hellman, yang dalam penelitiannya metode enkripsi data aman dan terpercaya berdasarkan pada karya Ralph Merkle, yang mengembangkan apa yang disebut sistem distribusi kunci publik.

Tetapi jika Merkle dikembangkan secara eksklusif teoritis, Diffie dan Hellman disampaikan kepada publik solusi praktis untuk masalah ini.

Penjelasan paling sederhana

Sebenarnya, tes ini didasarkan pada teknologi enkripsi kriptografi yang sekarang mengejutkan banyak ahli di bidang ini. cipher antologi termasuk cukup sejarah panjang. Inti dari seluruh proses adalah untuk memastikan bahwa ada dua pihak, e-mail, atau dengan beberapa data bertukar dengan bantuan program komputer. Tapi pertahanan dilakukan sedemikian rupa bahwa algoritma Diffie-Hellman sendiri mensyaratkan bahwa kunci dekripsi diketahui kedua belah pihak (mengirim dan menerima). Bila ini benar-benar penting antara mereka yang akan menghasilkan nomor acak awal (titik ini akan menjelaskan ketika mempertimbangkan rumus perhitungan kunci).

Metode enkripsi data periode sebelumnya

Untuk membuatnya lebih jelas, kami mencatat bahwa cara yang paling primitif untuk mengenkripsi data yang, misalnya, ejaan tidak kiri ke kanan, seperti adat di sebagian besar script dan kanan ke kiri. Demikian pula, Anda dapat dengan mudah menggunakan dan penggantian huruf-huruf alfabet dalam sebuah pernyataan. Sebagai contoh, kata mengubah surat kedua dengan yang pertama, keempat - yang ketiga dan seterusnya. Dokumen yang sama saat melihat mungkin menjadi omong kosong. Namun, orang yang menulis kode sumber, menurut orang yang harus membaca, dalam rangka apa harus ditempatkan karakter tertentu. Ini disebut kunci.

Perhatikan bahwa sebagian besar teks masih undeciphered dan tulisan runcing dari bangsa Sumeria dan Mesir kuno tidak dipahami kripto-analis hanya karena fakta bahwa mereka tidak tahu cara mengatur urutan yang diinginkan karakter.

Dan dalam kasus kami - varian Diffie-Hellman mengasumsikan bahwa kunci dekripsi diketahui sejumlah pengguna. Namun, dan di sini adalah perlu untuk membuat reservasi, karena gangguan pada transmisi data dienkripsi jenis ini dapat dilanggar oleh pihak ketiga, jika mereka akan memecahkan substitusi atau penggantian karakter.

Tak perlu dikatakan bahwa sekarang ada cryptosystem cukup kuat berdasarkan algoritma seperti AES, tetapi mereka tidak memberikan jaminan penuh dari perlindungan terhadap hacker data pihak ketiga.

Nah, sekarang kita fokus pada sistem paling enkripsi, aplikasi praktis dan tingkat proteksi.

algoritma Diffie-Hellman: janji

algoritma diciptakan sehingga untuk memastikan tidak hanya privasi data selama transmisi dari satu pihak ke yang lain, tetapi juga untuk menghapusnya dengan aman pada saat diterima. Secara kasar, seperti sistem transmisi harus memastikan perlindungan penuh untuk semua saluran yang mungkin komunikasi.

Ingat, selama Perang Dunia Kedua, ketika kecerdasan semua negara-negara sekutu berhasil diburu untuk mesin enkripsi disebut "Enigma", oleh yang mengirimkan pesan dikodekan ke kode Morse. Setelah semua, itu tidak bisa memecahkan tidak cipher, bahkan cara kita bicarakan, "maju" ahli dalam kriptografi. Hanya setelah ditangkap diperoleh kunci untuk mengartikan pesan yang dikirim oleh angkatan laut Jerman.

algoritma Diffie-Hellman: gambaran

Jadi, algoritma melibatkan penggunaan beberapa konsep dasar. Misalkan kita memiliki kasus yang paling sederhana, ketika kedua belah pihak (pengguna) yang hadir pada sambungan. Kami menunjukkan mereka sebagai A dan B.

Mereka menggunakan dua nomor X dan Y, tidak rahasia di saluran komunikasi ini, untuk mengontrol serah terima. Seluruh esensi dari pertanyaan bermuara, untuk membuat atas dasar mereka dari jenis baru nilai yang akan menjadi kunci. Tapi! Penelepon pertama adalah menggunakan besar bilangan prima, dan yang kedua - selalu integer (dibagi), tetapi lebih rendah dalam rangka daripada yang pertama.

Tentu, pengguna setuju bahwa angka-angka ini dirahasiakan. Namun, karena saluran tidak aman, dua nomor dapat diketahui dan lainnya pihak yang berkepentingan. Itu sebabnya orang dalam pesan yang sama dipertukarkan kunci rahasia untuk mendekripsi pesan.

Rumus dasar untuk menghitung kunci

Hal ini diasumsikan bahwa Diffie-Hellman mengacu pada sistem yang disebut enkripsi simetris, di mana ada laporan dari cipher asimetris. Namun, jika kita mempertimbangkan aspek-aspek utama dari perhitungan pihak tuan rumah kunci, harus mengingat setidaknya aljabar.

Jadi, misalnya, masing-masing pelanggan menghasilkan angka acak a dan b. Mereka tahu terlebih dahulu nilai x dan y, yang bahkan mungkin "dijahit" dalam perangkat lunak yang diperlukan.

Saat mengirim atau menerima pesan seperti itu pelanggan A menghitung nilai kunci, mulai dari rumus A = x mod y, sedangkan yang kedua menggunakan kombinasi B = x b mod y, diikuti oleh pengiriman kunci dekripsi untuk pengguna pertama. Ini adalah langkah pertama.

Sekarang anggaplah bahwa pihak ketiga yang bersangkutan memiliki kemampuan dan kedua nilai-nilai dihitung dari A dan B. Semua sama, tidak bisa campur tangan dalam proses mentransfer data, karena langkah kedua adalah untuk mengetahui bagaimana untuk menghitung kunci yang sama.

Dari rumus di atas, Anda bisa menginap di perhitungan kunci yang sama. Jika Anda melihat contoh Diffie-Hellman mungkin terlihat seperti ini:

1) menghitung kunci pelanggan pertama berdasarkan x dengan rumus B mod y = x ab mod y;

2) Kedua, berdasarkan jumlah awal y dan disiapkan sesuai dengan protokol jaringan opsi B, mendefinisikan kunci dari parameter A yang ada: A b mod y = x ba mod y.

Seperti yang Anda lihat, nilai-nilai akhir bahkan ketika derajat permutasi bertepatan. Dengan demikian, decoding data oleh kedua belah pihak berkurang, seperti yang mereka katakan, untuk common denominator.

Kerentanan intervensi dalam proses transfer data

Seperti yang mungkin Anda harapkan, intervensi pihak ketiga tidak dikecualikan. Namun, dalam hal ini adalah awalnya menentukan jumlah dari 10 100, atau bahkan 10.300.

Tak perlu dikatakan bahwa tidak ada hari ini untuk membuat password atau kode akses generator untuk menentukan jumlah itu sendiri tidak bisa (kecuali bahwa pilihan interim awal dan akhir dan bukan untuk intervensi dalam sistem transmisi). Ini akan mengambil begitu banyak waktu bahwa kehidupan di bumi akan berakhir. Namun, kesenjangan dalam suatu sistem keamanan masih ada.

Paling sering mereka berhubungan dengan pengetahuan tentang logaritma diskrit. Jika pengetahuan tersebut adalah untuk memecahkan algoritma Diffie-Hellman dapat (tapi hanya untuk parameter awal dan akhir seperti yang disebutkan di atas). Hal lain adalah bahwa memiliki unit pengetahuan tersebut.

Menggunakan algoritma untuk platform Java

algoritma Diffie-Hellman digunakan dalam Java secara eksklusif dengan banding seperti "client-server".

Dengan kata lain, server tertunda mesin klien connect. Ketika koneksi yang dibuat, ada kinerja algoritma pada mencari kunci publik atau swasta, dan kemudian pengguna bisa mendapatkan akses penuh ke semua fungsi dan data dari server itu sendiri. Kadang-kadang hal ini benar bahkan dalam sistem mobile, namun, ini sangat sedikit orang tahu, semakin banyak yang bagian eksekutif dari karya-karya dalam mode invisible dalam bentuk script executable.

Menggunakan algoritma untuk platform C (+ / ++)

Jika Anda melihat Diffie-Hellman dalam «C» (+ / ++), maka tidak ada begitu halus. Faktanya adalah bahwa kadang-kadang ada masalah ketika sebagian besar pekerjaan dengan perhitungan sendiri pemrograman bahasa terkait dengan floating point. Itulah sebabnya saat mengatur nilai integer, atau ketika mencoba untuk pembulatan (bahkan eksponensial), mungkin ada masalah pada waktu kompilasi. Terutama menyangkut fungsi penyalahgunaan int.

Namun, perlu memperhatikan sisa komponen executable yang, sebagai suatu peraturan, adalah kelas pekerjaan, yang eksponensial yang sama atau terkait perpustakaan attachable GMP.

algoritma enkripsi modern

Hal ini diyakini bahwa Diffie-Hellman masih mengalahkan, tidak ada yang bisa. Bahkan, dialah yang menjabat sebagai dasar bagi munculnya sistem dikenal seperti perlindungan di bidang enkripsi data sebagai AES128 dan AES256.

Namun, sebagai praktek menunjukkan, meskipun ketersediaan angka dalam abstrak tidak dirasakan oleh manusia, sebagian besar sistem jenis ini menggunakan hanya nilai dari selusin pertama (tidak lebih), tetapi algoritma itu sendiri menyiratkan angka satu juta kali lebih.

bukan sebuah epilog

Secara umum, mungkin, sudah jelas apa yang dimaksud sistem ini dan apa komponen algoritmik nya. Hanya tetap menambahkan bahwa itu diberkahi dengan potensi besar sehingga sepenuhnya hampir tidak ada yang menggunakan.

Di sisi lain, dan kerentanan dalam algoritma cukup jelas. Menilai sendiri: pada kenyataannya, menulis sebuah program untuk menghitung logaritma diskrit, hampir semua dari penciptanya dapat mengakses tidak hanya untuk parameter awal yang ditetapkan oleh pengguna, tetapi juga untuk kunci publik, yang dihasilkan dalam enkripsi dan dekripsi sistem.

Dalam kasus yang paling sederhana itu sudah cukup untuk membuat instalasi dari eksekusi Jawa-applet, yang dapat digunakan bahkan dalam komunikasi mobile. Tentu saja, pengguna tidak akan tahu tentang hal itu, tetapi datanya akan dapat mengeksploitasi siapa pun.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 id.unansea.com. Theme powered by WordPress.