Верю-верю всякому зверю...
Feb. 5th, 2012 03:27 pmОпять главный затык в проблеме доверия. Куда ни сунься, одноранговая сеть требует не только поиска пиров (что само по себе уже та еще задача), но и знания, кому из них можно доверять. Причем не вообще, а именно сейчас. Мало ли, вдруг кто-то не выдержал пытку телевизором, продался за бочку варенья или с самого начала был глубоко законспирированным наймитом RIAA.
И, разумеется, легче всего выделить установление доверия в отдельный механизм. Но тогда у нас появляются более равные (кто бывал в ФИДО, в концлагере не плачет) и сильно снижается анонимность наиболее важных для работы всей сети узлов.
Применительно к одноранговой системе имен можно, наоборот, нырнуть глубже: вместо доверия непосредственному источнику верить или не верить каждой полученной записи. Но, опять же, где взять критерии? Запись "имя=адрес" или "адрес=имя" может быть некорректной по каким-то формальным признакам, но кто мешает единственному паразиту наводнить сеть формально корректными записями, привязывающими все имена к адресу вражеского сервера, автоматически генерирующего заявы в прокуратуру на каждый замеченный адрес?
Вот ведь пакость.
И, разумеется, легче всего выделить установление доверия в отдельный механизм. Но тогда у нас появляются более равные (кто бывал в ФИДО, в концлагере не плачет) и сильно снижается анонимность наиболее важных для работы всей сети узлов.
Применительно к одноранговой системе имен можно, наоборот, нырнуть глубже: вместо доверия непосредственному источнику верить или не верить каждой полученной записи. Но, опять же, где взять критерии? Запись "имя=адрес" или "адрес=имя" может быть некорректной по каким-то формальным признакам, но кто мешает единственному паразиту наводнить сеть формально корректными записями, привязывающими все имена к адресу вражеского сервера, автоматически генерирующего заявы в прокуратуру на каждый замеченный адрес?
Вот ведь пакость.
no subject
Date: 2012-02-05 01:07 pm (UTC)Единственная связка имя+адрес, которая точно известна узлу — его собственная. Но и тут может выйти незадачка: совершенно добропорядочный узел за много-много хопов от меня может одновременно и независимо объявить себе то же имя.
Ладно, это можно объехать, разделив на уровне протокола захват имени и собственно передачу данных.
Но дальше что? Как единственному хосту опровергнуть толпу врунов, утверждающих, что теперь его адрес точно тот же, что у honeypot.riaa.com? Особенно если его прямо сейчас нет в сети (постоянно приходится себе напоминать, что с компами нормальных людей такое случается постоянно).
То есть доверие должно быть обоюдным, а это делает ситуацию еще более запутанной. Дать каждому пиру уникальный ID — прощай, анонимность. Не давать — поди докажи, появившись с другого адреса, что ты все-таки ты.
no subject
Date: 2012-02-06 02:57 pm (UTC)Если привязкой делать ключ - всё равно нужно доверенное лицо, и приходим к модели Web of trust, котоаря опирается на хотя бы один, но абсолютно доверенный узел.
Хотя надо ещё подумать - может, ключи и годятся. Нужно что-то, привязанное к человеку. Стало быть - ключ GnuPG вполне кандидатура.
no subject
Date: 2012-02-06 04:31 pm (UTC)Но и с ним не особенно легче. Кража первого же ключа виндовым трояном (а то и просто отправка им мусора или дезы прямо с зараженного ящика) — и в нашем отряде есть предатель, который сам этого не знает.
Ну, а единственный узел, от которого зависит вся система — это еще хуже корневых серверов DNS. Тех-то хоть друг друга дублируют.