Рисунок 2 - Режимы заряда-разряда АКБ с помощью контроллера
Известно немало схемотехнических решений в области разработки КЗР для ФЭУ. Так, в статье [6] предлагается схема регулятора заряда АКБ от СМ с двухступенчатым зарядным циклом, в котором использован электронный ключ на мощных полевых транзисторах.
Список использованной литературы:
1. Контроллеры заряда для солнечных систем. - Режим доступа: http://www.solbat.su/dopobr/kontzar/
2. Robert Foster, Majid Ghassemi, Alma Cota. Solar energy: Renewable Energy and the Environment // USA: CRC Press. - 2009. (англ.).
3. Контроллеры заряда аккумуляторов от фотоэлектрической батареи с широтно-импульсной модуляцией тока заряда. - Режим доступа: http://www.solarhome.ru/ control/pwm/
4. Смысл работы солнечного МРРТ контроллера. - Режим доступа: http: //rusveter. ru/686/smysl_raboty_solnechnogo_mrrt_kontrollera.html
5. Автономная ФЭС. - Режим доступа: http://g2group.ru/produktsija/ fotoelektricheskie-sistemy/avtonomnaja-fotoelektricheskaj a-sistema/
6. Калашник В.И. Регулятор заряда аккумуляторных батарей от солнечных панелей / В.И. Калашник, К.Р. Казаров, В.А. Черников // Механизация и электрификация сельского хозяйства. №1. 2015. - С. 20-22.
© Д.А. Козюков, Б.К. Цыганков, 2015
УДК 004.75
И.В.Кудрявченко, к.т.н., доцент Институт информационных технологий и управления в технических системах ФГАОУ ВО «Севастопольский государственный университет»
г. Севастополь, Российская Федерация
В.И.Иваненко
Магистр по информационным системам и технологиям Индивидуальный предприниматель г. Севастополь, Российская Федерация
ИССЛЕДОВАНИЕ МОДЕЛИ ЭЛЕКТРОННОЙ СИСТЕМЫ ЗАЩИТЫ МЕДИА-КОНТЕНТА
Аннотация
Рассматриваются основные аспекты создания и исследования веб-ориентированного приложения,
44
МЕЖДУНАРОДНЫЙ НАУЧНЫЙ ЖУРНАЛ «ИННОВАЦИОННАЯ НАУКА» №8/2015 ISSN 2410-6070
предназначенного для эффективного решения проблемы незаконного использования цифрового контента в социальных сетях
Ключевые слова
Веб-приложение, защита медиа-контента, социальная сеть
Опережающее развитие информационных технологий и сети Интернет сделали возможным вовлечение в процессы информационного обмена примерно половины всего населения Земли. Очень часто люди используют разного рода медиа-файлы, содержащие произведения интеллектуальной деятельности, которые защищены на законодательном уровне [1]. Поэтому актуальной является задача борьбы с так называемым «пиратством» посредством защиты цифрового медиа-контента методами информационных технологий.
Для решения данной проблемы применительно к социальным сетям авторами были предложены архитектура веб-приложения и технологический набор инструментов, обеспечивающие сетевую защиту прав интеллектуальной собственности [2]. В частности, в приложении выделяются такие сущности как «пользователь», «автор» и «сервис», причем автор произведения является участником социальной сети, которому предоставляются все технологические инструменты доступные пользователю, а также является субъектом интеллектуальной собственности. Под сервисом подразумевается технологический пакет инструментов, который позволяет осуществлять загрузку файла автором в социальную сеть, передачу файла сервису по API (Application Programming Interface) [3], обработку файла (шифрование), передачу зашифрованного файла в социальную сеть посредством API, дешифрацию файла по запросу от социальной сети (первоначально от пользователя), синхронизацию с социальной сетью.
Наглядная технологическая модель приложения изображена на рис.1.
Рисунок 1 - Технологическая модель приложения
Отказоустойчивость системы. Основная задача системы состоит в том, чтобы конечный пользователь получил достоверные данные. В связи с использованием своеобразного прокси-клиента (социальная сеть является транзитным элементом между пользователем и сервисом) необходимо учитывать возникновение технических проблем не только на стороне сервиса, но и на стороне социальной сети. По этой причине в API предусмотрен дополнительный модуль, который в случае отказа какого-либо компонента социальной сети передает управление непосредственно сервису напрямую. Однако, в случае фатальной
45
МЕЖДУНАРОДНЫЙ НАУЧНЫЙ ЖУРНАЛ «ИННОВАЦИОННАЯ НАУКА» №8/2015 ISSN 2410-6070
ошибки на стороне сервера(-ов) социальной сети, данное решение не будет актуальным, т.к. указанный модуль запускается средствами сервера социальной сети. Также невозможно предусмотреть сбои в работе компьютера, сети, операционной системы или браузера конечного пользователя по очевидным причинам.
Отказоустойчивость самого сервиса обеспечивается так называемым реплицированием данных на разных серверах. В рассматриваемой системе под реплицированием можно понимать процесс синхронизации и актуализации данных, хранимых на разных серверах.
Репликацию статических файлов (медиа-файлов, клиентских скриптов, таких как Javascript, Flash и исполняемых скомпилированных программ) обеспечивает технология CDN. Репликацию базы данных (БД) выполняет, как правило, сама СУБД при правильной конфигурации сервера(-ов) БД. Синхронизация интерпретируемых исполняемых скриптов, таких, как PHP или ASP.NET осуществляется с помощью ApacheTomcat (контейнера сервлетов) или средствами IIS (Internet Information Services) [4].
Однако, использование нескольких реплицированных серверов для работы системы является не только следствием обеспечения отказоустойчивости системы, но и необходимостью оптимизации распределения вычислений и хранения данных. Т.е. реплицирование выполняет сразу две функции: резервирование данных и оптимизация их передачи.
Обеспечение достоверности данных, получаемых конечным пользователем (при их дешифрации) достигается также путем введения избыточности в эти данные.
Шифрование данных и помехоустойчивое кодирование. В связи с использованием нескольких транзитных модулей системы при передаче данных, становится актуальной проблема валидации этих данных на этапе получения их конечным пользователем. В качестве решения этой проблемы было выбрано использование помехоустойчивого кодирования. Концептуальная модель модулей шифрования и дешифрования данных представлена на рис.2.
Рисунок 2 - Модель процесса шифрования/дешифрования данных
В качестве источника, изображенного на рисунке, принимается исходный бинарный файл, который необходимо подвергнуть шифрованию. При этом инициатором является автор, который загружает свое произведение в социальную сеть. В качестве приемника выступает браузер конечного пользователя, который делает запрос на чтение этого файла.
От источника данные поступают на шифратор, где происходит видоизменение файла и генерация ключа шифрования, осуществляемые по алгоритму IDEA (International Data Encryption Algorithm), и сессионного ключа пользователя, который загрузил конкретный файл [5]. Генерация пользовательского ключа производится на основании алгоритма SHA-2 с построением хэш-функций вида SHA-512/384 [6].
46
МЕЖДУНАРОДНЫЙ НАУЧНЫЙ ЖУРНАЛ «ИННОВАЦИОННАЯ НАУКА» №8/2015 ISSN 2410-6070
При этом необходимо учесть, что по причинам работы шифратора и дешифратора в разных компонентах приложения и того, что они географически расположены на разных серверах (рис.2), необходимо синхронизировать эти процессы. Это осуществляется при помощи передачи по API ключей в момент шифрования данных.
В подсистеме, частью которой является дешифратор, произойдет запись в БД ключа шифрования, а однозначно идентифицировать его в момент дешифрации будет возможно с помощью уникального сессионного ключа пользователя и идентификатора хранимого в БД файла. Помимо ключа шифрования в БД также записывается контрольная сумма исходного файла для обеспечения валидации данных при дешифрации.
Также необходимо учесть, что сам процесс шифрования занимает определенное время. В связи с большими запросами пользователей к веб-ресурсам, становится актуальным сокращение времени от запроса пользователя на чтение файла до момента выдачи ему результата.
В качестве решения данного вопроса выступает создание нескольких зашифрованных с разными ключами копий загруженного файла. После завершения процесса шифрования, происходит постановка вышеописанных задач в очередь фоновой обработки с помощью технологии Alchemi. В результате, при запросе пользователя на чтение этого файла, происходит следующее. Сервису передается уникальные идентификаторы пользователя в социальной сети и запрашиваемого файла происходит поиск по базе данных на наличие зашифрованного файла, и, в случае его нахождении, файл вместе с ключом передается по назначению, происходит его дешифрация и выдача пользователю. В случае отсутствия зашифрованного файла, происходит шифрование «на лету». Таким образом, время отклика сокращается на промежуток времени, необходимый для шифрования файла.
После шифрования данные поступают на вход турбокодера, который состоит из параллельно работающих сверточных кодеров и перемежителей [7]. Их количество зависит от объема поступающего на вход файла, но ограничено, чтобы пресечь любые возможности перегрузки сервера. Далее происходит мультиплексирование данных и результаты параллельно отработавших связок сверточного кодера и перемежителя объединяются в одно сообщение и сохраняются на сервере.
При запросе пользователя на чтение файл поступает на вход турбодекодера, где производится разбиение файла на части (демультиплексирование), затем осуществляется многопоточное декодирование и передача файла дешифратору. Необходимо учитывать, что дешифратор является частью социальной сети, которая имеет сведения о пользователе.
Дешифратор использует ключи шифрования для разных копий зашифрованных файлов и сравнивает сессионный ключ, переданный с файлом пользователя, с уже имеющимся (во избежание несанкционированного доступа к файлам), запрашивает одну из копий и производит обратное преобразование по алгоритму IDEA. После этого происходит сравнение контрольных сумм исходного и дешифрованного файлов. В итоге пользователь получает запрашиваемый файл.
Анализ результатов эмуляции основных модулей системы. В процессе проектирования системы был создан и модифицирован ряд программных инструментов, позволяющих оценить различные характеристики отдельных модулей системы. Тестирование модулей проводилось на локальной ПЭВМ, которая имеет следующие характеристики:
— процессор: AMD FX(tm)-6100 Six-Core Processor 3.30 GHz;
— ОЗУ: 6 reDDR-3;
— тип системы: 64-разрядная ОС;
— операционные системы: Windows 7 HomeEdition, Linux, Ubuntu 13.04.
В качестве серверов установлены и настроены IIS и ApacheTomcat (в связке с nginx), работающие на параллельных виртуальных машинах [8, 9].
Для обеспечения взаимодействия модулей с БД данных были установлены и настроены сервера и СУБД MSSQL и MySQL для работы с модулями, реализованными на ASP.NET и PHP соответственно [10, 11].
В качестве эмулятора социальной сети было написано приложение на основе CMS Social Engine [12].
Также было установлено и настроено программное обеспечение, указанное выше.
47
МЕЖДУНАРОДНЫЙ НАУЧНЫЙ ЖУРНАЛ «ИННОВАЦИОННАЯ НАУКА» №8/2015 ISSN 2410-6070
Для тестирования сгенерированы 9 аудиофайлов в формате mp3, отличающиеся объемами и частотой дискретизации. Характеристики файлов даны в таблице 1.
Таблица 1
Характеристики тестируемых файлов
№ файла 1 2 3 4 5 6 7 8 9
Частота дискретизации, кГц 32 44,1 48 32 44,1 48 32 44,1 48
Объем файла до операции, кБ 4423 19875 7964 5233 3688 11862 9411 10606 14325
Тест 1 Шифрование
Время выполнения операции, с 0,62 2,80 1,12 0,74 0,52 1,67 1,32 1,49 2,01
Тест 2 Турбокодирование
Объем файла после операции, кБ 5323 24075 9864 6302 4488 14712 11331 12828 17825
Разница в объеме, % 16,91 17,45 19,26 16,96 17,83 19,37 16,94 17,32 19,64
Время выполнения операции, мс 1,51 7,37 2,79 1,73 1,44 3,45 2,83 3,83 5,02
Эмуляция процесса загрузки файла автором и шифрование загруженного файла (тест 1). Результаты, полученные в процессе эмуляции шифрования файлов, даны в таблице 1. Их анализ позволяет сделать вывод о линейной зависимости времени выполнения операции шифрования от исходного объема файла.
Эмуляция процесса турбокодирования (тест 2). Результаты, полученные в процессе эмуляции турбокодирования, даны в таблице 1. Исходя из этих результатов, можно сделать вывод о том, что при более высоком значении частоты дискретизации необходимо большее количество проверочных бит. Это обуславливается сутью и особенностями процесса дискретизации.
Эмуляция процессов турбодекодирования и дешифрования (тест 3). При эмуляции этих процессов наблюдались те же тенденции и зависимости, что и при обработке файлов в прямом режиме. Количественно возросло время обработки файла. В процентном соотношении время в среднем увеличилось на 24,3%, что объяснимо двумя причинами: необходимостью вычисления мультипликативных обратных величин по модулю при дешифровании и применением итерационного декодирования. Контрольные суммы результирующих файлов совпали с контрольными суммами исходных. В связи с этим можно сделать вывод о достоверности результата и корректности работы модулей. В таблице 2 даны значения затраченного времени по операциям.
Таблица 2
Распределение временных затрат по операциям
Операция Среднее время выполнения, мс
Шифрование 1360
Турбокодирование 3,33
Декодирование 1632
Дешифрация 4
Передача данных 500
Работа скриптов 174,00
Итого 3,67 с
Без учета шифрования 2,31 с
Оценка производительности работы программного пакета PGP (тест 4). На текущий момент одним из лучших программным продуктом в области шифрования бинарных файлов является PGP. Для сравнительного анализа производительности PGP и разработанного алгоритма, аудиофайлы,
использованные в тестировании модулей шифрования и турбокодирования, были подвергнуты шифрованию
48
МЕЖДУНАРОДНЫЙ НАУЧНЫЙ ЖУРНАЛ «ИННОВАЦИОННАЯ НАУКА» №8/2015 ISSN 2410-6070
с помощью программы PGP. Результирующее время шифрования в 3,6 раз превысило аналогичное время работы IDEA и турбокодирования. Разница во времени работы алгоритмов дешифрации также является достаточно существенной - PGP в 3,3 раза уступает IDEA и турбодекодированию.
При этом PGP обладает гораздо более высокой криптостойкостью, но скорость его работы недостаточна, учитывая решаемые системой задачи.
Заключение. В результате проведенных исследований различных параметров и характеристик подсистем шифрования и дешифрования данных были сделаны следующие выводы и заключения.
1. Для гарантирования достоверности данных, запрашиваемых конечным пользователем, необходимо использовать быстрый симметричный алгоритм шифрования, работающий в связке с помехоустойчивым кодом. Это связано с прохождением файла через несколько модулей, географически расположенных на разных серверах.
2. Оптимальным с точки зрения скорости работы и криптостойкости является использование алгоритма шифрования IDEA.
3. Турбокод является наиболее подходящим решением для использования его в качестве помехоустойчивого кода. Это обусловлено способностью турбокода исправлять пакетные ошибки при сильном изменении структуры исходного сообщения.
4. Тестирование модулей подтвердило допустимость использования связки данных технологий и выявило их главные достоинства: высокую скорость обработки данных и достаточно высокую криптостойкость, которые соответствуют требованиям к системы.
5. Имеются предпосылки и возможности улучшения работы алгоритмов, повышению уровня их характеристик, что при дальнейшей разработке может являться хорошим подспорьем для усовершенствования системы в целом.
Список использованной литературы
1. Копирайт: платный контент в Рунете становится все более востребованным [Электронный ресурс] URL: http://www.copyright.m/m/news/main/2015/7/24/
kontent_piratstvo_prava (дата обращения: 27.07.2015).
2. Кудрявченко И.В., Иваненко В.И. Создание сервиса защиты интеллектуальной собственности в социальной сети // «Технические науки в мире: от теории к практике». Сборник научных трудов II международной науч.-практ. конф. Ростов-на-Дону, 2015. с. 15-20.
3. Интерфейс программирования приложений [Электронный ресурс] URL:
http://ru.wikipedia.org/wiki/Интерфейс_программирования_приложений (дата обращения: 27.07.2015).
4. Wenz C., Godfrey W., Jones R. Apache Tomcat Bible // ISBN: 978-0-7645-2606-0 - 2003 - 840 p.
5. IDEA [Электронный ресурс] URL: http://ru.wikipedia.org/wiki/IDEA (дата обращения: 27.07.2015).
6. Лапонина О.Р. Криптографические основы безопасности. — М.: Интернет-университет
информационных технологий - ИНТУИТ.ру, 2004. — 320 с.
7. Иваненко В.И., Прокофьев, А.А. Разработка программы - симулятора системы передачи данных на основе турбокодов // Информационные процессы и технологии «Информатика-2011»: материалы IV Всеукраинской науч.-практ. конф. молодых ученых и студ., 25-29 апреля 2011 г. Севастополь / С.В. Доценко (науч. ред.). — Севастополь: Изд-во СевНТУ, 2011, С.217-218.
8. Nginx [Электронный ресурс] URL: http://nginx.org/ru (дата обращения: 27.07.2015)
9. Модели параллельных компьютеров [Электронный ресурс] URL: http://www.ccas.ru/paral/models.html (дата обращения: 27.07.2015).
10. Ицик Б. Г. Microsoft SQL Server 2008. Основы T-SQL. — СПб.: БХВ-Петербург, 2009. — 432 с.
11. Гольцман В. И. MySQL 5.0. Библиотека программиста. — СПб.: Питер, 2010. — 253 с.
12. SocialEngine PHP Social Network Software [Электронный ресурс] URL: http://www.socialengine.com/ (дата обращения: 27.07.2015).
© И.В. Кудрявченко, В.И.Иваненко, 2015
49