Научная статья на тему 'Математическая модель стеганографической системы с использованием стеганографического контейнера в виде электронной книги формата epub'

Математическая модель стеганографической системы с использованием стеганографического контейнера в виде электронной книги формата epub Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
175
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СТЕГАНОГРАФИЯ / ФОРМАТ EPUB / XHTML / CSS / LSB / STEGANOGRAPHY / FORMAT EPUB

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Сущеня Артем Александрович, Блинова Евгения Александровна

Описывается модель стеганографической системы, основанная на использовании предлагаемого метода, в котором в качестве контейнера применяется файл-архив электронного формата EPUB. При помощи указанного метода предлагается скрывать тайное сообщение в файлах различного формата, что обеспечит повышение стеганографической стойкости системы. Новизна рассматриваемого метода заключается в размещении тайного сообщения, а также его контрольной суммы в трех видах контейнеров: XHTML-файлах, в которых находится текстовое содержание электронной книги, JPG-изображении, которое представляет собой обложку электронного издания, и CSS-файлах, в которых описаны правила визуального отображения книги. Излагаются возможности использования стеганографического метода в электронных изданиях для осаждения цифровых водяных знаков с целью защиты документов-контейнеров от несанкционированного копирования и распространения. Представлено разработанное программное средство «EPUB Modifier», демонстрирующее работу описанной стеганографической модели. Показан пользовательский интерфейс приложения, технология разработки, а также основные структурные элементы его архитектуры. Для грамотного построения архитектуры был использован паттерн проектирования «Chain of responsibility». Программное средство работает с электронным документом формата EPUB, изменяя его основные семантические части для создания стеганографического контейнера.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Сущеня Артем Александрович, Блинова Евгения Александровна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MATHEMATICAL DESCRIPTION OF A STEGANOGRAPHIC SYSTEM FOR EMBEDDING INFORMATION IN THE EPUB FORMAT CONTAINER

The article describes a model of the steganographic system based on the proposed method, in which a file-archive of an EPUB electronic format is used as a container. Using this method, it is proposed to hide the secret message in files of different formats, which increases the steganographic stability of the system. The novelty of the proposed method is to place the secret message, as well as its checksum in three types of containers: XHTML-files, which contain the text content of the e-book, JPG-image, which is the cover of the electronic edition and CSS-files, which describe the rules of visual display of the book. The possibilities of using the steganographic method in electronic publications for the deposition of digital watermarks in order to protect container documents from unauthorized copying and distribution are explored. The developed software "EPUB Modifier" demonstrating the operation of the described steganographic model is presented. The user interface of the application, the development technology, as well as the main structural elements of its architecture are described. The "Chain of responsibility" design pattern was used for competent architecture construction. The software works with an electronic document of the EPUB format, changing its basic semantic parts to create a steganographic container.

Текст научной работы на тему «Математическая модель стеганографической системы с использованием стеганографического контейнера в виде электронной книги формата epub»

УДК 681.3.06

А. А. Сущеня, Е. А. Блинова

Белорусский государственный технологический университет

МАТЕМАТИЧЕСКАЯ МОДЕЛЬ СТЕГАНОГРАФИЧЕСКОЙ СИСТЕМЫ С ИСПОЛЬЗОВАНИЕМ СТЕГАНОГРАФИЧЕСКОГО КОНТЕЙНЕРА В ВИДЕ ЭЛЕКТРОННОЙ КНИГИ ФОРМАТА EPUB

Описывается модель стеганографической системы, основанная на использовании предлагаемого метода, в котором в качестве контейнера применяется файл-архив электронного формата EPUB. При помощи указанного метода предлагается скрывать тайное сообщение в файлах различного формата, что обеспечит повышение стеганографической стойкости системы. Новизна рассматриваемого метода заключается в размещении тайного сообщения, а также его контрольной суммы в трех видах контейнеров: XHTML-файлах, в которых находится текстовое содержание электронной книги, JPG-изображении, которое представляет собой обложку электронного издания, и CSS-файлах, в которых описаны правила визуального отображения книги. Излагаются возможности использования стеганографического метода в электронных изданиях для осаждения цифровых водяных знаков с целью защиты документов-контейнеров от несанкционированного копирования и распространения. Представлено разработанное программное средство «EPUB Modifier», демонстрирующее работу описанной стеганографической модели. Показан пользовательский интерфейс приложения, технология разработки, а также основные структурные элементы его архитектуры. Для грамотного построения архитектуры был использован паттерн проектирования «Chain of responsibility». Программное средство работает с электронным документом формата EPUB, изменяя его основные семантические части для создания стеганографического контейнера.

Ключевые слова: стеганография, формат EPUB, XHTML, CSS, LSB.

A. A. Sushchenia, E. A. Blinova

Belarusian State Technological University

MATHEMATICAL DESCRIPTION OF A STEGANOGRAPHIC SYSTEM FOR EMBEDDING INFORMATION IN THE EPUB FORMAT CONTAINER

The article describes a model of the steganographic system based on the proposed method, in which a file-archive of an EPUB electronic format is used as a container. Using this method, it is proposed to hide the secret message in files of different formats, which increases the steganographic stability of the system. The novelty of the proposed method is to place the secret message, as well as its checksum in three types of containers: XHTML-files, which contain the text content of the e-book, JPG-image, which is the cover of the electronic edition and CSS-files, which describe the rules of visual display of the book. The possibilities of using the steganographic method in electronic publications for the deposition of digital watermarks in order to protect container documents from unauthorized copying and distribution are explored. The developed software "EPUB Modifier" demonstrating the operation of the described steganographic model is presented. The user interface of the application, the development technology, as well as the main structural elements of its architecture are described. The "Chain of responsibility" design pattern was used for competent architecture construction. The software works with an electronic document of the EPUB format, changing its basic semantic parts to create a steganographic container.

Key words: steganography, format EPUB, XHTML, CSS, LSB.

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

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

Общей чертой таких способов является то, что скрываемое сообщение встраивается в не привлекающий внимание объект, который открыто отправляется адресату.

Секретность системы защиты передаваемых сообщений должна содержаться в ключе -фрагменте информации, предварительно разделенном между адресатами. Ключом выступает алгоритм внедрения информации в объект. Объект, в который внедрена информация, называется стеганографическим контейнером [2].

В качестве контейнера может выступать электронная книга одного из самых популярных форматов на сегодняшний день - EPUB, который по своей сути представляет собой набор XHTML-, JPG- и CSS-файлов [3].

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

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

Предлагаемая модель строится на основе следующих обозначений и положений:

пусть M - это конечное множество сообщений, которые могут быть тайно размещены в контейнере: M = (MbM2, ...,Mn}. В предлагаемом методе М подразделяется на MO - само внедряемое сообщение и MH - контрольная сумма MO, вычисленная на основе алгоритма MD5;

C - это конечное множество всех допустимых контейнеров (файлов-контейнеров или документов-контейнеров): C = (Сь C2, ..., Cp}, причем p > n;

K - множество всех ключей, под которыми в общем случае понимаются методы или алгоритмы осаждения сообщения в контейнер или иные операции по предварительному преобразованию осаждаемого сообщения либо выбору элементов контейнера для такого осаждения: K = (Kb K2, ..., Kz} [4].

Произвольное тайное сообщение Mi можно скрыть в контейнере Cj при использовании ключа Km: Mi 6 M, i = 1, 2, n; Cj 6 C, j = 1, 2, ..., p; Km 6 K, m = 1, 2, ..., z. Результатом такого типа преобразований будет заполненный контейнер (или стеганосообщение) Sq, относящийся к множеству заполненных контейнеров или стеганосообщений S: S = {S1, S2, ..., Sr}, q = 1, 2, ..., r.

Функцию F, определенную на M x C x K со значениями в S, будем отождествлять с осаждением или встраиванием сообщения Mi из множества M в контейнер Cj из множества C на основе ключа из множества K, предусматривающего использование соответствующего алгоритма осаждения:

Соотношение (1) формально описывает процедуру осаждения тайного сообщения Mi в контейнер С на основе выбранного ключа Кт.

Функцию Е-1, определенную на 8 х К со значениями в М, будем отождествлять с извлечением тайного сообщения М- 6 М из стегано-сообщения « 6 8:

Е-1: 8 х К ^ М, С. (2)

Таким образом, выражение (2) определяет обратное по отношению к (1) отображение, которое каждому элементу множества 8 и фиксированному элементу множества К ставит в соответствие элемент М; множества М и элемент С множества С.

Соотношение (2) формально описывает процедуру извлечения сообщения из контейнера на основе того же выбранного метода [1]. При извлечении сообщения для подтверждения того, что оно не было модифицировано, вычисляется его контрольная сумма и сравнивается с Мн.

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

В составе электронной книги выделим три контейнера, в которые производится внедрение информации:

С — {Cjpg, Cess, Cxhtml},

(3)

где Cjp0 - обложка книги, изображение, представленное в формате JPG; CCSS - файл каскадных таблиц стиля, хранящий конфигурацию отображения книги; CxhTML - набор XHTML-файлов, количество которых зависит от глав в книге, а также несущий основную текстовую информацию.

Для выполнения процедуры внедрения информации в соответствии с контейнерами (3) используются следующие стеганографические ключи:

K — {Klsb, kess, ke},

(4)

F: M x С x K ^ S.

(1)

где KLSB - ключ, представляющий собой осаждение информации стеганографическим методом LSB (Least Significant Bits) [1]. Суть метода замены наименее значащего бита заключается в сокрытии информации путем изменения последних битов изображения, кодирующих цвет, на биты скрываемого сообщения. Разница между пустым и заполненным контейнерами должна быть не ощутима для органов восприятия человека. Рассмотрим этот метод на примере 24-битного растрового RGB-изображения.

Приведенный на рис. 1 пример показывает, как сообщение «100011» может быть скрыто в двух пикселях 24-битного изображения.

Пустой контейнер: 11111010 10101111

10000101 10110110

_11000101 10010101

Осаждаемое сообщение:_100 011_

Заполненный контейнер: 11111011 10101110

10000100 10110111

11000110 10010101

Рис. 1. Пример осаждения двоичного сообщения с использованием метода LSB

Каждый пиксель кодируется тремя байтами, каждый байт определяет интенсивность красного (Red), зеленого (Green) и синего (Blue) цвета. Совокупность интенсивностей цвета в каждом из трех каналов определяет оттенок пикселя. Изменяя наименее значащий бит, меняется значение байта на единицу.

Таким образом, контейнер Cjpg является основным из используемых и содержит непосредственно само осаждаемое сообщение MO.

KCSS - ключ, реализующий осаждение сообщения в файл каскадных таблиц стилей. Для визуального оформления XHTML-разметки предназначена технология CSS. CSS (англ. Cascading Style Sheets - каскадные таблицы стилей) - технология описания внешнего вида документа, оформленного языком разметки. Если XHTML предоставляет информацию о структуре электронной книги, то таблицы стилей сообщают, как она должна выглядеть. Стиль - это совокупность правил, применяемых к элементу гипертекста и определяющих способ его отображения. Стиль включает все типы элементов дизайна: шрифт, фон, цвета ссылок, поля и расположение объектов. Таблица стилей - это совокупность стилей, применимых к гипертекстовому документу. Каскадирование - это порядок присвоения различных стилей.

При создании CSS-файлов существует практика хранения изображений в формате base64.

Для реализации данного подхода необходимо закодировать изображение в формате base64. Далее положить получившуюся строку в CSS-файл, заменяя «ТИП» на MIME-тип изображения - JPEG/PNG/GIF или BMP и «КОД» на нужную строку в base64 (листинг 1).

.some_class {

background-image: url("data:image/TMn;base64,КОД");

}

Листинг 1. Пример использования кодировки base64 для задания фона в стиле

При помощи ключа KCSS происходит внедрение обложки книги в файл со стилями [5]. Предварительно в обложку внедряется сообщение с использованием стеганографического алгоритма LSB. Контейнер CCSS предназначен для

дублирования основного сообщения, что в свою очередь повышает стеганографическую стойкость.

Kq - ключ, реализующий осаждение сообщения в главы книги с использованием метода замены кавычек в файлах XHTML. XHTML -это основанный на XML язык разметки гипертекста, максимально приближенный к стандартам HTML. XHTML отличается от HTML строгостью написания кода. Если HTML позволяет писать практически любые конструкции и браузер их корректно распознает, то с появлением XHTML это стало невозможным. XHTML требует строгого соблюдения всех правил, предъявляемых W3C.

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

При встраивании последовательности бит условимся, что единице будет соответствовать двойная кавычка, а нулю - одинарная. Начиная с первой пары кавычек в документе, будем ставить ей в соответствие бит встраиваемого сообщения и, при необходимости, изменять тип кавычки на противоположный. (Например, первая пара кавычек в документе двойная, а первый бит осаждаемой последовательности нулевой, следовательно, необходимо тип кавычек заменить на одинарный.) После того, как место в одном XHTML-файле закончилось, следует перейти к следующей главе. Данную процедуру необходимо выполнять до тех пор, пока сообщение не закончится, либо же когда глав в книге больше не останется [5, 6]. Таким образом, контейнер Cxhtml используется в качестве дополнительного и хранит хэш основного сообщения MH.

С учетом всех описанных элементов стега-нографической системы функция встраивания сообщения F будет выглядеть следующим образом:

F: M {MO, Мн} х C {Cjpg, Ccss, Cxhtml} Х x K {Klsb, Kcss, Kq} —> S.

Функция извлечения F-1 будет следующей: F-1: S x K {Klsb, Kcss, Kq} ^ M {Mo, Мн},

C {CJPG, CCSS, CXHTML} .

Таким образом, стеганографическая модель при помощи нового метода была адаптирована для осуществления процедуры внедрения информации в цифровой файл формата EPUB.

Для демонстрации описанной стеганографической системы осаждения метки в электронный документ формата EPUB создано программное средство «EPUB Modifier». В качестве технологии для создания приложения была выбрана Windows Forms, которая позволяет разработать приложение с полнофункциональным графическим интерфейсом, простое в развертывании и обновлении, способное работать при наличии или отсутствии подключения к Интернету и использующее более безопасный доступ к ресурсам на локальном компьютере по сравнению с традиционными приложениями Windows. В Windows Forms форма - это визуальная поверхность, на которой выводится информация для пользователя [7]. Приложение Windows Forms строится путем помещения элементов управления на форму и написания кода для реагирования на действия пользователя, такие как щелчки мыши или нажатия клавиш. Элемент управления - это отдельный элемент пользовательского интерфейса, предназначенный для отображения или ввода данных.

Выбранная технология обладает достаточным набором инструментов для осуществления процедуры осаждения/извлечения информации в стеганографический контейнер формата EPUB [7].

В процессе внедрения сообщения M, контейнер C проходит через несколько этапов обработки, число которых совпадает с количеством используемых в модели ключей K. Для грамотного построения процедуры осаждения был применен шаблон проектирования «Chain of responsibility». Цепочка обязанностей («Chain of responsibility») - поведенческий шаблон проектирования, благодаря которому удается избежать «жесткой» привязки отправителя запроса к получателю, позволяя тем самым нескольким объектам обработать запрос. Все возможные обработчики запроса образуют цепочку, а сам запрос перемещается по этой цепочке, пока один из ее объектов не обработает запрос. Каждый объект при получении запроса выбирает, либо обработать запрос, либо передать выполнение запроса следующему по цепочке. Данный шаблон применяется в следующих случаях: наличие более одного объекта, который может обработать определенный запрос; необходимость передачи запроса на выполнение одному из нескольких объектов, точно не определяя, какому именно; необходимость задания объектов динамически. Исходя из описания шаблона «Chain of responsibility», можно сказать, что его использование в разработке приложения является целесообразным. UML-диа-грамма паттерна «Chain of responsibility» представлена на рис. 2.

«interface» Handler successor

Client —►

+handleRequest()

Ï

ConcreteHandler2

+handleRequest()

Рис. 2. UML-диаграмма паттерна «Chain of responsibility»

Handler определяет интерфейс для обработки запроса, а также может определять ссылку на следующий обработчик запроса. ConcreteHandlerl и ConcreteHandler2 - конкретные обработчики, которые реализуют функционал для обработки запроса. Client отправляет запрос объекту Handler.

В приложении «EPUB Modifier» описанный паттерн реализован на основе двух классов Embedder и Extracter. В классе Embedder содержатся свойства для хранения следующего звена цепочки, обрабатываемой книги, внедряемого сообщения и для директории, в которой находится файл-контейнер. Основным методом является EmbedMessage, который выполняет переопределенный метод Embed класса потомка, а также запускает выполнение следующего звена цепочки, если оно есть. Для добавления класса в цепочку осаждения сообщения необходимо реализовать класс Embedder, а также переопределить абстрактный метод Embed. Далее следует разместить объект класса в свойстве Next предыдущего звена цепочки.

Реализация родительского класса Embedder представлена в листинге 2.

| 1^411114411 ПИ г тс I юруРа lh|" = ^ hioi>k . Sc hi'm. I ^ jri 141 г| I Г> F i-" г I nt-yF.j I li j

Листинг 2. Программный код класса Embedder

Использование цепочки обязанностей дает следующие преимущества: ослабление связан-

ConcreteHandlerl

+handleRequest()

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

Заключение. Рассмотренная в данной статье модель основана на использовании комбинации стеганографических методов. В список методов входят Ь8Б, метод закодированного изображения в каскадных таблицах стилей, а также метод замены кавычек в файлах разметки. Применение перечисленного сочетания методов позволяет увеличить стеганографиче-скую стойкость системы и добавить возможность проверки осажденного сообщения в цифровом файле формата БРИВ.

Представленная модель стеганографиче-ской системы позволяет проводить процедуру внедрения сообщения в электронные книги формата БРИВ с учетом особенностей содер-

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

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

Представлено программное средство, позволяющее производить процедуру осаждения/извлечения сообщения в стеганографиче-ский контейнер формата БРИВ.

Литература

1. Урбанович П. П. Защита информации методами криптографии, стеганографии и обфускации. Минск: БГТУ, 2016. 220 с.

2. Конахович Г. Ф., Пузыренко А. Ю. Компьютерная стеганография. Теория и практика. Киев: МК-Пресс, 2006. 288 с.

3. Сущеня А. А. Программное средство стеганографического преобразования текстов-контейнеров на основе языка разметки XML // 69-я науч.-техн. конф. учащихся, студентов и магистрантов. Минск, 2-13 апр. 2018 г. / Белорус. гос. технол. ун-т. Минск, 2018. С. 81-84.

4. Шутько Н. П., Романенко Д. М., Урбанович П. П. Математическая модель системы текстовой стеганографии на основе модификации пространственных и цветовых параметров символов текста // Труды БГТУ. 2015. № 6: Физ.-мат. науки и информатика. С. 152-156.

5. Сущеня А. А. Стеганографический метод внедрения текстовой информации в контейнер формата EPUB // 70-я науч.-техн. конф. учащихся, студентов и магистрантов. Минск, 15-20 апр. 2019 г. / Белорус. гос. технол. ун-т. Минск, 2019. С. 247-251.

6. Шутько Н. П. Особенности и формальное описание процесса осаждения секретной информации в текстовые документы на основе стеганографии // Труды БГТУ. 2014. № 6: Физ.-мат. науки и информатика. С. 121-124.

7. Docs.microsoft.com: сайт. URL: https://docs.microsoft.com/ru-ru/dotnet/framework/winforms/ windows-forms-overview (дата обращения: 02.11.2019).

References

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1. Urbanovich P. P. Zashchita informatsii metodami kriptografii, steganografii i obfuskatsii [The protection of information based on the methods by cryptography, steganography and obfuscation]. Minsk, BGTU Publ., 2016. 220 p.

2. Konakhovich G. F., Puzyrenko A. Yu. Komp'yuternaya steganografiya. Teoriya i praktika [Computer steganography. Theory and practice]. Kyiv, MK-Press Publ., 2006. 288 p.

3. Sushchenia A. A. Software tool for steganographic transformation of container texts based on XML markup language. 69-ya nauchno-tekhnicheskaya konferentsiya uchashchikhsya, studentov i magistrantov [69th Scientific and technical conference of students, students and undergraduates]. Minsk, 2018, pp. 81-84 (In Russian).

4. Shutko N. P., Romanenko D. M., Urbanovich P. P. Mathematical model of textual shorthand system based on modification of spatial and color parameters of text symbols. Trudy BGTU [Proceedings of BSTU], 2015, no. 6: Physics and Mathematics. Informatics, pp. 152-156 (In Russian).

5. Sushchenia A. A. Steganographic method of introduction of textual information into the container of EPUB format. 70-ya nauchno-tekhnicheskaya konferentsiya uchashchikhsya, studentov i magistrantov [70th Scientific and technical conference of students, students and undergraduates]. Minsk, 2019, pp. 247251 (In Russian).

6. Shutko N. P. Features and formal description of the process of deposition of secret information in text documents based on shorthand. Trudy BGTU [Proceedings of BSTU], 2014, no. 6: Physics and Mathematics. Informatics, pp. 121-124 (In Russian).

7. Docs.microsoft.com. Available at: https://docs.microsoft.com/ru-ru/dotnet/framework/winforms/ windows-forms-overview (accessed 02.11.2019).

Информация об авторах

Сущеня Артем Александрович - магистрант. Белорусский государственный технологический университет (220006, г. Минск, ул. Свердлова, 13а, Республика Беларусь). E-mail: asuschenya@ gmail.com

Блинова Евгения Александровна - старший преподаватель кафедры информационных систем и технологий. Белорусский государственный технологический университет (220006, г. Минск, ул. Свердлова, 13а, Республика Беларусь). E-mail: evgenia.blinova@belstu.by

Information about the authors

Sushchenia Artsiom Aleksandrovich - Master's degree student. Belarusian State Technological University (13a, Sverdlova str., 220006, Minsk, Republic of Belarus). E-mail: asuschenya@gmail.com

Blinova Evgeniya Aleksandrovna - Senior Lecturer, the Department of Information Systems and Technology. Belarusian State Technological University (13a, Sverdlova str., 220006, Minsk, Republic of Belarus). E-mail: evgenia.blinova@belstu.by

Поступила после доработки 13.11.2019

i Надоели баннеры? Вы всегда можете отключить рекламу.