Главная Услуги Работы Персона Юзабилити анализы
IMG тел. +7(98I) 7608865
SSL: Защищённый канал связи




ПОИСК по сайту


    Полный список статей
/ SSL / Версия для печати / translit / абракадабра :-)


<-предыдущая следующая ->

 
  google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru smi2.ru twitter.com Яндекс закладки text20.ru RuSpace RuSpace toodoo

ImageSSL: Защищённый канал связи Интернет - весьма открытая информационная среда. И не только в плане "свободы информации", но и в плане несанкционированного доступа к этой информации. По различным историческим и технологическим причинам, большинство трафика, передаваемого разными способами по Интернету, пересылается самым что ни на есть открытым образом. То есть злоумышленник, подключившийся к каналу передачи данных, сможет беспрепятственно считывать данные, передаваемые пользователем в Интернет и получаемые им из Интернета. И если содержимое сообщения в тематическом форуме про разведение бразильских летающих лисиц не всегда заслуживает секретности, то номер кредитной карты - напротив, нуждается в хорошей защите. Для обеспечения защиты придумали специальные технологии.

Технологии защиты основаны на использовании криптографии. Наиболее широкое распространение в Web-строительстве сейчас имеет технология под названием SSL (Secure Sockets Layer) и её современная версия TLS (Transport Layer Security). Секретность работы в Интернете обеспечивается путём организации защищённого шифрованием канала связи между клиентским браузером и тем узлом сети (web-сервером, например), с которым пользователь браузера обменивается информацией. Конечно, информация передаётся по тем же самым открытым каналам, но злоумышленник, прослушивающий трафик, сможет лишь записывать шифрованные данные без особых надежд на извлечение из них секретной части.

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

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

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

SSL (TSL) базируется на криптографических протоколах с открытым ключом. Здесь используется пара из двух ключей: открытый (публичный), пригодный для шифрования данных, и соответствующий открытому секретный ключ, с помощью которого данные можно расшифровать. То есть, у корреспондента, использующего защищённый канал связи, есть пара ключей: публичный ключ доступен всем, а секретный - сохраняется в тайне. Чтобы организовать защищённый канал связи, двум сторонам достаточно обменяться между собой публичными ключами через открытый канал связи - через Интернет.

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

Важно понимать, что злоумышленник, использующий открытый ключ, _может_ вычислить закрытую часть пары, но такое вычисление является _трудной_задачей_. Для современных систем криптографии с открытым ключом - например для RSA, лежащей в основе SSL - при условии правильного выбора ключей пользователем, вычисление секретного ключа, соответствующего публичному, считается невозможным на практике (при существующем уровне развития математики). Иными словами, считается, что разработанные криптосистемы с открытым ключом располагают достаточной для практических применений стойкостью против "взлома". Интересно, что, сторого говоря, для RSA (и других систем) эта стойкость до сих пор не доказана. Впрочем, это не мешает использовать криптосистемы на практике.

В сайтостроительстве SSL (TLS) применяется для организации "защищённого соединения" между браузером и web-сервером. При этом обмен происходит по протоклоу https - это защищённый аналог http. И браузер, и программное обеспечение web-сервера должны поддерживать SSL (TLS). Также, работу через защищённый канал связи должна поддерживать хостинг-площадка. Практически все современные браузеры поддерживают различные версии SSL и TLS, а вот полноценную поддержку этих технологий со стороны хостинг-площадки пока предлагают не все хостинг-провайдеры.

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

С использованием SSL (TLS) связан ещё один очень важный момент. Это система "сертификатов доверия", которую мы опишем в сильно упрощенном виде.

Если более детально взглянуть на описанный ранее механизм обмена ключами, то окажется, что в нём есть неприятная особенность: производя обмен открытыми ключами, пользователь никак не может узнать, что он связывается именно с тем корреспондентом, с которым планировал. Действительно, открытый ключ (и соответствующий закрытый) может быть сгенерирован кем угодно, в том числе и злоумышленником, который выдаёт себя за кого-то другого, просто называясь его именем. Для решения проблемы необходима третья сторона, которой доверяют оба пользователя секретного канала связи. Эта третья сторона (называемая удостоверяющим центром) смогла бы подтвердить, что передаваемые открытые ключи действительно принадлежат тем лицам, от имени которых передаются. В случае взаимодействия посетителя сайта с web-сервером, удостоверяющий центр подтверждает "подлинность" web-сайта.

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

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

На практике система подтверждения подлинности, связанная с функционированием SSL, - сложнее. В неё входит сложная иерархия удостоверяющих центров, выдающих конечным пользователям (web-сайтам) и другим удостоверяющим центрам специальные электронные сертификаты. Web-сайты, при установлении защищённого соединения, предъявляют Эти сертификаты браузеру, а браузер, руководствуясь собственным "списком доверия", запрашивает подтверждения у удостоверяющих центров.

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

Впрочем, устройство SSL (и TLS) не требует жёсткой привязки к той или иной существующей иерархии удостоверяющих центров. Например, никто не запрещает владельцу любого web-сайта открыть собственный удостоверяющий центр и подтверждать подлинность самостоятельно выданных сертификатов. Правда, посетители должны будут внести такой удостоверяющий центр в "список доверия" своих браузеров.

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

Итак, поддержка "секретных каналов связи" SSL (TLS) требуется web-сайтам, работающим с персональной информацией пользователей, разглашение которой нежелательно. Поддержку SSL должен предоставлять хостинг-провайдер, он же должен помочь с получением сертификата. При получении и оплате сертификата следует удостовериться, что сертификат выдаётся "официальный", то есть в системе, поддерживаемой признанными в Интернете сертифицирующими центрами.
взято с http://site.nic.ru/content/view/69/29/
3
Создание эксклюзивных сайтов, юзибилити анализ и бесплатный анализ под запросы основных поисковых машин
Контактная информация :
тел. +7(98I) 7608865

Написать письмо на e-mail
icq 415547094  romverрейтинг на mail.ru сайта romverinbox.ru
© 1997 - 2024 romver.ru

Полная карта сайта Display Pagerank