Введение 3
Актуальность работы 3
Цель работы 5
Задачи работы 6
Глава 1. Обзор существующих распределенных систем поиска, сбора и хранения данных 7
1.1. Классификации сетей 7
1.2. CAN 9
1.3. Chord DHT 11
1.4. Pastry DHT 13
1.5. Kademlia DHT 16
Глава 2. Особенности архитектуры 21
2.1. Локальность сетевых маршрутов 21
2.2. Проверка целостности данных и аутентификация 22
2.3. Прямая передача данных 24
Глава 3. Особенности программной реализации 25
3.1. Транспортный сетевой протокол 25
3.2. Прикладной сетевой протокол 25
3.3. Сценарии работы системы 28
3.4. Тестирование 32
Заключение 34
Результаты работы 34
Список литературы 35
Актуальность работы
В настоящее время наблюдается большой прогресс в области информационных технологий. Тенденция такого рода способствует развитию программного и аппаратного обеспечения, которое позволяет решить многие задачи в различных сферах деятельности человека. Сейчас можно с большим трудом представить жизнь большинства людей без использования подобных технологий - стали активно использоваться платежные системы, облачные вычисления, запоминающие устройства для записи и хранения важной информации, набирает популярность концепция интернета вещей и т.п. В связи с массовой интеграцией современных компьютерных технологий в области человеческой деятельности при помощи программно-аппаратных средств все чаще совершаются разного рода правонарушения и преступления: нарушения в области авторского и смежных прав, хищения денежных средств, мошенничество, лжепредпринимательство, продажи секретной информации и т.п. Когда в средствах массовой информации сообщается о подобных правонарушениях, зачастую отмечается важность доказательств, собранных с компьютеров.
Такого рода преступления принято называть компьютерными [1]. Наука, занимающаяся исследованием таких правонарушений, называется компьютерной криминалистикой (на англ. computer forensics) [1]. Сам термин, форензика, произошел от латинского «foren», что значит «речь перед форумом». В русский язык это слово пришло из английского. Полная форма этого термина на английском языке звучит следующим образом: «computer forensic science», что дословно означает «компьютерная криминалистическая наука». Согласно определению, компьютерная криминалистика - это прикладная наука о раскрытии преступлений, связанных с компьютерной информацией, об исследовании цифровых доказательств, методах поиска, получения и закрепления таких доказательств, о применяемых для этого технических средствах [1].
Из-за неуклонного увеличения числа случаев компьютерных преступлений данная область криминалистики становится все более важным объектом для правительства и правоохранительных органов. Трудно представить раскрытие подобных преступлений без современного программно-аппаратного обеспечения, поэтому данная область криминалистики полноценно существует в развитых странах: издан ряд научных трудов (Counterfeiting and Defending the Digital Forensic Process, Alvaro Botas, Ricardo J. Rodriguez; The Art of Memory Forensics, Michael Hale Ligh, Andrew Case, Jamie Levy, AAron Walters и т. д.) имеются учебные курсы, существуют официальные рекомендации, которым необходимо следовать при криминалистической экспертизе.
В других странах компьютерная криминалистика лишь начинает развиваться. К сожалению, несмотря на высокий уровень развития сферы информационных технологий, Россия относится как раз к таковым. Одним из показателей развития является выпуск оборудования для сбора, обработки и анализа цифровых доказательств. Примером может послужить оборудование от таких компаний, как MANDIANT, WindowsSCOPE, Tribble и т.д. В России такого рода обеспечение только начинает производиться, но все чаще - закупается. Данное положение дел объясняется несколькими обстоятельствами: слаборазвитыми теоретическим и прикладным основаниями компьютерно-криминалистической науки, малым количеством доступных публикаций по данному направлению, а также не адаптированной к эффективному обучению основам криминалистической науки системой (высшего) образования.
Основными задачами компьютерной криминалистики являются извлечение и анализ информации, хранящейся в памяти компьютера [2]. Но перед тем, как приступить к анализу извлеченных данных, их необходимо передать в центр проведения компьютерно-технических экспертиз. К такой передаче данных выдвигается масса требований: высокий уровень надежности, конфиденциальности и скорости. Также необходимо обеспечить целостность изъятых данных. Поэтому в настоящее время подобный обмен информацией осуществляется в основном с использованием запоминающих устройств, что занимает большое количество времени и задерживает расследование.
Несмотря на то, что в России прецедент официально не является источником права, результаты анализа данных, как и сами данные, прошлых судебных дел могут существенно ускорить процесс проверки. Другой потребностью может стать необходимость сбора статистики по данным, полученным в ходе расследования компьютерных преступлений.
На первый взгляд, существует множество инструментов, решающих такого рода задачи по отдельности, но даже решение, основанное на интеграции таких инструментов, не будет удовлетворять выдвинутым требованиям. Это связано с тем, что большинство средств, решающих задачу сбора данных, основаны на клиент-серверной архитектуре, которая не может обеспечить должный уровень отказоустойчивости и масштабируемости. Также среди общих ограничений можно отметить высокую стоимость, отсутствие открытого исходного кода под либеральными лицензиями и, как следствие, невозможность модификации программных компонентов под определенные задачи, платная техническая поддержка и т.п.
Цель работы
Целью данной работы является создание распределенной системы криминалистического копирования и хранения данных в контексте задачи сбора цифровых доказательств.
Задачи работы
Для достижения поставленной цели были сформулированы следующие задачи:
• исследование существующих распределенных система поиска, сбора и хранения данных;
• выбор сетевой архитектуры распределенного программного комплекса;
• разработка прикладного протокола передачи данных;
• тестирование распределенного программного комплекса.
В данной работе рассмотрены классификации одноранговых сетей. Исследованы главные представители систем типа распределенная хеш- таблица. Представлен прикладной протокол передачи данных, позволяющий с высоким уровнем надежности, скорости и безопасности производить сбор цифровых доказательств и эффективный поиск по ним.
В дальнейшем планируется провести апробацию представленного распределенного программного комплекса в реальных условиях.
Следующим шагом станет расширение области применения разработанной системы. Это позволит увеличить плотность оверлейной сети, в следствие чего увеличится эффективность поиска и доступность ресурсов.
1. Федотов Н.Н. Форензика - компьютерная криминалистика. Москва: «Юридический мир», 2007. 360 с.
2. Kent K., Chevalier S., Grance T., Dang H. Integrating forensic techniques into incident response // Special Publication (NIST SP) - 800-86, 2006
3. Peer-to-peer, https://en.wikipedia.org/wiki/Peer-to-peer
4. Darlagiannis V. Hybrid Peer-to-Peer Systems // Peer-to-Peer Systems and Applications. Springer, 2005. p. 353
5. Schollmeier R. A definition of peer-to-peer networking for the classification of peer-to-peer architectures and applications // First International Conference on Peer-to-Peer Computing, 2001
6. Filali I., Huet F. Dynamic TTL-Based Search in Unstructured Peer-to-Peer Networks // 2010 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing, 2010
7. Filali I. A Survey of Structured P2P Systems for RDF Data Storage and Retrieval, Springer, 2011, p. 21
8. Guirat F.B., Filali I. An efficient data replication approach for structured peer-to-peer systems // International Conference Telecommunications (ICT), 2013
9. Ranjan R., Harwood A., Buyya R. Peer-to-peer-based resource discovery in global grids: a tutorial // IEEE Communications Surveys & Tutorials, Volume 10, Issue 2, 2008
10. Ratnasamy S., Francis P., Handley M., Karp R., Shenker S. A Scalable Content-Addressable Network // In Proceedings of ACM SIGCOMM 2001, 2001
11. Stoica I., Morris R., Karger D., Kaashoek M. F., Balakrishnan H. Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications // ACM SIGCOMM Computer Communication Review, Volume 31, Issue 4, 2001
12. Rowstron A., Druschel P. Pastry: Scalable, decentralized object location and routing for large-scale peer-to-peer systems // IFIP/ACM International Conference on Distributed Systems Platforms, 2001, pp. 329-350
13. Maymounkov P., Mazieres D. Kademlia: A peer-to-peer Information System Based on the XOR Metric, 2002
14. Lee Y., Koo H., Choi S. Advanced node insertion attack with availability falsification in Kademlia-based P2P networks // 14th International Conference on Advanced Communication Technology (ICACT), 2012
15. Lee Y., Kim K., Roh B. H. DDoS Attack by File Request Redirection in Kad P2P Network // International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery, 2012
...