geektimes

Способ удобного шифрования данных в облаке (собственными средствами)

  • среда, 29 октября 2014 г. в 02:11:13
http://habrahabr.ru/post/241720/

Уважаемое сообщество!

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

Но начать следует с обзора текущей ситуации.

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

Придерживающиеся точки зрения «мне нечего скрывать, пусть смотрят» — дальше могут не читать. Продолжайте наслаждаться утечками фоток из iCloud, произошедшими недавно, удалением из облака нелицензионного контента и т.п. Те же, кому кому важна конфиденциальность личной жизни и в целом неприятно подглядывание за вами в замочную скважину и запускание руки большого брата в ваши личные дела — читаем дальше.

Облака использовать можно. Но нужно делать правильно. Решением здесь является шифрование данных. Однако, нужно понимать, что шифрование шифрованию рознь. Многие сервисы кричат о том, что у них самые лучшие алгоритмы шифрования. Но эти же сервисы скромно молчат о том, что сами они могут получить доступ к вашим данным в любое время. Поэтому самым правильным вариантом является вариант шифрования/дешифрования данных на ВАШЕЙ стороне. Таким образом, облако всегда имеет дело только с зашифрованным контентом. При этом, у клиента шифрования и облачного сервиса не должен быть один владелец. Идеальный случай — это открытые исходники клиента шифрования.

Итак, что мы имеем с таким подходом:

Плюсы:

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

Это здорово.

Минусы:

1. У Вас появляются лишние заботы по обеспечению шифрования/дешифрования, лишняя нагрузка на компьютер.

Кому что важнее. Но, давайте договоримся, что:

1. Облако для вас — не корпоративный инструмент для работы. Хотя и тут могут быть варианты в виде раздачи пароля коллегам.
2. Облако для вас — хранилище личных данных.

Состояние дел на текущий момент


1. На данный момент ни один сервис не предоставляет вышеописаную модель шифрования контента. Оно и понятно, ему это невыгодно.
2. Погуглив, я с удивлением обнаружил, что данной проблемой особо никто не озабочивается. Возможно, с облаками повторяется тот же трюк, что и с социальными сетями n-надцать лет назад. Когда люди, не думая, сами о себе все выложили в сеть. Кто с кем в каких отношениях, где служил и работал. Подарок всем спецслужбам и мошенникам.

Текущие варианты решения задачи по обеспечению безопасности собственных файлов в облаке:

1. Шифрование, предоставляемое владельцем облака. Защищает только от других пользователей, но не от владельца облака.
2. Складирование в облако файлов в запароленных архивах или шифрованных контейнерах (типа truecrypt). Неудобно пользоваться, так как для того, чтобы внести небольшое изменение или просто скачать файл — нужно скачивать/заливать весь контейнер целиком. Что часто бывает небыстро, если он большой.
3. VPN защищает только канал связи, но не содержимое облака.
4. Программа BoxCryptor. Она умеет шифровать файлы отправляемые/сливаемые из облака. Но её механизм работы неудобен. У вас на локальном компьютере должна быть синхронизированная копия всех данных облака. В этой копии вы работаете с данными, а программа в шифрованном виде заливает/сливает их в облако. Синхронизирует в общем. Неудобно.

А мы что хотим?


Мы хотим, чтобы у нас с собой была флешка, вставляем её в любой свой (или не свой) компьютер с подключением к интернету, запускаем с нее некую программу. У нас в системе появляется виртуальный диск, зайдя в который (кто эксплорером, кто Total Commander) мы попадем в наш аккаунт в облаке. Видим наши файлы, делаем с ними что нам нужно. А потом все выключаем и уходим. А вот если в наш аккаунт зайти без запуска этой волшебной проги, то мы (или злоумышленник, админ-сниффер, владелец облака и т.п.) увидим кучу мусора — как в именах файлов, так и в их содержимом.

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

Погуглив, я нашел только 2 варианта решения вопроса шифрования почти в том виде, в каком мне нужно.

1. Плагин WebDav для Total Commander. Добавляет облачный аккаунт в Total Commander и он становится виден как диск. В который можно копировать файлы. Однако, он пока не поддерживает шифрование. Мои попытки упросить автора включить в него шифрование и стать Гислеру первым, кто решит эту проблему — не увенчались успехом.
2. Программа CarotDAV, про которую уже писали на данном сайте. Она умеет шифровать файлы и имена по-одиночке. И все бы хорошо, но она имеет интерфейс проводника, что неудобно.

И вот, собственно, свершилось то, ради чего я пишу этот длиннопост.

Я смог уговорить автора включить поддержку монтирования виртуального диска в его программу. Мне была выслана его тестовая версия, которую сейчас я тестирую.

Собственно, программа легкая, все работает как надо. Но самое главное — вот теперь вы точно можете быть уверены, что ваши файлы в облаке принадлежат только вам — при сохранении легкого и удобного способа доступа к ним.

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

P.S. Автор на сайте заявляет, что может выслать исходники.

Ссылки на дополнительные материалы
habrahabr.ru/post/207306/
habrahabr.ru/post/209500/

Соответственно, буду отписываться о результатах тестирования.