Программные методы защиты информации. Часть 1. Крыжановская Ю.А. - 11 стр.

UptoLike

Составители: 

11
как используют операции, которые легко выполняются системой. Вторая причи-
на заключается в том, что полученный на выходе зашифрованный текст выглядит
абсолютно нечитаемым - фактически полной бессмыслицей . Это положительно
сказывается на безопасности и защищенности, так как важные данные маскиру -
ются под поврежденные файлы , доступ к которым просто никому не нужен.
Шифры битовых манипуляций применимы только к компьютерным файлам
и не могут использоваться для бумажных копий зашифрованных сообщений .
Причина этого заключается в том , что манипуляции с битами имеют тенденцию
генерировать непечатаемые символы . Поэтому всегда будем полагать , что текст ,
зашифрованный с помощью битовых манипуляций , всегда будет оставаться в ви-
де электронного документа.
Шифры битовых манипуляций переводят открытый текст в шифрованный с
помощью преобразования набора бит каждого символа по определенному алго-
ритму, используя одну из следующих логических операций или их комбинацию :
AND, OR, NOT, XOR.
Простейший (и наименее защищенный) шифр, манипулирующий с битами,
использует только оператор первого дополнения . Этот оператор инвертирует все
биты , входящие в состав байта. Таким образом, все нули становятся единицами и
наоборот. Поэтому байт, над которым дважды проведена такая операция , прини-
мает исходное значение.
В действительности с этой простой схемой кодирования связаны две ос-
новные проблемы. Во-первых, программа шифрования для расшифровки текста
не использует ключа. Поэтому любой, кто знает, что используется данный алго-
ритм и в состоянии написать программу, сможет прочитать файл. Во-вторых (и
это самое главное), этот метод отнюдь не тайна для опытных программистов .
Улучшенный метод шифрования методом побитовой манипуляции исполь-
зует оператор XOR - результат выполнения оператора XOR получает значение
ИСТИНА тогда и только тогда, когда один из операндов имеет значение ИСТИ-
НА, а другой - ЛОЖЬ. Именно это и является уникальным свойством оператора
XOR - если выполнить эту операцию над одним байтом , используя другой байт в
качестве «ключа» , а затем выполнить над результатом ту же самую операцию с
помощью того же самого ключа, то снова получится исходный байт. Например:
Исходный байт
11011001
Ключ XOR
01010011 (ключ)
Зашифрованный байт
10001010
Ключ XOR
01010011 (ключ)
Расшифрованный байт
11011001
Этот процесс может использоваться для кодирования файлов , так как он
решает две основные проблемы с простейшей версией на базе первого дополне-
ния . Во-первых, благодаря использованию ключа, расшифровать файл, имея
только программу декодирования , нельзя . Во-вторых, используемые манипуля-
ции с битами не настолько просты , чтобы их можно было сразу распознать .
Ключ не обязательно должен иметь длину 1 байт. Фактически, можно ис-
пользовать ключ, состоящий из нескольких символов , и чередовать эти символы
на протяжении всего файла.
                                     11
как используют операции, которые легко выполняются системой. Вторая причи-
на заключается в том, что полученный на выходе зашифрованный текст выглядит
абсолютно нечитаемым - фактически полной бессмыслицей. Это положительно
сказывается на безопасности и защищенности, так как важные данные маскиру-
ются под поврежденные файлы, доступ к которым просто никому не нужен.
      Шифры битовых манипуляций применимы только к компьютерным файлам
и не могут использоваться для бумажных копий зашифрованных сообщений.
Причина этого заключается в том, что манипуляции с битами имеют тенденцию
генерировать непечатаемые символы. Поэтому всегда будем полагать, что текст,
зашифрованный с помощью битовых манипуляций, всегда будет оставаться в ви-
де электронного документа.
      Шифры битовых манипуляций переводят открытый текст в шифрованный с
помощью преобразования набора бит каждого символа по определенному алго-
ритму, используя одну из следующих логических операций или их комбинацию:
AND, OR, NOT, XOR.
      Простейший (и наименее защищенный) шифр, манипулирующий с битами,
использует только оператор первого дополнения. Этот оператор инвертирует все
биты, входящие в состав байта. Таким образом, все нули становятся единицами и
наоборот. Поэтому байт, над которым дважды проведена такая операция, прини-
мает исходное значение.
      В действительности с этой простой схемой кодирования связаны две ос-
новные проблемы. Во-первых, программа шифрования для расшифровки текста
не использует ключа. Поэтому любой, кто знает, что используется данный алго-
ритм и в состоянии написать программу, сможет прочитать файл. Во-вторых (и
это самое главное), этот метод отнюдь не тайна для опытных программистов.
      Улучшенный метод шифрования методом побитовой манипуляции исполь-
зует оператор XOR - результат выполнения оператора XOR получает значение
ИСТИНА тогда и только тогда, когда один из операндов имеет значение ИСТИ-
НА, а другой - ЛОЖЬ. Именно это и является уникальным свойством оператора
XOR - если выполнить эту операцию над одним байтом, используя другой байт в
качестве «ключа», а затем выполнить над результатом ту же самую операцию с
помощью того же самого ключа, то снова получится исходный байт. Например:
    Исходный байт                   11011001
    Ключ                      XOR 01010011 (ключ)
    Зашифрованный байт              10001010
    Ключ                      XOR 01010011 (ключ)
    Расшифрованный байт             11011001
      Этот процесс может использоваться для кодирования файлов, так как он
решает две основные проблемы с простейшей версией на базе первого дополне-
ния. Во-первых, благодаря использованию ключа, расшифровать файл, имея
только программу декодирования, нельзя. Во-вторых, используемые манипуля-
ции с битами не настолько просты, чтобы их можно было сразу распознать.
      Ключ не обязательно должен иметь длину 1 байт. Фактически, можно ис-
пользовать ключ, состоящий из нескольких символов, и чередовать эти символы
на протяжении всего файла.