@romicohen
WebDev

Сколькибитный пароль считается достаточно сложным, чтобы его не сломало брутфорсом ЦРУ/ФСБ?

Начну с цитаты из ответа:

Когда говорят о длине ключа в N бит обычно имеют в виду что у ключа может быть 2**N различных значений. Соответственно в вашем случае для фразы из 100 различных слов длиной 10 слов имеем 100**10 вариантов. Что бы выразить это в битах нужно взять от него двоичный логарифм.
Получится log2 100**10 ≈ 67 бит.


А 67 бит это много или мало? :)

Сколько бит должно быть в пароле, чтобы его гарантированно не сломали через API (или даже через сокетное соединение) любые спецслужбы мира? ))

И чтобы с запасом на 5 лет вперед))

Просьба не писать ответы типа "100500 миллионов бит" )) имеется в виду - минимально достаточный - оба слова ключевые))

Спасибо!
  • Вопрос задан
  • 210 просмотров
Решения вопроса 2
@cicatrix
было бы большой ошибкой думать
67 бит это мало.
100-128 бит вполне достаточно для текущих вычислительных мощностей.
256 бит, которые используются в большинстве современных криптосистем - overkill с огромным запасом.
Но надо понимать, что это всё теория, где имеется идеальная безошибочная реализация криптоалгоритма и используется действительно уникальный, никому не известный ключ.
Так же надо учитывать, что сам алгоритм может быть уязвимым для квантовых алгоритмов. Пока ещё у людей нет квантовых компьютеров, способных взломать, например RSA, но они могут появиться в будущем. Более уязвимы ассимитричные алгоритмы, симметричные будут вполне устойчивы даже после квантовой революции.
Единожды взломанная база данных какого-нибудь интернет-магазина делает ВСЕ пароли, которые были использованы его пользователями, уязвимыми, даже если это хорошие пароли, потому что сначала будут использовать не брутфорс, а атаку по словарю, в котором уже будут эти пароли.
Пользователь-идиот - классический вектор атаки. Соц. инженерия, кейлоггеры, зловреды - вполне рабочие инструменты.
Ну и главное - универсальный метод взлома - терморектальный криптоанализ, имеющий практически 100%-ю эффективность.
ФСБ будет действовать именно так, как показано на картинке от XKCD:
538_v1.png
Ответ написан
Сформулируйте от какой атаки вы защищаетесь этим паролем. Если от подбора пароля по сети, то в предположении что сервис может обработать миллион запросов на авторизациюв секунду и не имеет никакой защиты от брутфорса (что странно для сервиса обрабатывающего много авторизаций), потребуется 10^14 секунд для полного перебора или что-то порядка миллиарда лет, но скорей всего если к сервису полетит миллион запросов на авторизацию в секунду - он ляжет. Если от подбора пароля в офлайне по слитой с этого сервиса базы хешей - то видимо вам будет все равно, раз сервис уже поломали и хеши слили, при условии что этот пароль вы больше нигде не используете, т.к. если взлом обнаружен, порядочный сервис форсирует смену паролей пользователями, если не обнаружен или сервис непорядочный - то в общем-то без разницы, какой у вас там пароль. Поэтому для пароля важна не столько длина, сколько уникальность и неугадываемость (энтропийность).

Основная проблема паролей не в длине, а в том что пользователи пароли генерируют не случайно (т.к. не умеют использовать парольные менеджеры), переиспользуют, плохо хранят и ведутся на фишинг. При таких проблемах их длина практического значения не имеет, и по факту практически никогда не встречается брутов на которткие пароли, встречаются бруты на словарные, пароли с пользовательскими данными и стаффинг паролей с других сервисов, просто среди коротких гораздо больше словарных, пароль длиной 7 символов и меньше с высокой вероятностью будет словарным, даже если он случайно сгенерирован, случайный уникальный пароль 10+ символов практически никогда не будет взломан по сети, даже если в нем только маленькие буквы, т.е. в нем менее 50 бит энтропии.

Если вы хотите защищаться от офлайнового брута (например речь идет про сид коршелька) - то вот тут уже надо учитывать и вычислительные мощности тех, кто может ваш кошелек атаковать и запас на будущее и потенциально квантовую криптографию. Допустимая битность в таком случае будет зависеть от используемых алгоритмов, мощностей атакующего и допустимого уровня риска (например вы можете взять достимый уровень как вероятность взломать за год на вычислителе с 1 Петафлопсом 0.001% и исходя из алгоритма посчитать необходимое количество бит энтропии)
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@romicohen Автор вопроса
WebDev
Нагуглил вот что:

Для обеспечения криптографической стойкости для нужд Федерального правительства сегодня требуется не меньше 112 бит (например, для шифрования или подписи данных).

Чтобы получить 128 бит энтропии с использованием прописных и строчных букв, а также чисел, нужен пароль длиной 22 символа ((5.95 * 22 = 131 бит).


Это годный ответ?
Ответ написан
CityCat4
@CityCat4
Если я чешу в затылке - не беда!
Сколько бит должно быть в пароле, чтобы его гарантированно не сломали ... любые спецслужбы мира?

Нисколько. Спецслужбы мира не работают с техникой :) Спецслужбы мира работают с людьми. Вы вообще хоть когда-нибудь хоть по чему-нибудь общались с самым банальным следаком? Нет же, наверняка. Оттого и пребываете в убеждении, что в момент, когда вами начнут заниматься спецслужбы, в отношении Вас будут соблюдаться какие-то законы :D
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы