Читайте также:
|
|
Электронная коммерция
Современные сервисы Интернета позволяют решать практически все задачи по взаимодействию продавца и покупателя: поиск товара или покупателя, коммуникация между продавцом и покупателем, электронные платежи и т. д. Торговые Web-серверы
Существует несколько протоколов для серверов, используемых для электронной коммерции в Интернете.
Приложения для совершения покупок
Нскоторе время назад электронная коммерция выглядела довольно просто. Web-торговцы создавали HTML-версии ферм для заказа, покупатели их заполняли, распечатывали и присылали по обычной почте. Каталоги продавцов были интерактивными, но сам процесс заказа таковым не являлся.
Затем появились формы заказа, которые покупатели могли пересылать по Интернету. Для этого требовались клиентские HTML-формы, взаимодействующие с заказчиками, а также серверные интерфейс CGI и специальные приложения, принимающие и обрабатывающие данные. От пользователей требовалось занести данные в одну или несколько HTML-форм. Часто внешний HTML-интерфейс генерировался динамически, в зависимости от базы данных товаров.
Позднее были разработаны более сложные приложения: теперь пользователи могли просматривать интерактивные каталоги и заносить предметы с нескольких страниц в виртуальные списки покупок (virtual shopping cart). Система, установленная на сервере, запоминала все выбранные предметы и объединяла их в общий список по окончании
посещения виртуального магазина. Такие приложения известны как приложения для совершения покупок (shopping cart application).
Чтобы сохранить список выбранных предметов, приложения для совершения покупок используют специальные маркеры (cookies) и HTTP-заголовки. HTTP — протокол без памяти, то есть каждая HTTP-команда выполняется независимо от предшествующий. По этой причине обычно используют некоторый маркер, позволяющий логически объединить последовательности действий и НТТР-транзакции. Этот маркер должен быть доступен серверу, для чего его указывают как параметр в последующих URL динамических HTML-страниц или включают в другой НТТР-заголопок.
Открытый HTTP
Web-транзякции могут выполняться с применением обычных Web-протоколов и кредитных карт. Пользователь может посылать продавцу информацию о платеже посредством HTML-страниц и HTML-форм. Однако, поскольку сообщения протокола HTTP никак не защищены (вся информация передается в открытом виде как ASCII-текст), вероятен анализ перехваченных открытых данных и извлечение платежной информации, например номеров кредитных карт.
S-HTTP
Защищенный протокол S-HTTP (Secure HTTP), разработанный компанией Enterprise Integration Technology (EJT), является расширением протокола HTTP. On позволяет браузерам и серверам подписывать, идентифицировать и шифровать сетевые HTTP-пакеты. Данный протокол, так же как и обычный HTTP, использует MIME (Multipurpose Internet Mail Extensions) для добавления заголовков, указывающих на необходимость специальной обработки, и для хранения информации о сертификатах и ключах. Процесс установления связи между браузером, поддерживающим протокол S-HTTP, и сервером несколько сложнее аутентификации в обычном HTTP. В настоящее время протокол S-HTTP используется редко, потому что его в значительной степени потеснил SSL (Secure Sockets Layer).
HTTP и SSL
SSL (Secure Sockets Layer) — это метод шифрования, разработанный компанией Netscape Communications для сокетов TCP/IP. Как и S-HTTP, SSL обеспечивает защиту сетевых HTTP-пакетов. Отличие же в том, что S-HTTP работает только на уровне протокола HTTP, a SSL — на уровне сокетов, обеспечивая безопасность ряда других протоколов Интернета, использующих сокеты. Процесс согласования между клиентом, поддерживающим SSL, и сервером подобен процессу согласования обычных сокетов, но в случае с SSL клиент и сервер дополнительно передают сообщения для выбора алгоритма шифрования и обмена информацией о сертификатах и ключах.
При применении SSL с протоколом HTTP, Web-браузер использует URL-схемы вида «https://» вместо «http://», как для открытого HTTP. Многие Web-браузеры сообщают пользователю (с помощью диалоговых окон), что транзакции на основе HTTPS более безопасны, чем обычные HTTP-транзакции.
Сейчас SSL используется повсеместно для обеспечения безопасности Web-транзакций общего назначения и практически заменил S-HTTP. Развитием SSL (и протоколов транспортного уровня) занимается рабочая группа Transport Level Security (TLS) в составе IETF.
Системы торговых серверов
В настоящее время в Web-коммерции используются в основном традиционные Web-протоколы, адля передачи конфиденциальной информации о платежах — HTTP, зашифрованный средствами SSL. Существует много приложений для совершения покупок, которые обеспечивают подобные функциональные возможности. Специализированные серверные системы заменяются коммерческими продуктами для торговых серверов. Эти программы обычно содержат инструментальные средства для помещения информации о товарах из базы данных в Web посредством сценариев и HTML-страниц. Они также включают модульные подсистемы для обработки оплаты, поставки и объединения с другими компьютерными системами.
Более сложные системы выполнят проверку правильности платежа в реальном времени, что требует взаимодействия с банком, обслуживающим счета продавца. Менее сложные системы откладывают проверку правильности платежа до тех пор, пока запрошенная транзакция не будет перенесена в обычную расчетную систему продавца.
Протокол SET
SET (Secure Electronic Transaction) — это протокол электронных платежей на основе банковских карт, разработанный консорциумом компаний но главе с MasterCard и Visa. Он превращает финансовые операции в виртуальные, чем-то напоминающие манипуляции с кредитной карточкой.
Покупая товары с помощью обычных кредитных карт, покупатели взаимодействует с продавцами. Последние для проверки сделки обращаются к банкам, принимающим карточки к оплате, а банки-эммитенты взаимодействуют с держателями карт для получения денег за покупку. Применив эту схему к электронным транзакциям, компании MasterCard, Visa и другие разработали протокол SET, Он использует тот же самый базовый процесс, но заменяет реальную кредитную карточку интерактивным протоколом, Протокол SET сохраняет иерархию доверительных отношений, что существует между продавцом и Банком, принимающим платеж, а также владельцем карты и банком-эммитентом. В электронном варианте эта иерархия доверия формализована посредством цифровых сертификатов и иерархии сертификационных служб (аналог финансовой системы экономики).
В некоторых случаях SET лучше, чем существующий механизм обычных кредитных карточек, особенно при обеспечении конфиденциальности потребителя. Транзакции зашифрованы так, чтобы торговцы видели только информацию о приобретаемых предметах, но не имели доступа к данным о лицевом счете клиента. Аналогично, банкам недоступна информация о покупаемых товарах, им видны лишь запросы кредитования продавца.
Протокол SET не привязан к HTTP. Его можно использовать с самыми разными протоколами. SET не простой протокол: его сообщения и структуры данных описаны в формате ASN.1 (Abstract Syntax Notation One). В отличие от SSL, SET шифрует сами сообщения, а не канал связи. В результате возможны более сложные шифры, нежели многоцелевые (как в SSL).
Структура SET -запроса разбивается на две части — информация о заказе (Order Information, ОI) и информация о платеже (Payment Information,PI). Последняя нужна банку; но не продавцу. (Продавцу достаточно получить от банка подтверждение платежа.) Все данные, относящиеся к одной транзакции, скрепляются методом двойной подписи (dual signature).
Этот метод использует два различных сообщения, одно из которых адресовано продавцу, а другое — банку. Эти сообщения взаимосвязаны, поэтому банк может сопоставить платеж с заказом, не зная всех деталей последнего. Продавец получает гарантии лишь относительно оплаты заказа и размера платежа, но не владеет никакой другой информацией (например, не знает номер счета — эквивалент шестнадцатизначного номера кредитной карточки — заказчика).
Каждое сообщение обрабатывается алгоритмом дайджеста сообщений, который вырабатывает 160-битный дайджест. Затем два дайжджеста соединяются, и результат обрабатывается этим же алгоритмом. Конечный вариант покупатель подписывает с помощью своего личного ключа. Это и есть двойная подпись. Затем покупатель отправляет два сообщения. Одно — продавцу, в нем описаны детали заказа и содержится дайджест сообщения, посланного банку. Другое сообщение — в банк; в нем указана стоимость транзакции и содержится дайджест сообщения, посланного продавцу.
И банк, и продавец могут проверить подлинность полученного сообщения. Для этого необходимо вычислить дайджест принятого сообщения и объединить его с дайджестом другого сообщения. Вычисленный общий дайджест должен совпадать с расшифрованной (при помощи открытого ключа покупателя) двойной подписью. Обратите внимание на то, что этот метод позволяет покупателю торговаться при покупке. Продавец посылает банку сообщение только в том случае, если принимает предложение покупателя. Дайджест сообщения связывает транзакцию между продавцом и покупателем с сообщением межу банком и покупателем, подтверждающим платеж.
SET явно использует два вида шифрования: симметричное и асимметричное, а также сертификаты для сопоставления открытого и личного ключей. Многие компании, производящие программное обеспечение, выпускают API для работы с протоколом SET. Большинство приложений, использующих SET, например системы торговых серверов и аналогичные им объекты клиентской стороны (своего рода виртуальные кошельки), применяют эти программные библиотеки.
Дата добавления: 2015-12-08; просмотров: 73 | Нарушение авторских прав