‹ назад в библиотеку

Разработка модели защищенного облачного хранилища данных

Автор: В.Е. Лебедев, А.В. Чернышова
Источник: I научно-практической конференции (студенческая секция). 16-17 ноября 2016 г. – Донецк, ГОУ ВПО «Донецкий национальный технический университет», 2016. с. 53-55.

Аннотация


Лебедев В.Е., Чернышова А.В. Разработка модели защищенного облачного хранилища данных. В данной работе проводится анализ существующих облачных сервисов для хранения данных, а также рассматривается разработанная модель для создания защищенного облачного хранилища.
Ключевые слова: шифрование, облачное хранилище, база данных, разграничение прав доступа.

Введение


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

Облачные хранилища позволяют сохранить данные на сервере, а затем получить к ним доступ из любого места. Зачастую такие сервисы предоставляют Web-клиент для доступа к данным, что позволяет получить доступ к файлам из любого места, будь то ноутбук, телефон или рабочий компьютер. Уже сегодня можно получить хранилища, вмещающие терабайты данных за умеренную стоимость. Можно выделить следующие преимущества:

  • возможность организации совместной работы с данными[1];
  • клиент не занимается организацией инфраструктуры для хранения данных;
  • сохранение целостности и репликация данных производятся провайдером «облачного» центра.

Важно понимать, что облачные сервисы не всегда могут обеспечить должный уровень безопасности. Руководитель компании G Data Security Labs и эксперт по безопасности Ральф Бенцмюллер не рекомендовал использовать «облачные» сервисы в связи с тем, что данные могут стать достоянием общественности[2]. Основными причинами этого:

  • не обеспечивается безопасность при хранении и пересылке дынных, что приводит к потере конфиденциальности данных. Так, например, провайдер имеет возможность просматривать данные клиентов, что может привести к краже данных хакерами;
  • надежность и доступность данных в «облаке» зависит от многих промежуточных параметров, таких как каналы передачи данных на пути от клиента к «облаку», качество работы интернет-провайдера клиента, доступность самого «облака» в данный момент времени

Обзор существующих облачных хранилищ


Google Диск — это файловый хостинг, созданный и поддерживаемый компанией Google. был впервые представлен 24 апреля 2012 года[4], а к октябрю 2014 года насчитывал 240 миллионов ежемесячно активных пользователей.[8] Данный сервис предоставляет возможность хранения файлов, общего доступа к файлам, совместного редактирования данных. В состав Google Диска входят Google Документы, Таблицы и Презентации — набор офисных приложений для совместной работы над текстовыми документами, электронными таблицами, презентациями, чертежами, веб-формами и другими файлами. Кроме доступа к сервису через веб-интерфейс, есть возможность доступа через клиенты для Windows, Mac OS и Android, iOS. Данный сервис предлагает тарифы, представленные в таблице 1.


Таблица 1 – Размер облачного хранилища Google Диск

OneDrive (ранее SkyDrive) — облачное хранилище, созданное в августе 2007 года и управляемое компанией Microsoft[5]. Существует поддержка Office Online, что позволяет пользователям загружать, 54 создавать, редактировать и обмениваться документами Microsoft Office непосредственно в веб-браузере. Пользователи могут создавать, просматривать и редактировать документы Word, Excel, PowerPoint и OneNote прямо в браузере. Выпущены клиентские приложения для Android, iOS, Windows Phone, Windows, Xbox (в том числе Windows 8), OS X, MeeGo 1.2 Harmattan, Symbian Belle. Данный сервис предлагает тарифы, представленные в таблице 2.

Таблица 2 – Размер облачного хранилища OneDrive.

Dropbox — файловый хостинг компании Dropbox Inc., включающий персональное облачное хранилище, синхронизацию файлов и программу-клиент. Dropbox позволяет пользователям создать специальную папку на своих компьютерах, которую Dropbox синхронизирует таким образом, что она имеет одинаковое содержимое независимо от того, какое устройство используется для просмотра[6]. Файлы, размещённые в этой папке, также доступны через веб-сайт Dropbox и мобильные приложения. Dropbox в связке с BoxCryptor, который надежно шифрует файлы перед синхронизацией их с облаком, обеспечивает конфиденциальность данных в Dropbox. Данный сервис предлагает тарифы, представленные в таблице 3.

Таблица 3 – Размер облачного хранилища Dropbox

MEGA (MEGA Encrypted Global Access) — файлообменник Кима Доткома. Открыт 19 января 2013 года. Особенностью данного сервиса является то, что Mega шифрует весь контент прямо в браузере с помощью алгоритма AES. Пользователи могут передавать друг другу файлы в зашифрованном виде, при этом все данные хранятся в «облаке». Ключи доступа к файлам не публикуются в открытом доступе, а распространяются по схеме Friend-to-Friend, между доверяющими друг другу пользователями. Однако сервис критиковался экспертами по криптографии из-за фактического отсутствия доверенного объекта на стороне пользователя[7]. Хотя шифрование происходит на стороне клиента при помощи javascript, этот код каждый раз заново загружается с сервера и в любой момент может быть подменен без предупреждения, например, в результате взлома сервера третьей стороной. Данный сервис предлагает тарифы, представленные в таблице 4.

Таблица 4 – Размер облачного хранилища MEGA.

Яндекс.Диск — облачный сервис, принадлежащий компании Яндекс, позволяющий пользователям хранить свои данные на серверах в «облаке» и передавать их другим пользователям в Интернете. Работа построена на синхронизации данных между различными устройствами. Данный сервис предоставляет такие возможности: хранение файлов неограниченное время, передача файлов по зашифрованному соединению, проверка файлов антивирусом, синхронизация файлов между всеми устройствами пользователя, возможность редактировать файлы через Web-интерфейс. Основные платформы: Web-версия, десктопный клиент для Windows XP/Vista/7/8/10, macOS и Linux, мобильная версия для iOS, Android и Windows Phone. Данный сервис предлагает тарифы, представленные в таблице 5.

Таблица 5 – Размер облачного хранилища Яндекс.Диск

Разработка модели защищенного облачного хранилища


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

После анализа были сформулированы следующие требования:

  • Web-версия, реализующая управление файлами, загрузку/скачивание файлов;
  • возможность структурирования файлов по папкам;
  • разграничение прав доступа для разных пользователей;
  • шифрование файлов перед отправкой их на сервер;
  • выделение квот на загрузку файлов.

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

Файлы пользователя будут размещаться на машине-сервере. Каждому пользователю будет соответствовать список файлов с указанием вариантов доступа (доступ закрыт, доступ по ссылке, общедоступен).

База данных содержит информацию о пользователе (логин, пароль, личные данные, доступные ему квоты). Информация о квотах и свободном месте хранится в таблице users_space_info. Таблица file_users связывает файлы с пользователями в отношении многие ко многим. Таблица files содержит информацию о файле: путь к файлу на сервере, размер файла, дата добавления. Пользователь может ограничить доступ к файлу, информация о способе доступа к файлу хранится в таблице d_access_mode.

Рисунок 1 – Таблицы базы данных, отвечающие за работу с файлами

Рисунок 1 – Таблицы базы данных, отвечающие за работу с файлами

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

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

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

Выводы


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

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

Литература


1. Онлайновые хранилища данных // ComputerBild : журнал. — 2010. — № 4. — С. 62—67.
2. Масштабные утечки данных: конец «облачным» сервисам? // Chip : журнал. — 2011. — № 8 (149). — С. 20—21.
3. Облачное хранилище данных // Википедия — свободная энциклопедия. [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Dropbox
4. Introducing Google Drive... yes, really // Google. [Электронный ресурс]. – Режим доступа: https://googleblog.blogspot.com/2012/04/introducing-google-drive-yes-really.html 56
5. Microsoft запустила бесплатный веб-офис // internet.cnews.ru. [Электронный ресурс]. – Режим доступа: http://internet.cnews.ru/news/top/microsoft_zapustila_besplatnyj_vebofis
6. Dropbox: The Online Storage Solution We’ve Been Waiting For? // techcrunch.com. [Электронный ресурс]. – Режим доступа: https://techcrunch.com/2008/03/11/dropbox-the-online-storage-solution-weve-beenwaiting-for/
7. Эксперты критикуют криптографию на сайте Mega // xakep.ru. [Электронный ресурс]. – Режим доступа: https://xakep.ru/2013/01/22/59977/
8. Google Диск // Википедия — свободная энциклопедия. [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Google_Диск
9. OneDrive // Википедия — свободная энциклопедия. [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/OneDrive
10. Dropbox // Википедия — свободная энциклопедия. [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Dropbox
11. Mega // Википедия — свободная энциклопедия. [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Mega
12. Яндекс.Диск // Википедия — свободная энциклопедия. [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Яндекс.Диск
13. RSA // Википедия — свободная энциклопедия. [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/RSA
14. SHA-2 // Википедия — свободная энциклопедия. [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/SHA-2