Разработка интернет – магазина по продаже программного обеспечения

Автор работы: Пользователь скрыл имя, 14 Октября 2015 в 22:14, дипломная работа

Описание работы

Дипломная работа состоит из пяти разделов. Для осуществления поставленных целей в первом разделе был проведен обзор принципов построения информационных систем для торговли через интернет, анализ и безопасность платежных систем в интернет. Во втором разделе была разработана структура построения электронного магазина, в третьем описывается проектирование и программная реализация интернет – магазина.
Четвертый и пятый раздел соответственно разделы экономического обоснования проекта и раздел безопасности жизнедеятельности.

Содержание работы

1Обзор принципов построения информационных систем для торговли через интернет
1.1 Анализ принципов построения электронных магазинов
1.2 Сравнительная характеристика программных средств построения электронного магазина
1.3 Анализ платежных систем
1.4 Безопасность платежей в Интернете
1.5 Выводы
2 Разработка структуры построения электронного магазина
2.1 Архитектура электронного магазина
2.2 Разработка алгоритма работы электронного магазина
2.3 Разработка системы оплаты и доставки
2.4 Выводы
3 Проектирование и программная реализация интернет – магазина
3.1 Разработка интерфейса
3.2 Программная реализация
3.3 Защита электронного магазина
3.4 Выводы
4 Экономическое обоснование проекта
4.1 Маркетинговые исследования предприятия
4.2 Обоснование создание дополнительной услуги в магазине
4.3 Расходы по созданию и размещению магазина в сети интернет
4.4 Выводы
5 Безопасность жизнедеятельности
5.1 Характеристика условий труда программиста
5.2 Требования к производственным помещениям
5.3 Эргономические требования к рабочему месту
5.4 Противопожарная безопасность
5.5Расчет освещенности
5.6 Расчет уровня шума
5.7 Выводы
Выводы и рекомендации
Библиографический список

Файлы: 1 файл

курсов.docx

— 127.26 Кб (Скачать файл)

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

Действительно, использование PIN - кода должно производиться таким образом, чтобы этот секретный параметр на всех этапах обработки транзакции оставался зашифрованным (PIN - код должен быть известен только владельцу карты и ее эмитенту). В реальном мире это требование реализуется за счет использования в устройствах ввода транзакции специальных физических устройств, называемых PIN - PAD и содержащих Hardware Security Module - аппаратно-программные устройства, позволяющие хранить и преобразовывать некоторую информацию весьма надежным способом. Эти устройства хранят специальным способом защищенный секретный коммуникационный ключ, сгенерированный обслуживающим банком данного торгового предприятия. Когда владелец карты вводит значение PIN - кода, оно немедленно закрывается (шифруется) коммуникационным ключом и отправляется внутри авторизационного запроса на хост обслуживающего банка.

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

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

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

В то же время идея проверки PIN - кода была реализована для повышения безопасности транзакций в интернет –торговле по картам, БД которых хранится на хосте процессора STB CARD. В общих чертах STB CARD реализует следующую схему. Владельцы карт, эмитенты которых держат свою БД карточек на хосте STB CARD, могут получить дополнительный PIN - код, называемый ПИН2. Этот код представляет собой последовательность из 16 шестнадцатеричных цифр, которая распечатывается в PIN - конверте, передаваемом владельцу карты (специальный бумажный конверт, используемый банком - эмитентом для хранения в нем секретной информации, относящейся к эмитированной карте), и вычисляется эмитентом с помощью симметричного алгоритма шифрования, примененного к номеру карты и использующего секретный ключ, известный только эмитенту карты.

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

Здесь нужно сделать важное замечание относительно сказанного ранее. Владелец карты в действительности ведет диалог в защищенной SSL - сессии не с торговым предприятием, а с виртуальным POS - сервером, через который работает торговое предприятие (система STB CARD в настоящее время использует сервер Assist).

Возвращаясь к схеме STB CARD, отметим, что, конечно же, в заполненной клиентом форме ПИН2 не содержится, а в действительности все выглядит следующим образом: ТП (точнее, сервер Assist), определив, что имеет дело с картой банка STB CARD, передает владельцу карты форму, содержащую подписанный Java - апплет, реализующий некоторый симметричный алгоритм шифрования. При этом ПИН2 играет роль секретного ключа этого алгоритма шифрования, а шифруемые данные получаются в результате применения хэш - функции к номеру карты, сумме и дате транзакции, а также случайному числу x, генерируемому торговому предприятию. Таким образом, в заполненной владельцем карты форме присутствует только результат шифрования перечисленных выше данных о транзакции на ключе ПИН2.

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

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

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

Минусы данного подхода состоят в следующем:

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

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

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

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

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

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

2. Реквизиты платежной карты (номер  карты, срок ее действия, CVC2/CVV2, и  т. п.), используемой при проведении  транзакции интернет – торговли, должны быть конфиденциальными  для торгового предприятия.

3. Невозможность отказа от транзакции  для всех участников транзакции  интернет - торговли, то есть наличие  у всех участников неоспоримого  доказательства факта совершения  покупки (заказа или оплаты).

4. Гарантирование магазину платежа  за электронную покупку - наличие  у торгового предприятия доказательства  того, что заказ был выполнен.

Правовая база регулирования отношений интернет торговли в России достаточно невелика, отсюда и многочисленные факты мошенничества в Интернете и как следствие, недоверие людей к системам оплаты. В настоящее время законодательную базу составляют два таких основных закона как Федеральный закон «Об электронно-цифровой подписи» [-3] и Федеральный закон «Об электронной торговле»[-4]. Целью Федерального закон «Об электронно-цифровой подписи» является обеспечение правовых условий для использования электронной цифровой подписи в процессах обмена электронными данными, при соблюдении которых электронная цифровая подпись признается юридически равнозначной подписи физического лица, в том числе полномочного представителя юридического лица. Целью же Федерального закон «Об электронной торговле» является обеспечение правовых условий для электронной торговли: закрепление прав и обязанностей лиц, осуществляющих электронную торговлю, определение правил совершения сделок с использованием электронных документов, подписанных аналогами собственноручной подписи, а также признание электронных документов в качестве судебных доказательств.

 

1.5 Выводы

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

Оптимальным и самым удобным методом заказа пока остается так называемая «корзина». Во всех крупнейших магазинах она используется в том или ином виде, но смысл остается одним: корзина - просто список товаров, выбранный покупателем в магазине (это почти такая же корзина, в руках с которой ходят посетители большого супермаркета - только виртуальная).

Выбор программных средств для построения интернет – магазинов достаточно обширен. И нельзя сказать, что одно решение дешево и непрактично, а другое дорого и универсально. Все решения создавались и создаются для каких то целей, в которых оно будет оптимально. Можно только отметить, что открытые решения наиболее перспективные, т.к. при желании в них можно добавить то, что нужно именно в данном магазине для данного товара, т.е. учесть многие нюансы, которые, несомненно привлекут своего клиента.

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

 

2 Разработка структуры построения  электронного магазина

2.1 Архитектура электронного магазина

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

Информация о работе Разработка интернет – магазина по продаже программного обеспечения