• Nenhum resultado encontrado

4.2 Sistemas de Reputa¸c˜ao para Redes P2P

4.2.5 EigenTrust

selecionados randomicamente no witnesses ring. A proposta de um algoritmo de decis˜ao aleat´oria visa prevenir que n´os maliciosos sejam inseridos na tabela de roteamento e inundar a rede com falsas informa¸c˜oes sobre a reputa¸c˜ao dos n´os.

Armazenamento das Informa¸c˜oes. Cada n´o mant´em armazenado em seu repo- sit´orio de experiˆencia as avalia¸c˜oes recentes dos n´os provedores de servi¸co com os quais tenha interagido. O n´o mant´em essas informa¸c˜oes apenas se tiver interesse em participar do STORM.

4.2.5 EigenTrust ´

E um algoritmo de gerˆencia de reputa¸c˜ao para sistemas de compartilhamento de arqui- vos proposto por [46]. Cada n´o i possui associado a ele um ´unico valor de confian¸ca global que ir´a refletir as experiˆencias que todos os n´os tiveram na rede com o n´o i. A confian¸ca global do n´o ´e calculada por mais de um n´o na rede, esses n´os s˜ao chamados gerenciadores de escore. Todos os n´os na rede participam como gerenciadores de escore e computam os valores de reputa¸c˜ao de uma maneira distribu´ıda. Assim, espera-se evitar ataques de n´os maliciosos no sistema de gerenciamento de reputa¸c˜ao por falsas informa¸c˜oes.

Para designar os M gerenciadores de escore na rede ´e usada uma DHT (Distributed Hash Table). DHT usa uma fun¸c˜ao hash para mapear chaves deterministicamente em um espa¸co de endere¸co comum. Os n´os s˜ao respons´aveis por armazenar o par (chave, valor) que est´a localizado pr´oximo `a sua regi˜ao no espa¸co. Assim, cada n´o DHT gerencia um pequeno n´umero de referˆencias para outros n´os. Atrav´es do ambiente Chord [93][94], as requisi¸c˜oes podem ser roteadas via um pequeno n´umero de n´os para o n´o alvo, podendo ser localizado em at´e O(log N) passos. Os identificadores dos n´os s˜ao distribu´ıdos igual- mente entre eles. Desta forma, a carga para recupera¸c˜ao de dados ´e balanceada. Se um determinado dado ´e armazenado no sistema, a DHT garante que o dado ser´a encontrado [104].

4.2 sistemas de reputa¸c˜ao para redes p2p 65 s´avel por computar o valor de confian¸ca, ou seja, ele ser´a o gerenciador de escore dos seus n´os filhos.

Coleta e Armazenamento das Informa¸c˜oes. Se um n´o necessita do valor de confian¸ca global do n´o i, ele envia uma requisi¸c˜ao para todos os M gerenciadores de escore do n´o i. Cada n´o tem um n´umero M de gerenciadores de escore que computam o valor de confian¸ca de um n´o i. Assim, espera ajustar os conflitos de informa¸c˜oes que aparecem de um conjunto de n´os maliciosos que apresentam falhas nos valores de confian¸ca emitidos.

C´alculo da Reputa¸c˜ao. O valor de confian¸ca local pode ser definido como a soma das avalia¸c˜oes de uma transa¸c˜ao individual que um n´o i tenha realizado com um n´o j: sij=

ij. Os valores de confian¸ca local s˜ao agregados e calculados de acordo com a

reputa¸c˜ao dos n´os informantes.

Os valores de confian¸ca local atribu´ıdos aos n´os s˜ao normalizados para evitar que n´os maliciosos possam designar arbitrariamente altos valores de confian¸ca local para outros n´os maliciosos e baixos valores de confian¸ca para n´os honestos. O valor de confian¸ca local ci,j ´e definido pela equa¸c˜ao �.��

ci,j= max(si,j, 0) � jmax(si,j, 0) (�.��) onde,

si,j= sat(i, j)− unsat(i, j) (�.��)

ou seja, si,j representa o n´umero de transa¸c˜oes satisfat´orias menos as insatisfat´orias

que o n´o i tenha realizado com o n´o j.

Atrav´es da equa¸c˜ao �.�� ´e assegurado que todos os valores de confian¸ca local ser˜ao entre 0 e 1. Quando o valor do denominador for igual a zero, ci,j ´e indefinido. Atrav´es da

4.2 sistemas de reputa¸c˜ao para redes p2p 66 normaliza¸c˜ao ´e poss´ıvel computar o valor de confian¸ca global sem ter que renormaliz´a-lo. Os valores locais normalizados s˜ao agregados a outros valores de confian¸ca com a finalidade de ampliar o conhecimento sobre os n´os que participam da rede. Por exemplo, o n´o i pode perguntar para outros n´os sobre os valores de reputa¸c˜ao atribu´ıdos ao n´o k. Ap´os obter esses valores, o n´o i ir´a ponderar esse valor de acordo com o valor de confian¸ca local que o mesmo deposita no n´o informante. Essa pondera¸c˜ao ´e realizada por ti,j, conforme a equa¸c˜ao �.��. Atrav´es dessas solicita¸c˜oes de opini˜ao sobre a confian¸ca dos

n´os, pode-se obter conhecimento sobre toda a rede.

ti,k =

j

ci,jcj,k (�.��)

O EigenTrust admite a existˆencia, a priori, de um conjunto de n´os no sistema que s˜ao considerados n´os confi´aveis. Esses n´os poderiam ser os primeiros n´os a entrar na rede, cujo objetivo ´e a constru¸c˜ao da rede e n˜ao a sua destrui¸c˜ao. Os n´os inativos n˜ao fazem requisi¸c˜ao de recurso nem atribuem avalia¸c˜ao a outros n´os. Nesse caso, o valor de confian¸ca local ci,j ´e redefinido para:

ci,j =      max(si,j,0) � jmax(si,j,0) se � jmax(si,j, 0)�= 0; pj caso contr´ario. (�.��)

Atualiza¸c˜ao da Reputa¸c˜ao. Os n´os armazenam em seus reposit´orios de experi- ˆencias todas as informa¸c˜oes recebidas sobre a avalia¸c˜ao dos n´os provedores de recursos. Essas informa¸c˜oes s˜ao obtidas atrav´es de: (i) intera¸c˜oes diretas com os provedores de recursos, adiciona em seus reposit´orios os resultados dessas avalia¸c˜oes; (ii) como um ge- renciador de escore, pelo recebimento das avalia¸c˜oes emitidas pelos seus n´os filhos ou avalia¸c˜oes realizadas sobre os seus n´os filhos como provedores de recursos.

Distribui¸c˜ao das Opini˜oes. A distribui¸c˜ao da reputa¸c˜ao global do provedor de recurso s ´e realizada mediante requisi¸c˜ao do n´o p. Ap´os p obter um recurso na rede, ele

4.3 an´alise comparativa dos sistemas de reputa¸c˜ao 67