Мне тут еще одна гениальная мысль пришла в голову, вспоминаю как работал eDonkey и мне кажется главная его проблема была в том, что файлы полностью хранились на писюке пользователя. Тогда было это оправданно небольшой средней скоростью тырнета, но сейчас же скорости возросли и мне кажется следующий вариант сработал бы. eDonkey тогда заткнулся потому, что начали бороться с конкретными пользователями. У него вытягивали конкретный файл и предъявляли в качестве доказательства. Еще серваки были слабым звеном.
Вообщем к делу. Пользователь выделяет у себя на компе дисковое пространство, сколько не жалко и ЦПУ сколько не жалко и за это он получает доступ к астралу, как я это называю. Собственно это распределенная система со стандартным API для доступа к нему, шарится дисковое пространство и CPU. Файлы хранятся не на отдельном конкретном писюке или серваке, а размазанны по астралу. Хранятся в нескольких экземплярах, что бы гарантировать, что при выпадении отдельного конкретного узла, все равно можно было бы собрать файл.
Ну а дальше все просто, я к примеру имею файл "a.avi", я клиенту говорю "дематериализовать". Клиент вычисляет md5 сумму файла и создает запись в реестре, по минимуму - имя файла и его сумма, по максимуму плюс описание, тип файла итд.
файл копируется в астрал. Один кусочек на один узел, другой на второй, третий на четвертый. И вычисляется MD5 сумма файла и заносится в реестр. Реестр - тот же файл размазанный по астралу, только с конкретным, нулевым айди.
А потом другой клиент подключившись собирает у себя на компе реестр, пользователь ищет в реестре нужный ему файл и говорит "материализовать". И клиент отправляя запросы в сеть собирает файл из кусочков на диске.
Система будет абсолютно безконтрольной, это просто огромное дисковое пространство, никем не контролируемое. Будет безопасно распространять файлы.
Много букв, хотелось вот поделится идеей.
Еще я думал так же про CPU. Сделать виртуальную машину, в которой разрешить запускать на вычисление рутинки. Допустим я написал какю-то программку, которая ищет пароль с таким же хешем как у рута. Я расшариваю рутинку и она выполняется на всех клиентах. :) Типа того.