Авторские статьи Алгоритмы. Применение шифрования.

Discussion in 'Статьи' started by yeti, 28 Mar 2007.

  1. yeti

    yeti Elder - Старейшина

    Joined:
    27 Dec 2006
    Messages:
    179
    Likes Received:
    234
    Reputations:
    346
    В этой статье профессионалы вряд ли узнают много нового для себя. Я расскажу об алгоритмах.

    Как уже неоднократно говорилось, шифрование применяется для защиты конфиденциальности данных. Это основной компонент безопасности большинства ОС и программ, траффика.. В Win2000 и IIS реализуеся несколько различных методов шифрования.

    * Аутентификация с помощью Kerbeoc или др. поддерживаемых методов..
    * Шифрование файлов в разделе или на жестком диске NTFS.
    * Виртуальные частные сети (VPN) с использованием их протоколов PPTP, IPSec, L2TP.
    * ну или использование шифрования SSL(Secure Socket Layer) или TSL (следующее поколение SSL)

    Шифрование в Win2000 (как пример)

    * Хочу рассказать про такой продукт, как Вин2000. И шифорование, спользуемое в аунтефикации должно быть контролировано администратором. И тут достаточно настроить только параметры на сервере, либо изменить эффективность шифрования в реестре. По умолчанию стоит обычно 128-битное. Этот параметр оптимален для многих интернет-систем и платформ. А большая степень шифрованя требуется лишь для определенных приложений, что связаны с безопасностью.
    * Шифрование NTFS-файлов тоже можно настроить. Многие организации употребляют этот метод. Не следует применять этот метод при слишком большом обьеме информации и шифровать им ВСЕ, так как это очень сильно замедляет работу. Даже с мощными компьютерами. И такой метод используется, например, для шифрования отдельных данных (таких как: номера и информация о держателях кредитных карт). Часто информация контролируется другим сервером и у этой базы есть свой, собственный алгоритм шифрования.
    * На сервере Вин2000 можно включить поддержку VPN. Но для этого необходимо настроить его на маршрутизацию и удаленный доступ. Конечно, эти действия могут предоставлять угрозу несанкционированного доступа в сеть. Тогда следует использовать сетевое экранирование, либо настроить отдельный сервер.
    * На Web-сайте в основном идет шифрование SSL(или более новое его поколение - TSL) При отправке данных. И это применяется и в интернете, и в интранете для конфиденциальности.

    Я хочу обсудить в этой статье применение и алгоритмы шифрования IIS SSL/TSL

    ОСНОВЫ

    Шифрование - кодирование данных. делается для того, чтобы их мог прочитать определенный получатель. Это Древняя наука. Существовала еще в XX в до н.э. первое упоминание относится к Египту. Конечно же это было не то шифрование, которое мы все, в той или иной мере, используем сейчас. но это так - лирическое отступление. В настоящее время формулы представляют из себя сожные математические формулы и большие двоичные числа. В Win2000 и IIS система шифрования встроена в саму ОС, что вряд ли может гарантировать высокий уровень безопасности. но плюс в том что шифрование происходит в реальном времени (к примеру при сохранении файла). А если же сервер настроен на работу с VPN, то данные шифруются при отправке в сеть, а дешифруются после их получения.

    Шифрование на симметричном ключе.

    Системы шифрования - системы на симетричных(секретных) ключах. И эта система использует один ключ и для зашифровки и для расшифровки, что, в общем-то, и понятно. Нынешние системы шифрования используют очень длинные ключи. И если кто-то узнает алгоритм , то для угадывания 128-битного ключа потребуется очень большое количество времени. (3,4 *10^38 - это количество возможных комбинаций), поэтому нет смысла скрывать шифры.
    Примеры известных алгоритмов:
    * DES (Data Encryption Standard) - используется правительством США. (был разработан еще в 70-х годах. но этот формат устарел. его длина всего-лишь 56 бит. И этот ключ может быть взломан за пару часов. Поэтому лучше использовать более новые ключи. не менее 128 бит, так как они могут быть взломаны лишь за несколько месяцев активного перебора очень мощных компьютеров)
    * Skipjack - секретный алгоритм , применяется в оборудовании, совместимым с FORTEZZA. также используется правительством США.
    * Tripple-DES - стандарт DES, но применяется трижды. повышает сложность взлома.
    * RC2, RC3, RC4, RC5, RC6. - коммерческие шифры(RSA Sec, Inc Microsoft). RC4 используют по умолчанию в таких протоколах как PPTP, L2TP, SSL/TSL и при поддержке протокола IPSec.
    * AEC - Это новый фед. стандарт обработки информации, также применяется правительством США для защиты секретной информации.

    Плюсы шифрования на симметричном ключе:
    + шифрует в реальном времени
    + не влияет отризательно на производительность системы

    Минусы:
    - Ключи должны быть согласованы между отправителем и получающим
    - Если станет известен ключ, то шифр поддается практически моментальной расшифровке 9при большоом количестве получателей эта проблема выходит на первый план)

    Шифрование на открытом ключе, или ассиметричное шифрование.

    Шифрование на открытом ключе появилось в 70-х годах. Ассиметричной называется потому, что не требует использования идентичных ключей. В таком шифровании каждый ключ является уникальным - там используются 2 различных ключа при расшифровке и дешифровке, но тем не менее, они составляют пару. Открытый ключ может спокойно передаваться по небезопасному соединению. И это решает одну из основных проблем - безопасность передачи ключа.
    Открыты ключи используются, в основном, для зашифровки данных. Расшифровать данные может пользователь, компьютер которого, уже содержит секретный ключ. И такая система основана на мат принципах. И если шифрование данных пользователя идет на общем ключе, то только пользователь, который владеет второй половиной ключа может расшифровать данные.
    Первым коммерческим алгоритмом шифрования на открытом ключе являлся алгоритм RSA (расшифровка - перввые буквы фамилий создателей, которые создали свою, собственную корпорацию), и этот алгоритм использовался в Netscape, как компонент первой версии SSL. Это единственный шифр, которые когда-либо был использован в Netscape.И этот алгоритм - уже стал практически частью стандарта . Майкрософт тоже изначально использовал именно этот алгоритм, и сейчас он используется в Вин2000. Ключи RSA - основа шифрования в Win2000/IIS.

    Плюсы:
    + безопасность обмена ключами
    + безопасность метода

    Минусы:
    - скорость работы, что непригодно для шифрования в реальном времени
    - невозможность применить к большим обьемам данных


    Комбинирование методов шифрования

    Стандарты, которые сейчас существуют, такие как SSL/TSL и IPSec сочетают в себе эти 2 метода шифрования. Так как у каждого метода есть свои недостатки. комбинирование позволяет наиболее продуктивно использовать свои ресурсы.. Они работают в режиме реального времени. Это повышает уровень безопасности ситемы. Система может посредством ассиметричного шифрования использовать каждый раз отдельный симметричный ключ. Это можно делать и с помощью SSL, и с помощью IPSec. ПО выбирает ключ рандомным образом. То есть, если будет раскрыт один ключ, то на последующие сессии это никак не повлияет.


    Цифровые подписи и инфраструктура открытого ключа

    Так как появилось шифрование - появилисьи цифровые сертификаты., что используются для аунтрификациии на web-сайтах с протоколами SSL/TSL и IPSec. Цифровой сертификат - это небольшой файл, который говорит о подлинности владельца. Пользователя этой системы. Цифровые сертификаты позволяют автоматизировать распределение открытых ключей. Когда идет обмен данных, то сначала компьютер обращается к системе, затем идет доступ к цифровому сертификату, а уж потом идет сам процесс обмена. Но сейчас можно подделать и цифровой сертификат. Сертификат должен взаимодействовать с вышепредставленными протоколами и содержать в себе информацию о:
    * DN - отличительное имя организации, которая выдала сертификат
    * открытый ключ идентифицируемый сертификатом
    * цифровую подпись
    * дату получения

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

    В этой статье я попыталась расскаать об алгоритмах шифрования, принципе их работы, чтобы вы имели представление о том, как устроен интернет, и то, чем мы пользуемся ежедневно.
     
    17 people like this.
  2. Sn@k3

    Sn@k3 Elder - Старейшина

    Joined:
    13 Apr 2006
    Messages:
    1,000
    Likes Received:
    438
    Reputations:
    90
    а алгоритм архивирование и разорхивирования звуковых файлов нет? желательно wav????
     
    1 person likes this.
  3. yeti

    yeti Elder - Старейшина

    Joined:
    27 Dec 2006
    Messages:
    179
    Likes Received:
    234
    Reputations:
    346
    хех.. у меня нет.. но можно попробовать найти..

    ЗЫ: кто сообщения удалил?

    ПС: а нужен именно алгоритм? сама формулка?
     
    #3 yeti, 28 Mar 2007
    Last edited: 28 Mar 2007
    2 people like this.
  4. _Great_

    _Great_ Elder - Старейшина

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,119
    Reputations:
    1,139
    Старый 28.03.2007, 21:22
    GreenBear
    Это сообщение удалил(а) Thanat0z. Причина: оффтоп
    Старый 28.03.2007, 21:23
    Shnurovka
    Это сообщение удалил(а) Thanat0z. Причина: оффтоп
    Старый 28.03.2007, 21:30
    _Great_
    Это сообщение удалил(а) Thanat0z. Причина: оффтоп
    Старый 28.03.2007, 21:32
    Shnurovka
    Это сообщение удалил(а) Thanat0z. Причина: оффтоп
    Старый 28.03.2007, 22:39
    Sandjuro
    Это сообщение удалил(а) Thanat0z. Причина: оффтоп
     
    2 people like this.
  5. Talisman

    Talisman Elder - Старейшина

    Joined:
    22 Apr 2006
    Messages:
    400
    Likes Received:
    151
    Reputations:
    80
    если про сжатие, то могу написать отличную статейку)
    если про шифрование - какая разница? шифруешь блоками как обычные данные, и шлешь)