Понятие шифрования

Содержание

 

Модель Леонтьева

Sub МодельЛеонтьева()

'

' МодельЛеонтьева Макрос

' Макрос записан 04.02.2012 (Бахмутова Екатерина Владимировна)

'

 

'

    Range("A1:H1").Select

    With Selection

        .HorizontalAlignment = xlGeneral

        .VerticalAlignment = xlBottom

        .WrapText = False

        .Orientation = 0

        .AddIndent = False

        .IndentLevel = 0

        .ShrinkToFit = False

        .ReadingOrder = xlContext

        .MergeCells = True

    End With

    ActiveCell.FormulaR1C1 = "Балансовая модель предприятия"

    With Selection

        .HorizontalAlignment = xlCenter

        .VerticalAlignment = xlBottom

        .WrapText = False

        .Orientation = 0

        .AddIndent = False

        .IndentLevel = 0

        .ShrinkToFit = False

        .ReadingOrder = xlContext

        .MergeCells = True

    End With

    With Selection.Font

        .Name = "Times New Roman"

        .Size = 10

        .Strikethrough = False

        .Superscript = False

        .Subscript = False

        .OutlineFont = False

        .Shadow = False

        .Underline = xlUnderlineStyleNone

       .ColorIndex = xlAutomatic

    End With

    With Selection.Font

        .Name = "Times New Roman"

        .Size = 14

        .Strikethrough = False

        .Superscript = False

        .Subscript = False

        .OutlineFont = False

        .Shadow = False

 

Введение

Быстрое развитие процессов  автоматизации, проникновение компьютеров  во все сферы жизни повлекли за собой, помимо несомненных преимуществ, ряд специфических проблем. Одной  из таких проблем стала необходимость  обеспечения эффективной защиты информации. Особенно стоит отметить широкое распространение персональных компьютеров и создание компьютерных сетей.

Однако полностью гарантировать  предотвращение несанкционированного доступа к данным, хранящимся на компьютерах, очень сложно. Очень  часто бреши в системе защиты возникают по вине тех, чьи секреты эти системы охраняют. Еще большую опасность с точки зрения несанкционированного доступа к информации представляет собой процесс передачи информации по сети. Стоит также отметить, что после появления "электронных денег" и возможности осуществления торговых операций через Интернет злоумышленник получил возможность не просто переписать или испортить данные, находящиеся на вашем компьютере или пересылаемые вами по сети, но и напрямую украсть деньги с вашего электронного счета. В случае, когда настойчивый злоумышленник все-таки получил доступ к данным, хранящимся на вашем компьютере или пересылаемым по сети, последним средством, призванным защитить вашу конфиденциальную информацию и ваши финансы, является шифрование.

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

Итак, шифрование осуществляет преобразование исходных данных при  помощи шифра. Согласно определению  Большого Энциклопедического словаря, шифр - (франц. chiffre) есть совокупность условных знаков (условная азбука из цифр или букв) для секретной переписки. Существует два вида шифров: шифр замены и шифр перестановки. Шифр замены осуществляет преобразование замены букв или других "частей" открытого текста на аналогичные "части" шифрованного текста. Шифр перестановки осуществляет преобразование перестановки букв в открытом тексте. И тот, и другой шифр имеют долгую историю использования.

 

Глава 1. Понятие шифрования.

1.1. Тарабарская грамота

Первые сведения об использовании шифров в военном деле связаны с именем спартанского полководца Лисандра. Смысл шифрования сводился к следующему: на жезл, имеющий форму цилиндра, наматывалась узкая папирусная лента (без просветов и нахлестов), а затем на этой ленте вдоль оси цилиндра записывался открытый текст. Лента разматывалась, и для непосвященных получалось, что поперек ленты в беспорядке написаны какие-то буквы. Адресат брал такой же жезл и таким же образом наматывал на него полученную ленту. По названию жезла и получил название шифр - "Сцитала".

Другим примером шифра  древности является шифр Цезаря. Этот шифр реализует следующие преобразования текста: каждая буква открытого текста заменялась третьей после нее  буквой в алфавите, который считался написанным по кругу, то есть после "z" следует "a" (в русском алфавите соответственно после "я" - "а").

Более широкий круг пользователей  имел шифр посольского приказа "тарабарская  грамота", суть которого сводилась  к тому, что алфавит делился  на две части, и в зашифрованном тексте первая буква первой части алфавита менялась на первую букву второй части и наоборот. Необходимо добавить, что до 1708 года используемый русский алфавит - кириллица - состоял из 42 букв.

Однако вплоть до начала XX века, когда появились первые шифровальные машины, криптография была уделом чудаков-одиночек. Понимание же математического характера решаемых криптографией задач пришло только в середине ХХ века после выхода в свет работ выдающегося американского ученого Клода Шеннона. В 1945 году вышла его работа "Математическая теория криптографии", которая была рассекречена в 1948 году.

 

 

Немного математики

Прежде всего, Шеннон сделал вывод, что во всех, даже очень  сложных шифрах в качестве типичных компонентов можно выделить такие  простые приемы, как шифры замены и перестановки.

Математическое описание шифра замены будет выглядеть следующим образом. Пусть Х и Y - два алфавита (открытый и шифрованный соответственно), g:X ® Y - взаимно однозначное отображение Х и Y. Действие шифра замены можно представить как преобразование открытого текста X (x1,x2,…xn) в шифрованный, Y=g(X) (g(x1),g(x2),…,g(x3). Математическое описание шифра перестановки будет выглядеть следующим образом. Пусть длина отрезков, на которые разбивается открытый текст, равна n, а s - взаимно однозначное отображение множества {1, 2, … n} в себя. Шифр перестановки действует так: отрезок открытого текста x1,x2,…xn преобразуется в отрезок шифрованного текста xs(1) ,xs(2),…xs(3).

Важнейшим для развития криптографии был результат Шеннона  о существовании и единственности абсолютно стойкого шифра. Единственным таким шифром является какая-нибудь форма так называемой ленты однократного использования, в которой открытый текст объединяется с полностью случайным ключом такой же длины. Реально абсолютно стойкие шифры преименяются в сетях связи с небольшим объемом передаваемой информации, которые используют, как правило, для передачи особо важной государственной информации. Это объясняется тем, что каждый передаваемый текст должен иметь свой собственный, единственный и неповторимый ключ. Следовательно, перед использованием этого шифра все абоненты должны быть обеспечены достаточным запасом случайных ключей и исключена возможность их повторного применения. Выполнение же этих требований необычайно трудно и дорого.

Здесь необходимо сделать  отступление для пояснения термина "ключ". Под ключом в криптографии понимают сменный элемент шифра, который применяется для шифрования конкретного сообщения. Но, функция (алгоритм) шифрования при разных ключах остается одной и той же. Так, например, в шифре "Сцитала" ключом является диаметр жезла.

В целом описанный  Шенноном метод шифрования, получивший названия классического, или симметричного, можно представить следующим  образом. Существует функция шифрования, осуществляющая преобразование открытого текста в зашифрованный (например, F: Х®Y), и существует функция дешифрования, выполняющая обратную процедуру (например, F-1: Х®Y).

Это представление сохранялось  до 1976 года, когда была опубликована работа молодых американских математиков У.Дифффи и М.Э.Хеллмана "Новые направления в криптографии". В данной работе центральными являются два определения: односторонняя функция и функция с секретом.

Односторонней называется функция, обладающая двумя свойствами: существует полиномиальный алгоритм вычисления значений F(Х); не существует полиномиального алгоритма инвертирования функции F (то есть решения уравнения F(X)=Y относительно Х нет.). Иначе говоря, в этой функции расшифровка зашифрованного ею же текста не предусмотрена.

Функцией с секретом называется функция FK: Х®Y, зависящая от параметра К и обладающая следующими свойствами: существует полиномиальный алгоритм вычисления значения FK(Х) для любых К и Х; не существует полиномиального алгоритма инвертирования FK при неизвестном К; существует полиномиальный алгоритм инвертирования FK при известном К.

Шифрование при помощи функции с секретом получило также  название асимметричного шифрования.

При реализации для использования  в вычислительной технике алгоритмы  шифрования получили еще одну классификацию - их можно подразделить на блочные и поточные. Первые преобразуют блок входных данных в блок шифротекста. Вторые преобразуют открытый текст в шифротекст по одному биту за такт.

 

Глава 2. Методы шифрования: симметричный и ассиметричный.

2.1. Классическое шифрование

Наиболее широко распространенным шифром симметричного шифрования является DES (Data Encryption Standard), разработанный IBM в 1976 году и рекомендованный Национальным бюро стандартов США к использованию  в открытых секторах экономики.

Алгоритм DES работает следующим образом. Данные представляются в цифровом виде и разбиваются на блоки длинной 64 бита, затем поблочно шифруются. Блок разбивается на левую и правую части. На первом этапе шифрования вместо левой части блока записывается правая, а вместо правой - сумма по модулю 2 (операция XOR) левой и правой частей. На втором этапе по определенной схеме выполняются побитовые замены и перестановки. Ключ DES имеет длину 64 бита, из которых 56 битов - случайные, а 8 - служебные, используемые для контроля ключа.

DES имеет два режима работы: ECB (Electronic Code Book) и CBC (Cipher Block Chaining). Режим СВС отличается от обычного тем, что перед шифрование очередного блока к нему применяется операция "исключающее ИЛИ" с предыдущем блоком. В ситуациях, когда надежность алгоритма DES кажется недостаточной, используется его модификация - Triple DES (тройной DES). Строго говоря, существует несколько вариантов Triple DES. Наиболее простой - перешифрование: открытый текст шифруется на первом ключе, полученный шифротекст - на втором и, наконец, данные, полученные после второго шага, - на третьем. Все три ключа выбираются независимо друг от друга.

IDEA (International Data Encryption Algorithm) - еще один блочный шифр с  длиной ключа 128 бит. Этот европейский стандарт (от ЕТН, Цюрих) предложен в 1990 году. Алгоритм IDEA по скорости и стойкости к анализу не уступает алгоритму DES.

CAST - это блочный шифр, использующий 128-битовый ключ в  США и 40-битный - в экспортном  варианте. CAST используется компанией  Northern Telecom (Nortel).

Шифр Skipjack, разработанный  Агентством национальной безопасности США (National Security Agency - NSA), использует 80-битовые  ключи. Это часть проекта Capstone, цель которого - разработка общедоступного криптографического стандарта, удовлетворяющего требованиям правительства СШA. Capstone включает четыре основных компонента: шифр Skipjack; алгоритм цифровой подписи на базе стандарта DSS (Digital Signature Standard); хэш-функцию на базе алгоритма SHA (Secure Hash Algorithm); микросхему, реализующую все вышеизложенное (например, Fortezza - PCMCIA-плата, основанная на этой микросхеме).

В реализации Skipjack использована патентованная микросхема Capstone, алгоритм которой засекречен. Ожесточенный спор ведется по поводу того, что в Skipjack будут предусмотрены ключи для "посреднических агентов" (escrow agencies), которые смогут дешифровать сообщения по требованию суда.

Шифры RC2 и RC4 разработаны  Роном Рейвестом - одним из основателей  компании RSA Data Security, и запатентованы  этой компанией. Они используют ключи разной длины, а в экспортируемых продуктах заменяют DES. Шифр RC2 - блочный, с длиной блока 64 бита; шифр RC4 - поточный. По замыслу разработчиков, производительность RC2 и RC4 должна быть не меньше, чем у алгоритма DES.

Всем системам открытого шифрования присущи следующие основные недостатки. Во-первых, принципиальной является надежность канала передачи ключа второму участнику секретных переговоров. Иначе говоря, ключ должен передаваться по секретному каналу. Во-вторых, к службе генерации ключей предъявляются повышенные требования, обусловленные тем, что для n абонентов при схеме взаимодействия "каждый с каждым" требуется n x (n-1)/2 ключей, то есть зависимость числа ключей от числа абонентов является квадратичной.

2.2. Два ключа

Для решения вышеперечисленных  проблем симметричного шифрования предназначены системы с асимметричным  шифрованием, или шифрованием с  открытым ключом, которые используют свойства функций с секретом, разработанных  Диффи и Хеллманом.

Эти системы характеризуются наличием у каждого абонента двух ключей: открытого и закрытого (секретного). При этом открытый ключ передается всем участникам секретных переговоров. Таким образом, решаются две проблемы: нет нужды в секретной доставке ключа (так как при помощи открытого ключа нельзя расшифровать сообщения, для этого же открытого ключа зашифрованные, и, следовательно, перехватывать открытый ключ нет смысла); отсутствует также квадратичная зависимость числа ключей от числа пользователей - для n пользователей требуется 2n ключей.

Первым шифром, разработанным  на принципах асимметричного шифрования, является шифр RSA.

Шифра RSA назван так по первым буквам фамилий его изобретателей: Рона Райвеста, Ади Шамира и Леонарда Элдемана - основателей компании RSA Data Secutity. RSA - не только самый популярный из асимметричных шифров, но, пожалуй, вообще самый известный шифр. Математическое обоснование RSA таково: поиск делителей очень большого натурального числа, являющегося произведением двух простых, - крайне трудоемкая процедура. По открытому ключу очень сложно вычислить парный ему личный ключ. Шифр RSA всесторонне изучен и признан стойким при достаточной длине ключей. Например, 512 бит для обеспечения стойкости не хватает, а 1024 бита считается приемлемым вариантом. Некоторые утверждают, что с ростом мощности процессоров RSA потеряет стойкость к атаке полным перебором. Однако же увеличение мощности процессоров позволит применить более длинные ключи, что повысит стойкость шифра.

Шифр действует по следующему алгоритму. Первое: случайно выбираются два простых очень больших числа р и q. Второе: вычисляются два произведения n=pq, m=(p-1)(q-1). Третье: выбирается случайное целое Е, не имеющее общих сомножителей с m. Четвертое: находится D, такое, что DE=1 по модулю m. Пятое: исходный текст разбивается на блоки длиной Х не более n. Шестое: для шифрования сообщения необходимо вычислить С=ХE по модулю n. Седьмое: для дешифрования вычисляется Х=СD по модулю n.

Для шифрования необходимо знать пару чисел: Е, n, для дешифрования D, n. Первая пара - открытый ключ, вторая - закрытый. Зная открытый ключ, можно вычислить значение закрытого ключа. Необходимым промежуточным действием этого преобразования является нахождение сомножителей p и q, для чего нужно разложить n на сомножители, - эта процедура занимает очень много времени. Именно с огромной вычислительной сложностью связана криптостойкость RSA.

Стандарты PKCS (Public Key Cryptography Standards) предложены RSA Laboratories и объединением компаний, включающим Microsoft, Apple, Digital Equipment, Sun Microsystems и Lotus. В семействе PKCS множество различных стандартов (еще больше их готовится для добавления к PKCS в будущем), каждый из которых описывает отдельную область. (Учтите, что PKCS 2 и RKCS 4 объединены в PKCS 1).

Другим шифром, использующим асимметричное шифрование, является DSS.

Стандарт DSS (Digital Signature Standard) одобрен правительством США. Длина  используемого ключа варьируется  в пределах от 512 до 1024 бит. DSS предназначен для создания цифровой подписи (см. далее раздел о цифровой подписи), но не для закрытия информации. В стандарте DSS найдены некоторые слабые места защиты, вследствие чего он не так широко распространен.

Однако, сравнивая наиболее популярных представителей симметричного  и асимметричного шифрования, стоит  заметить, что программная реализация RSA гораздо сложнее DES, и поэтому она, как правило, используется при передаче небольшого объема сообщений.

Общая схема шифрованной  передачи информации представлена на рис. 1. В системе симметричного  шифрования оба ключа (шифрования и дешифрования) совпадают. В системе асимметричного шифрования ключи разные (шифрования - открытый, дешифрования - личный, секретный). На рисунках 2 и 3 изображены схемы распределения ключей для симметричной и асимметричной систем шифрования. Доставка секретных ключей происходит по секретным (закрытым) каналам, доставка открытых ключей - по открытым.

2.3. Стойкость шифрования

Два различных подхода  к шифрованию - симметричный и асимметричный - требуют соответственно и разных подходов к процессу их взлома. Так, для симметричных шифров (шифров с секретными ключами) единственный метод взлома - подбор ключа. Для взлома асимметричного кода используется метод разложения на сомножители одной из составных частей открытого ключа. Обе задачи достаточно сложны, но в принципе выполнимы.

Если не принимать  во внимание абсолютно стойкий шифр, массового применения которого пользователями компьютерных сетей, очевидно, не произойдет никогда, то ко всем остальным шифрам можно применить следующее высказывание "отца кибернетики" Норберта Винера: "Любой шифр может быть вскрыт, если только в этом есть настоятельная необходимость, и если информация, которую предполагается получить, стоит затраченных средств, усилий и времени…".

В доказательство истинности этого высказывания можно привести задачу, предложенную создателями RSA для всех желающих попробовать свои силы во взломе их шифра. В конце августа 1999 года компания RSA Data Security оповестила о вскрытии 512-битового открытого ключа. Во взломе принимали участие 292 компьютера на протяжении чуть больше пяти месяцев; кроме того, 9 недель ушло на предварительные расчеты. В связи со вскрытием 512-битового ключа RSA Data Security рекомендует пользователям использовать более надежные 768-битовые или даже 1028-битовые ключи.

Остается констатировать факт: любой шифр, применяемый рядовым пользователем, может быть вскрыт. Вопрос в другом: стоит ли зашифрованная информация затрат на вскрытие шифра? Так мы и подошли к основному принципу шифрования: шифруемая информация должна быть более ценной, чем стоимость защиты, и при этом менее ценной, чем стоимость атаки.

 

Заключение

Испокон веков не было ценности большей, чем информация. ХХ век - век информатики и информатизации. Технология дает возможность передавать и хранить все большие объемы информации. Это благо имеет и оборотную сторону. Информация становится все более уязвимой по разным причинам:

  • возрастающие объемы хранимых и передаваемых данных;
  • расширение круга пользователей, имеющих доступ к ресурсам ЭВМ, программам и данным;
  • усложнение режимов эксплуатации вычислительных систем.

Поэтому все большую  важность приобретает проблема защиты информации от несанкционированного доступа (НСД) при передаче и хранении.

Симметричное шифрование остаётся самым актуальным и криптографически гарантированным методом защиты информации. В симметричном шифрование, основанном на использовании составных ключей, идея состоит в том, что секретный ключ делится на две части, хранящиеся отдельно. Каждая часть сама по себе не позволяет выполнить дешифрование.  Если у правоохранительных органов появляются подозрения относительно лица, использующего некоторый ключ, они могут в установленном порядке получить половинки ключа и дальше действовать обычным для симметричного дешифрования образом. Порядок работы с составными ключами - хороший пример следования принципу разделения обязанностей. Он позволяет сочетать права на разного рода тайны (персональную, коммерческую) с возможностью эффективно следить за нарушителями закона, хотя, конечно, здесь очень много тонкостей и технического, и юридического плана.

Алгоритмы с симметричными  ключами имеют очень высокую  производительность. Криптография с  симметричными ключами очень  стойкая, что делает практически  невозможным процесс дешифрования без знания ключа. При прочих равных условиях стойкость определяется длиной ключа. Так как для шифрования и дешифрования используется один и тот же ключ, при использовании таких алгоритмов требуются очень надежные механизмы для распределения ключей.

Основным недостатком  симметричного шифрования является то, что секретный ключ должен быть известен и отправителю, и получателю.

Проблемой, которая актуальна  и для других криптосистем, является вопрос о том, как безопасно распространять симметричные (секретные) ключи.

В перспективах возможно: Осуществить передачу ключей на основе квантовой криптографии; разработать методы и их программно-аппаратную реализацию по увеличению длины псевдослучайной последовательности.

 

Список используемой литературы

  1. A.B. Аграновский, Р.А. Хади. Практическая криптография (серия «Аспекты защиты»), М.: Солон-Пресс, 2002. 254 с.
  2. У.Диффи и М.Э.Хеллман. Новые направления в криптографии,1976 . 654 с.
  3. С.В. Глушаков А.С.Сурядный. Программирование на Visual Basic 6. Х.: Фалио, 2004. 497с.
  4. Т.Л. Партыка, И.И. Попов. Информационная безопасность. М.: Форум-Инфра, 2007. 368 с.
  5. Шеннон К. Э. Работы по теории информации и кибернетике, М.: ИЛ, 1963. 832 с.
  6. Брюс Шнайер. Прикладная криптография, 2е изд, изд.Триумф,2002. 816 с.

 




Понятие шифрования