Bagaimana Anda bisa memaksa suatu pihak untuk jujur (mematuhi aturan protokol)?
Saya telah melihat beberapa mekanisme seperti komitmen, bukti dan lain-lain, tetapi mereka tampaknya tidak menyelesaikan seluruh masalah. Sepertinya saya bahwa struktur desain protokol dan mekanisme tersebut harus melakukan pekerjaan. Apakah ada yang punya klasifikasi yang baik itu.
Sunting
Saat mendesain protokol aman, jika Anda memaksa suatu pihak untuk jujur, desainnya akan jauh lebih mudah meskipun penerapan ini memiliki hasil sendiri. Saya telah melihat ketika merancang protokol aman, desainer menganggap sesuatu yang tampaknya tidak realistis bagi saya, misalnya untuk menganggap semua pihak jujur dalam kasus terburuk atau mengasumsikan kejujuran server yang mengelola data pengguna. Tetapi ketika melihat desain protokol dalam model yang lebih ketat, Anda jarang melihat asumsi seperti itu (setidaknya saya belum melihatnya - saya kebanyakan mempelajari protokol lebihKerangka kerja UC dari Canetti yang saya pikir belum sepenuhnya diformalkan). Saya bertanya-tanya, apakah ada klasifikasi yang baik tentang cara-cara di mana Anda dapat memaksa suatu pihak untuk jujur atau apakah ada kompiler yang dapat mengubah protokol input menjadi satu dengan pihak-pihak yang jujur?
Sekarang saya akan menjelaskan mengapa saya pikir ini semata-mata tidak melakukan pekerjaan meskipun itu mungkin tampak tidak relevan. Ketika merancang protokol dalam kerangka UC, yang diuntungkan dari paradigma ideal / nyata, setiap tautan komunikasi dalam model ideal diautentikasi, yang tidak benar dalam model nyata. Jadi perancang protokol mencari metode alternatif untuk mengimplementasikan saluran ini melalui asumsi PKI atau CRS (Common Reference String). Tetapi ketika merancang protokol otentikasi, menganggap saluran yang diautentikasi salah. Misalkan kita sedang merancang protokol otentikasi dalam kerangka UC, ada serangan di mana musuh memalsukan identitas suatu pihak, tetapi karena asumsi tautan yang diautentikasi dalam model ideal serangan ini tidak diasumsikan dalam kerangka ini! Anda bisa merujukMemodelkan serangan orang dalam pada protokol pertukaran kunci grup . Anda mungkin memperhatikan bahwa Canetti dalam karya seminalisnya, gagasan pertukaran kunci dan saluran aman yang dapat dikomposisikan secara universal, menyebutkan gagasan keamanan sebelumnya yang disebut SK-Security yang cukup untuk memastikan keamanan protokol otentikasi. Dia entah bagaimana mengaku (dengan menyatakan bahwa ini adalah masalah teknis) bahwa definisi UC dalam konteks ini terlalu ketat dan menyediakan varian santai yang disebut non-informasi oracle (yang membingungkan saya, karena saya belum melihat model keamanan ini di mana pun , Saya tidak dapat mencocokkan pola keamanan ini dengan pola keamanan lainnya, mungkin kurangnya pengetahuan saya: D).
[Sebagai catatan tambahan, Anda hampir dapat memiliki protokol Sk-secure yang dikonversi menjadi yang aman UC terlepas dari waktu simulator. Misalnya, Anda cukup menghapus tanda tangan pesan dan meminta simulator mensimulasikan seluruh interaksi dengan cara dummy. Lihat Pertukaran Kunci Grup Kontribusi yang Dapat Diubah Secara Universal untuk bukti! Sekarang anggaplah ini adalah protokol pertukaran kunci grup dengan banyak pihak secara polin, apa yang akan menjadi efisiensi simulator ?? Ini adalah asal dari pertanyaan saya yang lain di forum ini .]
Lagi pula, karena kurangnya komitmen dalam model biasa (lebih dari UC), saya mencari cara lain untuk membuat protokol aman dengan hanya memotong kebutuhan untuk relaksasi itu. Gagasan ini sangat mendasar dalam pikiran saya dan muncul di benak saya hanya dengan mempelajari skema komitmen terbaru dari canetti dalam model sederhana: Adaptive Hardness dan Composable Security dalam Model Plain dari Asumsi Standar .
BTW, saya tidak mencari bukti nol-pengetahuan karena karena alasan yang saya tidak tahu, setiap kali seseorang telah menggunakan salah satu dari mereka dalam protokol bersamaan (lebih dari kerangka UC), yang lain menyebut protokol sebagai tidak efisien (mungkin karena memutar ulang simulator).