принципы, термины, чек-листы — Маркетинг на vc.ru
Пройдемся по основным понятиям CPA-маркетинга, а также посмотрим, как COVID-19 отразился на этой рекламной модели.
65 544 просмотров
Что такое CPA-маркетинг
CPA-маркетинг, или «партнерский маркетинг», подразумевает, что компания доверяет продвижение своего продукта партнеру. Если партнер привел пользователя, а тот совершил целевое действие, то партнер получает вознаграждение. Поэтому такая модель и называется CPA — Cost Per Action, означает «оплата за действие».Целевые действия могут быть разными. Как правило, это покупка, но возможны и другие варианты, например, отправка заявки или установка приложения. В зависимости от конечных действий можно выделить разные CPA-модели:
Главное преимущество CPA-модели — результативность: рекламодатель платит после того, как получит нужное ему действие, а значит, не сольет в никуда маркетинговый бюджет. Партнер рекламодателя тоже кровно заинтересован в результате — работает принцип win-win.
Что такое «вебмастер» и «партнерская сеть»
Люди или компании, которые готовы продвигать товар по партнерской схеме, знают технологии и умеют «лить» трафик, куда нужно, в терминологии CPA-маркетинга называются «вебмастера». Они могут владеть сайтами, блогами, форумами, а могут работать по методу «купил дешевле/продал дороже» рекламу в различных системах — в таком случае их часто называют «арбитражники».
Рекламодатель, который хочет продвинуть свой продукт, встречается с вебмастерами на специальной платформе — CPA-сети, ее также называют «партнерская площадка», «партнерская сеть», «агрегатор партнерских программ». Партнерская сеть — посредник между рекламодателями и поставщиками трафика.
Популярные CPA-платформы:
Платформа всегда берет за свою работу с рекламодателя комиссию, средняя ставка по рынку — 30% от выплат партнерам. То есть для рекламодателя затраты на СРА складываются следующим образом:
В комиссию входит техническая интеграция оффера (предложения от рекламодателя для вебмастеров), поиск и подключение вебмастеров, а также взаиморасчеты с ними. При этом платформа обеспечивает порядок: борется с нарушениями, следит, чтобы вебмастера поставляли качественный трафик, а рекламодатели вовремя платили, порой исполняет роль третейского судьи между сторонами.
Главная цель у CPA-сети одна — свести рекламодателя и вебмастера, чтобы они взаимовыгодно поработали.
Кому подходит и не подходит CPA-модель
CPA-маркетинг хорошо подойдет тем, у кого простой и понятный («массовый») продукт с широкой аудиторией.
Подходит ли вам модель CPA? Чек-лист:
- Продукт нацелен на B2С аудиторию и подходит для продвижения в интернете
- Продукт – массовый
- Цена продукта конкурентоспособна, а если у продукта еще и есть бонусы (бесплатная доставка, подарок) – это преимущество
- Есть техническая возможность установить на ваш сайт пиксель
- У вашего продукта широкая география
- Ставка, которую вы готовы предложить вебмастеру, не ниже рыночной
В некоторых случаях эта модель будет работать плохо:
- С помощью СРА-сетей не получится продавать что-то экзотическое или сложное, узкоспециализированное, например, оборудование для нефтепереработки.
- CPA-модель не работает, если предложение рекламодателя не соответствует рынку и у конкурентов товар/услуги стоят ощутимо дешевле. Партнеры не станут продвигать неадекватный рыночным ценам продукт – им это невыгодно.
- CPA-маркетинг плохо работает в B2B – продажи в этом бизнесе часто предполагают изучение информации, сравнение вариантов, длительные переговоры, в том числе в офлайне. Впрочем, бывают и исключения.
- Нет смысла вкладываться, если бизнес на пределе производственной мощности и может не справиться с существенным всплеском спроса. Это разочарует и клиентов, которые не получат товар, и партнеров, которые не получат вознаграждение.
- Учитывайте сроки рекламной кампании. Например, двухнедельная кампания вряд ли принесет результат и позволит оценить СРА-канал. В СРА-сети стоит идти, если период рекламной кампании не менее трех месяцев.
Как вебмастера привлекают трафик
Среди источников трафика могут быть: соцсети, сайты (контентные сайты, лендинги, форумы, блоги, доски объявлений), имейл-рассылки, контекстная реклама, тизерная реклама, скидочные и купонные агрегаторы, кешбеки, брокеры, мобильные приложения, любые другие методы привлечения трафика на сайт рекламодателя, clickunder/popunder (всплывающие окна, которые открываются по клику на другую ссылку и перекрывают контент) или дорвеи (одностраничные сайты, созданные, чтобы попасть в топ выдачи, а затем перенаправить посетителя на страницу рекламодателя).
Рекламодатель на свое усмотрение может запретить использовать определенные каналы трафика. Учитывайте также, что у вебмастеров есть негласное правило: «что не запрещено – разрешено», поэтому нужно максимально подробно описывать запрещенные и разрешенные источники при работе с оффером.
Что такое оффер и как его составить
Оффер – это предложение от рекламодателя для вебмастеров, которое он публикует в партнерской сети. По сути, это аналог брифа на рекламную кампанию.
Главное правило: чем подробнее и привлекательнее оффер, тем выше шанс найти подходящего партнера.
Что содержит правильно заполненный оффер:
- Название рекламодателя
- Описание продукта
Суть предложения, целевая аудитория, география действия кампании. - Информацию о том, что считается оплачиваемым действием
Оплата, заполнение формы, установка приложения, скачивание. - Размер вознаграждения для веб-мастера
Чтобы определить стоимость оффера, нужно проанализировать свою экономику, понять, сколько вы готовы платить за конверсию, и обязательно изучить офферы конкурентов с похожим предложением – это можно сделать на разных площадках или на специальном ресурсе. - Разрешенные и запрещенные способы продвижения
Например, нередко рекламодатели сами размещают контекстную рекламу с упоминанием бренда, поэтому вебмастерам запрещают ее использовать, чтобы не создавать самим себе конкуренцию. - Пояснение по креативам
Нужно обозначить, могут ли вебмастера производить свои креативы и как их согласовывать, либо указать, что использовать можно только креативы рекламодателя и предоставить их (например, в крупных компаниях может быть запрещено использовать любые креативы, кроме тех, что согласованы глобальным офисом). - Период холда
Время, на протяжении которого рекламодатель будет проверять качество приведенного от партнера трафика; если все в порядке, по истечении этого срока партнер получит вознаграждение.
Какие бывают офферы
Оффер чаще всего бывает открытым (публикуется для всех на площадке). Реже —
Обычно эксклюзив предполагает более выгодные условия для рекламодателя. При эксклюзиве рекламодатель работает только с одной сетью, которая максимально подходит его тематике.Это удобнее, чем работать со множеством разных сетей, к тому же пересечение партнеров в сетях составляет примерно 90%: хорошие вебмастера присутствуют в разных сетях и мониторят все офферы, а работают в той сети, где им удобнее.Однако в крупных СРА-сетях есть свои эксклюзивные вебмастера, которые работают только с ними на индивидуальных условиях, поэтому для максимально широкого охвата лучше подобрать несколько партнерских сетей. Важно, чтобы условия были одинаковыми для всех сетей.
Впрочем, решение отдавать ли оффер на эксклюзив индивидуально для каждого случая.
Что такое фрод и как от него защититься
Случается, что вебмастера в погоне за наживой обманывают рекламодателей — любые мошеннические действия в этой сфере называются «фродом». Это и искусственный трафик (боты, которые выполняют целевое действие, к примеру, устанавливают приложение, а рекламодатель, не выявив обмана, оплачивает эти действия), и подмена доменов.
Возможны также уловки с cookies (кукистаффинг, тулбары), когда недобросовестные партнеры воруют заказы у рекламодателя и друг у друга, а неопытный рекламодатель может несколько раз заплатить за одно и то же действие. Или же вебмастер может использовать запрещенный вид трафика, прописанный в оффере.
CPA-сети стараются защитить рекламодателя от мошенничества — в их силах проверять партнеров, предоставлять инструменты, которые позволяют следить за качеством трафика. Но полную гарантию, что мошенничества не случится, ни одна сеть дать не может — в этом специфика работы с третьими лицами. Важно следить за рекламными кампаниями, анализировать трафик и замечать странности.
Возможные странности трафика:
- очень много переходов с одного источника
- много кликов с одного IP-адреса
- экстремально низкий показатель конверсии при большом потоке трафика
- наоборот, конверсия 100%
- всплески активности в ночные часы
- всплески активности из неожиданных регионов
О подобных странностях следует сразу же сообщить партнерской сети, которая поможет разобраться в ситуации, и, если фрод подтвердится, отключит мошенника, не оплачивая его конверсии.Также для борьбы с мошенничеством можно обратиться к антифрод-решениям независимых компаний, которые специализируются на мониторинге качества трафика — такую проверку может заказать сам рекламодатель.
Примеры антифрод-систем:
Что происходит на рынке CPA-рекламы сейчас?
- Мы наблюдаем, что клиенты стали проявлять больше интереса к СРА-маркетингу. При этом они еще более критично смотрят на результаты продвижения, и, исходя из результатов, решают, как дальше распределять бюджеты.
- У сайтов электронной коммерции растет органический трафик, поэтому снижается потребность в дополнительном продвижении. С беттингом (ставки на спорт) ситуация другая: почти все спортивные мероприятия отменили, поэтому ставки стали не нужны.
- Ожидаемо отключили или приостановили офферы компании, которые не смогли перейти на онлайн-модель работы или организовать доставку. Недвижимость в апреле просела на 30%, а в мае до 50%. Просели МФО, у которых нет онлайн-выдачи – а те, у которых она есть, стали выносить это в качестве УТП.
- В числе сегментов, которые растут или как минимум не сокращают бюджеты: аптеки, онлайн-образование, онлайн-сервисы, знакомства, онлайн-кинотеатры, доставки; ожидается рост в сегменте страхования жизни. В банках также пока без изменений или наблюдается рост у тех, кто запустил «карантинные» акции. В сегменте кредитования на смену росту может прийти спад, поскольку банки ужесточают скоринг.
Наш прогноз: CPA-канал будет расти. В этом году доля CPA-рынка останется такой же, а в следующем даже увеличится. Даже если из ниши уйдет малый и средний бизнес, крупные клиенты останутся.
7 правил успешной CPA-кампании
Мы специализируемся на ведении партнерских сетей под ключ, а также разработали свою платформу — закрытую партнерскую сеть, которую используем наряду с другими крупными партнерскими сетями, продолжаем развивать и масштабировать.
Мы работаем со Сбербанком, с компаниями экосистемы (Домклик, DocDoc, «Школа 21», СберЛизинг и другие) и внешними клиентами. Например, по офферу «Дебетовые карты Сбербанк» мы улучшили показатели оптимизацией оффера и переходом с модели CPL на CPS.
Чтобы ваши CPA-кампании были успешными, советуем придерживаться следующих правил:
- Максимально подробно опишите оффер и его правила.
- Перед запуском оффера убедитесь, что техническая интеграция корректна, проведите тестовые конверсии.
- Размечайте трафик не только по партнерским сетям, но и по вебмастерам и, если есть возможность, по их источникам – так проще отслеживать качество поставляемого трафика.
- Будьте оперативны: ежедневно проверяйте статистику с СРА-канала в своей системе аналитики. Оперативно и регулярно давайте обратную связь по качеству конверсий (согласно данным вашей CRM).
- Если на вашем сайте случаются поломки или изменения, сразу же сообщайте об этом партнерам.
- Не задерживайте оплаты партнерам – помните про win-win-подход.
- Прислушивайтесь к рекомендациям СРА-сетей.
Поможем в продвижении через CPA-канал и улучшим показатели: [email protected]
CPA-маркетинг — что это такое и с чего начать — Глоссарий
Что такое CPA?
CPA, или плата за действие (как расшифровывается данная аббревиатура) — это такая модель оплаты онлайн-рекламы, при которой плата взимается с рекламодателя только в том случае, если потенциальный клиент выполнил необходимое ему целевое действие. Все действия, которые может охватывать модель, всегда работают на определенный тип конверсии. Это может быть, к примеру, заполнение формы на обратную связь, подписка на рассылку или регистрация на сайте. Таким образом, плата за действие относится к стратегиям диджитал-маркетинга.
Что такое CPA-маркетинг?
Термин CPA-маркетинга трактуется довольно широко. По сути он является более эффективной и выгодной альтернативой таргетингу и контекстной рекламе, которые работают лишь на показы и клики. В отличие от них, в CPA рекламодатель может существенно сэкономить свои ресурсы, ведь платит лишь за то, что приносит ему непосредственную пользу. Для контроля за выполнением целевых действий и заключением сотрудничеств между рекламодателями и партнерами существуют специальные сети для CPA-маркетинга и платформы со встроенными алгоритмами. Они сами отслеживают выполнение заданных рекламодателем условий и перечисляют вознаграждение партнеру в заработанном размере.
Принципы работы CPA-маркетинга
Чтобы понять, как работает маркетинг платы за действие на практике, сначала нужно перечислить основных его участников:
- Маркетологи, фрилансеры, лидеры мнений или блогеры, которые выступают партнерами того или иного бизнеса и продвигают его продукты посредством своего сайта, блога и авторитета.
- Рекламодатели. Это компании, которые ищут перечисленных выше лиц для того, чтобы они продвигали рекламу в интернете.
- CPA-сети. Это платформы, которые объединяют партнеров и рекламодателей, то есть помогают им находить друг друга. После регистрации компании размещают свои предложения на сайте, а партнеры просматривают их и выбирают подходящие. Каждая платформа самостоятельно рассчитывает формулу платы за действие.
- Посетители. Это обычные пользователи, на которых нацелен CPA-маркетинг. В результате него посетители должны выполнить нужное рекламодателю целевое действие (например, кликнуть по баннеру) и таким образом попасть в конверсию компании.
Разберем значение CPA-маркетинга на практическом примере:
Допустим, популярный тревел-блогер по имени Ричард путешествует по миру и часто рассказывает в своих видео аудитории о том, в каких отелях он останавливался, в каких ресторанах ел, как добирался до пункта назначения и т. д. В это же время компания Trevi предлагает выгодные авиабилеты и услуги по поиску жилья. Оба регистрируются в одной и той же CPA-сети, благодаря которой видят предложения друг друга и начинают сотрудничество. Так как Ричард является тревел-блогером, компания Trevi и ее продукты соответствуют теме его канала, а значит, и потребностям аудитории. Ричард рекомендует своим зрителям билеты, которые купил по самой низкой цене у Trevi, и об отеле, в котором поселился за полцены благодаря компании. CPA-сеть получает проценты каждый раз, как кто-то из зрителей Ричарда кликает по баннеру в его видео, ведущему на сайт Trevi. Ричард же получает за это комиссионные, а Trevi — потенциальных клиентов.
Партнерский CPA-маркетинг
Как уже было сказано, определение CPA-маркетинга довольно широко, а потому практически универсально. Так, CPA-маркетинг нередко объединяют с программами аффилиатного маркетинга, который подразумевает создание сети дистрибьюторов (тех же партнеров), продвигающих и продающих товар определенной компании за комиссионные. В случае, если аффилиатный маркетинг соединяется с CPA, партнер таким образом может расширить источники своего заработка и каналы продвижения товара. Это дает партнерам больше инструментов и решений для работы с покупателями, а самим покупателям — вариативный контент и формы мотивирования.
Мобильный CPA-маркетинг и сети
Мобильный CPA-маркетинг представляет собой ровно то же самое, что и классический CPA, только подразумевает он размещение рекламы на мобильных устройствах с такими операционными системами, как iOS и Android.
Выглядит при этом мобильная плата за действие следующим образом: компания заключает сотрудничество с мобильными приложениями, которые размещают в них готовый баннер или мини-ролик. Если пользователь смартфона кликает по нему и выполняет зафиксированное в условиях целевое действие, то мобильное приложение получает свой процент прибыли. По сути, это выглядит так же, как рекламные вставки на YouTube, только они внедрены в игровой процесс или даже механику приложений на вашем телефоне.
Для мобильного CPA существуют отдельные сети, объединяющие именно владельцев мобильных приложений и рекламодателей. С их помощью владельцы приложений могут дополнительно монетизировать свой продукт, тем более что такие CPA-сети чаще всего взимают даже меньшую комиссию, чем традиционные веб-платформы.
CPA-маркетинг законен?
Да, CPA-маркетинг абсолютно легален, так как считается разновидностью цифрового маркетинга, и невероятно востребован на сегодняшний день. При его подключении вы заключаете с сетью и выбранным партнером электронное соглашение, которое гарантирует выполнение ваших условий и справедливое распределение вознаграждений. Главное — выбирать лишь проверенные и известные CPA-сети с жесткими алгоритмами, которые будут следить за тем, чтобы ваши партнеры не обманывали вас, накручивая переходы. Тот же совет относится и к самим партнерам: не используйте механизмы накрутки, поскольку за такое можно получить не только пожизненный бан в сетях для CPA-маркетинга, но и судебный иск за мошенничество.
Как начать заниматься CPA-маркетингом
Стать партнером компании на основе CPA-модели достаточно просто. Вот что вам нужно делать:
- Создайте свой сайт
Это необязательный пункт, но не все CPA-сети допускают к регистрации партнеров без личных сайтов или по крайней мере собственного блога. Ведь как иначе вы можете находить компании аудиторию, взаимодействовать с ней и мотивировать выполнить целевое действие? Вам в любом случае понадобится площадка — это может быть как группа в соцсетях (скажем, в Instagram), так и самый простой ресурс на базе WordPress.
- Выберите нишу
Если у вас уже есть свой сайт или блог, то в выборе рекламодателя для сотрудничества вы должны отталкиваться прежде всего от интересов своей аудитории. Вряд ли у вас получится много заработать, если вы будете рекламировать на своем бьюти-канале средства бытовой химии или книги. Поэтому заранее определитесь, в какой сфере будете развивать свой маркетинг платы за действие, и проработайте план.
- Выберите компанию
Конечно, все мечтают сотрудничать с именитыми и международными брендами и стать практически их амбассадорами. Но это не всегда хороший выход, ведь желающих может быть много, а вознаграждения мало. Вы можете продвигать продукты малоизвестной компании, которая, однако, устанавливает высокий процент за выполнение их условий. Это на самом деле важно в CPA. К тому же так вы избежите конкуренции с более крупными партнерами.
- Выберите предложение
После того как вы зарегистрируетесь в подходящей вам CPA-сети, то окажетесь в океане из предложений различных компаний. Не утоните в нем! Проверяйте актуальность предложений, их презентабельность и соответствие вашим собственным целям и ресурсам.
- Привлекайте трафик на сайт
После того как вы приняли предложение одной из компаний и официально стали ее партнером, ваша задача заключается лишь в одном: сделать все, чтобы выполнить поставленные условия, то есть заставить как можно больше людей совершить определенное целевое действие. Для этого вам, конечно, понадобится привлекать на свой сайт или канал свежий и живой трафик, а затем пытаться перенаправить его к рекламодателю. Лучше всего для этого задействовать другие виды интернет-маркетинга — например, изучить SEO-оптимизацию, контент-маркетинг, таргетинг и т.д. Подойдут все методы CPA-маркетинга, с помощью которых можно обеспечить вашему сайту органический трафик. Личные соцсети или канал на YouTube также подойдут: в таком случае вы перенаправляете оттуда пользователей сначала на свой сайт, а уже с сайта — к рекламодателю.
Как заработать с CPA-маркетингом
Недостаточно просто присоединиться к CPA-сети, создать сайт и разместить на нем ссылку, а затем сидеть и ждать, когда же пользователи начнут кликать по ней и тем самым пополнять ваш кошелек. Маркетинг платы за действие хоть и считается способом создать источник пассивного дохода, но сначала придется сделать его максимально активным, так как без ваших усилий о том, что вы рекламируете что-либо, никто просто не узнает. Вот несколько советов по CPA-маркетингу, как максимизировать свою прибыль в модели платы за действие:
- Используйте разные виды маркетинга
Ранее уже упоминалось о том, что такие виды продвижения, как контент-маркетинг или SMM, могут существенно облегчить вам привлечение трафика и выполнение условий рекламодателя. Чем больше каналов вы подключаете (это, кстати, называется омниканальностью) и в конце концов сводите к какому-то одному из них, тем больше посетителей и тем больше прибыль. Главное, правильно выбрать лучший источник трафика для CPA-маркетинга, так как иногда это может быть не ваш первоначальный сайт, а, например, страница в Facebook. Оттуда может оказаться неожиданно легче перенаправлять трафик к рекламодателю. Выяснить, насколько эффективны разные каналы, поможет классический Google Ads.
- Обучайтесь и экспериментируйте
Сегодня можно найти множество онлайн-курсов по маркетингу платы за действие (даже бесплатных), а также книги, написанные профессионалами данной сферы. Рынок постоянно меняется, а вместе с ним и потребности бизнеса, технологии, используемые в рекламе, и даже человеческая психология. Пробуйте разные идеи в привлечении и перенаправлении трафика, посещайте офлайн- и онлайн-форумы, а также не бойтесь пробовать разные платформы и предложения компаний. Но одновременно не стоит брать сразу несколько — некоторые компании не терпят конкуренции за партнера, а сами пользователи не любят, когда веб-сайт перенасыщен рекламой.
- Избегайте теневых сетей
Мошенничество в онлайн-CPA-маркетинге возможно лишь в одном виде — когда партнеры искусственно завышают количество совершенных целевых действий (например, переходов по ссылке), чтобы увеличить свои комиссионные. Для этого они могут задействовать ботов или спам. Если вы партнер, напрочь откажитесь от такой затеи. Если же рекламодатель, обращайте внимание на статус CPA-сети перед тем, как присоединиться к ней (тем более, если она предлагает уж очень соблазнительные условия!).
- Работайте через CPA-менеджера
Этот совет относится как к партнерам, так и к компаниям. CPA-менеджер — специалист из специального агентства, работающий или на стороне компании, заинтересованной в продвижении посредством модели платы за действие, или на стороне конкретной CPA-сети. Такие менеджеры не только помогают в изучении и освоении данной модели, но и подбирают подходящих партнеров/рекламодателей, исходя из ваших запросов, контролируют процесс и выплаты. Таким образом дополнительно гарантируется надежность сотрудничества (но, конечно, не бесплатно).
Как научиться CPA-маркетингу
Для того чтобы освоить любое профессиональное направление в полной мере, лучше всегда прибегать к обучению. Например, к курсу по CPA-маркетингу, что вполне доступно и онлайн. Например:
- Курс «CPA-маркетинг — эффективная модель для интернет-заработка» от международной платформы Lectera. Эта платформа славится своей инновационной методологией Fast Education, которая позволяет прокачивать новые навыки за несколько дней, уделяя при этом обучению всего по 15-20 минут за обедом. Данный курс по CPA-маркетингу, как и остальные, представлен на четырех языках, включая английский, немецкий и испанский. Помимо основ CPA, на нем вы сможете изучить инфлюенс-маркетинг, доходные стратегии, партнерский маркетинг, кейсы из практики компании Perfluence и создание контента. Прекрасно подходит для новичков, желающих погрузиться в CPA-маркетинг пошагово.
- Roger CPA. Данная платформа специализируется именно на CPA, и хотя здесь разбирается не так много аспектов и вопросов данной модели, как в той же Lectera, но зато лекции оснащены интерактивом. Они идеально подходят для тех, кто страдает СДВГ или кому плохо дается запоминание новой информации.
- Ninja CPA. Это скорее вспомогательная платформа для начинающих CPA-маркетологов, нежели образовательная. Лучше всего использовать ее в комбинации с другими курсами. Ninja представляет собой учебный инструментарий с учебным пособием, комфортным сообществом и онлайн-поддержкой, которые значительно облегчают погружение в новую сферу CPA.
Обучение по теме
ПО и инструменты для CPA-маркетинга
Сегодня существует огромное множество различных CPA-сетей, которые вы также можете найти самостоятельно. Но для начала мы предлагаем вам ознакомиться со следующими:
- MaxBounty — известна более десяти лет и считается лидером индустрии с довольно-таки хорошими средними комиссионными для партнеров.
- Perfluence — помогает компаниям различных отраслей находить блогеров и заключать с ними соглашения.
- ClickDealer — большой ассортимент предложений с программой лояльности и конкурсами как для партнеров, так и для рекламодателей.
Из лучших инструментов же для работы непосредственно с трафиком и онлайн-CPA-маркетингом вам могут пригодиться:
- Flippa — здесь можно покупать и продавать готовые веб-сайты, что станет спасением для тех, кто подался в CPA-маркетинг спонтанно и не имеет собственной платформы. По сути это площадка для торгов по типу eBay, где можно ухватить довольно-таки качественный сайт с мощным органическим трафиком.
- SEMrush — сервис для исследования ключевых слов и исправления ошибок по оптимизации сайта. С данным сервисом вы сможете изучить сайты конкурентов и превзойти их, выбившись в топ поисковой выдачи. Сервис также покажет, какой контент приносит вам больше всего трафика, и поможет ранжировать ключевые слова.
- Grammarly — обязательный атрибут для создания высококачественного контента. Он проведет тотальный аудит ваших лендингов, навигации сайта, статей, списков и всего контента, размещенного на сайте. Выделит орфографические или грамматические ошибки, а также поможет усовершенствовать текст, чтобы повысить его привлекательность для вашей аудитории.
Неразличимость симметричного шифрования при CCA
Безопасность CCA всегда кажется экстремальной для людей, которые только узнают об этом. Предпосылка кажется смешной, зачем нам давать злоумышленнику столько власти? Зачем нам просто позволять злоумышленнику расшифровывать почти все, что он хочет, и узнавать весь результат расшифровки? В реальном мире, когда бы мы когда-либо просто выступали в качестве оракула дешифрования для злоумышленника?
Мне нравится мотивировать безопасность CCA двумя разными способами:
(1) Если я запишу секретное сообщение в конверт, и вы никогда не прикоснетесь к этому конверту, вы не сможете сказать, что в моем конверте. Что, если я также соглашусь открыть любой другой конверт в мире — поможет ли это вам выяснить, что находится внутри этого специального конверта? Конечно, нет. Почему расшифровка того, что находится внутри зашифрованного текста № 1, может рассказать вам о том, что находится внутри зашифрованного текста № 2? Я бы не хотел покупать коробку конвертов с таким свойством и не хотел бы использовать схему шифрования с этим свойством.
(2) У вас, вероятно, были подобные оговорки по поводу безопасности CPA: когда в реальном мире мы позволяем злоумышленнику полностью выбирать, какие вещи мы шифруем? Это правильный вопрос, но предположим, что у нас есть определение безопасности, которое вообще не позволяет злоумышленнику влиять на выбор открытого текста . Тогда каждый раз, когда мы шифруем в реальном мире, мы должны быть абсолютно уверены, что открытый текст не имеет нулевого влияния от любого злоумышленника — только так мы можем быть уверены, что это гипотетическое определение безопасности применимо к нашей ситуации.
Поскольку это нереалистично, наше определение безопасности должно позволять злоумышленнику иметь по крайней мере какое-то влияние на шифруемые открытые тексты. Но просто определение не делает его полезным, чтобы позволить злоумышленнику иметь какое-то странное частичное влияние на выбор открытых текстов. Уровень влияния в реальном мире сильно зависит от конкретного приложения, и нам не нужен миллион различных определений безопасности для миллиона различных сценариев приложений. Проще всего сделать то, что делает определение безопасности CPA: мы могли бы также стремиться защитить от злоумышленников, которые полностью выбрать какие открытые тексты зашифрованы! Несмотря на то, что такой полный контроль со стороны противника над открытыми текстами не отражает единственного реалистичного сценария, он достаточно общий, чтобы хорошо применяться ко всем сценариям, где злоумышленник имеет некоторое влияние на выбор открытых текстов.
Аналогичная ситуация и с расшифровкой. Можете ли вы представить веб-сервер, который принимает зашифрованные тексты из внешнего мира, расшифровывает эти зашифрованные тексты, а затем делает что-то на основе результата расшифровки (то есть, если результат расшифровки таков, то делайте это, иначе делайте то)? Если это звучит естественно, то ваше определение безопасности должно давать злоумышленнику возможность изучить что-то о результате расшифровки, о созданных противником шифротекстах. (Определение CPA не отражает эту ситуацию.) Так какой же объем информации должен получить злоумышленник? В реальном мире ответ на этот вопрос сильно зависит от конкретного приложения. Если нам нужно определение безопасности общего назначения, применимое ко многим реалистичным сценариям, то это определение безопасности должно просто давать злоумышленнику как можно больше возможностей. В этом случае он должен просто позволить злоумышленнику свободно расшифровать все, что он хочет, и узнать весь результат расшифровки (за исключением способов, которые явно упрощают игру в области безопасности).
Безопасность CCA не предназначена для отражения единственного реального сценария, когда мы предоставляем атакующему полный оракул дешифрования. Скорее, он должен быть достаточно общим для любого сценария, когда злоумышленник узнает что-то о результате расшифровки шифротекстов, созданных противником.
Атаки с выбранным шифротекстом – Радость криптографии OE (1st)
Вернуться к оглавлению
В этой главе мы обсудим ограничения определения безопасности CPA. Короче говоря, определение безопасности CPA учитывает только ту информацию, которая просочилась к противнику через честно сгенерировал зашифрованных текстов. Однако он не учитывает, что происходит, когда злоумышленнику разрешается внедрять свои собственные злонамеренно созданных зашифрованных текстов в честную систему. Если это произойдет, то даже CPA-безопасная схема шифрования может потерпеть неудачу. Мы начнем с того, что увидим такой пример захватывающей и удивительной неудачи, называемой атакой оракула заполнения:
.10.1: Заполнение атак Oracle
Представьте себе веб-сервер, который получает зашифрованные CBC-тексты для обработки. При получении зашифрованного текста веб-сервер расшифровывает его с помощью соответствующего ключа, а затем проверяет, имеет ли открытый текст действительный X.9.23 прокладки (конструкция 9.6).
Важно, предположим, что наблюдаемое поведение веб-сервера изменяется в зависимости от того, допустимо ли заполнение . Вы можете себе представить, что веб-сервер выдает специальное сообщение об ошибке в случае недопустимого заполнения. Или, что еще более умно (но все же реалистично), разница в во времени отклика при обработке зашифрованного текста с недопустимым дополнением достаточна для того, чтобы атака сработала. 1 Механизм для изучения правильности заполнения не важен — важен просто тот факт, что злоумышленник имеет какой-то способ определить, кодирует ли зашифрованный текст открытый текст с допустимым дополнением. Независимо от того, как злоумышленник получает эту информацию, мы говорим, что злоумышленник имеет доступ к padding oracle , который дает ту же информацию, что и следующая подпрограмма:
Мы называем это заполнением оракулом , потому что оно отвечает только на один конкретный вопрос о вводе. В этом случае ответ, который он дает, всегда представляет собой одно логическое значение.
Не похоже, что оракул-заполнитель пропускает полезную информацию, и причин для беспокойства нет. Удивительно, но мы можем показать, что злоумышленник, не знающий ключ шифрования k может использовать только оракул заполнения, чтобы расшифровать любой зашифрованный текст по своему выбору ! Это верно независимо от того, что еще делает веб-сервер. До тех пор, пока происходит утечка хотя бы одного бита информации о зашифрованных текстах, которые может выбрать злоумышленник, с таким же успехом может происходить утечка всего.
1 Вот почему VALIDPAD на самом деле не должен быть реализован так, как это написано в конструкции 9. 6. Требуется реализация с постоянным временем , в которой каждый путь управления через подпрограмму занимает одинаковое количество циклов ЦП.
Гибкость шифрования CBC
Вспомните определение расшифровки CBC. Если зашифрованный текст равен c = c 0 · · · c ℓ , то i -й блок открытого текста вычисляется как:
м i := F −1 ( k,c i ) ⊕ c − 3 i 190,0
Из этого мы можем вывести два важных факта:
- Два последовательных блока ( c i −1 , c i ), взятые по отдельности, представляют собой действительное шифрование m i . Забегая вперед, этот факт позволяет злоумышленнику сосредоточиться на расшифровке одного блока за раз.
- Исключающее ИЛИ блока зашифрованного текста с известным значением (скажем, x ) имеет эффект XOR соответствующего блока открытого текста с тем же значением. Другими словами, для всех x зашифрованный текст ( C I −1 ⊕ x, C I ) Дешифты до M I ⊕ X :
DEC ( K , ( C 7 21 — 7 7 7 7 7 7 7 7 7 7 7 2 7 2 7 7 7 7 7 7 7 7 2 7. ⊕ x,c i )) = F −1 ( k,c i ) ⊕ ( c i −1 ⊕ x ) = ( F −1 ( k,c i ) ⊕ c i −1 ) ⊕ х = м i ⊕ х
Если мы отправим такой зашифрованный текст ( C I -1 ⊕ x, C I ) на оракул для прокладки, мы бы узнали, М I ⊕ x a (отдельный блок) с допустимым дополнением. Тщательно выбирая различные значения x и задавая вопросы в этой форме оракулу заполнения, мы можем в конечном итоге узнать все m и . Мы суммируем эту возможность с помощью следующей подпрограммы:
Имея зашифрованный текст c , который шифрует неизвестное сообщение m , мы можем видеть, что злоумышленник может сгенерировать другой зашифрованный текст, содержимое которого связано с m предсказуемым образом . Это свойство схемы шифрования называется пластичностью .
Изучение последнего байта блока
Теперь мы покажем, как использовать подпрограмму CHECKXOR для определения последнего байта блока открытого текста м . В зависимости от содержимого m следует рассмотреть два случая. Злоумышленник изначально не знает, какой случай имеет место:
Для первого (и более простого) из двух случаев предположим, что предпоследний байт m отличен от нуля. Мы попробуем все возможные байты b и спросим, имеет ли допустимое заполнение m ⊕ b . Поскольку m — это блок, а b — один байт, когда мы пишем m ⊕ b мы имеем в виду, что b дополняется слева нулями. Поскольку предпоследний байт m (и, следовательно, m ⊕ b ) не равен нулю, только одна из этих возможностей будет иметь допустимое заполнение — та, в которой m ⊕ b заканчивается байтом. 01. Следовательно, если b является последующим байтом-кандидатом ( т. е. , m ⊕ b имеет допустимое заполнение), то последний байт m должен быть b ⊕ 01.
Пример:
Использование LEARNLASTBYTE для изучения последнего байта b ∗ блока открытого текста m:
В другом случае предположим, что предпоследний байт m равен нулю. Тогда m ⊕ b будет иметь допустимое заполнение для нескольких значений-кандидатов b :
Пример:
Использование LEARNLASTBYTE для изучения последнего байта b ∗ блока открытого текста m:
Всякий раз, когда более чем одно значение кандидата b дает правильное заполнение, мы знаем, что предпоследний байт m равен нулю (на самом деле, подсчитывая количество успешных кандидатов, мы можем точно знать, сколько нулей предшествует последний байт m ).
Если предпоследний байт m равен нулю, то предпоследний байт m ⊕ 01 b не равен нулю. Единственный путь для обеих цепочек м ⊕ 01 b и m ⊕ b иметь правильное заполнение, когда m ⊕ b заканчивается байтом 01. Мы можем повторно попробовать все успешные значения кандидатов b снова, на этот раз с лишний ненулевой байт впереди. Будет уникальный кандидат b , успешно прошедший оба раунда, и это скажет нам, что последний байт m равен b ⊕ 01.
.Общий подход к изучению последнего байта блока открытого текста резюмируется в подпрограмме LEARNLASTBYTE на рис. 10.1. Набор B содержит успешные байты-кандидаты из первого раунда. После первого раунда в B остается не более 16 элементов, поскольку существует только 16 допустимых возможностей для последнего байта правильно заполненного блока. В худшем случае LEARNLASTBYTE делает 256 + 16 = 272 обращения к заполняющему оракулу (через CHECKXOR).
Изучение других байтов блока
После того, как мы выучили один из конечных байтов блока открытого текста, выучить дополнительные байты немного проще. Предположим, мы знаем последние 3 байта блока открытого текста, как в примере ниже. Мы хотели бы использовать оракул заполнения, чтобы обнаружить предпоследний байт.
Пример:
Использование LEARNPREVBYTE для изучения предпоследнего байта b ∗ , когда последние 3 байта блока уже известны.
Поскольку мы знаем последние 3 байта m , мы можем вычислить строку x так, что m ⊕ x оканчивается на 00 00 04 . Теперь мы можем попробовать выполнить операцию XOR над 4-м предпоследним байтом m ⊕ x с разными байтами-кандидатами b и спросить оракула заполнения, имеет ли результат допустимое заполнение. Допустимое заполнение происходит только тогда, когда результат имеет 00 в своем предпоследнем байте, и это происходит именно тогда, когда предпоследний байт m точно соответствует нашему байту-кандидату 9. 0007 б .
Процесс описан в подпрограмме LEARNPREVBYTE на рис. 10.1. В худшем случае эта подпрограмма делает 256 запросов к оракулу заполнения.
Собираем все вместе . Теперь у нас есть все инструменты, необходимые для расшифровки любого зашифрованного текста с использованием только оракула заполнения. Процесс описан ниже в подпрограмме LEARNALL.
В худшем случае для изучения каждого байта открытого текста требуется 256 запросов к оракулу заполнения. 2 Однако на практике число может быть намного меньше. Пример в этом разделе был вдохновлен реальной атакой оракула заполнения 3 , которая включает оптимизации, позволяющие злоумышленнику восстановить каждый байт открытого текста в среднем всего за 14 запросов оракула.
2 Для изучения последнего байта может потребоваться более 256 запросов. Но всякий раз, когда Learnlastbyte использует более 256 запросов, побочным эффектом является то, что вы также узнали, что некоторые другие байты блока равны нулю. Это избавляет вас от необходимости запрашивать оракул заполнения, чтобы узнать эти байты.
3 Как взломать шифрование XML , Тибор Ягер и Юрай Соморовский. ACM CCS 2011.
10.2: Что пошло не так?
Почему гарантия CPA-безопасности шифрования CBC не спасла нас от атак padding oracle? Как злоумышленнику удалось полностью уничтожить конфиденциальность шифрования?
- Во-первых, шифрование CBC (фактически, каждая схема шифрования, которую мы видели до сих пор) обладает свойством, называемым пластичностью . Имея шифрование c неизвестного открытого текста m , можно сгенерировать другой зашифрованный текст c’ , содержимое которого связано с m предсказуемым образом . В случае шифрования CBC, если Ciphertext C 0 · · C ℓ шифры A Plaintext M 1 · · M ℓ · M902 i −1 ⊕ x,c i ) шифрует открытый текст , связанный с m i ⊕ x . Короче говоря, если схема шифрования податлива, то она позволяет «переносить» информацию, содержащуюся в одном зашифрованном тексте, в другой зашифрованный текст.
- Во-вторых, вы могли заметить, что в определении безопасности CPA не упоминается алгоритм Dec. Алгоритм Dec проявляется в нашем определении для правильности ,
Рисунок 10.1 : Резюме атаки оракула заполнения
, но его нет в библиотеках ℒ cpa-* . Видимо расшифровка не влияет на безопасность ?
Но настройка оракула заполнения включала алгоритм Dec — в частности, злоумышленнику разрешалось видеть некоторую информацию о результате Dec, примененном к выбранным противником шифротекстам. Из-за этого настройка оракула заполнения больше не соответствует определению безопасности CPA.
Суть такова: дайте злоумышленнику гибкую схему шифрования и доступ к любой частичной информации, связанной с расшифровкой, и он/она сможет добиться утечки информации неожиданным образом. Как показывает атака padding-oracle, даже если только один бит информации (т. е. ответ на вопрос «да/нет») просочится о результате дешифрования, этого часто бывает достаточно, чтобы извлечь весь открытый текст .
Если нам нужна безопасность даже в сценарии оракула заполнения, нам нужно лучшее определение безопасности и схемы шифрования, которые ее обеспечивают. Именно этому посвящена остальная часть этой главы.
Обсуждение
- Реально ли это? Вы можете задаться вопросом, не является ли вся эта ситуация чем-то надуманным только для того, чтобы дать криптографам решение более сложных задач. На самом деле, это, вероятно, было обычным отношением к определениям безопасности, представленным в этой главе. Однако в 1998 году Даниэль Блейхенбахер продемонстрировал разрушительную атаку на ранние версии протокола SSL. Предоставляя веб-серверу миллионы тщательно созданных зашифрованных текстов, злоумышленник может в конечном итоге восстановить произвольные сеансовые ключи SSL.
На практике трудно сделать внешнее поведение сервера независимым от результата расшифровки. В случае атак оракула заполнения ошибки в реализации могут привести к различным сообщениям об ошибках для недопустимого заполнения. В других случаях время ответа сервера может зависеть от расшифрованного значения, что позволяет проводить аналогичные атаки.
Как мы увидим, на самом деле позволяет обеспечить безопасность при таких настройках и с небольшими дополнительными накладными расходами. В наши дни редко бывает хорошее оправдание для использования шифрования, которое является безопасным только для CPA.
- Заполнение во имя атаки. Но прокладка не виновата. Преступник использует (просто) CPA-безопасную схему шифрования, допуская утечку некоторой информации о результате дешифрования. Упражнения расширяют это еще
- Внешне атака выглядит как грубая сила, но это не так: атака делает 256 запросов на байт открытого текста, поэтому она стоит около 256 ℓ запросов для открытого текста размером ℓ байт. Перебор всего открытого текста будет стоить 8 ℓ , так как именно столько существует ℓ -байтовых открытых текстов. Таким образом, атака экспоненциально лучше, чем грубая сила. Урок таков: брут-форс по кусочкам гораздо лучше, чем брут-форс целиком.
10.3: Определение безопасности CCA
Теперь наша цель — разработать новое определение безопасности, учитывающее злоумышленника, который может создавать вредоносные зашифрованные тексты и наблюдать за эффектами, вызванными их расшифровкой. Мы начнем с базового подхода к безопасности CPA, где есть левая и правая библиотеки, которые отличаются только тем, какой из двух открытых текстов они шифруют.
В типичной системе противник может получить только некоторую конкретную частичную информацию о процессе Dec. При атаке оракула заполнения злоумышленник мог узнать только, имел ли результат дешифрования допустимое заполнение.
Однако мы пытаемся придумать определение безопасности, которое будет полезным независимо от того, как развернута схема шифрования. Как мы можем предвидеть все виды неполной информации, которая может попасть к противнику при каждом возможном использовании схемы шифрования? Самый безопасный выбор — быть настолько пессимистичным, насколько это возможно, до тех пор, пока мы в конечном итоге приходим к понятию безопасности, которого мы действительно можем достичь в конце. Так давайте просто позволим противнику расшифровать произвольные зашифрованные тексты по своему выбору . Другими словами, если мы можем гарантировать безопасность, когда у противника есть полная информация о расшифрованных зашифрованных текстах, то мы определенно обеспечиваем безопасность, когда противник узнает только частичную информацию о расшифрованных зашифрованных текстах (как в типичной реальной системе).
Но это представляет серьезную проблему. Противник может сделать c ∗ := ВЫЗОВ( m L , m R ), чтобы получить зашифрованный текст вызова, а затем немедленно запросить расшифровку этого зашифрованного текста c ∗ . Это, очевидно, покажет злоумышленнику, связана ли она с левой или правой библиотекой из определения безопасности.
Таким образом, простое предоставление злоумышленнику неограниченного доступа Dec не может привести к разумному определению безопасности (это определение безопасности никогда не может быть удовлетворено). Но давайте представим наименьший возможный патч для предотвращения этой немедленной и очевидной атаки. Мы можем позволить противнику запросить расшифровку любого зашифрованного текста, кроме созданного в ответ на запросы CHALLENGE . При этом мы приходим к окончательному определению безопасности: защита от атак с выбранным зашифрованным текстом или CCA-защита:
.
Определение 10.1: Безопасность CCA
Пусть Σ схема шифрования. Мы говорим, что Σ имеет уровень защиты от атак с выбранным шифротекстом (защита CCA) if ℒ Σ cca-L ≋ ℒ Σ cca-R , где:
В этом определении набор S отслеживает шифротексты, сгенерированные подпрограммой CHALLENGE. Подпрограмма DEC полностью отвергает эти зашифрованные тексты, но с радостью расшифрует любой другой зашифрованный текст по выбору злоумышленника.
Псевдослучайные шифртексты. Мы также можем изменить определение безопасности псевдослучайных шифротекстов (безопасность CPA$) аналогичным образом:
Определение 10.2: Безопасность CCA$
Пусть Σ схема шифрования. Мы говорим, что Σ имеет псевдослучайных зашифрованных текстов при наличии атак с выбранным зашифрованным текстом (безопасность CCA$) if ℒ Σ cca$-real ≋ ℒ Σ cca$-rand 0,9003
10.4: Ненадежность CCA режимов блочного шифрования
С помощью атаки padding oracle мы уже показали, что режим CBC не обеспечивает безопасность при наличии атак с выбранным шифрованным текстом. Но эта атака была довольно сложной, так как противник был ограничен возможностью узнавать только 1 бит информации за раз о расшифрованном зашифрованном тексте. Атака в полной настройке CCA может быть гораздо более прямой.
Рассмотрим злоумышленника ниже, атакующего безопасность CCA режима CBC (с длиной блока blen )
Можно легко убедиться, что этот противник достигает преимущества 1, отличая L cca-L от L cca-R . Атака использует тот факт (также используемый в атаке padding oracle), что если c 0 c 1 c 2 шифрует m 1 m 2 , затем c 0 c 1 шифрует m 1 2 3. Ciphertext c 0 c 1 is clearly related to cm 0 c 1 c 2 in an obvious way, but it is different than c 0 с 1 с 2 , поэтому ℒ cca-* библиотеки успешно его расшифровывают.
Вероятно, неудивительно, что существует множество очень простых способов катастрофически атаковать безопасность CCA при шифровании в режиме CBC. Вот еще несколько (где x̄ обозначает результат переворачивания каждого бита в x ):
Первая атака использует тот факт, что изменение c 2 не влияет на первый блок открытого текста. Вторая атака использует тот факт, что переключение каждого бита в IV переворачивает каждый бит в м 1 .
10.5: простая схема CCA-Secure
Вспомним определение -сильной -псевдослучайной перестановки (PRP) (определение 7.6). Сильный PRP неотличим от случайно выбранной перестановки даже для противника, который может сделать как вперед ( т. 1 ) запросов.
Эта концепция имеет некоторое сходство с определением безопасности CCA, в котором злоумышленник может делать запросы как к Enc, так и к его обратному Dec. Действительно, сильный PRP может использоваться для построения схемы шифрования, защищенной CCA, естественным образом:
Строительство 10.3
Пусть F псевдослучайная перестановка с длиной блока blen = n + λ . Определите следующую схему шифрования с пространством сообщений ? = {0,1} п :
В этой схеме m шифруется путем добавления к нему случайного одноразового номера r с последующим применением PRP. Неформально рассуждать о безопасности этой схемы можно так:
- Представьте, что злоумышленник связан с одной из библиотек CCA. Пока случайное значение r не повторяется, все входы в PRP различны. Гарантия псевдослучайной функции/перестановки заключается в том, что ее выходные данные (которые в этой схеме представляют собой шифротекстов ) будут, таким образом, независимо выглядеть единообразными.
- Библиотека CCA предотвращает запрос злоумышленником расшифровки c , если c был сгенерирован библиотекой. Для любого другого значения c’ , которое противник запрашивает для расшифровки, гарантия сильного PRP состоит в том, что результат будет выглядеть независимо случайным. В частности, результат не будет зависеть от выбора открытых текстов, используемых для генерации шифротекстов вызова. Поскольку этот выбор открытых текстов является единственным различием между двумя библиотеками CCA, эти запросы дешифрования (интуитивно) не помогают противнику.
Более формально безопасность этой схемы можно доказать следующим образом:
Пункт 10.4
Если F — сильная PRP (определение 7.6), то конструкция 10.3 имеет безопасность CCA.
Упражнения:
10.1: В схемах заполнения нет ничего особенно плохого. Они являются только целью, потому что заполнение — это часто используемая структура в открытых текстах, которая проверяется при расшифровке.
Нулевой символ — это просто байт 00. Предположим, у вас есть доступ к следующему оракулу:
Предположим, вам дано c ∗ := Enc( k,m ∗ ) для некоторого неизвестного открытого текста m ∗ и неизвестного ключа
7 k
8 . Предположим, что m ∗ кратно длине блока (поэтому заполнение не используется) и что m ∗ не содержит нулевых символов.- Покажите, как с помощью оракула полностью расшифровать m ∗ , когда Enc использует шифрование в режиме CBC.
- Покажите, как с помощью оракула полностью расшифровать m ∗ , когда Enc использует шифрование в режиме CTR.
10.2: PKCS#7 — это стандарт заполнения, в котором используются строки заполнения 01, 02 02, 03 03 03 и т. д. Покажите, как расшифровывать произвольные зашифрованные CBC зашифрованные тексты с помощью оракула заполнения, который проверяет правильность заполнения PKCS#7.
10.3: Иногда шифрование так же хорошо, как и дешифрование, для противника.
(а). Предположим, у вас есть доступ к следующему оракулу с шифрованием , где s — секрет, одинаковый для всех вызовов:
Да, этот вопрос касается ужасного режима шифрования ECB (Конструкция 9.1). Опишите атаку, которая эффективно восстанавливает все с , используя доступ к ECBORACLE. Предположим, что при длине м ‖ s не кратно длине блока, тогда режим ECB дополнит его нулевыми байтами.
Подсказка: изменяя длину м , вы можете контролировать, где находятся границы блока-разделения в s .
(б). Теперь предположим, что у вас есть доступ к оракулу шифрования CBC, где вы можете контролировать используемый IV:
Опишите атаку, которая эффективно восстанавливает все с , используя доступ к CBORACLE. Как и выше, предположим, что m ‖ s каким-то образом дополняется до кратного длины блока. Атаку можно осуществить независимо от метода заполнения, если он известен противнику.
10.4: Формально докажите, что безопасность CCA$ подразумевает безопасность CCA.
10.5: Пусть Σ будет схемой шифрования с пространством сообщений {0,1} n , и определим Σ 2 как следующую схему шифрования с пространством сообщений {0,1} 2n :
(а). Докажите, что если у Σ есть безопасность CPA, то у Σ 2 тоже.
(б). Покажите, что даже если Σ имеет безопасность CCA, Σ 2 ее не имеет. Опишите успешный отличительный признак и вычислите его отличительное преимущество.
10.6: Покажите, что следующие режимы блочного шифра не имеют защиты CCA. Для каждого из них опишите успешный отличительный признак и вычислите его отличительное преимущество.
10.7: Покажите, что ни одна из схем в упражнении 8.4 не имеет защиты CCA. Для каждого из них опишите успешный отличительный признак и вычислите его отличительное преимущество.
10.8: Алиса считает, что шифрование CBC 0 blend ‖ m (где m — один блок) обеспечивает безопасность CCA, когда алгоритм Dec отклоняет зашифрованные тексты, когда первый блок открытого текста не состоит из нулей. Ее аргументация такова:
- Зашифрованный текст состоит из 3 блоков (включая IV). Если злоумышленник вмешивается в IV или средний блок зашифрованного текста, то первый блок открытого текста больше не будет состоять из нулей, и зашифрованный текст будет отклонен.
- Если противник вмешивается в последний блок зашифрованного текста, то он расшифровывается до 0 blen ‖ m’ , где m’ непредсказуемо с точки зрения противника. Следовательно, не будет утечки информации об исходных м .
Она права? Пусть CBC обозначает схему шифрования, полученную с использованием безопасного PRF в режиме CBC. Ниже мы определяем схему шифрования Σ ‘ с пространством сообщений {0,1} blend и пробел для зашифрованного текста {0,1} 3 смешанный :
Покажите, что Σ ‘ означает, что , а не имеют безопасность CCA. Опишите отличительный признак и вычислите его отличительное преимущество. Какая часть рассуждений Алисы была не совсем верна?
Подсказка: Получите A Ciphertext C = C 0 C 1 C 2 и другой циферный текст C ‘ = C ‘0008 0 c’ 1 c’ 2 , оба с известным открытым текстом. Запросите в библиотеке расшифровку c 0 c 1 c ‘ 2 .
10.9: Режимы CBC и OFB гибки по-разному. По этой причине Мэллори утверждает, что шифрование открытого текста (независимо) с использованием обоих режимов приводит к безопасности CCA, когда алгоритм Dec отклоняет зашифрованные тексты, чьи открытые тексты OFB и CBC не совпадают. Она права?
Пусть CBC обозначает схему шифрования, полученную с использованием безопасного PRF в режиме CBC. Пусть OFB обозначает схему шифрования, полученную с использованием безопасного PRF в режиме OFB. Ниже мы определяем схему шифрования Σ ‘ :
Покажите, что Σ ‘ означает, что , а не имеют безопасность CCA. Опишите отличительный признак и вычислите его отличительное преимущество.
10.10: Эта проблема является обобщением предыдущей. Пусть Σ 1 и Σ 2 быть две (возможно разные) схемы шифрования с одинаковым пространством сообщений?. Ниже мы определяем схему шифрования Σ ‘ :
Покажите, что Σ ‘ означает, что , а не имеют защиту CCA, даже если и Σ 1 , и Σ 2 имеют защиту CCA. Опишите отличительный признак и вычислите его отличительное преимущество.
10.11: Рассмотрите любую схему заполнения, состоящую из подпрограмм PAD (которая добавляет правильное дополнение к своему аргументу) и VALIDPAD (которая проверяет свой аргумент на правильное дополнение).