Получил свидетельство о регистрации программы для торговли на рынке Forex. Подготовил два файла с тезисами на конференцию ММТТ-26. Эту и другую информацию можете посмотреть в этом посте.
Итак, в среду 20 марта заканчивается срок подачи тезисов на конференцию ММТТ-26. Вернее практически заканчивается и, вероятно, будет закрыта подача тезисов через сайт, но останется в течение нескольких дней передать тезисы через региональных представителей. Тексты тезисов привожу ниже. Возможно, что потребуется правка текста, если будут замечания рецензентов. Хотелось подать и только свои тезисы для доклада, но пока не успел их подготовить. Приоритет был отдан работам магистров, у которых я руководитель. В своих тезисах планировал рассказать о разработке программы Fx-Libra, которая показывает себя достаточно хорошо в торговле и на которую наконец-то получил свидетельство о регистрации. Регистрация прошла достаточно давно, но документы получил только в конце минувшей недели. Зарегистрированная версия 1.0 предназначена для торговли на пятизначных счетах. Сейчас продолжаю отлаживать версию 2.02 для торговли на четырех и пятизначных счетах.


Полезная информация о монтаже структурированных кабельных систем (СКС), как студентам, изучением компьютерных сетей, так и в практическом плане жителям столицы: установка cкс москва

Тезисы на ММТТ-26

Албаков Б.Б., Ананченко И.В.
Санкт-Петербургский государственный технологический институт (технический университет), igor@anantchenko.ru

Программы, выполняющиеся под управлением терминала MT4, разрабатываются на языке программирования MQL (вер. 4) и выполняются после компиляции исходного кода в исполняемый код формата ex4. Практика использования программ в формате ex4 показала, что создание декомпиляторов выполняющих обратное преобразование файлов из формата ex4 в mq4 возможно. Были созданы декомпиляторы (например, EX4-TO-MQ4 decompiler V4.0.427), позволяющие получать функционально идентичные исходному тексту программы тексты программ на языке MQL. Несмотря на то, что имена переменных в результате декомпиляции могут не совпадать с оригинальными, а при восстановлении исходного кода возможно получение другой последовательности функционально идентичных операторов, полученный исходный код после его компиляции дает тот же исполняемый код формата ex4. В результате использования декомпиляторов, выполняющих преобразование из формата ex4 в исходный формат mq4, компьютерные пираты могут с минимальными усилиями восстанавливать исходный текст программы. Данная ситуация не приемлема для разработчиков и продавцов коммерческих программ выполняющихся под управлением терминала MT4. Стоимость разрабатываемых программ для МТ4 в среднем составляет от 150-300 и выше долларов США за один экземпляр программы.
В качестве меры противодействия разработчики специализированного программного обеспечения (ПО) применяют решения, основанные на переносе критически важного для работы программы функционала в динамически загружаемую dll библиотеку, к функциям которой выполняется обращение из исполняемого ex4 файла. Одной из реализуемой в dll библиотеке функций может быть функция проверки кода регистрации. Код регистрации является уникальным для каждого пользовательского счета. Без файла библиотеки программа работать не будет, но это не мешает злоумышленнику использовать и распространять файл библиотеки вместе с вызывающим ее скомпилированным кодом ex4. Для подбора кода регистрации злоумышленнику требуется больше времени, так как необходимо корректно вызвать функцию проверки из библиотеки и подобрать нужный вариант ключа для заданного номера счета. Решение задачи противодействия несанкционированному использованию ПО, для терминала МТ4, осложняется тем, имея декомпилированный вариант ex4 файла злоумышленнику достаточно найти всего один регистрационный номер для одного счета, чтобы использовать программу на всех счетах. Злоумышленник, зная корректную пару: номер счета и код регистрации, подставляет их при вызове функции.
Использование декомпиляторов dll библиотек и средств анализа динамически исполняемого программного кода (например, совместное использование IDA v6.1 и HexRays v1.5) позволяет получить исходный программный код dll библиотеки. Восстановленный исходный код более сложен для анализа, но, фактически, это проблему не решает, так как встает вопрос о защите уже dll составляющей ПО от несанкционированного использования.
В качестве надежного варианта защиты dll библиотек предлагается использовать аппаратные устройства SENTINEL HASP HL [1], выпускаемые серийно производителем SafeNet, подключаемые к USB порту компьютера или программные аналоги – ключи SENTINEL HASP SL.
Недостаток использования аппаратных ключей защиты – относительно высокая стоимость (от $15 за один ключ) и необходимость физической доставки ключа покупателю. Программный код внутри аппаратного ключа выполняется специализированным процессором. В ключах типа SL этот же алгоритм реализован с использованием процессора компьютера, на котором выполняется защищаемая программа. Использование ключей типа SL не требует затрат на физическое изготовление ключа, поэтому стоимость программного ключа значительно ниже стоимости аппаратного (от $3 за экземпляр). Лицензию для программного ключа можно практически мгновенно доставить покупателю по каналам глобальной сети Интернет. Для установки обоих типов защит (HL и SL) используется один и тот же программный инструментарий.
Навесная защита устанавливается на скомпилированный файл dll библиотеки помощью утилиты Sentinel HASP Envelope. Альтернативный вариант встраиваемой защиты более сложный для реализации и трудоемкий, но позволяет максимально гибко использовать весь потенциал средств защиты, так как программная разработка защиты выполняется на уровне исходного кода. Для установки встроенной защиты необходимо не только обладать навыками программирования и иметь исходный код программы, но для данного языка программирования должна быть разработан специальный программный инструментарий (поставляется SafeNet). Функции для построения защиты программ Sentinel HASP API четко структурированы, что позволяет разработчику не тратить дополнительно время на подробное изучение реализации интерфейса, дает возможность сразу приступать к построению защиты программного обеспечения [2].
Наименее затратной и быстрой для реализации видится следующая схема использования программно-аппаратных средств защиты. Передаваемый пользователю вместе с покупаемым комплектом программного обеспечения файл скомпилированный файл dll библиотеки предварительно обрабатывается утилитой HASP SRM Envelope, шифрующей библиотеку dll с использованием алгоритма AES, после чего зашифрованный код помещен в защищенную оболочку-кокон, которая вызывается при обращении к dll файлу. Оболочка проверяет наличие программного SL или аппаратного ключа HL. Если ключ присутствует и записанная в ключ лицензия является действующей, то реализуется расшифровка загруженного в оперативную память dll кода и его выполнение. Использование ключа HASP HL Time, включающего таймер реального времени встроенный в ключ, позволяет реализовывать схемы продаж ПО на основе схем лизинга или аренды [3].
Стоимость аппаратных ключей HASP HL зависит от типа и условий закупки устройств. Например, при закупке партии до 4-х ключей, цена составляет для HASP HL Pro порядка — 788 руб., для HASP HL Time — 1182 руб. Расходы на аппаратные ключи вполне приемлемы в общей сумме накладных расходов на производство дорогостоящего ПО исполняемого под управлением терминала МТ4 особенно для программ стоимостью выше $350.
Использование программного ключа SL позволяет минимизировать расходы на защиту для более дешевого ПО ($50-$100), так как стоимость лицензии для работы с ключом составляет порядка 220 руб. на лицензию при закупке партии из 10 лицензий (http://protect-online.ru/price).
Сравнение предлагаемой схемы использования аппаратной защиты показывает, что ключи SENTINEL HASP HL обеспечивают защиту не хуже, чем их аппаратные аналоги от конкурирующих фирм (например, ключи серии GUARDANT), но процесс установки и использования программы с защитой более удобен для конечного пользователя ПО. Защита на основе SL показала хорошие результаты в сравнении с программными средствам защиты от других разработчиков (например, Enigma Protector 3.80, GUARDANT SP). Предлагаемая схема защиты на ключах SENTINEL HASP HL и SL успешно реализована в коммерческих программах Crisis v 1.2 (forex-crisis.com), Gladiator, Guardor Magic, Crisis Plus (http://profit-robot.ru/) и др.

1. И. Ананченко. Защити свою программу ключом HASP. Практическое руководство для начинающих по работе с HASP HL. LAP Lambert Academic Publishing, 2012, 80 с., ISBN: 978-3-659-25627-1
2. И. Ананченко, А. Купченко. Разработка защищенных программ для торговой платформы МТ4. LAP Lambert Academic Publishing, 2013, 116 с., ISBN: 978-3-659-32625-7
3. И. Ананченко, А. Волков. Защита программ для торговли на рынке Forex ключами HASP. LAP Lambert Academic Publishing, 2013, 112 с., ISBN: 978-3-659-31384-4

* * *
РАЗРАБОТКА ЗАЩИЩЁННЫХ РАСПРЕДЕЛЁННЫХ ПРИЛОЖЕНИЙ ДЛЯ АВТОМАТИЗАЦИИ ОБЕСПЕЧЕНИЯ УЧЕБНОГО ПРОЦЕССА

Молодкин И.К., Ананченко И.В.
Санкт-Петербургский государственный технологический институт (технический университет), igor@anantchenko.ru

Разработка распределённых приложений для решения задач автоматизации обеспечения организации и проведения учебного процесса востребована в настоящее время. Использование различных форм и методов обучения делает учебный процесс более привлекательным и доступным для учащихся, но создает определенные трудности, связанные с большим объемом обрабатываемой слабоструктурированной информации поступающей из разных источников. Хранящаяся в базах данных (БД) информация запрашивается разными пользователями: студентами, преподавателями, сотрудниками деканата и других подразделений ВУЗа. При разработке распределённой структуры БД и работающих с ней приложений, следует учесть возможность организации гибкого построения запросов на выборку информации в зависимости от категории пользователей, защиту информационных ресурсов от несанкционированного доступа и использования.
Этапы разработки программного обеспечения для организации учебного процесса:

  • проектирование логической модели распределённой БД; построение логических и информационных связей внутри распределённой БД; проектирование физической модели распределённой БД;
  • организация приложений ввода оценок за каждый месяц по каждой специальности, группе, студенту, предмету; автоматизация контроля посещаемости; автоматизация контроля успеваемости; автоматизация составления расписания исходя из почасовой нагрузки и содержания курсов;
  • автоматизация контроля начисление стипендий; разработка инструментария корректировки данных;
  • разработка инструментария подведения итогов успеваемости по каждой группе, специальности и в целом по ВУЗу (процентное содержание успеваемости и качественной успеваемости);
  • разработка инструментария сравнения итоговых данных с итогами предыдущего месяца;
  • разработка инструментария формирования списков неуспевающих и успевающих на оценку «отлично».
  • защита разработанного прикладного ПО с использованием программно-аппаратных средств защиты HASP SRM [1].

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

1. И.В. Ананченко. Защити свою программу ключом HASP. Практическое руководство для начинающих по работе с HASP HL. LAP Lambert Academic Publishing, 2012, 80 с., ISBN: 978-3-659-25627-1

Ананченко Игорь Викторович Контактная информация Моб. телефон: +79213201586 ICQ: 361916132 Веб-сайт: http://anantchenko.ru E-mail: igor@anantchenko.ru Вконтакте: http://vkontakte.ru/id8574436 https://mcp.microsoft.com/authenticate/validatemcp.aspx Transcript ID 793398 and the Access Code 9213201586 Microsoft Certification Status: Microsoft Certified IT Professional, Microsoft Certified Technology Specialist, Microsoft Certified Desktop Support Technician, Microsoft Certified Professional, Microsoft Certified Trainer