От Р.К. Ответить на сообщение
К Р.К. Ответить по почте
Дата 14.08.2007 00:23:00 Найти в дереве
Рубрики Прочее; Глобализация; Ссылки; Версия для печати

(ликбез) [Интернет], [файлообмен]. Значительно пераработано и дополнено.

Когда я написал исходное сообщение, я предполагал, что оно будет прелюдией к основному сообщению, раскрывающему тему принципов работы и использования файлообменных сетей. Однако, с одной стороны, я почувствовал, что сделал фальстарт, опубликовав сыроватый текст, с другой стороны, материал оказался полезным многим посетителям форума. Поэтому я значительно переработал и дополнил сообщение про обычные методы файлообмена - объём вырос более чем в 3 раза.
Тем, кому предыдущий текст показался интересным, вероятно, стоит обратить внимание и на нижеследующий материал.
Я надеюсь, что к этим выходным или на них, я допишу текст про файлообменные сети. Итоговая статья будет выложена в копилку.

+++++++++++++++++++++++++++++++++++++++++++++++

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

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

+++++++++++++++++++++++++++++++++++++++++++++++
Сетевые протоколы, модель взаимодействия 'Клиент-сервер'

Самое примитивное определения для сетевого протокола, которое я слышал звучало примерно так: протокол - это язык, на котором компьютеры разговаривают друг с другом. Нельзя не признать, что такое "детское" определение довольно точно передаёт смысл этого понятия.
Сетевой протокол - это набор правил, регламентирующих взаимодействие участников сетевого взаимодействия друг с другом: формат пересылаемых данных (синтаксис сообщений и их составных частей), типы сообщений, порядок следования сообщений разных типов и возможные варианты реакции участников на различные сообщения.
Число различных телекомуникационных протоколов сейчас исчисляется сотнями. Пользовательски опосредовано (через сетевые программы) применяют протоколы для установления сетевого взаимодействия и выполнения определённых действий.

Большинство привычных нам сетевых программ работают в модели "клиент-сервер". Специальный компьютер, он же сервер, в круглосуточном режиме поддерживает работу приложений-сервисов, которые обрабатывают запросы клиентских программ, запущенных на компьютерах пользователя. Термины "клиент"/"сервер" в зависимости от контекста относятся либо к компьютерам, либо к взаимодействующим программам, запущенным на них. Сервер специально заточен под свои задачи, обычно более производительный, он всегда доступен, это позволяет иметь сравнительно "легковесных" клиентов, задачей которых в основном будет интерпретация результатов, полученных с сервера и организация интерфейса с пользователем.
Лишь сравнительно недавно возникла альтернатива модели "клиент-сервер", о которой пойдёт речь в этой статье.


HTTP

Интернет, основанный на HTTP протоколе, представляет собой один из наиболее ярких примеров. Веб-страницы являются текстовыми файлами, в которых с помощью HTML (язык разметки гипертекста) описывается форматирование текста (а также таблиц, графики, управляющих элементов и т.д.) на странице. Браузер пользователя через http протокол запрашивает страницы на веб-сервере (модель клиент-сервер). Но http работает не только с веб-страницами, - если ссылка, по которой мы кликнули, ссылается на файл другого типа, тот будет скачан с помощью http (а дальше браузер определит что с этим файлом делать, в зависимости от типа файла). До сих пор излагалось состояние Интернета лет 5-10 назад, - в наши дни веб-страницы и работа с ними значительно сложнее, используется масса других технологий, таких как Flash, скрипты, Java и т.д., но давайте в первом приближении проигнорируем их существование.

Для скачивания больших файлов протокол http не удобен. Он слишком примитивен (состоит всего из нескольких команд типа "передать файл", "получить файл"). Неприспособленность этого протокола для передачи крупных файлов станет понятна ниже, когда будут перечисляться преимущества альтернативных методов транспорта. С точки зрения задачи скачивания данных (видео, аудио, большие архивы) из Интернет основным конкурентом, выступающим в той же весовой категории, для него является FTP протокол.

FTP

FTP протокол специально предназначен для передачи файлов. Он также работает в модели "клиент-сервер". FTP содержит на порядок больше команд, в частности:
  • позволяет использовать авторизацию (в форме логин-пароль) в случае если мы хотим ограничить доступ к нашему ftp ресурсу. Следует признать, что хотя HTTP сам по себе не обладает такой функциональности, но различные средства веб (html, скрипты и т.д.) позволяют запрограммировать много более гибкие и сложные разграничения по полномочиям.
  • позволяет создавать два канала скачивания (для команд и для данных).
  • в FTP есть специальные команды и для организации хранения файлов - поддерживается работа с иерархическим деревом директорий, можно визуально просматривать файлы, перемещаться по дереву директорий. HTTP позволяет загружать лишь конкретный файл, не предоставляя никаких средств для организации хранилища файлов.
  • в отличие от HTTP, этот протокол даёт возможность не только по скачиванию (download), но и по закачке файлов (upload) (утверждение о невозможности закачки через http строго говоря неверно, но в нашем приближении сгодится).

    Современные браузеры поддерживают ftp-протокол, например, достаточно кликнуть на ссылку ftp://ftp.chg.ru/pub/ и вы оказываетесь на одном из крупнейших российских ftp-серверов, содержащем всевозможные дистрибутивы всевозможных вариантов операционных систем Linux и Unix, а также программ для них.

    Многие файловые менеджеры, такие как Total Commander, Windows Commander также поддерживают работу по ftp. Нажажимаем "WIN" - "Выполнить"/"Run", введим команду "cmd" для запуска командного интерпретатора, затем команду "ftp", мы попадаем непосредственно в ftp-клиент windows. Так можно использовать протокол FTP напрямую ("?" для списка команд и помощи, "quit" для выхода).

    Следует отметить, что FTP - очень древний протокол, он был создан более 30 лет назад. Интернет в привычной для нас форме вдвое моложе. Несовершенство протокола FTP стало очевидно давно, тем не менее, никакие альтернативные механизмы передачи данных, за исключением HTTP, не могут состязаться с FTP в распространённости. Кроме того, очень часто возможности FTP вполне удовлетворяют пользователей.

    Одним из недостатков этого протокола является замкнутость файловых хранилищ, построенных на его основе. Действительно, для того, чтобы скачать файл по FTP, мы должны предварительно узнать, что этот файл там находится, то есть, нужен поиск по FTP серверам - а в FTP даже нет средств поиска внутри данного FTP сервера. Мы заходим на конкретный ftp-сервер, ищем там нужный файл, находим его (или нет), и скачиваем. Возникает необходимость в каких-то внешних механизмах для поиска данных по ftp-серверам. Возможное решение проблемы - использование специальных сайтов, осуществляющих поиск. Например, можно попробовать файловый поиск http://www.filesearch.ru/. С исчерпывающим и лаконичным руководством по поиску файлов, находящихся на ftp-серверах, можно ознакомиться по адресу http://kainsk.tomsk.ru/g2006/journal2/inet35.htm .

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

    Как скачивать - утилиты для скачивания файлов через http и ftp

  • При скачивании больших файлов, в частности музыки, видео, дистрибутивов программ, становится понятна одни из общих черт обоих протоколов - они не предназначены для скачивания/закачки больших файлов, а также большого количества файлов.
  • При скачивании произошла ошибка? - Придётся начать всё заново. Теоретически некоторые браузеры, такие как Internet Explorer поддерживают докачку, на практике не стоит полагаться на эту возможность.
  • А если в ходе скачивания связь рвётся постоянно, можем ли мы ожидать, что http или ftp сами будут пытаться установить соединение заново? - Нет, в случае если соединение по тем или иным причинам было разорвано, эти протоколы прекращают работу, необходимо инициировать новое соединение вручную.
  • Потребовалось временно приостановить скачивание/закачку? - Невозможно.
  • Скачивание идёт слишком долго, нам пора выключать компьютер? - В следующий раз придётся начать всё заново, скачанная часть файла будет потеряна. Если мы скачивали много файлов за раз - придётся муторно сверять, какие файлы были скачаны, а какие нет.
  • Хочется ограничить скорость скачивания? - Невозможно, никаких средств выделить канал определённой ширины в http/ftp нет, придётся терпеть, что работа с сетью тормозится из-за выполняющихся в фоне закачек.
  • Хочется регулировать скорость скачивания? Например, выставлять приоритеты для разных закачек? - Невозможно.
  • А если нам хочется ускорить процесс, скачивая сразу в несколько потоков? - Да, это возможно, но нам придётся вручную открывать несколько скачиваний одновременно без возможности балансирования трафика и числа потоков.
  • Возникает желание посмотреть лог скачиваний, увидеть какую-то статистику, хотя бы узнать скорость скачивания? - Http и ftp практически не предоставляют таких возможностей.
  • Требуется создавать задания на скачивания, нужен автоматический планировщик заданий, который будет их запускать по расписанию? - Ну-ну.

    Существует очень много(десятки) всевозможных утилит, облегчающих скачивание больших файлов через протоколы http/ftp, они решают большинство вышеперечисленных проблем, используя http или ftp как транспортные механизмы. Если не вдаваться в детали, можно выделить два основных типа таких программ.

    Утилиты первого типа скачивают веб-сайты вообще и веб-страницы в частности. Мы получаем копию веб-сайта - такие утилиты при скачивании html страницы анализируют все ссылки, содержащиеся на ней, подхватывают, рисунки, файлы, на которые ссылается эта страница, пытаются загрузить служебные файлы; затем (если это соответствует заданию пользователя) переходят по ссылкам до требуемого уровня глубины или в пределах данного сайта, заменяют относительные ссылки на абсолютные. Закачка проводится в несколько потоков, можно устанавливать режимы скачивания и ограничивать ширину канала для скачивания. При запуске такого рода утилит можно указать глубину скачивания (например, установив глубину 2, мы даём указание скачать текущую страницу, все страницы, на которую ссылается данная, и все страницы, на которые ссылаются страницы, на которые ссылается данная) и/или ограничить скачивание пределами определённого домена.

    Грубо говоря мы напускаем такую программу на сайт, и через какое-то время получаем на жёстком диске полную копию сайта. В частности, если на html странице содержится список прямых (т.е. непосредственных) ссылок на фильмы, такой программой мы можем сцапать всё сразу. Если мы скачиваем статический сайт, то в несколько кликов мы получаем его копию (что было бы практически не возможно сделать вручную даже для маленьких сайтов). В случае динамического сайта, вероятно, удалось бы скачать не всё.

    В качестве примера приведу мою любимую Teleport Pro/Teleport Ultra. Создание задания на скачивания сайта (основной форум СГКМ):
    http://img452.imageshack.us/img452/7809/teleportultra1jn2.jpg


    Идёт процесс скачивания:
    http://img338.imageshack.us/img338/1216/teleportultra2pa8.jpg



    Утилиты второго типа предназначены для скачивания, в первую очередь массового скачивания, именно файлов, а не сайтов/страниц. Если нужно закачать директорию по ftp, или ту же html страницу с фильмами, о которой шла речь выше, - программа типа FlashGet будет очень полезна. Скачиваемые файлы разбиваются на кусочки, в случае обрыва связи, или приостановки скачивания пользователем, в дальнейшем потребуется докачать лишь недостающие части (всё это происходит автоматически). Параллельно можно проводить несколько скачиваний из одного или нескольких источников, легко регулируя процесс. В случае возникновения ошибок при скачивании программа будет автоматически пытаться возобновить соединение. В пару кликов можно ограничивать канал для скачивания, нередко поддерживается планирование заданий (т.е. автоматически начать/прекратить закачивание по расписанию).

    В качестве примера могу привести Flash Get. Допустим, мне позарез понадобился дистрибутив операционной системы OpenBSD, причём в виде файлов (а не ISO-образа). Необходимые файлы можно скачать, например, с ftp://ftp.chg.ru/pub/OpenBSD/4.1/i386 . Указав эту страницу в новом задании для FlashGet, выбрав папку для скачивания, я запускаю процессв скачивания. Утилита сама обходит иерархию директорий, скачивает все файлы (параллельно скачивается определённое настройками число файлов, а каждый из файлов скачивается параллельно в нескольких потоках), отображается всевозможная статистика, тривиально можно регулировать ширину канала для скачивания, и т.д. и т.п.
    http://img522.imageshack.us/img522/8250/flashgettp6.jpg



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

    Во-первых, в отличие от веб-сервера, файловый сервер (предоставляет он файлы через ftp, или http - не важно) потребляет на порядок (в порядки) большее дисковое пространство и требует значительно более толстового канала. А это ограничивает энтузиастов.

    В качестве изумительного контрпримера хотелось бы указать на чудесный сайт http://multiki.arjlover.net/, предоставляющий в свободный доступ коллекцию советского кино.
    http://film.arjlover.net/film/ содержит полторы тысячи (!!!) советских фильмов
    http://filmiki.arjlover.net/filmiki/ содержит полтысячи (!!) советских детских фильмов
    http://multiki.arjlover.net/multiki/ - более двух тысяч (!!!) советских мультфильмов.
    Ну и до кучи аудио-сказки.
    Другой пример - сайт http://harchikov.pp.ru/ .
    Здесь громадное собрание современной патриотической музыки, а также советских песен.

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

    Выложенный на http/ftp файл непосредственно указывает на владельца сайта, потому филиалы западных аудио-видео записывающих корпораций мгновенно хватают автора за жабры. Для нас эта проблема актуальна в меньшей степени. Впрочем можно вспомнить и противоположные случаи, например, закрытие магазина музыки allofmp3 ( http://www.lenta.ru/news/2007/07/03/allofmp3/ ), работа которого проходила полностью в соответствии с законодательством РФ, было одним из условий вступления России в ВТО. Американцы подавали иск на 1.65 триллионов (именно так, это не опечатка) против allofmp3.com ( http://www.lenta.ru/news/2007/07/03/allofmp3/ ).

    Упомяну, что в отношении сетевых библиотек действуют те же тенденции. Большинство крупных российских сетевых библиотек, которые создавались, как проекты энтузиастов (и наполнялись также энтузиастами, бесплатно сканящими книги), сейчас изменяют режим работы. Вот пара ссылок на один из громких эпизодов:
    http://lenta.ru/articles/2004/04/07/libru/
    http://www.lenta.ru/news/2006/07/17/court/

    Сайты файлообмена

    Выше, при перечислении преимуществ FTP над HTTP, я написал, что http не позволяет закачивать файлы, но уточнил, что строго говоря это неверно. Имелось в виду следующее - http предоставляет средства как для скачивания файлов(download), так и закачки их(upload). Однако http не применяется сам по себе, это лишь транспортный механизм для веб-страниц. Организация закачки файлов на порядок более сложная, чем организация их скачивания: при закачке файлов их нужно куда-то помещать, причём должны быть средства их упорядочивать (создавать какие-то папки или что-то типа того), следует следить за размером файлов(мы же не хотим, чтобы вредный пользователь прислал нам файл, который переполнит нам диск) и правами пользователей (как правило права на чтения даются всем, права на запись - лишь некоторым). Поэтому в контексте того сравнения с точки зрения практики и было сказано, что http не позволяет закачивать(upload) файлы.

    Для обмена крупными файлами в интернете есть множество (многие десятки) специальных сайтов. Файлы на эти сайты помещаются (закачиваются) через протокол http. Самый известный из таких сайтов в России - вероятно rapidshare.de (см http://ru.wikipedia.org/wiki/Rapidshare ). У нас есть немало и своих сайтов файлообмена. Основные существенные отличия таких сайтов друг от друга - максимальный поддерживаемый размер файла, максимальная скорость закачки и бесплатного скачивания и язык интерфейса. Как правило максимальный размер файла, допускаемый сайтами файлообмена - одна-две сотни мегабайт, поэтому при необходимости выложить файл бОльшего размера или коллекцию файлов следует применять многотомную архивацию (для WinRar в левом нижнем углу указывается размер тома), и выкладывать части по очереди.

    Доступ на закачку данных как правило бесплатный, требуется указать файл для закачки, тот передаётся на сайт (по http протоколу), а пользователю выдаётся ссылка на закачаный файл. Эту ссылку можно послать приятелю, выложить на форуме и т.д.
    Скопировав ссылку в окно браузера, можно начать процедуру скачивания. Доступ на скачку данных (через браузер) либо платный, зато с максимально удобный, либо бесплатный но с ограниченными возможностями, а также рекламой.

    В качестве частных случаев сайтов файлообмена можно в частности рассматривать копилку этого форума, а также сайт imageshack.us, на котором я размещаю скриншоты к этой статье. Популярные сейчас сервисы типа youtube позволяют публиковать видеоклипы а также вставлять видеоссылки на свои сайты(форумы). Очевидно youtube.com - это сайт файлообмена специального типа.

    Рекомендую программу "FileUploader" (по "FileUploader 2.4.2 мгновенно найдётся в поисковиках) - простая, бесплатная и очень удобная. FileUploader предназначен для упрощения закачки файлов на сайты файлообмена. Точно так же, как и при ручном скачивании больших файлов с http/ftp, при закачке большого файла на сайт файлообмена мы можем столкнуться с необходимостью заново отправлять файл при обрыве связи, с невозможностью ограничивать скорость скачивания. FileUploader предназначен для оптимизации процесса закачки файла на сайты файлообмена. В нём содержится список из нескольких десятков файлообменных сайтов. Кроме как в качестве справочника файлообменных сайтов, FileUploader можно использовать по его прямому назначению - быстро и эффективно загружать данные НА файлообменные сайты (выбираем файлы для загрузки, ставим галочки у сайта(ов) на который(е) хотим загрузить эти файлы.

    Вот пример закачки интервью Лукашенко (73 мегабайта):
    http://img511.imageshack.us/img511/2281/fileuploadernx2.jpg


    Справа сверху были выбраны сайты для закачки. После загрузки файла на сайт отображается ссылка для скачивания: http://depositfiles.com/files/1474731. Проследовав по ссылке, выбрав режим скачивания (бесплатно), нажав "скачать", выждав полторы минуты, мы любуемся рекламой, и лишь затем получаем возможность скачать файл.

    Помимо передачи крупных файлов от одного человека к другому, файлообменные сайты часто используются для публикации файлов - выложивший файлы человек распространяет ссылку, например через форум(ы).
    Альтернативный механизм публикации какого-то материала - использовать публичный ftp, на котором есть доступ на запись, увы, для обычных пользователей получить доступ к такому ftp в Интернет проблематично.
    Ещё один вариант - поднять у себя дома собственный ftp-сервер или http-сервер, грамотно его настроить (чтобы враги не прокрались), что является не тривиальной задачей. Кроме того далеко не у всех пользователей IP адрес является публичным. Частные ip адреса относятся к одной из следующих групп: 172.16.0.0-172.32.255.255, 10.0.0.0-10.255.255.255 и 192.168.0.0-192.168.255.255. На такой ip адрес извне пользователи заходить не могут. Если ваш адрес именно такой - создавать ftp или http сервер бесполезно.

    Почта

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

    Основной недостаток этого метода - ограниченный размер электронного письма. Как правило почтовые серверы допускают письма не больше 10-20 мегабайт. Даже если использовать многотомную архивацию, для отправки даже 100 мегабайтного файла приходится использовать почти 15 писем. Кроме того, из-за особенностей почтовой кодировки отправляемый во вложении файл будет занимать примерно на 20-30% больше. Тем не менее в некоторых случаях этот способ может оказаться предпочтительным. В частности, однажды полученные на электронной почте письма можно впоследствии перенаправить на любой адрес. Таким образом, используя публичный почтовый адрес, можно создать себе мини-файловый архив, который будет повсеместно и круглосуточно доступным - выйдя из любого интернет-кафе в интернет, вы можете скачать нужные вам данные. Как правило, провайдеры предоставляют почтовый ящик на своём сервере бесплатно, более того, трафик из/на почтовый ящик не учитывается. Используя почтовые клиенты и специальные программы, отдельные энтузиасты бесплатно прокачивали через своего провайдера сотни мегабайт. Впрочем сейчас, в связи с повсеместным падением тарифы использования Интернет, такие хитрости не слишком актуальны.

    Для передачи большого файла можно также попытаться воспользоваться средствами Instant Messengers (ICQ, ...). Многие из клиентов предоставляют возможность обмена файлами.

    Локальные сети

    При подключении к Интернет по технологии Ethernet (специальный 'компьютерный кабель', втыкающийся в 'сетевую карту') 'соседние' компьютеры образуют высокоскоростную (на 1-2 порядка быстрее, чем сам доступ в Интернет) локальную сеть. Помимо доступа к Интернет пользователи локальной сети могут 'заходить' на компьютеры друг на друга используя "Сетевое окружение" в OC Windows (протоколы NetBIOS/NetBEUI), что обеспечивает сравнительно 'прозрачное' использование совместных файловых ресурсов. С точки зрения пользователя работа с удалёнными ресурсами происходит практически точно так же, как и с локальными ресурсами. Схожие механизмы есть и для Unix- и Linux-подобных операционных систем (вплоть до сетевой файловой системы NFS).

    Технология Ethernet характерна для организаций, однако немало подключаются таким образом из дома. Сочетание очень высокой скорости доступа и отсутствия оплаты за трафик (т.е. за переданный или полученный объём данных) порождает интенсивный обмен данными внутри такой сети. Географическая близость компьютеров локальной сети друг к другу часто порождает много более тесные взаимоотношения, чем в Интернет. Нередко в локальных сетях пользователи внедряют поисковые системы по ресурсам локальной сети, действуют форумы и другие средства коммуникации. Эта тенденции наиболее выражены в случае домовых локальных сетей и, в особенности, локальных сетей студенческих общежитий.

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

    Безопасность

    Все вышеперечисленные способы страдают различными изъянами с точки зрения безопасности. Основным из них является то, что файлы передаются в незащищённом виде. Во всех случаях анализирующие траффик злоумышленники могут читать данные обмена (в случае с электронной почтой ещё проще перехватывать пароли к почтовому серверу). Для локальной сети считывать обмен данными в пределах сегмента сети (все компьютеры подключённые к одному хабу, и, в принципе, даже к коммутатору, - вероятно один подъезд или несколько соседних подъездов) - тривиальная задача, посильная для школьника, прочитавшего журнал "Хакер". "Собрать" перехваченный файл несколько сложнее, но никакой принципиальной сложности это не составляет.

    В случае доступа через ADSL (современные телефонные модемы/может называться "Стрим", не путать с предыдущим поколением телефонных модемов) и GPRS можно не опасаться, что живущий в окрестностях девятикласник Вася Пупкин ознакомится с передаваемыми данными, однако в случае если передаваемые данные конфиденциальны - лучше озаботиться дополнительной защитой: выше упоминался лишь один из типов атак, пассивное прослушивание трафика.

    Из множества различных способов безопасной передачи файлов в контексте данной статьи можно предложить следующие варианты:
  • Шифрование передаваемого файла. Ключ передаётся обязательно внешним способом (при личной встречи, по SMS, и т.д.). Можно озадачиться поиском специальных программ, типа Kremlin, но самым простым способом, вероятно, станет указание пароля при архивировании файла (WinRar), следует лишь отказаться от выбора простого пароля. Плохой идеей было бы использование имён нарицательных, или коротких паролей. Хорошая идея - использовать как строчные, так и прописные буквы, не стесняться примененять специальные символы (типа "№;?}@), не задавать слишком короткий пароль.
  • При закачивании/скачивании файла с веб-страниц, будь это файлообменный сайт или доступ к электронной почте через браузер, веб-сайт может использовать протокол https.
  • Есть средства шифрования как почты, так и сообщений Instant Messengers (ICQ). Возможная функциональность может зависеть от типа клиентской программы, возможностей предоставляемых сервером, выбранного протокола связи и т.д.
  • Возможно создание защищённого канала между двумя компьютерами. Правильно настроенный канал обеспечивает очень высокую степень защиты, много больше, чем требуется уровне обычного пользователя. Создание такого канала (будь это SSH соединение, или канал IPsec) требует специальных утилит и помощи квалифицированного специалиста.
    В случае если уровень угроз настолько высок, что необходимо применения таких мощных методов, следует осознавать, что безопасность системы соответствует безопасности самого слабого звена. В этом случае учёт человеческого фактора , мощная металлическая дверь, и постановка помещения на охранную сигнализацию будут важны (но недостаточны!) не меньше, чем затейливые настройки програмного обеспечения.

    В случае необходимости скрыть сам факт передачи информации, следует обратиться либо к защищённым каналам типа IPsec, либо использовать средства стеганографии ( http://ru.wikipedia.org/wiki/%D0%A1%D1%82%D0%B5%D0%B3%D0%B0%D0%BD%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%8F ). При желании несложно найти утилиты, типа StegoMagic ( http://www.programmersheaven.com/download/38361/download.aspx ), позволяющие скрывать передаваемые данные внутри графического/видео/аудио файла. Внешне передаваемый файл выглядит как обычная картинка(фильм), на взгляд небольшие искажения пикселей незаметны.

    Резюмируем. Итак, есть фундаментальные причины, препятствующие распространению сайтов с коллекциями крупных файлов (аудио-видео-архивы). Все вышеперечисленные механизмы работают в модели клиент-сервер. Альтернативой является использование файлообменных сетей. Об этом в следующем сообщении.