Як можна змусити сторону бути чесною (дотримуватися правил протоколу)?
Я бачив деякі механізми, такі як зобов'язання, докази тощо, але вони, схоже, не вирішують усієї проблеми. Мені здається, що структура дизайну протоколу і такі механізми повинні виконувати свою роботу. У когось є хороша класифікація цього.
Редагувати
При розробці захищених протоколів, якщо ви змусите сторону бути чесною, дизайн буде набагато простішим, хоча це правозастосування має свою окупність. Я бачив, коли розробляючи захищені протоколи, дизайнери припускають те, що мені не здається реалістичним, наприклад, вважати всі сторони чесними в гіршому випадку або припускати чесність сервера, який підтримує дані користувачів. Але дивлячись на розробку протоколів у більш жорстких моделях, ти рідко бачиш такі припущення (принаймні, я цього не бачив - я здебільшого вивчаю протоколи надUC-рамка Канетті, яка, на мою думку, ще не повністю формалізована). Мені було цікаво, чи є хороша класифікація способів, яким ви можете змусити сторону бути чесною чи є якийсь компілятор, який може перетворити вхідний протокол на один із чесними сторонами?
Тепер я поясню, чому я вважаю, що це просто не виконує цю роботу, хоча це може здатися неактуальним. При розробці протоколів в рамках UC, що виграє від ідеальної / реальної парадигми, кожне комунікаційне посилання в ідеальній моделі засвідчується автентичністю, що не відповідає дійсній моделі. Таким чином, розробники протоколів шукають альтернативні методи для реалізації цього каналу за допомогою припущення PKI або CRS (загального референтного рядка). Але при розробці протоколів аутентифікації, припускаючи, що аутентифіковані канали є неправильними. Припустимо, що ми розробляємо протокол аутентифікації в рамках UC, відбувається атака, в якій противник підробляє особу сторони, але через припущення автентифікованих посилань в ідеальній моделі ця атака не передбачається в цьому рамках! Ви можете звернутися до цьогоМоделювання інсайдерських атак на групові протоколи обміну ключами . Ви можете помітити, що Канетті у своїй семінарній роботі, що складається з універсальних понять обміну ключами та захищеними каналами, згадує попереднє поняття безпеки під назвою SK-Security, якого просто достатньо для забезпечення безпеки протоколів аутентифікації. Він якось зізнається (заявляючи, що це питання технічності), що визначення UC в цьому контексті є занадто обмежуючим і забезпечує розслаблений варіант, який називається оракул неінформації (що мене бентежило, бо я не бачив цієї моделі безпеки ніде , Я не можу зіставити цю схему безпеки з будь-якою іншою схемою безпеки, можливо, моя відсутність знань: D).
[Як бічна примітка, ви можете майже будь-який протокол Sk-secure перетворити на захищений від UC незалежно від часу тренажера. Наприклад, ви можете просто видалити підписи повідомлень і змусити симулятор імітувати цілі взаємодії підставним способом. Перегляньте інформацію про обмін ключових внесків, що надаються в універсальний склад, для підтвердження! Тепер припустимо, що це протокол групового обміну ключами з поліноміально багатьма сторонами, яка була б ефективність симулятора ?? Це джерело мого іншого питання на цьому форумі .]
У будь-якому випадку, через відсутність прихильності простої моделі (над UC), я шукав інших способів зробити протокол захищеним, просто обійшовши необхідність у цьому розслабленні. Ця ідея настільки принципова в моїй свідомості і мені прийшла в голову, просто вивчивши останню схему прихильності канетті в звичайній моделі: Адаптивна твердість і зручна безпека в простої моделі зі стандартних припущень .
До речі, я не шукаю доказів нульових знань, тому що через причину, яку я не знаю, коли хтось використовував один із них у паралельному протоколі (за рамками UC), інші вказали протокол як неефективний (може бути за рахунок перемотування тренажера).