Distribusi kunci publik. Masalah distribusi kunci dalam kriptografi Distribusi kunci dengan partisipasi pusat distribusi kunci

Protokol distribusi kunci Protokol pembentukan kunci adalah protokol kriptografi di mana rahasia bersama tersedia bagi dua pihak atau lebih untuk digunakan selanjutnya untuk tujuan kriptografi.

Protokol distribusi kunci dibagi menjadi dua kelas:

    Protokol transportasi utama;

    Protokol pertukaran kunci.

Protokol transportasi utama(transportasi kunci) adalah protokol distribusi kunci di mana satu peserta membuat atau memperoleh rahasia dan mengirimkannya dengan aman ke peserta lain.

Protokol pertukaran kunci(perjanjian kunci, pertukaran kunci) adalah protokol distribusi kunci di mana rahasia bersama dikerjakan oleh dua atau lebih peserta sebagai fungsi dari informasi yang disumbangkan oleh (atau dikaitkan dengan) masing-masing peserta sedemikian rupa sehingga (idealnya) tidak ada pihak lain yang terlibat. pihak dapat menentukan terlebih dahulu rahasia bersama mereka.

Ada dua bentuk tambahan protokol distribusi kunci. Suatu protokol dikatakan melakukan pembaruan kunci jika protokol tersebut menghasilkan kunci yang benar-benar baru dan tidak bergantung pada kunci yang dihasilkan pada sesi protokol sebelumnya. Protokol menghasilkan kunci turunan (key derivation) jika kunci baru “diturunkan” dari kunci yang sudah ada di antara peserta dalam sistem kriptografi.

Properti utama protokol distribusi kunci mencakup properti otentikasi kunci, konfirmasi kunci, dan otentikasi kunci eksplisit.

Otentikasi kunci (implisit).(otentikasi kunci implisit) - properti di mana satu peserta dalam suatu protokol memastikan bahwa tidak ada pihak lain selain peserta kedua yang diidentifikasi secara khusus dalam protokol (dan mungkin otoritas kepercayaan) yang dapat mengakses kunci rahasia yang diperoleh dalam protokol. Tidak ada jaminan bahwa peserta kedua benar-benar mendapatkan akses ke kunci tersebut, tetapi tidak ada orang lain selain dia yang bisa mendapatkannya. Otentikasi kunci implisit tidak bergantung pada kepemilikan kunci sebenarnya oleh pihak lain dan tidak memerlukan tindakan apa pun dari pihak lain.

Konfirmasi kunci(konfirmasi kunci) - properti yang membuat salah satu peserta dalam protokol yakin bahwa peserta lain (mungkin tidak teridentifikasi) benar-benar memiliki kunci rahasia yang diperoleh dalam protokol.

Otentikasi Kunci Eksplisit(otentikasi kunci eksplisit) - properti yang dijalankan ketika otentikasi kunci (implisit) dan konfirmasi kunci dilakukan secara bersamaan.

    1. Protokol Needham-Schroeder pada kunci simetris

Protokol ini mendasari sejumlah besar protokol distribusi kunci yang menggunakan pusat terpercaya. Ada dua jenis protokol ini:

    Protokol Needham-Schroeder pada kunci simetris;

    Protokol Needham-Schroeder pada kunci asimetris.

Protokol kunci simetris berfungsi sebagai berikut:

Tahap awal:

Distribusi kunci adalah proses paling penting dalam manajemen kunci. Ada dua persyaratan untuk itu:

1.Efisiensi dan ketepatan distribusi

2. Kerahasiaan kunci yang didistribusikan.

Baru-baru ini, telah terjadi pergeseran nyata ke arah penggunaan sistem kriptografi kunci publik, yang mana masalah distribusi kunci dapat dihilangkan. Meski demikian, pendistribusian informasi penting dalam sistem informasi memerlukan solusi baru yang efektif.

Distribusi kunci antar pengguna dilakukan oleh dua orang pendekatan yang berbeda:

1.Dengan membuat satu atau beberapa pusat distribusi utama. Kerugian dari pendekatan ini adalah pusat distribusi mengetahui siapa yang diberi kunci apa dan ini memungkinkan untuk membaca semua pesan yang beredar di IS. Kemungkinan pelanggaran mempunyai dampak yang signifikan terhadap perlindungan.

2. Pertukaran kunci langsung antar pengguna sistem informasi.

Tantangannya kemudian adalah untuk mengautentikasi subjek secara andal.

Dalam kedua kasus tersebut, keaslian sesi komunikasi harus dijamin. Hal ini dapat dicapai dengan dua cara:

1. Mekanisme request-response yang terdiri dari sebagai berikut. Jika pengguna A ingin memastikan bahwa pesan yang diterimanya dari B tidak salah, ia menyertakan elemen (permintaan) yang tidak dapat diprediksi dalam pesan yang ia kirimkan ke B. Saat merespons, pengguna B harus melakukan beberapa operasi pada elemen ini (misalnya, tambahkan 1). Hal ini tidak dapat dilakukan terlebih dahulu, karena tidak diketahui nomor acak mana yang akan muncul dalam permintaan tersebut. Setelah menerima respon dengan hasil tindakannya, Pengguna A dapat yakin bahwa sesi tersebut asli. Kerugian dari metode ini adalah kemungkinan terbentuknya pola yang rumit antara permintaan dan respons.

2. Mekanisme stempel waktu (“cap waktu”). Ini melibatkan pencatatan waktu untuk setiap pesan. Dalam hal ini, setiap pengguna IS dapat mengetahui berapa “lama” pesan yang masuk.

Dalam kedua kasus tersebut, enkripsi harus digunakan untuk memastikan bahwa respons tidak dikirim oleh penyerang dan stempel waktunya tidak diubah.

Saat menggunakan stempel waktu, ada masalah dengan interval waktu tunda yang dapat diterima untuk memverifikasi keaslian suatu sesi. Lagi pula, pesan dengan “cap waktu” pada prinsipnya tidak dapat dikirimkan secara instan. Selain itu, jam komputer penerima dan pengirim tidak dapat disinkronkan sepenuhnya. Keterlambatan “stempel” apa yang dianggap mencurigakan?

Oleh karena itu, dalam sistem informasi nyata, misalnya dalam sistem pembayaran kartu kredit, yang digunakan adalah mekanisme kedua untuk menetapkan keaslian dan melindungi terhadap pemalsuan. Interval yang digunakan adalah satu hingga beberapa menit. Jumlah yang besar metode yang diketahui pencurian uang elektronik, didasarkan pada “menjepit” ke dalam celah ini dengan permintaan palsu untuk menarik uang.

Kriptosistem kunci publik dapat digunakan untuk bertukar kunci menggunakan algoritma RSA yang sama, namun algoritma Diffie-Hellman telah terbukti sangat efektif, memungkinkan dua pengguna untuk bertukar kunci tanpa perantara, yang kemudian dapat digunakan untuk enkripsi simetris. Meskipun algoritma Diffie-Hellman sederhana, kelemahannya dibandingkan dengan sistem RSA adalah tidak adanya jaminan batas bawah untuk kompleksitas penemuan kunci.

Selain itu, meskipun algoritma yang dijelaskan menghindari masalah transfer kunci tersembunyi, kebutuhan akan otentikasi tetap ada. Tanpa dana tambahan, salah satu pengguna tidak dapat memastikan bahwa dia bertukar kunci dengan pengguna yang dia butuhkan. Bahaya peniruan dalam kasus ini tetap ada.

Solusi orisinal untuk masalah “kunci yang mengembara” sedang dikembangkan secara aktif oleh para spesialis. Sistem ini merupakan kompromi antara sistem kunci publik dan algoritma konvensional, yang mengharuskan pengirim dan penerima memiliki kunci yang sama.

Ide metodenya cukup sederhana. Setelah kunci digunakan dalam satu sesi, menurut aturan tertentu, kunci tersebut diganti dengan sesi lain.

Aturan ini harus diketahui baik oleh pengirim maupun penerima. Mengetahui aturannya, setelah menerima pesan berikutnya, penerima juga mengganti kuncinya. Jika aturan penggantian kunci diikuti dengan cermat oleh pengirim dan penerima, maka setiap saat mereka memiliki kunci yang sama. Mengubah kunci secara terus-menerus mempersulit penyerang untuk mengungkapkan informasi.

Tugas utama dalam penerapan metode ini adalah memilih aturan perubahan kunci yang efektif. Cara termudah adalah dengan membuat daftar kunci acak. Kunci diubah dalam urutan daftar. Namun, jelas daftar itu harus disampaikan entah bagaimana caranya.

Pilihan lainnya adalah dengan menggunakan algoritma matematika berdasarkan apa yang disebut urutan iteratif. Pada sekumpulan kunci, operasi yang sama pada suatu elemen menghasilkan elemen lainnya. Urutan operasi ini memungkinkan Anda berpindah dari satu elemen ke elemen lainnya hingga seluruh rangkaian telah diiterasi.

Yang paling mudah diakses adalah penggunaan ladang Galois. Dengan menaikkan elemen pembangkit ke pangkat, Anda dapat berpindah dari satu angka ke angka lainnya secara berurutan. Nomor-nomor ini diterima sebagai kunci.

Informasi kunci dalam hal ini adalah elemen sumber, yang harus diketahui baik oleh pengirim maupun penerima sebelum memulai komunikasi.

Keandalan metode tersebut harus dipastikan dengan mempertimbangkan pengetahuan penyerang tentang aturan perubahan kunci yang digunakan.

Pengelolaan kunci rahasia dihubungkan melalui protokol untuk distribusinya antara instalasi kunci dan sistem manajemen kunci. Sistem instalasi kunci mendefinisikan algoritma dan prosedur untuk menghasilkan, mendistribusikan, mengirimkan dan memverifikasi kunci.
Sistem manajemen kunci menentukan prosedur untuk menggunakan, mengubah, menyimpan, menghapus kunci yang disusupi dari peredaran dan menghancurkan kunci lama.

Pra-distribusi kunci

Metode keamanan kriptografi digunakan untuk melindungi informasi yang dikirimkan melalui saluran komunikasi terbuka secara andal. Untuk menggunakan metode ini, Anda harus menyelesaikan pemilihan awal dan pemasangan kunci. Biasanya, saluran komunikasi yang aman diperlukan untuk distribusi awal kunci.
Paling cara yang dapat diandalkan distribusi awal kunci - pertemuan pribadi semua pihak yang berinteraksi, komunikasi kurir. Dengan jumlah pengguna yang besar, diperlukan distribusi awal sejumlah besar informasi penting dan penyimpanan lebih lanjut.
Dalam praktiknya, sistem khusus untuk pra-distribusi kunci digunakan. Sistem ini menyediakan distribusi dan penyimpanan bukan dari kunci itu sendiri, namun beberapa informasi yang lebih kecil yang menjadi dasar bagi masing-masing pihak untuk menghitung kunci sesi.
Ada dua algoritma untuk distribusi pra-kunci:
  • informasi yang dikirimkan, termasuk bagian terbuka, yang dapat ditempatkan pada server umum, maupun bagian rahasia yang diperuntukkan bagi masing-masing pihak;
  • Nilai kunci saat ini untuk interaksi antar pelanggan dihitung menggunakan bagian rahasia dan terbuka umum dari informasi kunci asli yang tersedia untuk pelanggan.
Ada dua persyaratan untuk sistem pra-distribusi utama:
  • dia harusnya berkelanjutan , yaitu memperhitungkan kemungkinan pengungkapan sebagian kunci jika terjadi kompromi, penipuan, atau kolusi pelanggan;
  • dia harusnya fleksibel - izinkan kemungkinan itu pemulihan cepat dengan mengecualikan pelanggan yang disusupi dan menghubungkan pelanggan baru.

Kunci penerusan

Setelah distribusi pra-kunci, kunci sesi tertentu harus ditransfer. Pemindahan kunci tersebut dilakukan dengan menggunakan enkripsi menggunakan kunci yang diperoleh sebelumnya.
Saat mentransfer kunci rahasia melalui saluran komunikasi terbuka antara pelanggan yang tidak percaya satu sama lain, seluruh rentang tugas otentikasi harus digunakan.
Untuk mengelola transfer kunci secara terpusat, telah dibuat pusat tepercaya khusus yang berfungsi sebagai pusat distribusi atau enkripsi ulang kunci. Dalam kasus pertama, kunci dibuat di pusat distribusi itu sendiri, dan dalam kasus kedua, kunci dibuat oleh pelanggan itu sendiri.

Distribusi kunci publik

Karena banyaknya pelanggan jaringan, pendekatan distribusi utama yang disebutkan di atas menjadi sangat merepotkan. Diffie dan Hellman memecahkan masalah ini dengan menggunakan saluran komunikasi yang tidak aman.
Dalam sistem distribusi kunci publik yang mereka usulkan, masing-masing pihak pada awalnya memiliki parameter rahasianya sendiri. Protokol interaksi dilakukan melalui saluran komunikasi terbuka.
Para pihak bertukar beberapa pesan yang dibentuk menggunakan mereka parameter rahasia. Berdasarkan hasil pertukaran, pelanggan menghitung kunci komunikasi rahasia bersama. Protokol tersebut tidak terkait dengan distribusi dan penerusan kunci, karena pada awalnya tidak ada pelanggan yang memiliki kunci.
Dalam bentuknya yang ditingkatkan, sistem Diffie-Hellman memungkinkan Anda memperoleh kunci bersama, memeriksa dan mengonfirmasi kebenaran perhitungan, dan mengautentikasi para pihak.

Skema pembagian rahasia

Skema pembagian rahasia adalah setiap pelanggan dialokasikan bagian rahasianya dan ditentukan oleh dua algoritma yang memenuhi syarat bahwa tidak ada pengguna yang memiliki kunci grup penuh.
Algoritme pertama menentukan urutan penghitungan nilai saham berdasarkan nilai kunci rahasia tertentu, algoritma kedua dirancang untuk memulihkan rahasia dari saham yang diketahui.
Generalisasi skema pembagian rahasia terkait dengan:

  • dengan diperkenalkannya struktur akses, ketika keputusan dapat diambil bukan oleh satu orang, tetapi oleh beberapa kelompok yang berbeda, dan beberapa peserta mungkin diberikan hak “veto”;
  • memperkenalkan mekanisme untuk mendeteksi penipuan atau kolusi antar peserta;
  • dengan diperkenalkannya protokol khusus untuk pembagian saham antar peserta dengan konfirmasi kebenaran informasi yang diterima dan otentikasi para pihak.

Sertifikat

Masalah dengan sertifikasi tanda tangan digital adalah sebagai berikut. Sebelum menggunakan kunci publik, pelanggan harus yakin bahwa kunci publik tersebut adalah milik penerimanya. Kunci publik disimpan di server publik dan penyerang memiliki kemampuan untuk mengganti kunci publik salah satu pelanggan dan bertindak atas namanya.
Untuk melindungi kunci publik, pusat sertifikasi khusus telah dibentuk, yang berperan sebagai pihak ketiga dan mengesahkan kunci publik setiap pelanggan dengan tanda tangan digitalnya.
Sertifikat adalah sekumpulan data yang disertifikasi oleh tanda tangan digital dari pusat, dan mencakup kunci publik dan daftar atribut milik pelanggan. Daftar ini mencakup atribut:
  • nama pengguna dan otoritas sertifikat;
  • nomor sertifikat;
  • masa berlaku sertifikat;
  • penugasan kunci publik (enkripsi, tanda tangan digital), dll.
Standar internasional ISO X.509 mendefinisikan struktur umum sertifikat kunci publik dan protokol penggunaannya untuk otentikasi dalam jaringan.

Otoritas Sertifikasi

Pusat sertifikasi dirancang untuk mendaftarkan pelanggan, menghasilkan sertifikat kunci publik, menyimpan sertifikat yang diproduksi, memelihara direktori sertifikat yang valid, dan menerbitkan daftar sertifikat yang dicabut lebih awal.
Untuk jaringan dengan jumlah pelanggan yang besar, beberapa otoritas sertifikasi dibuat dalam struktur hierarki. Otoritas sertifikasi utama menerbitkan sertifikat ke pusat industri bawahannya, yang menegaskan kepercayaan terhadap kunci publik dari pusat tersebut.
Mengetahui hierarki dan subordinasi otoritas sertifikasi satu sama lain, dimungkinkan untuk menentukan apakah pelanggan adalah pemilik kunci publik tertentu.
Kesulitan utama dalam mendirikan pusat sertifikasi adalah status hukum dan potensi kemampuan finansial mereka untuk membayar kompensasi atas kerusakan akibat kegagalan mematuhi sertifikat yang ditandatangani secara digital yang dikeluarkan oleh pusat tersebut, perjanjian dan kontrak yang terganggu karena penolakan tanda tangan digital atau pemalsuan.

Pendekatan ini menciptakan semacam lingkaran setan: untuk berbagi rahasia (pesan yang dikirimkan), pengirim dan penerima harus sudah memiliki rahasia yang sama (kunci enkripsi). Lebih awal masalah ini diselesaikan dengan menggunakan metode non-kriptografi - mentransfer kunci melalui saluran komunikasi yang dilindungi secara fisik dari penyadapan (Gbr. 1). Namun, membuat saluran seperti itu dan menjaganya agar tetap siap operasional jika terjadi kebutuhan darurat untuk mentransfer kunci cukup memakan waktu dan biaya.

Beras. 1.

Masalah ini berhasil diselesaikan dalam kerangka kriptografi modern, yang muncul lebih dari seperempat abad yang lalu, yang disebut berbeda dengan “kriptografi tradisional” yang sudah dikenal pada saat itu. Solusinya adalah dengan menggunakan cipher asimetris (dua kunci) atau skema distribusi kunci melalui saluran komunikasi terbuka.

Dalam kasus pertama, prosedur enkripsi dan dekripsi dilakukan pada kunci yang berbeda, sehingga tidak perlu merahasiakan kunci enkripsi. Namun, karena karakteristik efisiensinya yang sangat rendah dan kerentanan terhadap jenis serangan khusus tertentu, sandi tersebut ternyata tidak banyak berguna untuk menyembunyikan informasi pengguna secara langsung. Sebaliknya, cipher asimetris digunakan sebagai bagian dari skema gabungan, ketika array data dienkripsi dengan cipher simetris dengan kunci satu kali, yang pada gilirannya dienkripsi dengan cipher dua kunci dan dalam bentuk ini ditransmisikan bersama dengan data. .

Skema untuk mendistribusikan kunci melalui saluran komunikasi terbuka memecahkan masalah yang sama dengan cara yang sedikit berbeda: selama sesi interaksi, dua koresponden mengembangkan kunci rahasia umum, yang kemudian digunakan untuk mengenkripsi data yang dikirimkan dengan sandi simetris. Selain itu, penyadapan informasi dalam saluran selama sesi pembuatan kunci seperti itu tidak memberikan kesempatan kepada musuh untuk mendapatkan kunci itu sendiri: K=K(X,Y) tidak dapat dihitung (Gbr. 2).


Beras. 2.

Masalah kriptografi asimetris

Saat ini, kriptografi asimetris cukup berhasil memecahkan masalah pendistribusian kunci melalui saluran komunikasi terbuka. Namun, ada beberapa masalah yang menimbulkan kekhawatiran terhadap masa depannya. Kekuatan semua skema kriptografi asimetris didasarkan pada ketidakmungkinan solusi komputasi yang efisien terhadap sejumlah masalah matematika (yang disebut masalah NP) seperti faktorisasi (faktorisasi) angka besar dan logaritma dalam bidang diskrit yang besar. Namun ketidakmungkinan tersebut hanyalah asumsi yang sewaktu-waktu dapat terbantahkan jika hipotesis sebaliknya terbukti, yaitu NP=P. Hal ini akan menyebabkan runtuhnya semua kriptografi modern, karena masalah-masalah yang mendasarinya adalah ketidakterpecahan sangat terkait erat, dan bahkan jika satu sistem kriptografi dilanggar, maka sebagian besar sistem kriptografi lainnya akan rusak. Penelitian intensif sedang dilakukan ke arah ini, namun masalahnya masih tetap terbuka.

Ancaman lain terhadap sistem kriptografi modern datang dari apa yang disebut komputer kuantum - perangkat pemrosesan informasi yang dibangun berdasarkan prinsip mekanika kuantum, gagasan yang pertama kali dikemukakan oleh fisikawan terkenal Amerika R. Feynman. Pada tahun 1994, P. Shor mengusulkan algoritma faktorisasi untuk komputer kuantum, yang memungkinkan Anda memfaktorkan suatu bilangan dalam waktu yang bergantung pada polinomial pada ukuran bilangan tersebut. Dan pada tahun 2001, algoritma ini berhasil diimplementasikan pada prototipe kerja pertama komputer kuantum yang dibuat oleh spesialis dari IBM dan Universitas Stanford.

Menurut para ahli, komputer kuantum yang mampu memecahkan sistem kriptografi RSA dapat dibuat dalam waktu sekitar 15-25 tahun.

Fakta malang lainnya tentang sistem kriptografi asimetris adalah “ukuran aman” minimum kunci terus bertambah karena kemajuan di lapangan. Selama seperempat abad sejarah sistem seperti itu, sistem ini telah berkembang sekitar 10 kali lipat, sedangkan selama periode yang sama, untuk cipher simetris tradisional, ukuran kunci telah berubah kurang dari dua kali lipat.

Semua hal di atas membuat prospek jangka panjang sistem kriptografi asimetris tidak sepenuhnya dapat diandalkan dan memaksa kita untuk mencarinya cara-cara alternatif memecahkan masalah yang sama. Beberapa di antaranya dapat diselesaikan dalam kerangka apa yang disebut kriptografi kuantum, atau komunikasi kuantum.

Distribusi kunci adalah proses paling penting dalam manajemen kunci. Persyaratan berikut berlaku untuk itu:

· efisiensi dan ketepatan distribusi;

· kerahasiaan kunci yang didistribusikan.

Distribusi kunci antar pengguna jaringan komputer dilakukan dengan dua cara:

1) menggunakan satu atau lebih pusat distribusi utama;

2) pertukaran langsung kunci sesi antar pengguna jaringan.

Kerugian dari pendekatan pertama adalah pusat distribusi kunci mengetahui kunci mana yang didistribusikan kepada siapa, dan ini memungkinkan semua pesan yang dikirimkan melalui jaringan dapat dibaca. Kemungkinan pelanggaran mempunyai dampak yang signifikan terhadap perlindungan. Pada pendekatan kedua, tantangannya adalah mengautentikasi identitas entitas jaringan secara andal.

Dalam kedua kasus tersebut, keaslian sesi komunikasi harus dipastikan. Hal ini dapat dilakukan dengan menggunakan mekanisme permintaan-respons atau mekanisme stempel waktu.

Mekanisme permintaan-respons adalah sebagai berikut. Pengguna A menyertakan elemen yang tidak dapat diprediksi (misalnya nomor acak) dalam pesan (permintaan) yang dikirimkan ke pengguna B. Saat merespons, pengguna B harus melakukan beberapa operasi dengan elemen ini (misalnya, menambahkan satu), yang tidak dapat dilakukan sebelumnya, karena tidak diketahui nomor acak mana yang akan disertakan dalam permintaan. Setelah menerima hasil tindakan (respons) Pengguna B, Pengguna A dapat yakin bahwa sesi tersebut asli.

Mekanisme cap waktu melibatkan pencatatan waktu untuk setiap pesan. Hal ini memungkinkan setiap entitas jaringan untuk menentukan berapa umur pesan masuk dan menolaknya jika ada keraguan tentang keasliannya. Saat menggunakan stempel waktu, Anda harus menyetel interval waktu tunda yang dapat diterima.

Dalam kedua kasus tersebut, enkripsi digunakan untuk melindungi kontrol guna memastikan bahwa respons tidak dikirim oleh penyerang dan stempel waktu tidak dirusak.



Masalah distribusi kunci bermuara pada pembuatan protokol distribusi kunci yang menyediakan:

· saling konfirmasi keaslian peserta sesi;

· konfirmasi keaslian sesi melalui mekanisme permintaan-respons atau stempel waktu;

· penggunaan jumlah pesan minimum saat bertukar kunci;

· kemungkinan menghilangkan penyalahgunaan di pihak pusat distribusi utama (hingga dan termasuk mengabaikannya).

Pemecahan masalah pendistribusian kunci sebaiknya didasarkan pada prinsip memisahkan prosedur konfirmasi keaslian mitra dari prosedur pendistribusian kunci itu sendiri. Tujuan dari pendekatan ini adalah untuk menciptakan metode di mana, setelah otentikasi, peserta sendiri menghasilkan kunci sesi tanpa partisipasi pusat distribusi kunci, sehingga distributor kunci tidak dapat mengungkapkan isi pesan.

Distribusi kunci dengan partisipasi pusat distribusi kunci. Saat mendistribusikan kunci antar peserta dalam pertukaran informasi yang akan datang, keaslian sesi komunikasi harus dijamin. Dapat diterima untuk otentikasi bersama mitra pola jabat tangan. Dalam hal ini, tidak ada peserta yang akan menerima informasi sensitif apa pun selama prosedur otentikasi.

Otentikasi bersama memastikan bahwa entitas yang benar dipanggil dengan tingkat keyakinan yang tinggi bahwa koneksi telah dibuat dengan penerima yang diperlukan dan tidak ada upaya spoofing yang dilakukan. Tata cara sebenarnya dalam mengatur hubungan antar peserta pertukaran informasi meliputi tahap pendistribusian dan tahap konfirmasi keaslian mitra.

Ketika pusat distribusi kunci (KDC) disertakan dalam proses distribusi kunci, ia berinteraksi dengan salah satu atau kedua peserta sesi untuk mendistribusikan kunci rahasia atau publik untuk digunakan dalam sesi komunikasi berikutnya.

Tahap selanjutnya, verifikasi keaslian peserta, melibatkan pertukaran pesan otentikasi agar dapat mendeteksi adanya substitusi atau pengulangan salah satu panggilan sebelumnya.

Mari kita pertimbangkan protokol untuk kriptosistem simetris dengan kunci rahasia dan untuk kriptosistem asimetris dengan kunci publik. Pemanggil (objek sumber) dilambangkan dengan A, dan pemanggil (objek tujuan) dilambangkan dengan B. Peserta sesi A dan B masing-masing memiliki pengidentifikasi unik Id A dan Id B.

5.6.4. Protokol otentikasi dan distribusi
kunci untuk kriptosistem simetris

Mari kita pertimbangkan sebagai contoh otentikasi dan protokol distribusi kunci Kerberos (dalam bahasa Rusia - Cerberus). Protokol Kerberos dirancang untuk beroperasi melalui jaringan TCP/IP dan melibatkan pihak ketiga tepercaya dalam otentikasi dan distribusi kunci. Kerberos menyediakan otentikasi jaringan yang kuat dengan mengizinkan akses pengguna yang sah ke berbagai mesin di jaringan. Protokol Kerberos didasarkan pada sandi simetris (algoritma DES diimplementasikan, meskipun algoritma kriptografi simetris lainnya dapat digunakan). Kerberos menghasilkan kunci rahasia terpisah untuk setiap entitas jaringan, dan pengetahuan tentang kunci rahasia tersebut sama saja dengan membuktikan identitas entitas jaringan.

Protokol inti Kerberos adalah varian dari otentikasi Needham-Schroeder dan protokol distribusi kunci. Versi 5 dari protokol inti Kerberos melibatkan dua pihak yang berkomunikasi, A dan B, dan server tepercaya, KS (Kerberos Server). Pihak A dan B, masing-masing secara terpisah, membagikan kunci rahasianya kepada server KS. Server KS yang terpercaya bertindak sebagai pusat distribusi untuk pusat distribusi kunci.

Misalkan pihak A ingin menerima kunci sesi untuk pertukaran informasi dengan pihak B.

Pihak A memulai fase distribusi kunci dengan mengirimkan pengidentifikasi Id A dan Id B melalui jaringan ke server KS:

(1) A ® KS : Id A, Id B.

Server KS menghasilkan pesan dengan stempel waktu T, tanggal kedaluwarsa L, kunci sesi acak K, dan Id pengidentifikasi A. Dia mengenkripsi pesan ini dengan kunci rahasia yang dia bagikan dengan Pihak B.

Server KS kemudian mengambil stempel waktu T, tanggal kedaluwarsa L, kunci sesi K, Id B pihak B, dan mengenkripsi semuanya dengan kunci rahasia yang dibagikannya dengan pihak A. Server tersebut mengirimkan kedua pesan terenkripsi ini ke pihak A. :

(2) KS ® A : EA (T, L, K, Id B), E B (T, L, K, Id A).

Pihak A mendekripsi pesan pertama dengan kunci pribadinya, memeriksa stempel waktu T untuk memastikan bahwa pesan tersebut tidak mengulangi prosedur distribusi kunci sebelumnya.

Pihak A kemudian membuat pesan dengan Id A dan stempel waktu T, mengenkripsinya dengan kunci sesi K dan mengirimkannya ke B. Selain itu, A mengirimkan pesan kepada B dari KS, dienkripsi dengan kunci B:

(3) A ® B : E K (Id A, T), E B (T, L, K, Id A).

Hanya Pihak B yang dapat mendekripsi pesan (3). Pihak B menerima stempel waktu T, tanggal kedaluwarsa L, kunci sesi K, dan ID pengidentifikasi A. Kemudian pihak B mendekripsi bagian kedua dari pesan (3) dengan kunci sesi K. Kebetulan nilai T dan Id A pada dua bagian pesan menegaskan keaslian A dalam kaitannya dengan B.

Untuk otentikasi bersama, pihak B membuat pesan yang terdiri dari stempel waktu T ditambah 1, mengenkripsinya dengan kunci K dan mengirimkannya ke pihak A:

(4) B ® A: EK (T+1).

Jika, setelah mendekripsi pesan (4), pihak A menerima hasil yang diharapkan, ia mengetahui bahwa pihak A sebenarnya adalah B di ujung lain jalur komunikasi.

Protokol ini berhasil berfungsi asalkan jam setiap peserta disinkronkan dengan jam server KS. Perlu dicatat bahwa protokol ini memerlukan pertukaran dengan KS untuk mendapatkan kunci sesi setiap kali A ingin berkomunikasi dengan B. Protokol menyediakan koneksi yang andal objek A dan B, asalkan tidak ada kunci yang dikompromikan dan server KS dilindungi.

Kerberos melindungi jaringan dari akses tidak sah hanya berdasarkan solusi perangkat lunak, dan melibatkan beberapa enkripsi informasi kontrol yang dikirimkan melalui jaringan.

Sistem Kerberos memiliki struktur klien-server dan terdiri dari bagian klien C yang diinstal pada semua mesin di jaringan (stasiun kerja pengguna dan server), dan server Kerberos KS yang terletak di beberapa komputer (tidak harus khusus).

Server Kerberos, pada gilirannya, dapat dibagi menjadi dua bagian: server identifikasi AS (Server Otentikasi) dan server izin TGS (Server Pemberian Tiket). Sumber informasi yang dibutuhkan oleh klien C dikelola oleh server sumber informasi RS (lihat gambar berikutnya).

Ruang lingkup sistem Kerberos meluas ke bagian jaringan di mana semua pengguna terdaftar dengan nama dan kata sandi mereka di database server Kerberos.


Beras. 41. Skema dan langkah-langkah protokol Kerberos.

Sebutan:

KS – Server sistem Kerberos;

AS – server identifikasi;

TGS – server penerbitan izin;

RS – server sumber informasi;

C – klien sistem Kerberos;

1: C ® AS: – meminta izin untuk menghubungi TGS;

2: AS ® C: – izin untuk menghubungi TGS;

3: C ® TGS: – permintaan akses ke RS;

4: TGS ® C: – izin masuk RS;

5: C ® RS: – permintaan untuk menerima sumber informasi dari RS;

6: RS ® C: – mengkonfirmasi keaslian server RS ​​dan menyediakannya

sumber informasi.

Secara umum proses identifikasi dan otentikasi pengguna pada sistem Kerberos dapat digambarkan sebagai berikut. Pengguna (klien) C, yang ingin mengakses sumber daya jaringan, mengirimkan permintaan ke server identifikasi AS. Yang terakhir mengidentifikasi pengguna menggunakan nama dan kata sandinya dan memberikan izin untuk mengakses server izin TGS, yang pada gilirannya, atas permintaan klien C, mengizinkan penggunaan sumber daya jaringan yang diperlukan menggunakan server sumber daya informasi target RS.

Model ini interaksi klien dengan server hanya dapat berfungsi jika kerahasiaan dan integritas informasi kontrol yang dikirimkan terjamin. Tanpa keamanan yang ketat informasi keamanan klien tidak dapat mengirim permintaan ke server AS, TGS dan RS dan menerima izin untuk mengakses layanan di jaringan. Untuk menghindari kemungkinan intersepsi dan penggunaan informasi yang tidak sah, Kerberos digunakan saat mengirimkan informasi kontrol apa pun melalui jaringan sistem yang kompleks enkripsi ganda menggunakan sekumpulan kunci rahasia (kunci rahasia klien, kunci rahasia server, kunci sesi rahasia, server-klien).

5.6.5. Protokol untuk kriptosistem asimetris
menggunakan sertifikat kunci publik

Protokol ini menggunakan gagasan sertifikat kunci publik.

Sertifikat kunci publikC adalah pesan dari pusat distribusi kunci (KDC) yang mengesahkan integritas beberapa kunci publik suatu objek. Misalnya, sertifikat kunci publik untuk pengguna A, dilambangkan C A, berisi stempel waktu T, pengidentifikasi Id A dan kunci publik K A, dienkripsi dengan kunci rahasia DKK k DKK, yaitu.

C A = (T, Id A, K A).

Stempel waktu T digunakan untuk mengonfirmasi bahwa suatu sertifikat adalah yang terbaru dan dengan demikian mencegah duplikat sertifikat lama yang berisi kunci publik dan kunci privat terkait tidak valid.

Kunci rahasia k dari CRC hanya diketahui oleh manajer CRC. Kunci publik K dari DRC diketahui oleh peserta A dan B. DRC menyimpan tabel kunci publik dari semua objek jaringan yang dilayaninya.

Penelepon A memulai tahap pembentukan kunci dengan meminta sertifikat dari DRC untuk kunci publiknya dan kunci publik pihak B:

(1) A ® TsK : Id A, Id B, “Kirim sertifikat kunci A dan B.” Di sini Id A dan Id B masing-masing merupakan pengidentifikasi unik dari peserta A dan B.

Manajer CRC merespons dengan pesan

(2) TsRK ® A : (T, Id A, K A), (T, Id B, K B).

Peserta A, menggunakan kunci publik DRC Ke DRC, mendekripsi respons DRC dan memverifikasi kedua sertifikat. Id B menjamin A bahwa identitas pihak yang dipanggil tercatat dengan benar di DRC dan KB B memang merupakan kunci publik peserta B, karena keduanya dienkripsi dengan kunci DRC k.

Meskipun kunci publik diasumsikan diketahui oleh semua orang, mediasi CRC memungkinkan untuk memastikan integritasnya. Tanpa mediasi seperti itu, penyerang dapat memberikan kunci publiknya kepada A, yang akan dianggap A sebagai kunci peserta B.
Kemudian penyerang dapat menggantikan dirinya dengan B dan menjalin koneksi dengan A, dan tidak ada yang bisa mendeteksinya.

Langkah selanjutnya dari protokol ini melibatkan pembentukan komunikasi antara A dan B:

(3) A ® B: C A, (T), (r 1).

Di sini C A adalah sertifikat kunci publik pengguna A;

(T) adalah stempel waktu yang dienkripsi dengan kunci pribadi peserta A dan merupakan tanda tangan peserta A, karena tidak ada orang lain yang dapat membuat tanda tangan tersebut;

r 1 adalah nomor acak yang dihasilkan oleh A dan digunakan untuk pertukaran dengan B selama prosedur otentikasi.

Jika sertifikat C A dan tanda tangan A benar, maka peserta B yakin bahwa pesan tersebut berasal dari A. Sebagian pesan (r 1) hanya dapat didekripsi oleh B, karena tidak ada orang lain yang mengetahui kunci privat k B yang sesuai dengan publik kunci K B. Peserta B mendekripsi nilai nomor r 1 dan, untuk memastikan keasliannya, mengirimkan pesan ke peserta A

(4) B ® A: (r 1).

Peserta A memulihkan nilai r 1 dengan mendekripsi pesan ini menggunakan kunci pribadi A, k. Jika ini adalah nilai yang diharapkan dari r 1 , maka A menerima konfirmasi bahwa peserta yang dipanggil memang B.

Protokol berdasarkan enkripsi simetris lebih cepat daripada protokol berdasarkan sistem kripto kunci publik. Namun, kemampuan sistem kunci publik untuk menghasilkan tanda tangan digital menyediakan berbagai fungsi perlindungan, mengkompensasi redundansi perhitungan yang diperlukan.

Pertukaran kunci langsung antar pengguna. Saat menggunakan sistem kriptografi dengan kunci rahasia simetris untuk pertukaran informasi, dua pengguna yang ingin bertukar informasi yang dilindungi secara kriptografi harus memiliki kunci rahasia yang sama. Pengguna harus menukar kunci bersama melalui saluran komunikasi dengan cara yang aman. Jika pengguna cukup sering mengganti kunci, pengiriman kunci menjadi masalah serius.

Untuk mengatasi masalah ini, dua metode digunakan:

1) penggunaan sistem kriptografi kunci publik untuk enkripsi dan transmisi

kunci rahasia dari kriptosistem simetris;

2) penggunaan sistem distribusi kunci publik Diffie-Hellman

(lihat bagian 5.4.2).

5.6.6. Menggunakan sistem kriptografi kunci publik untuk enkripsi dan transmisi
kunci rahasia dari kriptosistem simetris

Algoritma yang mendasari sistem kriptografi kunci publik adalah sebagai berikut

kekurangan:

· pembuatan kunci rahasia dan kunci publik baru didasarkan pada pembuatan bilangan prima baru yang besar, dan pemeriksaan keutamaan bilangan memerlukan banyak waktu CPU;

· Prosedur enkripsi dan dekripsi yang terkait dengan menaikkan angka multi-digit ke pangkat cukup rumit.

Oleh karena itu, kinerja sistem kriptografi kunci publik biasanya ratusan kali atau lebih rendah dibandingkan kinerja sistem kriptografi simetris dengan kunci rahasia.

Metode enkripsi hibrid menggabungkan manfaat kerahasiaan tinggi dari sistem kriptografi kunci publik asimetris dengan manfaat kecepatan tinggi dari sistem kriptografi kunci privat simetris. Dalam pendekatan ini, kriptosistem kunci publik digunakan untuk mengenkripsi, mengirimkan, dan kemudian mendekripsi hanya kunci privat dari kriptosistem simetris. Kriptosistem simetris digunakan untuk mengenkripsi dan mengirimkan teks biasa asli. Akibatnya, sistem kriptografi kunci publik tidak menggantikan sistem kriptografi kunci rahasia simetris, tetapi hanya melengkapinya, sehingga memungkinkan untuk meningkatkan keamanan keseluruhan informasi yang dikirimkan. Jika pengguna A ingin mengirimkan pesan M yang dienkripsi menggunakan metode gabungan ke pengguna B, maka urutan tindakannya adalah sebagai berikut.

1. Buat (misalnya, buat secara acak) kunci simetris, yang dalam metode ini disebut kunci sesi K S .

2. Enkripsi pesan M menggunakan kunci sesi K S.

3. Enkripsi kunci sesi K S pada kunci publik KB pengguna B.

4. Mengirimkan pesan terenkripsi bersama dengan kunci sesi terenkripsi ke pengguna B melalui saluran komunikasi terbuka.

Tindakan Pengguna B setelah menerima pesan terenkripsi dan kunci sesi terenkripsi harus kebalikannya:

5. Dekripsi kunci sesi K S menggunakan kunci rahasia Anda k B .

6. Menggunakan kunci sesi K S yang diterima, dekripsi dan baca pesan M.

Saat menggunakan metode enkripsi gabungan, Anda dapat yakin bahwa hanya pengguna B yang dapat mendekripsi kunci K S dengan benar dan membaca pesan M. Jadi, saat menggunakan metode enkripsi gabungan, kunci kriptografi dari sistem kriptografi simetris dan asimetris digunakan. Jelasnya, pemilihan panjang kunci untuk setiap jenis kriptosistem harus dilakukan sedemikian rupa sehingga akan sulit bagi penyerang untuk menyerang mekanisme keamanan apa pun dari kriptosistem gabungan.

Tabel berikut menunjukkan panjang kunci umum dari kriptosistem simetris dan asimetris, yang mana tingkat kesulitan serangan brute force kira-kira sama dengan kesulitan memfaktorkan modul-modul terkait dari kriptosistem asimetris (Schneier B. Kriptografi Terapan. - John Wiley & Sons, Inc., 1996. - 758 hal).

Publikasi tentang topik tersebut