WikiDer > EigenTrust
EigenTrust алгоритм это управление репутацией алгоритм для пиринговый сети, разработанные Сен Камвар, Марио Шлоссер и Эктор Гарсиа-Молина.[1] Алгоритм предоставляет каждому одноранговому узлу уникальное глобальное значение доверия на основе истории загрузок однорангового узла и, таким образом, направлен на сокращение количества неаутентичных файлов в P2P сеть. По данным Google Scholar, на него ссылаются еще примерно 3853 статьи.[2]
Обзор
Пиринговый системы, доступные сегодня (например, Гнутелла) открыты, часто анонимны и не подотчетны. Следовательно, пользователь со злым умыслом может ввести в одноранговую сеть ресурсы, которые могут быть недостоверными, поврежденными или вредоносными (Вредоносное ПО). Это плохо отражается на надежности существующих одноранговых систем. Исследовательская группа из Стэнфорд предоставляет систему управления репутацией, в которой каждый одноранговый узел в системе имеет уникальное глобальное значение доверия, основанное на истории загрузок однорангового узла. Любой одноранговый узел, запрашивающий ресурсы, сможет получить доступ к значению доверия однорангового узла и избежать загрузки файлов с недоверенных одноранговых узлов.
Алгоритм
Алгоритм Eigentrust основан на понятии транзитивного доверия: если одноранговый узел я доверяет любому коллеге j, он также будет доверять партнерам, которым доверяет j. Каждый пэр я вычисляет значение местного доверия sij для всех одноранговых узлов, которые предоставили ему подлинные или поддельные загрузки на основе проведенных удовлетворительных или неудовлетворительных транзакций.
где сидел (я, j) относится к количеству удовлетворительных ответов, которые я получил от коллеги j, и unsat (я, j) относится к количеству неудовлетворительных ответов, которые я получил от коллеги j.
Локальное значение нормализуется, чтобы предотвратить присвоение злонамеренными одноранговыми узлами произвольно высоких значений локального доверия сговорившимся злонамеренным узлам и произвольно низких значений локального доверия хорошим узлам. Нормализованное значение локального доверия cij затем
Значения локального доверия собираются в центральном месте или распределенным образом, чтобы создать вектор доверия для всей сети. Основываясь на идее транзитивного доверия, партнер я будет просить других одноранговых узлов сообщить значение доверия однорангового узла k и взвесить ответы этих пиров от доверенного партнера я места в них.
Если предположить, что пользователь знал cij значения для всей сети в виде матрица C, то вектор доверия что определяет ценность доверия для дан кем-то
В приведенном выше уравнении, если C предполагается апериодическим и сильно связным, степени матрицы C в какой-то момент сходятся к стабильному значению.
Кажется, что для большого значения Икс, вектор доверия будет сходиться к одному и тому же вектору для каждого однорангового узла в сети. Вектор известен как левый принципал собственный вектор матрицы C. Отметим также, что поскольку одинаков для всех узлов в сети, он представляет собой значение глобального доверия.
На основе приведенных выше результатов можно написать простой централизованный алгоритм вычисления значения доверия. Обратите внимание, что мы предполагаем, что все локальные значения доверия для всей сети доступны и присутствуют в матрице C. Отметим также, что если приведенное выше уравнение сходится, мы можем заменить исходный вектор вектором это m-вектор, представляющий равномерное распределение вероятностей по всем m партнерам. Базовый алгоритм EigenTrust показан ниже:
- повторение
- до того как
Смотрите также
- Цепь Маркова
- Собственные значения и собственные векторы по математике и физике
- Eigen (библиотека C ++), библиотека компьютерного программирования для операций с матрицами и линейной алгеброй
Рекомендации
- ^ Камвар, С.Д .; Schlosser, M.T .; Гарсия-Молина, Х. (2003). «Алгоритм eigentrust для управления репутацией в p2p сетях». Материалы 12-й Международной конференции по всемирной паутине. Получено 5 июля 2015.
- ^ "Google ученый". Получено 5 июля 2015.