Форум программистов, компьютерный форум, киберфорум
Криптография
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 8

Шифрование файлов для разных групп пользователей для веб-сайта

18.03.2013, 20:37. Показов 2042. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер, уважаемые знатоки.

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

Суть:
Есть веб сервер, с приложением(сайтом) на ASP.NET, .NET framework 4. Вся инфраструктура - ОС, база данных, файловый сервер - мелкомягковские.
WEB Приложение предоставляет разным группам пользователей доступ к файлам (типа dropbox\sharepoint\skydrive и другие). Сейчас все файлы всех групп пользователей хранятся в одной куче на общем файловом сервере.
Разграничения на доступ файлам реализовано только логикой приложения (есть права у пользователя - даем запрос файловому серверу, нет - гуляй лесом)
Взлом и получение доступа к пользовательским файлам равнозначно закрытию бизнеса.

Задача:
Организовать шифрование файлов таким образом, чтобы каждая группа пользователей имела доступ только к своим файлам.(на уровне логики само собой : с этим сами справимся + на уровне шифрования)

Сложности:
1)Ключ шифрования должен быть разным для каждой группы(шифрование диска целиком не катит.)
2) Пользователь должен вводить только логин, пароль и имя группы, никаких сертификатов, хардварных токенов и прочих слишком сложных для обычной домохазяйки вещей. **ключевая аудитория - топ манагеры, которые с собой токен носить не будут, и ссл сертификаты устанавливать в браузер тоже.
3) Предполагаем, что или сервер приложения может быть взломан, или файловый сервер. Сразу оба - маловероятно. Тоесть получив полный доступ к любому серверов, хакер должен получить доступ максимум к файлом ОДНОЙ из групп, не больше.

Вот такая задачка....помогите
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.03.2013, 20:37
Ответы с готовыми решениями:

Как объединить воедино два приложения, написанных для разных групп пользователей
Здравствуйте, есть вопросик :) Вот смотрите есть 2 группы пользователей, например, студент и преподаватель, у них совершенно разные...

Joomla 3 - индивидуальные файлы Excel для пользователей и групп пользователей
Доброго времени суток! Подскажите, пожалуйста, как реализовать следующую задачу. Когда пользователь входит на сайт под своей учетной...

Доступ к папкам по сети для разных групп
Добрый день. Имеется WServer 2008. Нужно создать папку доступ к которой будет иметь с разными правами определенные компы. В диспетчере...

13
85 / 80 / 15
Регистрация: 25.05.2012
Сообщений: 230
Записей в блоге: 3
18.03.2013, 23:00
Насколько большие файлы? Кб Мб Гб?
Пользователь скачивает и сохраняет, или же ему показывается через бразуер скажем видео?

Насколько много пользователей? 1 10 100 1000 1000?
0
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 8
19.03.2013, 00:35  [ТС]
Цитата Сообщение от ostapdzen Посмотреть сообщение
Насколько большие файлы? Кб Мб Гб?
Как правило документы, 10 кб - 10 мб.

Цитата Сообщение от ostapdzen Посмотреть сообщение
Пользователь скачивает и сохраняет, или же ему показывается через бразуер скажем видео?
Видео нет, через браузер есть просмотр doc\exel\pdf и других менее попурярных форматов. Просмотрщик - flash.

Цитата Сообщение от ostapdzen Посмотреть сообщение
Насколько много пользователей? 1 10 100 1000 1000?
В одной группе как правило до 20 человек. Сервис довольно закрытый, около 500 пользователей, но если взять на вырост - ну пусть 10 000.
0
85 / 80 / 15
Регистрация: 25.05.2012
Сообщений: 230
Записей в блоге: 3
19.03.2013, 21:14
Сложно сказать не зная нюансов.

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

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

Ключ = это месячный ( два три) абонемент.

даже если у вас захватят оба сервера - толку то с файлов если даже вы не знаете пароли?

Минус гдето раз в 25 нужно больше места.

p/s/
Нужно смотреть сколько и как часто скачивают.
Учитывать атаку на размер файла и т.д.
Учитывать что возможно среди пользователей будет хакир малолетний и т.д.

Лучше всего если пароль будет рассылать ктото из каймановых островов или джунглей амазонки.

Пароли на сервере будут хранится только на время зашифровки файлов, желательно на это время чтобы к нему не было доступа даже админам.
И т.д.
И т.п.
0
0 / 0 / 0
Регистрация: 19.02.2013
Сообщений: 8
19.03.2013, 22:46  [ТС]
да никаких особо нюансов кроме того, что уже написал.
Такое решение никак не подойдет, повторюсь - пользователь том менеджер крупной компании. Никаких программ для шифрования, ключей, токенов, сертификатов и ничего сложне того, что может постичь среднестатистическая домохазяйка.
У пользователя должен быть только логин, пароль и название группы...и ничего больше. Тех задание такое.

Сервис позволяет закачивать документы на сервер, и с помощью просмотрщика (flash) их просматривать.

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

Но исходим из того, что сервер уже взломан, не важно как и чем. Цель - максимально локализовать последствия взлома.
0
85 / 80 / 15
Регистрация: 25.05.2012
Сообщений: 230
Записей в блоге: 3
20.03.2013, 00:00
просмотрщика (flash) - в браузере?
Или отдельная прога?
Если отдельная в нее можно "закинуть" шифрование - ключ= пароль пользователя.

Но опять же - файлы придется сохранять заранее, и если их шифровать на "лету" на сервере - при доступе к нему будут найдены и пароли.

Добавлено через 32 минуты
2.
Второй вариант - неочень безопасный.

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

Добавлено через 4 минуты
При варианте 2 - даже при доступе к файлам - нужно знать пасс группы. Но если есть полный доступ к серверу - пару дней мониторинга и пассы будут найдены - по одному пользователю с каждой группы введет 1 раз и все.
+ перехват.
И т.д. и т.п.

Добавлено через 2 минуты
Тоесть будет база

user1:WEye3hG^W&
user2:jfwT&*T^E#g
user3:befuhWEF#uy

и скажем GhfbeT^#rf&^ - пасс группы.

Тогда
"WEye3hG^W&" = E( "GhfbeT^#rf&^" , passuser1)

Добавлено через 1 минуту
"jfwT&*T^E#g" = E( "GhfbeT^#rf&^" , passuser2)
и т.д.
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
20.03.2013, 12:01
Мне интересно что будет с сервером, если несколько пользователей одновременно начнут скачивать/закачивать/просматривать?
0
85 / 80 / 15
Регистрация: 25.05.2012
Сообщений: 230
Записей в блоге: 3
20.03.2013, 20:09
Не должно сильно нагрузить. Файлы - не гигабайтные фильмы, пользователей не так уж и много.
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
21.03.2013, 14:21
Цитата Сообщение от ostapdzen Посмотреть сообщение
Не должно сильно нагрузить. Файлы - не гигабайтные фильмы, пользователей не так уж и много.
Без тестов с конкретными алгоритмами, на правдоподобных данных говорить сложно.
Раз — вы ничего не знаете о реальных условиях работы приложения, все ваши домыслы фигня. Пока реальный опыт не получен, пока не занесены первые живые данные реальным пользователем — у вас нет обратной связи.
Источник.

Добавлено через 1 минуту
Цитата Сообщение от ostapdzen Посмотреть сообщение
и скажем GhfbeT^#rf&^ - пасс группы.
Тогда
"WEye3hG^W&" = E( "GhfbeT^#rf&^" , passuser1)
Добавлено через 1 минуту
"jfwT&*T^E#g" = E( "GhfbeT^#rf&^" , passuser2)
и т.д.
А не будет проблемой, когда пассы кто нибудь забудет и захочет его изменить?

Добавлено через 2 часа 36 минут
Цитата Сообщение от jkchief Посмотреть сообщение
Такое решение никак не подойдет, повторюсь - пользователь том менеджер крупной компании. Никаких программ для шифрования, ключей, токенов, сертификатов и ничего сложне того, что может постичь среднестатистическая домохазяйка.
А как они защищают подключение к почте без ssl?
0
85 / 80 / 15
Регистрация: 25.05.2012
Сообщений: 230
Записей в блоге: 3
21.03.2013, 20:23
Я тут и не делаю полное ТЗ. Сервер через ssl тоже шифрует все файли - и ничего, не падает.
А накрыть медным тазом можно любой сервер.
Ясен пень нужно смотреть, это ведь разработка.

Просто. Меняем пасс пользователю и перешифровываем его запись.
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
21.03.2013, 22:57
Цитата Сообщение от ostapdzen Посмотреть сообщение
Я тут и не делаю полное ТЗ. Сервер через ssl тоже шифрует все файли - и ничего, не падает.
SSL шифрует канал.
Цитата Сообщение от ostapdzen Посмотреть сообщение
Просто. Меняем пасс пользователю и перешифровываем его запись.
Для этого придется взять пасс группы. Если я получил доступ к БД, то имею все ключи.
0
85 / 80 / 15
Регистрация: 25.05.2012
Сообщений: 230
Записей в блоге: 3
22.03.2013, 03:15
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
SSL шифрует канал.

Для этого придется взять пасс группы. Если я получил доступ к БД, то имею все ключи.
1. Шифрует файлы которые передаются.
2. Если у вас будет пасс хоть одного из группы - будет и пасс группы. Тут как не крути, второй вариант менее безопасен.
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
22.03.2013, 21:22
Цитата Сообщение от ostapdzen Посмотреть сообщение
пасс группы
Обычно пользователь может входить в несколько групп.
И зачем пасс группы выдумали?

Архитектура какая та убогая.

Я бы файл сервер заменил бы на storage, который имеет свою локальную шифрованную базу, для пользователей, групп, привилегий и т.д. Между веб мордой и storage можно сделать любое защищенное соединение, между веб мордой и пользователем стандартный HTTPS.

На storage можно использовать сколь угодно хитрые алгоритмы шифрования.
0
85 / 80 / 15
Регистрация: 25.05.2012
Сообщений: 230
Записей в блоге: 3
23.03.2013, 00:08
Архитектура исходя из задания и ограничений.

И как работать с вашей той storage?

Добавлено через 21 минуту
Я тут тоже могу наговорить - облачное храние, облачные вычисления, и т.п. слов.

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

Можете предложить что-то лучше - говорите.

Хотя я понимаю в чем беда = современные фирмочки научились парить заказчику много модных слов - типа будет безопасно, ведь наша storage это супер пупер программа которая имеет зашифрованную базу, умеет распознавать пользователей по биополю и выдает только все правильно. И в ней нету уязвимостей.
А на самом деле - все оказвается гораздо прозаичнее...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.03.2013, 00:08
Помогаю со студенческими работами здесь

Пакетный файл для создания и удаления групп пользователей с чтением параметров из текстового файла
Всем добрый день. У меня возникла проблемка по написанию батника. Он должен создавать и удалять группы пользователей. Название группы и...

Авторизация для разных пользователей
как сделать чтобы пользователь с Логином Administrator переходил не на ту страницу на которую переходят все остальные пользователи? ...

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

Ищу веб мастера для сайтов на Joomla. От 3 тыс. рублей за заготовку для сайта
Требуется веб разработчик сайтов на Joomla. Неспешно ищу веб мастера для создания заготовок для сайтов на CMS Joomla по конкретному ТЗ...

Доступ к интернету для разных пользователей
Доброго времени суток! Появился такой вопрос: как можно ограничить доступ к интернету для конкретного пользователя. В мое случае есть 3...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru