Combatendo a censura com algoritmos

Mohammad Mahdian * (tradução: Tiago Madeira)

Mãos algemadas digitando num teclado de computador

Os levantes recentes no Oriente Médio demonstraram a eficácia da internet em ajudar ativistas políticos e sociais a organizarem protestos, disseminarem informações para o público e enviarem notícias de prisões e repressões ao restante do mundo. Ameaçados por esse paradigma, regimes totalitários tentaram controlar e monitorar o acesso de seus cidadãos à web, desenvolvendo ou adquirindo tecnologias de censura e de vigilância da internet. Ao mesmo tempo, uma variedade de ferramentas de violação desses filtros foi desenvolvida para ajudar os usuários a contornarem o filtro da internet acessando sites bloqueados através de intermediários não-bloqueados (os chamados proxies). O artigo de Dan Boneh (Recent Ideas for Circumventing Internet Filtering) dá um ótimo resumo sobre novas e velhas técnicas para construir essas ferramentas.

No coração de todos os métodos de violação existe o seguinte dilema: Para fazer a ferramenta disponível ao público, os endereços de proxy precisam ser comunicados para os usuários. Isso, no entanto, permite que as autoridades obtenham esses endereços (fingindo serem usuários legítimos) e aí bloqueiem todo o tráfego nesses endereços específicos. Ter vários proxies de curta duração alivia o problema, mas a questão permanece: Existe algum método algorítmico esperto para distribuir proxies que diminua o número de proxies necessários para fornecer acesso à internet sem filtro?

O problema de distribuição de proxy

Vamos começar definindo um modelo teórico simples para este problema. Nós gostaríamos de distribuir um conjunto de m proxies para uma população de n usuários: k deles são adversários (agentes da censura) e o restante (n-k) são usuários legítimos. Nós não sabemos as identidades dos adversários, mas podemos assumir que k << n. Na verdade, para simplicidade, pense em k como uma constante, enquanto n cresce ao infinito.

Se um proxy é dado a um adversário, ele pode comprometer o proxy, tornando-o inutilizável para os outros usuários. Uma vez que um proxy é comprometido, nós ficamos sabendo e podemos distribuir outros proxies para os usuários afetados. Nossa meta é garantir que todo usuário legítimo tenha pelo menos um proxy não-comprometido. A questão é: qual é o menor m com o qual conseguimos fornecer essa garantia?

Claramente, o problema pode ser resolvido com n proxies dando pra cada usuário um proxy diferente. Na verdade, podemos fazer muito melhor usando um algoritmo de busca binária: Comece dividindo os usuários em duas caixas e dê pra cada caixa o seu proxy. Uma vez que um proxy é comprometido, divida sua caixa correspondente pela metade e dê para cada uma das metades um proxy. Continue fazendo isso enquanto existe apenas um usuário na caixa. É fácil ver que esse método usa no máximo O(log(n)) proxies. Uma divisão cuidadosa dos usuários em caixas rende uma solução com no máximo k(1+log2(n/k))k(1+log_2(n/k)) proxies.

Podemos resolver o problema com menos de O(log(n)) proxies? Talvez surpreendentemente, nós podemos fazer um pouco melhor. Há um algoritmo randomizado de distribuição de proxies que usa no máximo O(log(n)/loglog(n)) proxies. Um argumento simples de entropia mostra que isso é assintoticamente ótimo para um k constante.

Distribuição de proxies via redes de confiança

Uma forma comum de construir uma base de usuários num país sob censura é através de relações pessoais de confiança. O sistema começa com poucos usuários confiáveis e então cada usuário confiável pode convidar novos usuários em quem ele confia para o sistema. Dessa forma, o conjunto de usuários cresce como uma rede de confiança: uma árvore enraizada na qual o conjunto de usuários confiáveis inicial é filho da raiz e arestas indicam relações de confiança.

Usar uma rede de confiança dificulta que um adversário se infiltre na base de usuários. No entanto, o problema é que uma vez que a rede é infiltrada, o adversário pode convidar novos adversários para a rede. Para levar isso em conta, nós modificamos a formulação do problema como segue: em vez de exigir que um pequeno número de usuários seja adversário, nós assumimos que um pequeno número de usuários e todos os seus descendentes na rede são adversários. Uma forma alternativa de formular esse problema é considerar redes de confiança capacitadas e assumir que o menor corte da raiz para todos os adversários é no máximo um pequeno número k.

O problema de distribuição de proxy em redes de confiança está ainda sem solução em geral. Temos resultados parciais para pequenos k e no caso capacitado. Os algoritmos são não-triviais e precisam olhar para a estrutura da rede de confiança.

Conclusão

O objetivo desse exercício era convencer o leitor de que existe um problema teórico interessante e desafiante no âmago das tecnologias de violação de censura. Modelos e algoritmos para esse problema estão muito próximos dos que são usados na prática e, logo, há potencial para pesquisa nessa área que pode ter um impacto real nas vidas de milhões de pessoas vivendo sob opressão.


* Mohammad Mahdian é um pesquisador senior do Yahoo Research Lab em Santa Clara, CA. É bacharel em Engenharia da Computação pela Universidade de Tecnologia de Sharif, mestre em Ciência da Computação pela Universidade de Toronto e PhD em Matemática pelo MIT. Seus interesses de pesquisa atuais incluem projeto de algoritmos, economia algorítmica e aplicações em publicidade online e redes sociais.

Capa da XRDS

Este texto foi publicado em inglês na última edição da XRDS (revista da ACM para estudantes), cujo tema é Ciência da Computação a serviço da democracia. No site do autor, há o artigo “Fighting censorship with algorithms” completo em PDF disponível para download gratuito. Ainda não li, mas parece interessante.

Direto do Chile

Os Carabineros, los pacos hijos de Pinochet, saíram à caça. Pegavam qualquer um pelo caminho. Como zombies babando atrás de sangue novo. Corríamos para ajudar uns aos outros. Numa rua distante, sacaram um dos nossos.

(Nathalie Drumond, 25/08/2011)

É bastante raro eu escrever um post no meu blog para recomendar outro. Nem lembro a última vez que fiz isso, mas provavelmente foi na época do 1001 Gatos de Schrödinger. Os relatos da minha amiga Thalie, que está no Chile acompanhando e participando da mobilização dos estudantes e do povo chileno, me intimam a fazê-lo.

É tempo de mudança no mundo. As revoluções árabes inspiraram multidões a irem pras ruas em busca de alternativas mais democráticas (com o povo no poder de fato) à política dos banqueiros e das empresas que impera em todo o planeta. Nossa geração, que cresceu nos anos 90, começou a perceber que o capitalismo não é invencível e vê que a ação coletiva pode produzir mudanças.

O exemplo foi pra vários países vizinhos, seguiu pra Europa (Espanha, Grécia, Islândia, Inglaterra, Portugal, entre outros), até pros Estados Unidos (grande mobilização em Wisconsin no primeiro semestre, que a mídia quase não mostrou) e há mais de dois meses tem grande expressão aqui perto, na América Latina: no Chile.

Protestos no Chile

Como o professor Vladimir Safatle escreveu há duas semanas na Folha de São Paulo: Nessas horas, vale a lição de Maria Antonieta: aqueles que não percebem o fim de um mundo são destruídos com ele. Há momentos na história em que tudo parece acontecer de maneira muito acelerada. Já temos sinais demais de que nosso presente caminha nessa direção. Nada pior do que continuar a agir como se nada de decisivo e novo estivesse acontecendo.

No caso do Chile, a Folha continua agindo como se nada de novo estivesse acontecendo. Em meio a uma greve geral convocada para ontem e hoje, ela noticiou que “Para esta quarta-feira não está previsto qualquer protesto no Chile”. Na verdade, pasmem: a única notícia sobre o Chile que vi na mídia tradicional ontem foi a fusão entre um banco chileno e um de outro local. Procurei por “Chile” na página inicial da Folha Online e o Firefox posicionou meu cursor numa promoção de passagens aéreas.

Nesse prospecto, e aproveitando a facilidade que a internet nos proporciona pra compartilhar em tempo real informações boicotadas por essa velha imprensa, o blog de uma revolucionária que acompanha por dentro tudo o que está acontecendo em Santiago tem um valor inestimável.

O Direto do Chile é, nas palavras da Thalie: uma espécie de diário de bordo da estada no Chile e do rumo das mobilizações. Trata de política, não apenas daquela dos profissionais de gabinete, mas principalmente de uma nova forma de se fazer política que tem despontado neste último período. É sobre a política que move mulheres e homens a tomar as ruas e as praças pelo mundo que trataremos aqui, mais especificamente daquela que está sendo criada e recriada com as mobilizações do Chile. Inspirada pelos dizeres dos niños ao longo das marchas “que se perca o ano letivo, mas não se deixe passar a educação de Pinochet”. Já basta! É tempo de construir o novo e ele está em nossas mãos.

Visita (e divulgação) obrigatória: diretodochile.juntos.org.br

Em defesa dos pseudônimos

Tradução por Tiago Madeira do artigo A case for pseudonyms (29/jul/2011), escrito pela Jillian York (Electronic Frontier Foundation).

pseu·dô·ni·mo

— substantivo nome fictício usado por um autor para ocultar sua identidade

Existem inúmeras razões pelas as quais os indivíduos podem desejar usar um nome diferente daquele com o qual nasceram. Eles podem estar preocupados com ameaças às suas vidas, empregos ou com retaliações políticas ou econômicas. Eles podem querer evitar discriminação ou podem preferir usarem um nome que é mais fácil de pronunciar ou de soletrar em determinada cultura.

Online, as razões se multiplicam. A cultura da internet por muito tempo encorajou o uso de “nomes de usuários”, pseudônimos que podem ou não estarem associados a identidade de uma pessoa fora da rede. Habitantes de longa data do meio virtual podem ter nicknames que já duraram mais de vinte anos.

Discursos pseudônimos tiveram um papel fundamental através da história também. Dos esforços literários de George Eliot e Mark Twain até as defesas políticas de Publius em O Federalista [Federalist Papers, uma série de 85 artigos argumentando para a ratificação da Constituição dos Estados Unidos] ou as cartas de Junius para o Public Advertiser [jornal britânico do século XVIII], o povo contribuiu fortemente para o debate público sob pseudônimos e continua o fazendo até hoje.

Um novo debate em torno do pseudonimato em plataformas online tem surgido como um resultado da política de identificação do Google+, que requer que os usuários se identifiquem pelo “nome que seus amigos, família ou colegas de trabalho geralmente chamam”. Essa política é similar a do Facebook, que exige aos usuários “fornecer nomes e informações reais”. A política do Google em pouquíssimas semanas atraiu significativa atenção da comunidade e de fora dela, provocando o debate sobre se uma plataforma social deve colocar limites na identidade. Um número considerável de usuários do Google+ já experimentou a desativação de suas contas como um resultado dessa política, que Kirrily “Skud” Robert, um ex-funcionário do Google expulso do serviço por se identificar como “Skud”, documentou em detalhes.

Aqueles a favor do uso de “nomes reais” em plataformas sociais apresentaram uma série de argumentos: que os nomes reais melhoram o comportamento dos usuários e criam um ambiente mais civilizado; que os nomes reais ajudam a prevenção contra perseguição e assédio tornando mais fácil ir atrás dos infratores; que uma política de exigir nomes reais impede agentes da lei de entrarem no sistema para espionarem os usuários; que nomes reais fazem os usuários responsáveis por suas ações.

Embora esses argumentos tenham seus méritos, eles ignoram o problema. O dever dos defensores dessas políticas de nomes reais não é mostrar que o uso de nomes reais tem um lado positivo, mas mostrar que esses benefícios superam inconvenientes muito sérios.

Considere, por exemplo, Wael Ghonim, o egípcio (agora famoso) cuja página no Facebook, Somos todos Khaled Said, inspirou milhares a participar dos levantes de janeiro. Embora a página tenha sido criada no verão de 2010, não muito depois da morte de Khaled Said nas mãos dos policiais, não foi até o fim daquele ano que ela começou a ganhar impulso. E, no entanto, sua presença nos protestos quase não aconteceu: em novembro de 2010, a página caiu depois de seu administrador (que agora sabemos que era Ghonim) foi relatado por usar um pseudônimo. O Facebook esteve apto a oferecer uma solução, permitindo uma pessoa “identificada” a substituir Ghonim, mas esse caso foi excepcional, em grande parte devido à capacidade de Ghonim de se conectar ao pessoal do Facebook para resolver o problema. Nem todos têm essas conexões e não há forma de saber quantas pessoas já caíram através das rachaduras, por assim dizer, porque elas não tinham conhecimento sobre como apelar contra a desativação de uma conta. No caso de Ghonim, usar seu nome real teria o colocado num risco considerável. E, embora pseudonimato não ofereça garantias, torna consideravelmente mais difícil para as autoridades identificar ativistas.

Há inúmeras razões pelas as quais um indivíduo pode se sentir mais seguro por se identificar sob um nome diferente do seu nome de nascimento. Adolescentes que se identificam como membros da comunidade LGBT, por exemplo, são regularmente ameaçados online e podem preferir se identificar na internet com um pseudônimo. Indivíduos cujo conjugês trabalham para o governo ou são muito conhecidos, muitas vezes podem querer esconder aspectos de seu próprio estilo de vida e podem se sentir mais seguros operando sob um nome diferente online. Sobreviventes de violência doméstica que precisam não ser encontradas por seus agressores podem querer alterar o seu nome, inteiro ou uma parte. E qualquer pessoa com opiniões políticas impopulares pode optar por não arriscar sua vida por meio da identificação com um pseudônimo.

Como o juiz John Paul Stevens, da Suprema Corte americana, escreveu na decisão do caso McIntyre v. Ohio Elections Comm’n 514 U.S. 334, 357 (1995):

“O anonimato é um escudo contra a tirania da maioria. Assim, exemplifica o propósito por trás da Carta dos Direitos dos EUA e, em particular, da Primeira Emenda, que foi escrita para proteger indivíduos impopulares da retaliação — e suas ideias de serem suprimidas — na mão de uma sociedade intolerante. O direito de permanecer anônimo pode ser abusado quando protege conduta fraudulenta. Mas o discurso político, por sua natureza, terá algumas vezes consequências desagradáveis e, em geral, nossa sociedade atribui maior peso ao valor da liberdade de expressão do que aos perigos do seu uso indevido.”

Assim como usar nomes “reais” pode ter consequências reais, obrigar o uso de nomes “reais” pode também, excluindo da conversa qualquer pessoa que teme retaliação por compartilhar seus pontos de vista. Embora a obrigação de usar nomes reais possa aumentar a “civilidade” da conversa, é quase certamente em detrimento da diversidade.

As blogueiras do Geek Feminism compilaram uma wiki destacando pessoas e grupos prejudicados por uma política de nomes reais, demonstrando as centenas de potenciais razões pela as quais uma pessoa pode querer usar um nome diferente do seu próprio. Embora muitos exemplos da lista demonstram casos de indivíduos em risco que usam um pseudônimo por razões de segurança, há outras importantes razões pelas as quais alguém pode escolher o pseudonimato também.

Um exemplo é Michael Anti, o jornalista chinês cujo nome de nascimento é Jing Zhao. Anti foi expulso do Facebook em janeiro de 2011, presumivelmente depois de alguém relatá-lo por usar um nome diferente do qual ele nasceu. Apesar de ter usado seu pseudônimo por quase uma década (com o qual assinava textos no New York Times e em todo lugar), o Facebook insistiu na aplicação rigorosa de sua política.

No Google+, exemplos similares tem surgido, assim como falsos positivos, levando o Google+ a revisar alguns de seus processos, inclusive deixando de desativar imediatamente as contas, em vez disso mostrando ao usuário um aviso e oferecendo-o a oportunidade de alinhar seu nome com sua política.

No entanto, políticas que requerem nomes “reais” são quase impossíveis de aplicar em larga escala e, como vários exemplos demonstraram, a aplicação tende a ser enviesada contra indivíduos que são muito conhecidos ou têm inimigos, como resultado do mecanismo da comunidade reportar.

É direito das empresas — Google, Facebook ou outra qualquer — criar políticas como acharem melhor para seus serviços. Mas é uma visão curta dessas empresas sugerir que uma política de “nomes reais” cria maior potencial para a civilidade, quando elas a fazem às custas da diversidade e da liberdade de expressão. De fato, esse giro para a elaboração de políticas que requerem nomes “reais” vai ter um efeito inibidor sobre a liberdade de expressão online.

Perdi minha carteira

Perdi minha carteira na última madrugada (08/julho/2011) em São Paulo. Estou escrevendo para que você, caso tenha encontrado ela (e assim chegou no meu site, colocando o meu nome no Google), não ter dúvida: sou eu mesmo. Por favor, entre em contato se for o caso (através dos comentários deste post ou do e-mail tmadeira@gmail.com). Muito obrigado!

Ataque, não: protesto!

por Richard Stallman (Free Software Foundation)

O Stallman escreveu algo parecido com o que eu estava há semanas sentindo necessidade de escrever. Explica por quê tirar sites do ar não requer inteligência, o que é DDoS e o que é botnet. Não chama os manifestantes de moleques como fazem alguns petistas aqui no Brasil e responsabiliza a vigilância, os interesses capitalistas e os governos pelos protestos. Texto muito interessante. Recomendo!

Os protestos online feitos pelo grupo Anonymous são equivalentes a uma manifestação na internet. É um erro classificá-los como atividade de grupos hackers (uso da astúcia brincalhona) ou de crackers (invasão de sistemas de segurança).

O programa que os manifestantes usam, chamado LOIC, já vem pré-configurado, de modo que nenhuma astúcia é necessária para rodá-lo, e ele não invade o sistema de segurança de nenhum computador.

Os manifestantes do Anonymous não tentaram assumir o controle do site da Amazon e nem roubar dados da MasterCard. Eles entram pela porta da frente de uma página, que simplesmente não é capaz de suportar tantos visitantes ao mesmo tempo.

Chamar os protestos organizados por eles de “ataques de negação de serviço” (DDoS) também está errado. Um ataque DDoS propriamente dito é feito por meio de milhares de computadores zumbis. Alguém invade o sistema de segurança destes computadores (com frequência recorrendo a um vírus) e assume remotamente o controle sobre eles, programando-os para formar uma botnet (rede de zumbis, que é um sistema em que computadores aliciados desempenham automaticamente a mesma função) que atende em uníssono às suas ordens (neste caso, a ordem é sobrecarregar um servidor). A diferença é que os manifestantes do Anonymous em geral fizeram eles mesmos que seus próprios computadores participassem do protesto.

A comparação mais adequada seria com as multidões que foram, em dezembro de 2010, protestar diantes das lojas da Topshop (cadeia de varejo de moda no Reino Unido). Aquelas pessoas não invadiram as lojas e nem subtraíram dali nenhuma mercadoria, mas certamente provocaram um grande inconveniente.

Eu não gostaria nem um pouco se minha loja (supondo que eu tivesse uma) fosse alvo de um protesto de grandes proporções. A Amazon e a MasterCard tiveram uma reação parecida, e seus clientes ficaram irritados. As pessoas que tinham a intenção de fazer uma compra na Topshop naquele dia também devem ter ficado incomodadas.

A internet não pode funcionar se os sites forem constantemente bloqueados por multidões, assim como uma cidade não funciona se suas ruas estiverem sempre tomadas por protestos. Mas, antes de declarar seu apoio à repressão dos protestos na internet, pense no motivo de tais protestos: na internet, os usuários não têm direitos.

Como ficou claramente demonstrado no caso do WikiLeaks, devemos suportar sozinhos as consequências daquilo que fazemos na rede.

No mundo físico, temos o direito de publicar e vender livros. Quem quiser impedir a publicação do livro tem de levar o caso a um tribunal. Para criar um site na rede, porém, precisamos da cooperação de uma empresa de concessão de domínios, de um provedor de acesso à internet (ISP) e, com frequência, de uma empresa de hospedagem, e cada um desses elos pode ser individualmente pressionado a cortar o nosso acesso.

Nos Estados Unidos, nenhuma lei exige explicitamente tal precariedade. Em vez disso, ela está encarnada nos contratos que essas empresas estabeleceram como normais, com o nosso consentimento. É como se todos nós morássemos em quartos alugados e os senhorios pudessem despejar qualquer um sem notificação prévia.

A leitura também é feita apesar das consequências. No mundo físico, podemos comprar um livro de maneira anônima, usando dinheiro. Uma vez que ele nos pertença, temos a liberdade de oferecê-lo como presente, emprestá-lo ou vendê-lo a outra pessoa. Temos também a liberdade de guardá-lo. Entretanto, no mundo virtual, os e-readers têm algemas travas digitais que impedem o usuário de oferecer como presente, emprestar ou vender um livro, além das licenças que proíbem tal prática. Em 2009, a Amazon usou as portas dos fundos de seu e-reader para apagar remotamente milhares de cópias de 1984, de George Orwell, de aparelhos Kindle. O Ministério da Verdade foi privatizado.

No mundo físico, temos o direito de pagar em dinheiro e receber em dinheiro — mesmo de modo anônimo. Na internet, só podemos receber dinheiro com a aprovação de organizações como PayPal e MasterCard, e o Estado de vigilância rastreia os pagamentos a todo instante. Leis como a Ata da Economia Digital, que castigam os acusados antes de serem confirmadas as suspeitas, estendem esse padrão de precariedade à conectividade com a internet.

Por meio dos softwares não-livres, aquilo que você faz em seu próprio computador também é controlado pelos outros.

Os sistemas da Microsoft e da Apple contam com algemas digitais — recursos projetados especificamente para restringir a liberdade de ação dos usuários. O uso contínuo de um programa ou recurso também é precário: a Apple manteve uma porta dos fundos no iPhone para poder apagar remotamente aplicativos instalados. Uma porta dos fundos observada no Windows permite que a Microsoft instale alterações no software sem pedir permissão.

Dei início ao movimento do software livre com o objetivo de substituir o software proprietário que controla o usuário por programas que respeitem a liberdade. Com o software livre, podemos ao menos controlar aquilo que os programas fazem em nossos próprios computadores. O programa LOIC, usado pelos manifestantes do Anonymous, é um software livre; em particular, os usuários podem ler seu código fonte e alterá-lo, impossibilitando assim que ele imponha recursos maliciosos como fazem Windows e MacOS.

O Estado americano atual é um nexo de poder para os interesses corporativos. Como ele precisa fingir que serve ao povo, este Estado teme que a verdade seja revelada. Daí decorrem suas campanhas paralelas contra o WikiLeaks: as tentativas de esmagá-lo por meio da precariedade da internet e limitar formalmente a liberdade da imprensa.

Desconectar o WikiLeaks equivale a sitiar manifestantes em uma praça. Ataques preventivos da polícia provocam uma reação; então eles usam os pequenos delitos das pessoas enfurecidas para afastar a atenção dos grandes delitos do Estado. Assim, a Grã-Bretanha deteve o manifestante que se pendurou de uma bandeira, mas não o homem (supostamente um policial) que rachou o crânio de um estudante. Da mesma maneira, os Estados tentam aprisionar os manifestantes do Anonymous, e não os torturadores e assassinos que trabalham para o poder.

No dia em que nossos governos processarem os criminosos de guerra e nos contarem a verdade, o controle das multidões na internet será o mais urgente dos problemas que nos restarão. Será um regozijo se eu testemunhar a chegada deste dia.

Tradução: Augusto Calil (um pouco modificada, porque acredito que o tradutor confundiu software livre com software gratuito em alguns pontos)

© 2005–2020 Tiago Madeira