Há alguns anos, um grupo internacional de cientistas das universidades de Massachusetts, Pensilvânia e Munique, na Alemanha, uma pesquisa sobre a eficácia de proxies tradicionais como ferramenta de combate à censura. Como resultado, os cientistas propuseram um novo método de contornar bloqueios baseado na teoria dos jogos. Preparamos uma tradução adaptada dos principais pontos desse trabalho.
Introdução
A abordagem de ferramentas populares para contornar bloqueios, como o Tor, é baseada na distribuição privada e seletiva de endereços IP de proxies entre clientes de regiões sob bloqueio. Como resultado, os clientes devem permanecer invisíveis para organizações ou autoridades que impõem esses bloqueios. No caso do Tor, esses distribuidores de proxies são chamados de bridges.
O principal problema com esses serviços é o ataque de insiders. Agentes responsáveis pelos bloqueios podem usar proxies para descobrir seus endereços e bloqueá-los. Para minimizar a probabilidade de identificação de proxies, as ferramentas de contorno utilizam vários mecanismos de atribuição de endereços.
Neste contexto, é utilizada uma abordagem de chamada heurística ad hoc, que pode ser contornada. Para resolver esse problema, os cientistas decidiram representar a luta entre os serviços de bloqueio e os serviços de contorno como um jogo. Usando a teoria dos jogos, eles desenvolveram estratégias ótimas de comportamento para cada lado – em particular, isso permitiu elaborar um mecanismo de distribuição de proxies.
Como funcionam os sistemas tradicionais de contorno de bloqueios
Ferramentas de contorno, como o Tor, Lantern e Psiphon, utilizam uma série de proxies fora da região com restrições impostas, que são usados para redirecionar o tráfego dos usuários dessas regiões e entregá-lo a recursos bloqueados.
Se os censores descobrirem o endereço IP de um desses proxies – por exemplo, depois de usá-los – será fácil adicioná-lo a uma lista negra e bloqueá-lo. Portanto, na prática, os endereços IP desses proxies nunca são revelados, e a atribuição de usuários a um determinado proxy é feita por meio de vários mecanismos. Por exemplo, no Tor, há um sistema de bridges.
Ou seja, a principal tarefa é fornecer aos usuários acesso a recursos bloqueados e minimizar a probabilidade de revelação do endereço do proxy.
Resolver essa tarefa na prática não é tão simples – é muito difícil diferenciar usuários comuns de censores que se disfarçam como eles com alta precisão. Para ocultar informações, são usados mecanismos heurísticos. Por exemplo, o Tor limita o número de endereços IP de pontes disponíveis para os clientes a três por solicitação.
Isso não impediu as autoridades da China de localizar todas as pontes do Tor em um curto espaço de tempo. A implementação de restrições adicionais impactará seriamente na usabilidade do sistema de contorno de bloqueios, ou seja, alguns usuários não conseguirão acessar o proxy.
Como a teoria dos jogos resolve esse problema
O método descrito no trabalho é baseado na chamada 'jogo de admissões à faculdade'. Além disso, pressupõe-se que os agentes de internet que censuram podem se comunicar entre si em tempo real e usar táticas complexas – por exemplo, não bloquear o proxy imediatamente ou fazê-lo instantaneamente com base em várias condições.
Como funcionam as admissões em faculdades
Suponha que temos n estudantes e m faculdades. Cada estudante elabora sua lista de preferências entre as instituições, baseada em certos critérios (ou seja, apenas as faculdades às quais se inscreveu são classificadas). Por outro lado, as faculdades também classificam os estudantes que se inscreveram com base em suas próprias preferências.
Primeiramente, a faculdade elimina aqueles que não atendem aos critérios de seleção – eles não serão admitidos mesmo em caso de insuficiência de candidatos. Em seguida, os admitidos são selecionados por um algoritmo que leva em consideração os parâmetros desejados.
É possível que existam 'admissões instáveis' – por exemplo, se há dois estudantes 1 e 2, que foram aceitos nas faculdades a e b, respectivamente, mas o segundo estudante prefere estudar na faculdade a. No experimento descrito, foram consideradas apenas conexões estáveis entre os objetos.
O algoritmo de aceitação adiada
Como já mencionado, há um número certo de estudantes que a faculdade não aceitará de forma alguma. Portanto, no algoritmo de admissão tardia, presume-se que a esses estudantes não é permitido se inscrever neste instituto. Nesse caso, todos os estudantes tentam se inscrever nas faculdades que mais lhes agradam.
A instituição de ensino, com capacidade para q estudantes, coloca na lista de espera q pessoas com a pontuação mais alta com base em seus critérios, ou todos, se o número de candidatos for menor do que o número de vagas disponíveis. Os demais são rejeitados, e esses estudantes se inscrevem no próximo instituto da sua lista de preferências. Esta faculdade também seleciona q estudantes com a maior pontuação dentre aqueles que se inscreveram imediatamente e aqueles que não foram aceitos na primeira faculdade. Novamente, um certo número de pessoas não é aprovado.
O processo termina quando cada estudante está na lista de espera de alguma faculdade ou foi recusado por todas as instituições de ensino nas quais poderiam se inscrever. No final, as faculdades finalmente aceitam todos os estudantes de suas listas de espera.
Qual é a relação com o proxy?
Por analogia aos estudantes e faculdades, os pesquisadores atribuíram a cada cliente um proxy específico. Surgiu um jogo chamado 'jogo de atribuição de proxy'. Os clientes, incluindo possíveis agentes censores, atuam como estudantes que desejam descobrir o endereço do proxy, que desempenham o papel das faculdades – eles têm uma capacidade final previamente conhecida.
No modelo descrito, há n usuários (clientes) A = {a1, a2, …, an}, que solicitam acesso ao proxy para contornar bloqueios. Assim, ai é o identificador do 'cliente total'. Dentre esses n usuários, m são agentes censores, denominados J = {j1, j2, …, jm}, os demais são usuários comuns. Todos os m agentes são controlados por uma autoridade central e recebem instruções dela.
Também se considera que existe um conjunto de proxies P = {p1, p2, …, pl}. Após cada solicitação, o cliente recebe do objeto distribuidor informações (endereço IP) sobre k proxies. O tempo é dividido em intervalos-fases, designados como t (o jogo começa em t=0).
Cada cliente utiliza uma função de pontuação para avaliar os proxies. Os pesquisadores utilizaram a função
Cada cliente utiliza a função de pontuação para avaliar o proxy. Os cientistas usaram a função
, para marcar a pontuação que o usuário ai atribuiu ao proxy px na fase t. Da mesma forma, cada proxy usa uma função para avaliar os clientes. Ou seja,
– a pontuação que o proxy px atribuiu ao cliente ai na fase t.
É importante lembrar que todo o jogo é virtual, ou seja, é o próprio ‘distribuidor’ que joga em nome dos proxies e dos clientes. Para isso, ele não precisa conhecer o tipo de cliente, suas preferências em relação aos proxies. Em cada fase ocorre uma jogada, e também é utilizado um algoritmo de aceitação tardia.
Resultados
Com base nos resultados das simulações, o método que utiliza a teoria dos jogos mostrou uma eficiência mais alta em comparação com os sistemas conhecidos de contorno de bloqueios.

Comparação com o serviço de VPN rBridge
Nesse contexto, os pesquisadores destacaram alguns pontos importantes que podem influenciar a qualidade do funcionamento desses sistemas:
- Independentemente da estratégia de ação dos censores, o sistema de contorno de bloqueios deve ser constantemente atualizado com novos proxies, caso contrário, sua eficiência irá diminuir.
- Se os censores possuem recursos significativos, eles podem aumentar a eficácia do bloqueio, adicionando agentes geograficamente distribuídos para procurar proxies.
- A velocidade de adição de novos proxies é crítica para a eficiência do sistema de contorno de bloqueios.
Links e materiais úteis de :
Fonte: habr.com
