ВЫПУСК № 2 (10), 2017 |
ISSN 2307-177X |
как это реализовано в протоколе Tox.
При изучении вопроса соединения двух абонентов напрямую через мобильные средства связи более детально возникают трудности, связанные с применением NAT’ов мобильными оператора при предоставлении доступа к сети Интернет.
Network Address Translation (NAT) -
механизм, который преобразовывает IPадреса пакетов в сетях TCP/IP. Он позволяет существенно сэкономить на количестве выдаваемых IP-адресов, что очень важно, пока используется IPv4. Все мобильные сети построены с помощью NAT’ов и устройства, которые подключены к таким сетям имеют локальный IP-адрес и глобальный.
Всего существует 4 типа построения
NAT [1]:
1) Cone NAT.
Внутренний IP-адрес (192.168.0.5: 1234) проецируется на внешний (1.1.1.3:
5678). Пакет с адреса 192.168.0.5: 1234 будет отправлен через 1.1.1.3: 5678. Пакет из внешней сети, посланный на адрес 1.1.1.3: 5678, будет перенаправлен на 192.168.0.5:
1234.
2) Address-Restricted cone NAT.
Внутренний IP-адрес (192.168.0.5: 1234) проецируется на внешний (1.1.1.3: 5678). Пакет с адреса 192.168.0.5: 1234 будет отправлен через 1.1.1.3: 5678. Пакет из внешней сети (1.1.1.50: 3456), отправленный на 1.1.1.3: 5678 будет доставлен на 192.168.0.5: 1234 только в том случае, если с адреса 192.168.0.5: 1234 уже посылались пакеты в эту внешнюю сеть (1.1.1.50).
3) Port-Restricted cone NAT.
Внутренний IP-адрес (192.168.0.5: 1234) проецируется на внешний (1.1.1.3: 5678). Пакет с адреса 192.168.0.5: 1234 будет отправлен через 1.1.1.3: 5678. Пакет из внешней сети (1.1.1.50: 3456), отправленный на 1.1.1.3: 5678 будет доставлен на 192.168.0.5: 1234 только в том случае, если с адреса 192.168.0.5: 1234 уже посылались пакеты в эту внешнюю сеть по этому же порту
(1.1.1.50: 3456).
4) Symmetric NAT.
При отправке каждого пакета данных внутренний адрес будет меняться на внешний. Но если у предыдущих типов внешний адрес: порт были всегда одинаковы, то при так типа NAT’а, порт у каждого пакета будет
разный. То есть, обратно информацию посылать будет нельзя.
Стоит учесть, что Symmetric NAT не позволяет соединить напрямую абонентов, поэтому пользователи с таким типом сети в любом случае будут общаться с помощью сервера. Что касается остальных типов NAT, то все ограничения обходятся с помощью STUN-серверов, которые позволяют узнать нужные IP-адреса, порты и соединиться напрямую.
Следует также помнить о том, что при передаче информации, пользователь может менять своѐ местоположение. При этом его телефон будет отключаться от одной сотовой вышки и подключатся к другой, а это повлечет за собой смену и внешнего, и внутреннего IP-адресов пользователя. Следовательно, произойдет разрыв прямого соединения.
Принимая во внимание всѐ вышесказанное, предлагается следующая архитектура приложения. Мобильный клиент с помощью STUN-сервера контролирует свои IP-адреса, отправляет их на сервер приложения и обновляет при смене. Таким образом, возможно будет решить проблему с разорванным соединением. Кроме этого, появится возможность отображать статус собеседника (в сети, не в сети). Сервер в свою очередь хранит идентификаторы пользователей и их корректные IP-адреса. При создании соединения двух пользователей, сервер должен отправить им адреса друг друга, чтобы они смогли соединиться напрямую, а также должен обновлять адреса для поддержания соединения.
Дополнительным плюсом такой архитектуры является отсутствие необходимости передавать все данные сервером. То есть, затраты на сервер будут существенно меньше, при этом приложение проще масштабировать.
Изначально существовало два типа криптографических систем. Первый тип - симметричные криптосистемы (симметричное шифрование). Это система, в которой и шифрование, и расшифровка происходят с применением одного и того же ключа, который должен обеими сторонами держаться в строгом секрете. К плюсам данных систем можно отнести скорость работы, большую изученность. Главным недостатком данных систем является сложность обмена ключами. Второй тип систем, который появился значи-
55
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ В СТРОИТЕЛЬНЫХ, СОЦИАЛЬНЫХ И ЭКОНОМИЧЕСКИХ СИСТЕМАХ
тельно позже - криптографические системы с открытым ключом (асимметричное шифрование). В таких системах есть два ключа: открытый и закрытый. Открытым ключом шифруется сообщение, он может лежать в открытом доступе, закрытый же ключ должен находиться в секрете, так как им сообщения можно расшифровать. Главным плюсом данных систем является отсутствие необходимости обмениваться единственным секретным ключом. Недостатками же являются больший размер ключа при той же криптостойкости, большая требовательность
к ресурсам системы и низкая скорость шифрования.
На данный момент существуют гибридные схемы шифрования, которые представляют собой смесь симметричного шифрования и асимметричного.
Подобные схемы лишены главного недостатка симметричного шифрования - необходимости обмена общим ключом. При этом они имеют такую же скорость шифрования.
На рисунке 2 можно увидеть основной принцип действия таких схем.
Рис. 2. Гибридная схема шифрования
В целом же всѐ происходит таким об- |
для безопасного обмена частной информаци- |
|
разом. Допустим, Пользователь1 хочет пе- |
ей, также был разработан пример программ- |
|
редать Пользователю2 сообщение. У них |
ной реализации для операционной системы |
|
есть по паре ключей: открытый и закрытый. |
Android. Эта операционная система основана |
|
Пользователь1 берет открытый ключ Поль- |
на ядре Linux и собственной реализации вир- |
|
зователя2, и генерирует с помощью него |
туальной машины Java от Google. Первая |
|
сеансовый ключ. После этого Пользова- |
версия появилась в 2008 году и с тех пор ОС |
|
тель1 с помощью какого-либо алгоритма |
Android быстро завоевала рынок. |
|
симметричного шифрования и выработанно- |
По данным международной исследова- |
|
го сеансового ключа шифрует сообщение и |
тельской и консалтинговой компании Inter- |
|
передает его Пользователю2. В тоже время, |
national Data Corporation (IDC) [3] на август |
|
Пользователь2 с помощью сеансового клю- |
2017-го года 89.8% смартфонов работает на |
|
ча и своего секретного ключа расшифровы- |
мобильной операционной системе Android. |
|
вает сообщение. |
|
Это позволяет считать, что данная операци- |
В качестве алгоритма асимметричного |
онная система является безоговорочным ли- |
|
шифрования был выбран алгоритм, описан- |
дером рынка, и, если разработчик приложе- |
|
ный в стандарте ГОСТ Р 34.10-2012 [2]. Дан- |
ния желает охватить как можно большее ко- |
|
ный алгоритм основан на эллиптических |
личество пользователей, то в первую очередь |
|
кривых. Считается, что задача дискретного |
стоит разработать приложение именно для |
|
логарифма на эллиптической кривой являет- |
Android. |
|
ся более трудной по сравнению с задачей |
И, наконец, как и было сказано выше, |
|
дискретного логарифма в конечных полях. |
при установке приложения создаются закры- |
|
Кроме исследования и |
определения |
тый и открытый ключи пользователя. Чтобы |
общих принципов построения |
приложения |
соединиться с собеседником необходимо, |
56
ВЫПУСК № 2 (10), 2017 |
ISSN 2307-177X |
чтобы он присутствовал в списке контактов, где должен храниться его открытый ключ. Открытый ключ представляет собой точку на эллиптической кривой. При передаче данных о точке координаты x и y "склеиваются", образуя длинную строку открытого ключа. Закрытый ключ представляет собой большое целое число.
Инициатор пишет сообщение и нажимает кнопку отправить. При этом приложение шифрует сообщение и прикрепляет к началу шифротекста временный, сеансовый ключ. Получатель принимает сообщение и с помощью временного ключа расшифровывает его.
При выборе эллиптической кривой использовался документ [4], опубликованный Национальным Институтом Стандартов и Технологий (National Institute of Standards and Technology, NIST) в США, который рекомендует некоторые кривые к использованию в криптографии. В приложении используется кривая Curve P-384.
Для работы с большими числами при программировании на языке Java используется встроенный класс BigInteger. Также для работы с эллиптическими кривыми были разработаны классы ECPoint. java и ECCrypto. java. ECPoint. java используется для реализации операций на эллиптических кривых. В свою очередь ECCrypto. java используется для реализации шифрования на эллиптических кривых.
При осуществлении блочного шифрования используется таблица, которая служит для реализации операции многочленов в конечно поле из восьми элементов. Это таблица хранится отдельно в ресурсных файлах и содержит 65 536 шестнадцатеричных числа. Для развертки мастер - ключа используются 32 итерационные константы.
Подводя итог, можно сделать следующие выводы: будущий мессенджер был рассмотрен с точки зрения обеспечения безопасности передаваемой информации. Также была показана реализация защищенного канала связи между мобильными устройствами, и начальные этапы создания реального приложения, которое разрабатывалось по эталонной архитектуре.
В качестве дальнейших исследований
возможна доработка существующей программной реализации до эталонной, а также доработка и самой эталонной архитектуры. В современном мире появляются всѐ новые способы атак, поэтому и средства защиты должны развиваться.
Используя это исследование, любой человек, который не доверяет сторонним решениям и разработчикам, способен при необходимости построить свой собственный защищенный канал для передачи информации между мобильными устройствами.
Библиографический список
1.Типы Network Address Translation (NAT). 2009. URL: http:// aoz.com.ua /2009/01 /26/nat-types/
2.ГОСТ Р 34.10-2012. Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи. М.: Стандартинформ, 2013.
3.Smartphone OS Market Share, 2015 Q2.
URL: |
http://www. |
idc.com/ |
prodserv/ |
smartphone -os-market-share. jsp |
|
||
4. Recommended elliptic curves for federal |
|||
government use. 1999. URL: |
http://csrc. |
||
nist.gov/groups/ST/toolkit/documents/dss/NIST ReCur. pdf
5.Сысоева А.А. Моделирование технологии обслуживания покупателей в гипермаркете на базе систем массового обслуживания / Научный вестник Воронежского ГАСУ. Серия: Информационные технологии
встроительных, социальных и экономических системах: научный журнал. – Воронеж: Воронежский ГАСУ, 2016. – Выпуск №2 (8).
– С. 107 - 111.
6.Сысоева А.А. Вопросы синтеза информационно – аналитической деятельности экономических систем / Научный вестник Воронежского ГАСУ. Серия: Информационные технологии в строительных, социальных и экономических системах: научный журнал.
– Воронеж: Воронежский ГАСУ, 2017. – Выпуск №1 (9). – С. 117 - 121.
57
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ В СТРОИТЕЛЬНЫХ, СОЦИАЛЬНЫХ И ЭКОНОМИЧЕСКИХ СИСТЕМАХ
УДК 519.7
Воронежский государственный технический университет |
Voronezh State Technical University |
Канд. техн. наук, доцент Д.В. Сысоев |
Cand. of Engineering Sciences, Associate Prof. D.V. Sysoev |
Россия, г. Воронеж, E-mail: Sysoevd@yandex.ru |
Russia, Voronezh, E-mail: Sysoevd@yandex.ru |
Д.В. Сысоев
ЛОГИКО-ЛИНГВИСТИЧЕСКАЯ МОДЕЛЬ ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ ПО ОЦЕНКЕ ВЗАИМОДЕЙСТВИЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ НА ЭТАПЕ ФУНКЦИОНИРОВАНИЯ
Аннотация. Рассматривается алгоритм построения логико-лингвистических моделей оценки взаимодействия систем с внешней средой в условиях конкуренции на этапах планирования и функционирования
Ключевые слова: логико-лингвистическая модель, информационная система, конкуренция, планирование, функционирование систем, функция принадлежности
D.V. Sysoev
LOGICAL-LINGUISTIC MODEL OF DECISION SUPPORT FOR THE ASSESSMENT OF INTERACTIONS OF THE INFORMATION SYSTEM IN THE OPERATIONAL PHASE
Abstract. Тhe algorithm of construction of logical-linguistic models of evaluation of systems interaction with the external environment in terms of competition in the stages of planning and operation
Keywords: logical-linguistic model, information system, competition, planning, performance systems, membership function
При взаимодействии ИС с конкурентом |
позиции центра i-го поставщика представим |
|||||
на этапе функционирования структурно с |
в виде кортежа: |
|
||||
Di Ri , X j t , Ki ,i |
|
, j |
|
, |
|
|
1, N |
1, NN |
(1) |
||||
где Ri – количество13 ресурса, поставляемого i-ым поставщиком, {Xi(t)} – множество свойств i-го конкурента (здесь и далее под свойствами будем понимать отклонения, выявленные при взаимодействии ИС с элементом Di множества конкурентов), Ki – оценки
свойств конкурента, N – количество конкурентов, NN – количество выявленных отклонений во взаимодействии ИС с конкурентами (в данном случае со множеством конкурентов). Описание конкретного конкурента
© Сысоев Д.В., 2017
Di из множества носит в основном нечеткий характер. Множество свойств Xj(t) зависит от времени и имеет обычно словесное неточное описание – лингвистическое [1].
Описание отклонения в развитии отношений между ИС и конкурентом можно рассматривать как список причин, с каждой из которой на этапе функционирования связан индикатор частоты проявления данного отклонения, т.е. патология (отклонение от нормы, ненормальность) у конкурента Di может быть описана в виде
58
ВЫПУСК № 2 (10), 2017 |
ISSN 2307-177X |
D Si |
, pi |
, k |
|
|
, |
(2) |
|
1, N |
k |
||||||
i |
k |
k |
|
|
|
|
|
где Ski - k-ая причина отклонения, |
pki - ин- |
||||||
дикаторы частоты проявления k-ой причины,
В качестве оценки базовых переменных примем функции принадлежности A y , где
A – лингвистическая переменная из нечеткого подмножества, y – лингвистический терм, например, ―постоянно‖, ―иногда‖ и т.д. Значение y=0.5 обычно рассматривается как число, соответствующее середине шкалы – нормы [2].
На рис.1 показаны графики функций принадлежности для некоторых лингвистических термов [1].
Предположим, что А – причина, например, срыва договора поставки, В – факт срыва договора поставки. Схему логического вывода оценки свойств конкурента по частоте срыва поставок ресурса можно представить следующим образом:
K A |
A; A KB |
B |
, |
(3) |
|
KLB B |
|
||
|
|
|
|
где KА и KВ – известные размытые оценки (типа ―редко‖, ―очень часто‖ и т.п.), KА – оценка основания вывода, KВ – оценка заключения вывода, KLB – искомая оценка, которая определяется по оценкам KА и KB. Учитывая, что оценкам KА и KВ можно по-
которые, например, могут принимать значения: ―всегда‖ или ―почти всегда присутствует‖; ―очень часто‖; ―часто‖; ―иногда‖; ―никогда‖.
ставить в соответствие некоторые функции принадлежности K A и K B на шкале, задачу
можно свести к поиску отображения :
K |
|
, K |
|
|
, |
(4) |
A |
B |
KL |
||||
|
|
B |
|
|
где KL B - функция принадлежности искомой
оценки.
В [3] доказано, что отображение является правдоподобным, если слово, соответствующее KL B , при заданных словах со-
ответствующих K A и K B , таково, что оно
приемлемо для эксперта. Поясним суть этого утверждения. Пусть имеется схема вывода для принятия решения (рис. 2).
Задача состоит в определении соответствующего символу KLB слова из фиксированного заранее множества значений лингвистической термов базовой переменной срыва договора (см. рис.1). Пусть, например, в качестве KLB будет использовано словосочетание ―почти всегда‖.
редко А; всегда, когда А, то часто В |
(5) |
|
|
||
почти всегда В (из за А) |
||
|
59