Расчёт стоимости вычисления коллизий для SHA-1
Криптолог Джесси Уолкер (Jesse Walker) из компании Intel опубликовал расчёт примерного срока жизни алгоритма SHA-1 до тех пор, пока мы не увидим первые коллизии хэшей в реальных атаках на эту функцию. Расчёт опубликован в списке рассылки Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript Национального института стандартов и технологии США (NIST).
Уолкер пишет, что в соответствии с инструментом E-BASH для оценки времени вычисления хэш-функции, на обычном современном микропроцессоре один блок SHA-1 вычисляется за 214 циклов. При этом атака Стивенса требует 260 циклов. Соответственно, вычислительный ресурс для поиска коллизий можно оценить примерно в 214 * 260 = 274 циклов.
Далее, возьмём мощность современного восьмиядерного CPU, каждое ядро которого выполняет 231 циклов в секунду, а весь CPU целиком 23 * 231 - 234циклов в секунду. На сервере обычно цетыре процессора, так что сервер может вычислять хэши со скоростью 22 * 234 = 236 циклов в секунду. Поскольку в году примерно 225 секунд, то сервер за год выдаёт 225 * 236 = 261 циклов. Уолкер предлагает называть этот параметр «серверный год».
На сегодняшний день есть явные признаки того, что закон Мура, который констатирует рост вычислительной мощности процессоров вдвое каждые полтора года, продлится как минимум до середины 2020-х гг. Поэтому мы можем примерно экстраполировать серверный год до 2021 года. Вот сколько «удвоений» по закону Мура произойдёт в эти годы.
3/1,5 = 2 удвоения 2015 году (3 = 2015 - 2012)6/1,5 = 4 удвоения к 2018 году (6 = 2018 - 2012)
9/1,5 = 6 удвоений к 2021 году (9 = 2021 - 2012)
Таким образом, сервер сможет выполнять следующее количество циклов в год.
261 циклов в год в 2012 году22 * 261 = 263 циклов в год в 2015 году
24 * 261 = 265 циклов в год в 2018 году
26 * 261 = 267 циклов в год в 2021 году
Получается, что атака Стивенса на стандартном коммерческом оборудовании будет требовать следующее количество серверных лет.
274 / 261 = 213 серверных лет в 2012 году274 / 263 = 211 серверных лет в 2015 году
274 / 265 = 29 серверных лет в 2018 году
274 / 267 = 27 серверных лет в 2021 году
Сегодня Amazon предоставляет вычислительные мощности на облачном хостинге в аренду по $0,04 в час = $350 в год. Предположим, что стоимость останется прежней, в то время как вычислительная мощность оборудования будет увеличиваться по закону Мура.
В этом случае, поскольку log2(350) ~ 8,4, стоимость поиска коллизий составит следующую сумму:
213 * 28,4 = $221,4 ~ $2,77 миллиона в 2012 году211 * 28,4 = $219,4 ~ $700 тыс. в 2015 году
29 * 28,4 = $217,4 ~ $173 тыс в 2018 году
27 * 28,4 = $215,4 ~ $43 тыс. в 2021 году
Получается, что сегодня атака на SHA-1 ещё требует серьёзных инвестиций и доступна разве что спецслужбам, но уже через несколько лет её стоимость снизится в 10-20 раз и станет вполне приемлемой. В 2018 году провести такую атаку сможет преступный синдикат, а в 2021 году она впишется в бюджет университетского проекта, пишет Уилсон.
Приведённый расчёт можно назвать весьма консервативным, потому что он не учитывает апгрейда набора инструкций (например, в процессорах ARM 8 есть инструкция для SHA-1) и применения специализированного оборудования (например, GPU), не говоря уже о появлении более эффективных методов криптоанализа. Так что «апокалипсис 2021 года» может наступить гораздо раньше.
Вывод очевиден, считает коллега Уилсона Брюс Шнайер: переходить с SHA-1 на SHA-2/SHA-3 нужно уже сегодня.
Подробнее: http://www.xakep.ru/post/59443/default.asp
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
- 2024-08-01 » WebSocket
- 2024-07-26 » Интеграция с Яндекс Еда
- 2024-07-26 » Интеграция с Эквайринг
- 2024-07-26 » Интеграция с СДЕК
- 2024-07-26 » Интеграция с Битрикс-24
- 2024-07-26 » Интеграция с Travelline
- 2024-07-26 » Интеграция с Iiko
- 2024-07-26 » Интеграция с Delivery Club
- 2024-07-26 » Интеграция с CRM
- 2024-07-26 » Интеграция с 1C-Бухгалтерия
- 2024-07-24 » Что такое сторителлинг: техники и примеры
- 2024-07-17 » Ошибка 404: что это такое и как ее использовать для бизнеса
- 2024-07-03 » Размещайте прайс-листы на FarPost.ru и продавайте товары быстро и выгодно
- 2024-07-01 » Профилирование кода в PHP
- 2024-06-28 » Изучаем ABC/XYZ-анализ: что это такое и какие решения с помощью него принимают
- 2024-06-17 » Зачем вам знать потребности клиента
- 2024-06-11 » Что нового в работе Яндекс Метрики: полный обзор обновления
- 2024-06-11 » Поведенческие факторы ранжирования в Яндексе
- 2024-06-11 » Скорость загрузки сайта: почему это важно и как влияет на ранжирование
Всегда храни верность своему начальнику - следующий, может быть еще хуже... |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.