Тип работы:
Предмет:
Язык работы:


Реализация безопасного распределенного хранилища на базе IPFS

Работа №60503

Тип работы

Дипломные работы, ВКР

Предмет

информатика

Объем работы32
Год сдачи2017
Стоимость4750 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
65
Не подходит работа?

Узнай цену на написание


ВВЕДЕНИЕ 5
1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 7
1.1 Постановка задачи 7
1.2 Основной функционал системы 7
1.3 Нефункциональные требования к сервису 12
2. ТЕХНОЛОГИЧЕСКАЯ ЧАСТЬ 13
2.1 Язык программирования 13
2.2 Среда разработки 13
2.3 Система контроля версий 14
2.4 Система управления зависимостями 14
2.5 Система сборки проекта 15
2.6 Разработка серверной части проекта 15
2.7 Разработка клиентской части 17
3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ 17
3.1 Проектирование архитектуры сервиса 17
3.2 Разработка серверной части 24
ЗАКЛЮЧЕНИЕ 29
ЛИТЕРАТУРА 30
ПРИЛОЖЕНИЕ


В современном мире все больше людей пользуются компьютерами, выходят с их помощью в интернет, загружают и скачивают файлы, документы. Вся эта тенденция ведет к тому, что людям все больше требуется места на их собственном компьютере, на жестком диске.
В связи с этой проблемой многие крупные компании смогли предложить пользователю весьма стоящее решение - так называемые облачные решения или облачное хранилище данных. Они позволяли не только сэкономить место на своем локальном диске, но и давали еще целый ряд преимуществ. Например, это же здорово иметь доступ к документу как с домашнего компьютера, так и с рабочего или компьютера друга. Разумеется это не единственный плюс, их куда больше.
Но годы шли, технологии менялись, появлялись новые, умирали старые. И было бы глупо сейчас предложить еще одного “убийцу” dropbox или google drive. Поэтому в качестве еще одного решения пользовательской проблемы, а также в качестве своей работы я решил сделать облачное хранилище, которое будет хранить свои данные(пользовательские данные) на просторах так называемой сети IPFS.
Стоит сказать пару слов о данной технологии, чтобы понять в чем же все таки отличие от обычного файлового хранилища. Если перейти на их сайт, то мы сможем увидеть следующие строки: “P2P гипермедиа протокол” или “HTTP неэффективен и дорог”, или вот еще “История человечества удаляется ежедневно”, или даже, что-то вроде этого “Централизованность Web^ ограничивает его возможности” ну и т.д. Все это правда, все это имеет место быть. Итак, когда файл загружается в IPFS, то он загружается сразу на несколько устройств, он дробится на маленькие кусочки и каждому кусочку присваивается хэш.
Преимущества с обычным сервером и передачей файлов по HTTP протоколу на лицо:
- децентрализованность
- распределенность
- скорость
- отказоустойчивость
- невозможность изменить файл
- невозможность хранить дубликаты
Таким образом в качестве хранилища под файлы было решено использовать данную систему, осталось решить вопрос с безопасностью файлов и доступа к ним.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


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



1. MongoDB documentation [Электронный ресурс] - Электронная документация. Режим доступа: https://docs.mongodb.org, свободный
2. IPFS documentation [Электронный ресурс] - Электронная документация.
Режим доступа: https://ipfs.io/docs/, свободный
3. Научная статья [Электронный ресурс] -
http: //math.oregonstate.edu/~kovchegy/web/papers/p2p-vdn.pdf
4. Node.js documentation [Электронный ресурс] - Электронная документация. Режим доступа: https: //nodej s .org/en/docs/, свободный
5. Bloch, J. Effective Java Second Edition /J. Bloch - M. Addison-Wesley, 2008 - 346 с. 2. Knuth D. The Art of Computer Programming, Vol. 1: Fundamental Algorithms, 3rd Edition /D. Knuth - М. Addison-Wesley, 1997 - 672 с.
6. Knuth D. The Art of Computer Programming, Vol. 3: Sorting and searching, 2nd Edition /D. Knuth - М. Addison-Wesley, 1998 - 800 с.
7. Приемы объектно-ориентированного проектирования. Паттерны проектирования. / Э. Гамма, Р. Хелм, Р. Джонсон,Дж. Влиссидес. - СПб: Питер, 2001. - 368 с.
8. Hector Garcia-Molina, Jeffrey David Ullman, Jennifer Widom Database Systems: The Complete Book. M. : Pearson Education, 2013 - 1133 c.
9. Martin Fowler, Kent Beck Refactoring: Improving the Design of Existing Code / Addison-Wesley М., 1999. 431 c.
10. Научная статья [Электронный ресурс] - https://pdos.csail.mit.edu/~petar/papers/maymounkov-kademlia-lncs.pdf


Работу высылаем на протяжении 30 минут после оплаты.




©2025 Cервис помощи студентам в выполнении работ