Программу Для Шифрования Методом Xor
Интересные алгоритмы шифрования. Наибольшую известность в мире среди алгоритмов. Основные понятия и определения; Простейшие методы шифрования. - подстановки составной.
Программы для подбора паролей: а есть ли смысл? Сергей Пахомов Так уж повелось, что одни делают бизнес на разработке средств по защите информации, а другие — на разработке средств по ее преодолению. Причем эти два бизнеса развиваются параллельно и весьма успешно.
И если ранее созданием утилит для взлома защиты занимались энтузиасты-одиночки, то сегодня — крупные компании, которые хотят получать за свои продукты немалые деньги. Утилиты для подбора, или, попросту, взлома, паролей сейчас называют утилитами для аудита паролей либо программами для восстановления забытых паролей.
Конечно, слово «аудит» звучит более благопристойно, чем «взлом», но суть-то от этого не меняется! Программ для взлома паролей, так же как и специализированных средств для защиты информации с использованием паролей и шифрования, существует довольно много. В настоящей статье мы рассмотрим наиболее популярные программы для взлома паролей к офисным документам, сравним их эффективность и попытаемся ответить на главный вопрос: имеет ли смысл защищать документы паролями, и если да, то какими должны быть пароли, чтобы их нельзя было подобрать?
Но прежде нам потребуется сделать небольшое отступление и разобраться с тем, какие бывают типы защиты документов, чем они отличаются друг от друга и каким образом можно преодолеть парольную защиту. Типы парольной защиты С точки зрения пользователя, единственный способ обеспечить защиту документа — это установить на него пароль.
Это может быть пароль на открытие документа или на совершение каких-либо действий с ним. Однако сами способы парольной защиты документа могут быть разными. Сохранение пароля в самом документе Самый простой способ заключается в том, чтобы сохранить установленный пользователем пароль в самом файле документа.
В этом случае доступ к документу (или к его редактированию) пользователь получит только при совпадении вводимого пароля с установленным. Однако данный способ парольной защиты легко преодолеть — ведь если пароль в открытом виде сохраняется в самом документе, то ничто не мешает извлечь его оттуда. К примеру, его можно подсмотреть с помощью любого HEX-редактора. Тем не менее данный способ парольной защиты, несмотря на свою ненадежность, иногда применяется, в частности в документах MS Office (Word, Excel) предусмотрено использование пароля защиты документа от записи, который сохраняется в самом документе в чистом виде (в unicode). Использование хэш-функций пароля Для того чтобы исключить возможность того, что кто-то может подсмотреть пароль, сохраняемый в самом документе или в файле, часто применяется несколько более продвинутый способ защиты с помощью хэш-функций (hash) паролей. Хэш-функция получается в результате одностороннего преобразования пароля по специальному алгоритму, при помощи которого для исходного блока данных произвольной длины вычисляется уникальный идентификатор фиксированной длины. Особенность алгоритма хэширования паролей заключается в том, что, зная хэш пароля (результат преобразования), в принципе нельзя вычислить исходный блок данных, то есть сам пароль.
Собственно, невозможность расшифровки пароля по его хэш-функции (реализации обратного преобразования) и заложена в понятие одностороннего (то есть только в одну сторону) преобразования. Как уже отмечалось, независимо от длины пароля его хэш-функция имеет фиксированную длину.
Алгоритмов одностороннего преобразования (хэширования) пароля существует огромное множество, причем самостоятельная разработка такого алгоритма не представляет сложности. Применение хэшей паролей избавляет от необходимости сохранять пароль в защищаемом документе. Там сохраняется лишь хэш пароля, но не сам пароль. Когда пользователю нужно получить доступ к документу, он вводит пароль, а программа вычисляет его хэш-функцию — если она совпадает с хэш-функцией, сохраненной в файле, то пароль считается правильным и доступ к файлу разрешается. Данный способ защиты тоже несложно обойти. Во-первых, в самом документе с помощью соответствующих утилит можно подменить исходную хэш-функцию на хэш-функцию, пароль для которой известен. Тогда можно использовать этот пароль для получения доступа к документу.
Во-вторых, при применении данного метода защиты документ остается незашифрованным и текст документа можно извлечь, минуя открытие документа в той программе, в которой он был создан. В-третьих, можно попытаться подобрать пароль. При этом стойкость защиты зависит от длины хэш-функции.
К примеру, если длина хэш-функции составляет 32 бита, то количество возможных хэш-функций равно 232 = = 4 294 967 296, что не так уж много. Естественно, что одной и той же хэш-функции может соответствовать несколько паролей, поэтому при такой длине хэша подобрать подходящий пароль несложно, причем совсем необязательно, что найденный пароль будет таким же, какой изначально установлен пользователем.
Парольная защита с шифрованием Еще один тип часто используемой парольной защиты — это симметричное шифрование всего содержимого файла, которое подразумевает применение одного и того же секретного ключа как для шифрования, так и для расшифровки данных. При этом секретный ключ вычисляется на основе пароля. Алгоритм защиты в данном случае следующий. В каждом зашифрованном документе (файле) сохраняются две контрольные последовательности. Первая — это произвольная случайная последовательность, а вторая — последовательность, полученная в результате смешивания (хэширования) первой контрольной последовательности и ключа шифрования, вычисляемого на основе пароля. То есть вторая контрольная последовательность представляет собой хэш первой последовательности на основе ключа шифрования. При проверке пароля определяются ключ шифрования и соответствие контрольных последовательностей одна другой.
Таким образом, в самом документе в явном виде не сохраняется ни пароль, ни секретный ключ. Контрольные последовательности, хранимые в документе, можно изъять или даже подменить, но это не позволит определить секретный ключ, а следовательно, расшифровать весь документ. Алгоритм парольной защиты с шифрованием является достаточно стойким, и обойти такую защиту сходу уже не получится. Типы защиты, используемые в офисных приложениях В документах MS Word и Excel используется несколько типов защиты. Так, можно установить пароль на редактирование документов, то есть пользователь сможет открыть документ для чтения, а для внесения в него изменений потребуется ввести пароль. Кроме того, можно реализовать защиту на доступ к документу, когда пароль вводится при его открытии.
В случае защиты документов Word от редактирования применяется сохранение хэш-функций пароля в заголовке самого документа. Длина хэша в этом случае составляет 32 бита (4 байта). Абсолютно такой же способ парольной защиты с помощью хэш-функций применяется при защите документов Excel, когда посредством пароля документ защищается от изменения. Правда, в документах Excel существуют и другие специфические пароли, которые устанавливаются на книгу или на отдельный лист (пароль защиты от видоизменения структуры книги, пароль защиты на редактирование листа). Принцип парольной защиты от редактирования листа примерно такой же, как и от изменений в документе.
Отличие лишь в том, что в данном случае длина хэша еще меньше — всего 16 бит (2 байта) и существует всего 216 = 65 536 различных вариантов хэшей, поэтому подобрать такой пароль не составит особого труда. Парольная защита с шифрованием применяется для защиты от доступа (открытия) к документам Word и Excel. При установке такой защиты документ шифруется по определенному алгоритму, причем в документе сохраняется уже зашифрованный хэш пароля. Длина пароля на открытие документов MS Office Word 97-2003 и Excel 97-2003 ограничивается 15 символами (для документов MS Office 2003 длину пароля можно сделать неограниченной, но для этого нужно выбрать шифрование с 128-битным ключом). Попробуем рассчитать, сколько возможных паролей при этом может существовать, учитывая, что в качестве символа можно использовать спецсимволы (30 символов), цифры (10 символов), а также заглавные и строчные буквы как английского (52 символа), так и локализованного алфавита (66 символов). Итого, количество возможных символов — 30 + 10 + 52 + 66 = 158.
При максимальной длине пароля в 15 символов получим возможных комбинаций 1581 + 1582 + + 15815. Число это просто огромно, и с задачей перебора всех возможных паролей за приемлемое время не справится ни один суперкомпьютер. В документах MS Word 2007 и Excel 2007 длина пароля на открытие документов вообще ничем не ограничивается, то есть пароль может быть любым, а количество возможных паролей бесконечно велико. Однако и в данном случае есть одно «но». В ранних версиях MS Office (MS Office Word 97-2003 и Excel 97-2003) для шифрования документов использовался алгоритм симметричного шифрования RC4.
В данном алгоритме ключ шифрования мог иметь длину до 128 бит, однако экспортные ограничения на криптоалгоритмы не допускали применения секретного ключа такой длины. Поэтому ключ, применяемый при шифровании RC4 в документах MS Office, имел длину только 40 бит, что существенно снижало стойкость этого алгоритма. Реализовать перебор всех возможных секретных ключей можно на обычном ПК за приемлемое время. Действительно, при длине секретного ключа 40 бит количество возможных секретных ключей составляет 240 = 1 099 511 627 776. Перебор всех этих комбинаций на современном ПК займет менее одного месяца. Впоследствии в пакете MS Office 2003 стали использовать ключ шифрования длиной 128 бит. Соответственно количество возможных секретных ключей составило 2128 = 3,41038.
С перебором такого количества ключей за приемлемое время (хотя бы за несколько лет) уже не справится ни один, даже самый мощный компьютер. Отметим, что по умолчанию в документах MS Office 2003 применяется 40-битный ключ шифрования и для использования 128-битного ключа необходимо выбрать соответствующий алгоритм шифрования.
Кроме того, в приложениях Office 2007 для шифрования применяется алгоритм AES, а не RC4, и алгоритм хэширования SHA-1. В сравнении с предыдущими версиями пакета MS Office в пакете MS Office 2007 изменился и алгоритм преобразования пароля в ключ шифрования. Если ранее пароль просто хэшировался вместе со случайным набором байтов, уникальных для каждого документа (SHA-1 преобразование), то в пакете MS Office 2007 для преобразования пароля в ключ нужно выполнить последовательно 50 тыс. При открытии документа это незаметно — операция выполняется за доли секунды. Однако когда мы начинаем последовательно перебирать пароли, то скорость перебора катастрофически падает. Поэтому если использовать вычислительную мощность только одного компьютера, то реально можно найти пароль длиной лишь до 4-5 символов, не более.
В MS Office 2007 существенно изменился и алгоритм проверки паролей Read only (открытие в режиме чтения), защиты документа, а также книг и листов Excel. Раньше в документе хранился хэш пароля, состоящий из 2 байт. Соответственно было возможно его реверсирование в первый подходящий пароль. В MS Office 2007 в алгоритме хэширования используются 50 тыс. Итераций хэша SHA-1, а следовательно, этот пароль мгновенно найти уже не представляется возможным. Нужно отметить, что пакет MS Office 2007 позволяет сохранять документы в режиме совместимости с предыдущими версиями пакета.
В этом случае для обеспечения совместимости применяются режимы защиты, которые характерны для предыдущих версий пакета. Утилиты для подбора паролей Сегодня можно найти достаточно много как платных, так и бесплатных программ для подбора паролей к офисным документам. Более того, некоторые компании предлагают даже онлайн-сервис по подбору пароля к документу (небесплатный, конечно).
Принцип работы всех программ, позволяющих взламывать пароли, практически одинаковый — различия лишь в деталях. Существует два базовых алгоритма взлома паролей.
Первый заключается в том, чтобы подбирать не сам пароль к документу, а именно секретный ключ и соответственно расшифровывать документ без знания его пароля. Такой тип атаки по ключу называется keyspace attack. Второй алгоритм — это подбор пароля.
Различные утилиты обеспечивают разную скорость перебора пробных паролей, в них могут быть реализованы и разные алгоритмы генерации пробных паролей (типы атак). Традиционно выделяют три типа атак на пароли:. атака по словарю;. атака методом последовательного перебора;. атака по маске. Атака по словарю При атаке по словарю в утилитах используется внешний словарь и для каждого из содержащихся в нем слов последовательно вычисляются хэши, которые затем сравниваются с хэшем пароля. Преимуществом данного метода является его высокая скорость, а недостатком — большая вероятность отсутствия пароля в словаре.
Для увеличения эффективности атаки по словарю в некоторых утилитах предусмотрена возможность производить дополнительные настройки такой атаки. В частности, к словарю можно добавлять сочетания соседних клавиш (типа последовательностей qwert и др.), проверять дважды записанное слово (например, useruser), обратный порядок символов в словах (например, resu), конкатенацию с обратным порядком символов (в частности, userresu), усеченные слова, слова без гласных, транслитерацию букв (типа parol). Кроме того, можно проверять замену локализованной раскладки латинской (слово «пароль» в латинской раскладке будет выглядеть как «gfhjkm») и замену латинской раскладки локализованной (слово «password» в русской раскладке — «зфыыцщкв»).
Помимо этого, при атаке по словарю возможно подключение нескольких словарей. Кроме того, в некоторых утилитах может быть реализована так называемая гибридная атака, которую можно рассматривать как вариант атаки по словарю. При подборе паролей методом гибридной атаки к каждому слову или к модификации слова словаря добавляется по нескольку символов из предопределенного набора справа и/или слева.
Для каждой получившейся комбинации вычисляется хэш, который сравнивается с хэшем пароля. Атака методом последовательного перебора При атаке методом последовательного перебора сгенерированные пробные пароли представляют собой случайные комбинации символов (типа 6F7drts78). При данном типе атаки можно задать набор символов, из которых будут составляться пробные пароли, а также задать минимальную и максимальную длину пароля. Методом последовательного перебора подобрать пароль можно всегда — это лишь вопрос времени, которое может исчисляться годами, столетиями или даже тысячелетиями.
Поэтому эффективность такого метода весьма низкая. Естественно, если заранее известен набор символов, используемый для пароля (например, только английские буквы и цифры, или только русские буквы, или только цифры), а также приблизительная длина пароля, то это существенно упрощает задачу его подбора и делает ее вполне решаемой. Если же заранее о пароле ничего не известно, то подобрать его методом последовательного перебора практически невозможно. Атака по маске Атака по маске представляет собой модифицированную атаку методом последовательного перебора и используется в том случае, если о пароле имеется определенная предварительная информация. Например, если известны некоторые символы пароля, то можно дополнительно указывать, какие символы должны присутствовать в пароле (и их местоположение), то есть настраивать маску пароля. Классификация программ Утилиты подбора паролей можно условно разбить на два класса: многоцелевые программные пакеты, позволяющие подбирать пароли к различному типу файлов, и специализированные утилиты, которые ориентированы на подбор паролей к файлам, созданным каким-либо одним приложением. Фактически многоцелевые программные пакеты представляют собой сборник отдельных утилит (иногда такие пакеты предусматривают использование единой программной оболочки для доступа к отдельным утилитам).
Среди многоцелевых программных пакетов можно выделить:. Accent Office Password Recovery v2.60 от компании AccentSoft ;. Passware Kit 8.1 от компании Passware ;. Elcomsoft Password Recovery Bundle от компании ElcomSoft (, );.
Office Password Recovery Master v. Все вышеперечисленные пакеты — это собрания множества утилит, объединенных единым интерфейсом. Все утилиты, входящие в эти пакеты, можно приобрести и по отдельности. Далее мы рассмотрим несколько наиболее популярных пакетов и отдельных утилит, позволяющих подбирать пароли к различным файлам. Причем если говорить о многоцелевых пакетах, то в данной статье мы рассмотрим лишь те утилиты, которые позволяют подбирать пароли к документам, созданным в MS Office (Word, Excel, Access).
Тестирование утилит для взлома паролей Для тестирования всех пакетов и утилит мы специально создали несколько тестовых, закрытых паролями на открытие и на изменение документов. Файлы создавались с помощью пакетов Microsoft Office 2003 и Office 2007.
Содержание. Визуальное представление Схема передатчика.
Схема приёмника. Стойкость доказал, что при определённых свойствах гаммы этот метод шифрования является абсолютно стойким (то есть, не поддающимся взлому).
Доказательство Шеннона. Пусть X, Y и Z — дискретные. Пусть:. X — значение; то есть, переменная X (бит) способна принимать два значения: 0 и 1;.
p — вероятность события, заключающегося в том, что переменная X примет значение 0;. (1-p) — вероятность противоположного события (то есть, вероятность того, что переменная X примет значение 1). Запишем значений X: X 0 1 Pi p 1-p Используем p и (1-p), так как встретить одну букву в разных словах различна.
Программу Для Шифрование Методом Xor C++
Пусть:. Y — бит псевдослучайной последовательности (гаммы); то есть, переменная Y (бит) способна принимать два значения: 0 и 1;.
каждое из значений Y равновероятно; то есть, вероятности получить 0 или 1 равны 1/2. Запишем значений Y: Y 0 1 Pi 1/2 1/2 Иными словами, в качестве гаммы (Y) подаётся одинаковое количество нулей и единиц, или значения переменной Y имеют симметричный закон распределения. Пусть:.
Z — бит закрытого текста; то есть, переменная Z (бит) способна принимать два значения: 0 и 1;. значение Z вычисляется на основе значений X и Y по формуле: Z = X+Y (mod 2) или Z = ( X, Y ) или Z = X Y Найдём следующие вероятности:. P(Z=0) — вероятность события, заключающегося в том, что переменная Z принимает значение 0;.
P(Z=1) — вероятность события, заключающегося в том, что переменная Z принимает значение 1. Используем формулы:.
сложения вероятностей: P(A+B) = P(A) + P(B);. умножения вероятностей событий: P(A.B) = P(A). P(B). Вероятность того, что переменная Z примет значение 0: P(Z=0) = P( X=0, Y=0 ) + P( X=1, Y=1 ) = = P(X=0). P(Y=0) + P(X=1). P(Y=1) = = p.
1/2 + (1-p). 1/2 = 1/2. Вероятность того, что переменная Z примет значение 1: P(Z=1) = 1 - P(Z=0) = 1/2. Так как P(Z=0) и P(Z=1) не зависят от p, p может принимать любое значение.
Драйвера для джойстика esperanza. Также, это удобный менеджер управления и обновления всех установленных драйверов, в несколько кликов.
Программу Для Шифрование Методом Xor
Запишем значений переменной Z: Z 0 1 Pi 1/2 1/2 Закон распределения Z оказался симметричным, как и закон распределения гамма (Y) или шум. То есть, Z не содержит никакую информацию из X (в Z нет p). Это доказывает, что шифр является абсолютно стойким. Требования к гамме. Для шифрования каждого нового сообщения нужно использовать новую гамму.
Повторное использование гаммы недопустимо ввиду свойств операции «». Рассмотрим пример: с помощью одинаковой гаммы Y зашифрованы два X₁ и X₂, получено две Z₁ и Z₂: Z₁ = X₁ ⊕ Y Z₂ = X₂ ⊕ Y Выполним сложение двух шифрограмм, используя операцию «»: Z₁ ⊕ Z₂ = ( X₁ ⊕ Y ) ⊕ ( X₂ ⊕ Y ) = X₁ ⊕ X₂ Результат зависит от открытых текстов X₁ и X₂ и не зависит от гаммы Y. Ввиду избыточности результат поддаётся, то есть открытые тексты можно подобрать, не зная гамму Y. Для формирования гаммы (последовательности псевдослучайных чисел) нужно использовать, основанные на физических процессах. Если гамма не будет случайной, для получения открытого текста потребуется подобрать только начальное состояние ( seed) генератора псевдослучайных чисел. Длина гаммы должна быть не меньше длины защищаемого сообщения (открытого текста).
Исполнение: Обложка твердая картон, внешне бумвинил красный, бордовый. Обучение должны проходить все руководители (собственники) предприятия, главные специалисты, лица, назначенные ответственными за пожарную безопасность, а также выполняющие работу с повышенной пожарной опасностью, до начала самостоятельного выполнения работ (Приказ МЧС РФ от № 645 «Об утверждении норм пожарной безопасности «Обучение мерам пожарной безопасности работников организациях»). Периодичность обучения – раз в три года. Бланк удостоверения птм. Окончившие обучение получают «Удостоверение о проверке знаний по пожарно-техническому минимуму» установленного образца и протокол заседания комиссии.
В противном случае для получения открытого текста потребуется подобрать длину гаммы, проанализировать блоки шифротекста угаданной длины, подобрать биты гаммы. Примечания.