Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Отчет по практике6

.doc
Скачиваний:
17
Добавлен:
17.03.2015
Размер:
445.44 Кб
Скачать

Министерство образования РФ

Ярославский государственный университет им. П. Г. Демидова

Математический факультет

Кафедра Компьютерной безопасности и математических методов обработки информации

Отчет о преддипломной практике

Исполнитель:

студент группы КБ-61

Салфетников И.В.

Ярославль, 2014

Оглавление

1. Введение......................................................................................................... 3

2. Постановка задачи......................................................................................... 4

3. Реализация...................................................................................................... 5

4. Заключение..................................................................................................... 8

  1. Введение

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

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

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

  1. Постановка задачи

Для того, чтобы ПО, созданное для работы с платежными картами Visa или Mastercard можно было использовать, как конечный продукт, загрузив в терминалы какой либо конкретной торговой сети, это ПО должно быть сначала сертифицировано для работы с этими картами самими концернами VISA или Mastercard. Для этого ПО должно проходить успешно ряд тестов, разработанных этими концернами. После создания основной части ПО, компания-разработчик прогоняет ПО через тесты, по ходу находя недочеты и исправляя их.

Мною проводилась работа по такому тестированию ПО для отечественного терминала Yarus(http://yarus-kkt.ru/) работающего по протоколу SPDH(http://www.aciworldwide.com/products-and-services/retail-payments/payments-processing/base24-eps/spdh-document.aspx).

Рис.1 Терминал Yarus c2100, российская разработка.

Также помимо вышеуказанных работ мною проводился анализ защищенности процесса разработки ПО в организации.

3. Релизация

Тестирование проводилось по спецификациям, предоставленным VISA и Mastercard , выдержки из которых я предоставлю в этом отчете.

Реализация всего проекта состояла из нескольких этапов:

  1. Первичный анализ документации и спецификаций на английском языке и выделение основных групп тестов.

  2. Прохождение групп тестов и ремарки об успехе прохождения.

  3. Исправление найденных недочетов, либо распределение подзадач исправления между другими разработчиками.

  4. Финальное тестирование с учетом исправленных ошибок.

Условно все тесты можно разделить на несколько групп: тестирование ПО на совместимость функционирования с каратми VISA, Mastercard. На совместимость с обработкой магнитных карт, карт с микрочипом(смарт-карт), бесконтактных карт. На тесты, в которых терминал должен запретить провести транзакцию, или разрешить. На онлайн транзакции и оффлайн транзакции, онлайн - транзакция осуществляется напрямую с хостом(банковским сервером) через сетевое соединение в реальном времени, оффлайн - транзакция завершается после завершения смены, при помощи выгрузки на хост.

Рис.2 Принципиальная схема тестирования

Для каждого вида тестов имеется своя тестовая банковская карта, причем большая часть из них эмулируется специальным програмно аппаратным комплексом Collis Brand Test Tool (https://www.collistesttools.com/catalog/collis-brand-test-tool/c-24/p-186). Этот комплекс позволяет эмулировать как контактные чиповые смарт карты, так и бесконтактные карты обоих вендоров. Причем в тестовой утилите имеется набор тестов, необходимых для сертификации ПО. Для успешного подключения к ПК и запуска аппаратной части комплекса требуется также подключить USB-ключ eToken PRO (http://www.aladdin-rd.ru/catalog/etoken/) который выдавался организации про приобретении комплекса Collis.

Рис.3 Програмный интерфейс комплекса Collis Brand Test Tool

Для тестов, использующих карты с магнитной полосой, я, используя программатор для магнитных карт MSR606 и болванки магнитных карт, записывал соответствующие поля данных track1 и track2, получая необходимые тестовые карты.

Рис.3 Программатор для магнитных карт MSR606 и болванки магнитных карт

Структура теста имеет следующий вид:

1) описание цели теста

2) регулярность выполнения

3) ссылка на документацию, описывающую процессинг данного случая

4) тестовые условия

5) условия выполнения

Рис.4 Пример теста из спецификации M-TIP 2012C бесконтактной карты Mastercard

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

Соответственно проходя каждый тест, выявлялось, насколько успешно соблюдены критерии выполнения, при их несоблюдении производились правки в исходный код ПО.

В случае, если исправить ошибку в обработке теста не удается силами организации, имеется возможность удаленной консультации со специалистами компании Yarus, а также сертифицирующего центра со специалистами Mastercard и VISA при помощи коммерческой системы отслеживания ошибок Atlassian JIRA, которая используется для управления проектами и в качестве баг-трекера (https://www.atlassian.com/software/jira#!).

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

Заключение

За время прохождения практики мною были изучены технические и программные аспекты работы программного обеспечения для платформы Yarus c2100. В результате прохождения сертификационных тестов были внесены исправления в ПО, благодаря чему оно было подготовлено для сертификации.

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

9