Saltar para: Posts [1], Pesquisa [2]

Anders Bateva

Buscando o porquê das coisas em livros de não-ficção.

Anders Bateva

Buscando o porquê das coisas em livros de não-ficção.

Correios: selos de 2019

EditalDataNome

Valor facial

Tiragem

104/fevCentenário do Nascimento do Professor Fernando Figueira

1º Porte Comercial

300.000

221/marSignos do Zodíaco: Áries

1º Porte Não-Comercial

240.000

327/marHomenagem ao Músico e Poeta Renato Russo

2º Porte Comercial

70.000

421/abrSignos do Zodíaco: Touro

1º Porte Não-Comercial

240.000

530/abrCentenário da Sociedade Philatelica Paulista/SPP

R$1,30

20.000

R$1,95

20.000

R$1,30

20.000

621/maiSignos do Zodíaco: Gêmeos

1º Porte Não-Comercial

240.000

729/maiCentenário do Eclipse Solar em Sobral/CE

R$ 2,15

240.000

805/junSérie Mercosul / Meio Ambiente: Diversidade de Fungos

R$ 1,60

240.000

913/junSérie 200 Anos da Independência do Brasil:Bicentenário do Retorno de José Bonifácio aoBrasil

R$ 2,15

180.000

1021/junCentenário do Nascimento do Cantor Nelson Gonçalves

1º Porte Não-Comercial

200.000

1121/junSignos do Zodíaco: Câncer

1º Porte Não-Comercial

240.000

1220/julHomenagem aos Imortais da Academia Brasileira de Letras (ABL):Machado de Assis e Joaquim Nabuco

2º Porte Não-Comercial

120.000

1320/julHomenagem à Chegada do Homem à Lua

R$ 3,75

240.000

1422/julSignos do Zodíaco: Leão

1º Porte Não-Comercial

240.000

1523/julSérie Mulheres Brasileiras que Fizeram História:Elza Soares

1º Porte Comercial

54.000

1601/agoCarimbos do Período Imperial Brasileiro

R$ 8,00

20.000

1715/agoSérie Mulheres Brasileiras que Fizeram História:Hortência

1º Porte Comercial

54.000

1823/agoSignos do Zodíaco: Virgem

1º Porte Não-Comercial

240.000

1923/agoRally dos Sertões

1º Porte Comercial

240.000

2005/setCentenário da Cripta da Catedral Metropolitana NossaSenhora da Assunção e São Paulo / Catedral daSé

1º Porte Não-Comercial

180.000

2119/setSérie Mulheres Brasileiras que Fizeram História:Hebe Camargo

1º Porte Comercial

54.000

2223/setRiqueza da Fauna Brasileira: Cupinzeiro Luminoso,Preguiça-De-Coleira e Mico-Leão-Preto

2º Porte Comercial

300.000

2323/setSignos do Zodíaco: Libra

1º Porte Não-Comercial

240.000

2404/outSérie Mulheres Brasileiras que Fizeram História:Carolina Maria de Jesus

1º Porte Comercial

54.000

2509/outSérie América – UPAEP: Comidas TípicasBrasileiras

1º Porte Comercial

200.000

2623/outSignos do Zodíaco: Escorpião

1º Porte Não-Comercial

240.000

2704/novSérie Mulheres Brasileiras que Fizeram História:Maria da Penha

1º Porte Comercial

54.000

2822/novSignos do Zodíaco: Sagitário

1º Porte Não-Comercial

240.000

2925/novSérie Relações Diplomáticas:Brasil-Suíça

R$ 2,15

240.000

3025/novNatal 2019

1º Porte Comercial

1.200.000

3103/dezSérie Relações Diplomáticas:Brasil-Finlândia – Tapeçaria

R$ 2,15

240.000

3204/dezSérie Mulheres Brasileiras que Fizeram História:Aracy Guimarães Rosa

1º Porte Comercial

54.000

3322/dezSignos do Zodíaco: Capricórnio

1º Porte Não-Comercial

240.000

Licença Creative CommonsO texto deste post de Anders Bateva está licenciado com uma Licença Creative Commons - Atribuição 4.0 Internacional.

Correios: selos de 2018

Emissões de selos em 2018
EditalLançadoNomeValor facialTiragem
2017/dezCânions do BrasilR$2,5550.000
1914/dezAparelhos de Rádio: Modelos AntigosR$1,2550.000
R$1,8550.000
R$1,9550.000
R$2,5550.000
1811/dezCientistas Brasileiros: Cesar Lattes e Joanna DöbereinerR$1,85360.000
1710/dezHomenagem a Nelson MandelaR$2,35360.000
1606/dezNatal 2018: 200 anos da Canção “Noite Feliz” [gomados]R$4,2575.000
Natal 2018: 200 anos da Canção “Noite Feliz” [autoadesivos]1º Porte Não-Comercial1.050.000
1º Porte Comercial1.050.000
1504/dezGuiana: Fauna, Flora e Turismo (Cota Ministerial)R$1,85450.000
13b04/dezSérie Mercosul: Museus Brasileiros – Museu Nacional do Rio de JaneiroR$3,10240.000
1430/novRonald Golias: Humorista Brasileiro1º Porte Não-Comercial510.000
13a23/novSérie Mercosul: Museus Nacionais (1) – 100 anos do Museu de Arte da BahiaR$3,10240.000
1220/novLaços Diplomáticos Brasil-Luxemburgo (Cota Ministerial)R$4,50480.000
1116/dezSérie Relações Diplomáticas: Brasil-Reino Unido – 1968, Lembrança da Visita ao Brasil da Rainha Elizabeth II do Reino UnidoR$1,85360.000
1016/novBalonismoR$4,2550.000
906/novSérie América (UPAEP): Animais de EstimaçãoR$1,55600.000
815/outHistória da Computação Brasileira1º Porte Não-Comercial480.000
7a02/outSérie Relações Diplomáticas Brasil-ÍndiaR$1,85450.000
7b150 anos do Nascimento de Mahatma GandhiR$1,85320.000
614/junCopa do Mundo da FIFA: Rússia 2018R$2,25630.000
516/maiSérie 200 anos da Independência do Brasil: Bicentenário da Aclamação de D. João VI (Cota Ministerial)R$2,05180.000
404/maiHomenagem à Biblioteca PostalR$1,55180.000
302/abrFebre Aftosa (Cota Ministerial)1º Porte Comercial150.000
219/marDefesa Animal (Cota Ministerial)1º Porte Comercial120.000
119/mar8º Fórum Mundial da Água 1º Porte Não-Comercial160.000
Licença Creative CommonsO texto deste post de Anders Bateva está licenciado com uma Licença Creative Commons - Atribuição 4.0 Internacional.

Correios: selos de 2017

Emissões de selos em 2017
EditalLançadoNomeValor facialTiragem
1701/dezIgreja de Estilo BarrocoR$ 2,5550.000
1621/novSérie Relações Diplomáticas Brasil-Chile: Violeta Parra, 100 anosR$3,15600.000
1510/novNatal 2017: Conto de Natal, Soldadinho de Chumbo [gomado]R$ 2,55480.000
Natal 2017: Conto de Natal, Soldadinho de Chumbo [autoadesivo]1º Porte Comercial1.920.000
1407/novSérie Relações Diplomáticas Brasil-Áustria: Bicentenário da vinda de Dona LeopoldinaR$4,20240.000
1326/outObras de William ShakespeareR$4,20300.000
1224/outBrasília, Patrimônio MundialR$2,00300.000
1122/outBicicletas AntigasR$1,25400.000
812/outAparecida, 300 Anos de Fé e Devoção: Jubileu 300 Anos de Bênçãos (1717-2017) [gomado]R$ 3,50120.000
1027/setSérie América/Upaep: Lugares TurísticosR$2,00500.000
922/setFlores da Mata Atlântica [gomados]R$2,55480.000
Flores da Mata Atlântica [autoadesivos]1º Porte Comercial960.000
812/setAparecida, 300 Anos de Fé e Devoção: Jubileu 300 Anos de Bênçãos (1717-2017) [autoadesivo]1º Porte Comercial1.440.000
731/agoBicentenário da Revolução Republicana em PernambucoR$ 1,80180.000
622/ago200 Anos da Cidade de Araraquara1º Porte Comercial180.000
511/agoMonumentos Históricos BrasileirosR$ 1,80540.000
428/julSérie Mercosul: Transporte PúblicoR$ 1,50360.000
323/junCentenário do Samba1º Porte Comercial90.000
219/junAves Brasileiras: Soldadinho-do-araripe, Pararu-espelho e Rolinha-do-planalto [gomados]R$1,25600.000
Aves Brasileiras: Soldadinho-do-araripe, Pararu-espelho e Rolinha-do-planalto [autoadesivos]1º Porte Não-Comercial1.350.000
113/abrEmissão Conjunta Brasil-Alemanha - 500 anos da Reforma LuteranaR$4,15500.000
Licença Creative CommonsO texto deste post de Anders Bateva está licenciado com uma Licença Creative Commons - Atribuição 4.0 Internacional.

Correios: selos de 2016

Emissões de selos em 2016
EditalLançadoNomeValor facialTiragem
2514/dezCentenário do Nascimento de Miguel Arraes1º Porte Comercial300.000
2421/novGeoPark Araripe1º Porte Comercial360.000
2311/novTatuagem: Arte na Pele1º Porte Comercial350.000
2220/outBorboletas BrasileirasR$1,70720.000
1º Porte Comercial320.000
2115/outHomenagem a João do Pulo1º Porte Comercial500.000
2004/outNatal 2016 - Anjo GabrielR$2,40360.000
Natal 2016 - Presépio1º Porte Comercial1.500.000
1922/setMobilidade SustentávelR$1,70480.000
1813/setFundo de Garantia do Tempo de Serviço (FGTS)1º Porte Comercial300.000
1711/setFrutas do Cerrado2º Porte Comercial450.000
1º Porte Comercial
1631/agoAs Bonecas da Mestra Dona Izabel MendesR$ 1,70400.000
1523/agoCentenário da Aviação Naval Brasileira1º Porte Comercial480.000
1412/ago200 anos da Escola de Belas Artes da UFRJR$1,70480.000
1305/agoCelebrações Jogos Paralímpicos Rio 2016R$ 2,65126.000
1205/agoCelebrações Jogos Olímpicos Rio 2016R$ 2,6582.000
1101/agoSérie América: Jogos Rio 2016 – Arenas Esportivas OlímpicasR$ 3,75900.000
Série América: Jogos Rio 2016 – Arenas Esportivas Paralímpicas450.000
1026/julEstrada de Ferro da Serra do Mar Paranaense1º Porte Comercial720.000
927/junNossos Selos Rio 2016 – Jogos Olímpicos e Paralímpicos Rio 20161º Porte Comercial720.000
826/junHomenagem à Seleção Brasileira de Handebol Feminino, Campeã Mundial em 2013R$4,25120.000
721/junSérie Relações Diplomáticas: Brasil – EslovêniaR$3,55600.000
615/junConsumo Consciente de Água e Energia ElétricaR$2,10480.000
503/maiCentenário da Academia Brasileira de Ciências1º Porte Comercial360.000
426/abrLubrapex 2016: A Força da Fraternidade Luso-BrasileiraR$ 3,55120.000
326/marSérie Relações Diplomáticas: Brasil – França 200 Anos da Missão Artística FrancesaR$ 3,55480.000
225/fevSérie Relações Diplomáticas: Brasil – NicaráguaR$ 2,95480.000
112/jan400 anos de Fundação da Cidade de Belém do Pará: Maravilhas de Belém do Pará1º Porte Comercial1.600.000
Licença Creative CommonsO texto deste post de Anders Bateva está licenciado com uma Licença Creative Commons - Atribuição 4.0 Internacional.

Correios: selos de 2015

Até 2014, os selos dos Correios eram destruídos depois de passados 4 anos. Portanto, os anos anteriores são irrelevantes: você só vai achar, nas agências e guichês filatélicos, selos de 2015 em diante.

Emissões de selos em 2015
EditalLançadoNomeValor facialTiragem
2215/dezModalidades Olímpicas Rio 2016R$ 1,406.600.000
1809/novCircuito das Águas de Minas Gerais1º Porte Comercial1.800.000
1715/outVariedades de Pimentas BrasileirasR$1,951.200.000
1601/outNatal 2015 - Abraço1º Porte Não-Comercial3.000.000
Natal 2015 - Presente1º Porte Comercial4.500.000
1516/agoBicentenário do Nascimento de Dom Bosco1º Porte Não-Comercial2.400.000
1406/agoSérie Modalidades Jogos Olímpicos e Paralímpicos Rio 20161º Porte Comercial2.400.000
1330/julSérie América: Luta Contra o Tráfico de PessoasR$ 3,25900.000
110/junSérie Sustentabilidade - Jovem Aprendiz1º Porte Não-ComercialIlimitada
Série Sustentabilidade - Controle de Emissão de CO21º Porte Comercial
1201/junQuadrilhas Juninas: DançaR$ 1,801.800.000
1127/maiSérie Relações Diplomáticas: Brasil – AzerbaijãoR$ 3,45900.000
1022/maiAbelhas Brasileiras Melíponas – Abelhas sem ferrãoR$ 2,50720.000
917/mai150 Anos da UIT, União Internacional de TelecomunicaçõesR$ 3,25600.000
805/mai150 Anos de Nascimento do Marechal Cândido Rondon1º Porte Comercial2.400.000
730/abrSalário Mínimo Digno: Valorize esse Direito!1º Porte Comercial1.800.000
627/abr25 Anos AICEP – Associação Internacional das Comunicações de Expressão PortuguesaR$ 3,15600.000
516/abrJogos Mundiais dos Povos Indígenas, Brasil 20151º Porte Comercial600.000
424/marSérie Modalidades Jogos Olímpicos e Paralímpicos – Rio 20161º Porte Comercial2.400.000
314/marConferência Mundial da ONU sobre Redução de Riscos de Desastres 2015 – Sendai JapãoR$ 1,80912.000
201/mar450 Anos da Cidade do Rio de Janeiro1º Porte Comercial3.528.000
?03/fevWorldSkills São Paulo 2015: Competição Mundial de Educação ProfissionalR$ 3,15600.000
Licença Creative CommonsO texto deste post de Anders Bateva está licenciado com uma Licença Creative Commons - Atribuição 4.0 Internacional.

Debian 9: como instalar TL-WN823N v2 (TP-LINK)

300Mbps Mini Wireless N USB Adapter
Marca: TP-LINK
Modelo: TL-WN823N(EU)
Versão:2.0

Neste tutorial, ensinarei como instalar este dongle USB para wireless no Debian 9. Mas não simplesmente entregar um passo-a-passo, eu quero que você entenda o que está fazendo, e seus conhecimentos expandam-se, consequentemente.

O problema

O manual do produto diz que há suporte oficial para o Linux, pela TP-LINK, porém não existe suporte de verdade pela TP-LINK, e eu penei um bocado para fazê-lo funcionar. Trago então minha solução para você!

O driver oficial, do site da TP-LINK, está obsoleto! O que há ali é o código, a partir do qual você deve compilar (produzir) o driver especificamente para seu sistema, não é só dar 2 cliques. Mas para compilar, você precisa ter o ambiente adequado, isto é, seu sistema tem de possuir algumas características específicas. A característica crucial nesse caso é o kernel do Linux: o site oficial diz que o driver é compatível com as versões 2.6.18 até a 3.10.10. Legal, mas o suporte para a versão 3.10 acabou em novembro de 2017, e já estamos em 2018... O Debian que uso, segundo o comando lsb_release -r é a 9.5, e o kernel, segundo o comando uname -r, é o 4.9.0-7-amd64 (suportado até janeiro de 2019). Então este driver não dá suporte ao Debian 9, apenas versões mais antigas...

Obtendo o firmware

Os repositórios oficiais do Debian 9 incluem o pacote firmware-realtek, que por sua vez inclui o firmware do chipset Realtek rtl8192eu, que é o que está dentro do dongle. Os repositórios do Debian 8 incluem um pacote de mesmo nome (firmware-realtek), que porém, não dá suporte ao chipset em questão (rtl8192eu). Então faça um upgrade do seu sistema, se ainda não estiver usando a versão 9.

Dado que o pacote firmware-realtek não é software livre, é necessário alterar sua lista de repositórios para "tornar visíveis" os pacotes de software proprietário:

  1. em um terminal root, abra a lista de repositórios no editor de texto nano: nano /etc/apt/sources.list;
  2. adicione non-free (com um espaço antes) após cada linha escrita no arquivo;
  3. salve as alterações com ^O (CTRL+O), e depois feche o editor de texto com ^X (CTRL+X);
  4. atualize sua lista de fontes de software com apt update, e instale o firmware com apt install firmware-realtek;
  5. reinicie o computador, para que o firmware seja carregado na próxima inicialização do sistema e entre em ação.

Encontrando redes sem-fio

Após reiniciar, você já deve ser capaz de encontrar as redes sem-fio das redondezas. Por exemplo, se você tiver o network-manager-gnome instalado, o nm-applet (um ícone na barra de aplicativos que exibe informações de rede) deve mostrar-lhe uma lista de redes wireless disponíveis, se você clicar nele. Se você consegue essa geração de lista de redes, você tem o firmware adequado para o seu dongle, e o passo-a-passo anterior teve sucesso em seu objetivo.

Escanear o ar buscando redes sem fio é necessário, mas não suficiente. Tente conectar-se a alguma, mesmo uma sem senha e sem segurança - se não tiver uma assim por perto, você pode configurar seu roteador para tal. O nm-applet roda, roda, mas não conecta? Então ainda tem algo errado.

Conectando-se a redes sem segurança, e WEP

Buscando na internet, vi quais configurações adicionais devem ser feitas:

  1. abra um terminal root;
  2. desabilite o modo de economia de energia do wifi, e também a auto-suspensão do USB com echo "options 8192eu rtw_power_mgnt=0 rtw_enusbss=0" | tee /etc/modprobe.d/8192eu.conf. Estas duas opções geram falha de comunicação do sistema com o dongle;
  3. digite echo "blacklist rtl8xxxu" | tee /etc/modprobe.d/rtl8xxxu.conf;
  4. reinicie o computador. Se ainda assim não funcionar, dê modprobe rtl8xxxu no terminal.

Após configurar o dispositivo assim, tente novamente se conectar a uma rede sem senha e sem segurança, ou com segurança WEP. Conseguiu? Ótimo. Mas e as conexões WPA, WPA2, e WPA-WPA2, funcionam? Se não, siga adiante o tutorial.

Conectando-se a redes WPA, WPA2, e WPA-WPA2

As proteções WPA, WPA2 e WPA-WPA2 são mais recentes que a WEP, já obsoleta devido à falta de segurança. Por isto mesmo, funcionam diferente e exigem configuração adicional.

Conferindo nos logs do sistema (comando nano /var/log/messages como root), constatei que existem quatro "apertos de mão" (4-way handshake) entre o dongle e o roteador sem fio, compondo uma etapa de negociação. É esta etapa que falha e impede e a conexão, registrando no log, após a troca de mensagens "eapol", que a autenticação falhou pela "razão 15". O protocolo do "eapol" é uma inovação das tecnologias WPA e WPA2 (não existiam na WEP). E a razão 15 significa que o handshake estourou o tempo-limite.

O que faz o handshake falhar é a aleatorização do endereço MAC do dongle, pelo que pesquisei. Esse recurso é importante para previnir que clientes wireless sejam identificados pessoalmente quando usarem wifis públicos: a cada conexão, um endereço MAC diferente é usado pelo aparelho, dando certa privacidade. Mas isso não funciona bem com o dongle TL-WN823N(EU) v2.0, e o recurso precisa ser desabilitado. Isso é simples de resolver:

  1. abra um terminal root, e edite o gerenciador de redes no editor de textos nano, com nano /etc/NetworkManager/NetworkManager.conf;
  2. adicione as linhas ao arquivo:[device]wifi.scan-rand-mac-address=no
  3. salve as alterações com ^O (CTRL+O), e depois feche o editor de texto com ^X (CTRL+X);
  4. reinicie o computador.

Voilà! Resolvido. Agora o dongle deve funcionar perfeitamente. Se para você, ainda assim não estiver dando certo, deixe um comentário neste post explicando o que deu errado, e talvez eu possa lhe ajudar.

Licença Creative CommonsO texto deste post de Anders Bateva está licenciado com uma Licença Creative Commons - Atribuição 4.0 Internacional.

O Google, apresentado por Sergey Brin e Lawrence Page

Artigo em que os fundadores do Google apresentaram seu protótipo, em 1998. Explicam quais eram os problemas dos mecanismos de busca da época, e como se propunham a resolvê-lo, principalmente com o algoritmo PageRank. Também, considerações sobre o modelo de negócios baseado em propagandas, e que complicações podem surgir do funcionamento de um web crawler.

The Anatomy of a Large-Scale Hypertextual Web Search Engine - Sergey Brin e Lawrence Page
Universidade de Stanford - 1998

Neste artigo, nós apresentamos o Google, um protótipo de um mecanismo de busca de larga-escala que faz uso pesado da estrutura presente no hypertexto. O Google foi projetado para fazer crawling e indexar a Web eficientemente, e produzir resultados de busca muito mais satisfatórios do quê os sistemas existentes. O protótipo, com um texto completo e banco de dados de hyperlinks com pelo menos 24 milhões de páginas, está disponível em http://google.stanford.edu/ . 
— trecho do Resumo.

Já deu pra sentir a relevância do artigo? Simplesmente é o artigo acadêmico onde os fundadores do Google apresentam este projeto da universidade deles como atividade do curso que faziam. Abaixo, resumo o que é apresentado no texto. Não me preocupei em resumir a Seção 4 "Anatomia do Google", pois são detalhes de funcionamento interno que não são exatamente relevantes para o usuário normal.

Dados: o banco de dados de 24 milhões de páginas requeria apenas 147GB de espaço em disco, ou 53,5GB quando comprimido - o que já era barato na época. Foi gerado em aproximadamente 9 dias (incluindo todo o tipo de erro que atrasou o processo). O total de links em 24 milhões de páginas era 322 milhões.


Problemas na época:

  • as pessoas usam listas de sites (como o Yahoo!) cuja manutenção é humana, e por isso são subjetivas, caras de construir e manter, lentas de melhorar, e não podem cobrir todos os tópicos "exotéricos";
  • mecanismos de busca automatizados que baseiam-se em palavras-chave normalmente retornam muitos resultados de baixíssima qualidade, e anunciantes tomam medidas para enganar esses mecanismos e ganhar a atenção das pessoas.
Por exemplo, nós vimos um grande mecanismo de busca retornar uma página contendo apenas "Bill Clinton é ruim" e uma foto, a partir de uma busca por "Bill Clinton". Alguns argumentam que, na web, os usuários deveriam especificar com maior precisão o que eles querem, e adicionar mais palavras a suas buscas. Nós discordamos veementemente desta posição. Se um usuário realizar uma busca tal como "Bill Clinton", ele deveria receber resultados razoáveis, dada a existência de enorme quantia de informação de alta qualidade disponível sobre este assuntos. Considerando exemplos como esse, nós acreditamos que o trabalho padrão de recuperação de informação precisa ser extendido para lidar efetivamente com a web. 
—Seção 3.1: Recuperação de Informação.

Soluções do Google:

  • PageRank: dá uma pontuação de qualidade para cada página web baseado na estrutura de links;
  • links são utilizados para melhorar resultados de busca.

PageRank

O gráfico de citações (links) da web foi considerado importante por Sergey Brin e Lawrence Page, e era algo largamente não-utilizado. Tais mapas de links entre as páginas permitem o cálculo do PageRank, uma medida objetiva da importância de citação, que corresponde bem, disseram eles, com a ideia subjetiva de importância que as pessoas têm. Isso permitia ao PageRank priorizar bem as buscas por palavras-chave, comparado ao que havia na época: em assuntos mais populares, uma simples busca por coincidência de texto nos títulos das páginas gera bons resultados. E também ajuda muito em buscas por texto completo das páginas, tal como no Google.

O PageRank pega o conceito de citação acadêmica (aonde um artigo menciona o outro como referência), e expande para a web. Porém, de forma diferente, as citações não têm todas o mesmo valor: é feita uma relação entre o número de citações feitas para a página, e o número de citações que a página fez, e isso determina o valor de cada citação.

Por exemplo, compare a informação de uso de uma grande página inicial, como a do Yahoo, que atualmente recebe milhões de visualizações a cada dia, com um artigo histórico obscuro que pode receber uma visualização a cada 10 anos. Claramente, estes dois itens devem ser tratados bem diferentemente por um mecanismo de busca. 
—Seção 3.2: Diferenças Entre a Web e Coleções Bem-Controladas.

A fórmula usada pelo PageRank foi apresentada assim:

PR(A) = (1-d) + d (PR(T1)/C(T1) + ... + PR(Tn)/C(Tn))

A ideia é que o PageRank seja um modelo de comportamento de usuário: o PageRank (PR) é a probabilidade de um surfista web aleatório visite uma página, e o fator "dampening" seria a probabilidade deste surfista aleatório, em cada página, se entediar e requisitar outra página aleatória. Uma variação seria adicionar esse fator "d" a uma única página, ou um grupo de páginas, permitindo personalização e tornando "praticamente impossível" que alguém deliberadamente engane o sistema para ganhar um ranking mais alto.

Dado: calcular o PageRank de 26 milhões de páginas podia ser feito em poucas horas com uma workstation de tamanho médio.

Links

Links dão descrições melhores da página para a qual levam, do quê as próprias páginas dariam de si mesmas. Também, links permitem indexar conteúdos que normalmente não poderiam sê-lo por mecanismos de busca textuais, como imagens, programas, e bancos de dados.

Copiando a Web

Rodar um web crawler é uma tarefa desafiadora. Há problemas capciosos de desempenho e confiabilidade, e mais importantemente, há problemas sociais. Crawling é a aplicação mais frágil, dado que envolve interagir com centenas de milhares de servidores web, e vários servidores de nomes de domínio, estando todos além do controle do sistema.

[...]

Ocorre que rodar um crawler que conecta-se a mais de meio milhão de servidores, e gera dezenas de milhares de entradas de log, gera uma boa quantia de e-mails e chamadas telefônicas. Por conta do vasto número de pessoas vindo à linha, há sempre aquelas que não sabem o que um crawler é, pois este é o primeiro que viram. Quase que diariamente, nós recebemos um e-mail como "Uau, você olhou um bocado de páginas no meu website. Que achou dele?". Há também algumas pessoas que não conhecem o protocolo de exclusão de robôs, e pensam que suas páginas devem estar protegidas de serem indexadas por conta de uma declaração como "Esta página é protegida por copyright e não deve ser indexada", o que, não é nem necessário dizer, é difícil para web crawlers entenderem. [...] Uma vez que sistemas grandes e complexos como crawlers irão invariavelmente causar problemas, é preciso haver significantes recursos dedicados a ler os e-mails e solucionar estes problemas conforme apareçam.

— Seção 4.3: Rodando um Web Crawler.

Propaganda e conflitos de interesse

Atualmente, o modelo de negócios predominante para mecanismos de busca comerciais é a propaganda. Os objetivos do modelo de negócios de propaganda não sempre corresponde a prover busca de qualidade para os usuários. Por exemplo, em nosso mecanismo de busca prototípico, um dos principais resultados para uma busca por "telefone celular" é "O Efeito do Uso de Telefone Celular Sobre a Atenção dos Motoristas", um estudo que explica em grande detalhe as distrações e riscos associados com conversar num celular enquanto dirige. Este resultado de busca veio em primeiro, devido à sua alta importância conforme julgada pelo algoritmo PageRank, uma aproximação da importância de citação na web. É claro que um mecanismo de busca que estivesse recebendo dinheiro para exibir propagandas de telefones celulares teria dificuldade em justificar a página que nosso sistema retornou, para os seus anunciadores pagantes. Por este tipo de razão, e experiência história com outra mídia, nós expectamos que mecanismos de busca financiados por propagandas serão inerentemente enviesados rumo aos anunciantes, e distante das necessidades dos consumidores.

Dado que é bem difícil, mesmo para especialistas, avaliar mecanismos de busca, o viés de mecanismos de busca é particulamente insidioso. Um bom exemplo foi o OpenText, que reportadamente vendia a companhias o ireito de ser listada no topo de resultados de busca para pesquisas específicas. Este tipo de viés é muito mais insidioso do quê a propaganda, pois não é claro quem "merece" estar ali, e quem está disposto a pagar dinheiro para ser listado. Este modelo de negócios resultou em uma revolta, e o OpenText deixou de ser um mecanismo de busca viável. Mas, vieses menos gritantes têm a probabilidade de serem tolerados pelo mercado. Por exemplo, um mecanismo de busca poderia adicionar um pequeno fator para resultados de busca de companhias "amigáveis", e subtrair um fator de resultados dos competidores. Este tipo de viés é bem difícil de detectar, mas poderia ainda assim ter um efeito significativo no mercado. Além disto, faturamentos de propaganda com frequência provêem um incentivo para prover resultados de busca de má qualidade. Por exemplo, nós notamos que um grande mecanismo de busca não retornava a página inicial de uma companhia aérea quando o nome desta companhia era inserido numa busca. Aconteceu então que a companhia aérea colocou uma propaganda cara, linkada à busca que consistia de seu nome. Um mecanismo de busca melhor não iria requerer esta propaganda, e possivelmente resultaria em perda de rendimentos da companhia aérea para o mecanismo de busca. No geral, poderia ser argumentado que, do ponto de vista do consumidor, quão melhor for o mecanismo de busca, tanto menos propagandas serão necessárias para o consumidor encontrar o que ele deseja. Isto, é claro, erode o modelo de negócio suportado por propagandas dos mecanismos de busca existentes. Entretanto, sempre haverá dinheiro dos anunciantes que querem que um cliente mude de produtos, ou tenha algo que é genuinamente novo. Mas nós acreditamos que o problema da propaganda causa conflito de interesses o bastante para que seja crucial ter um mecanismo de busca competitivo que seja transparente e no âmbito acadêmico. 

— Apêndice A.

Urna eletrônica: o voto é secreto mesmo?

Este post consiste de um resumo do artigo a seguir:

Vulnerabilidades no software da urna eletrônica brasileira – Diego F. Aranha, Marcelo Monte Karam, André de Miranda, Felipe Scarel
Universidade de Brasília – 2013

O artigo detalha as conclusões e experimentos feitos pelo grupo, que participou da 2ª edição de Testes Públicos de Segurança da urna eletrônica, evento organizado pelo TSE em 2012.

Durante o evento, foram detectadas vulnerabilidades no software que permitiram a recuperação em ordem dos votos computados. Apresentamos cenários onde as vulnerabilidades permitem a possibilidade de fraude eleitoral e sugestões para se restaurar a segurançaa dos mecanismos afetados.

Este post sobre o artigo foi feito depois o estudo ter sido mencionado em uma palestra do Diego Aranha na CryptoRave 2014, já publicada aqui; daí que fiquei sabendo da existência da publicação. Busquei assim poder pegar, e dar, mais informações sobre o que foi dito naquela ocasião.

Limitações do estudo

Os experimentos foram feitos apenas em software pois os autores do artigo não são especialistas em hardware; também, foram feitos testes apenas em uma pequena parte do código-fonte da urna (durante 5 horas), e excluindo qualquer sistema externo à urna em si (como o totalizador de votos, que soma os votos das urnas), devido a limitações nas regras do evento (até mesmo a formatação como competição), e na disponibilidade de tempo dos autores do artigo. Essas limitações acabaram por permitir que a equipe que publicou o artigo só pudesse testar a identificação do voto do eleitor, e não a possibilidade do voto dado poder ser fraudado (adulterado), como pretendiam.

Sem a possibilidade de se efetuar testes extensos e sem qualquer tipo de restrição, seguindo metodologia cientı́fica, não é possı́vel afirmar que o formato atual do evento colabora significativamente para o incremento da segurança da urna eletrônica. Permite apenas encontrar vulnerabilidades pontuais que permitam ataques de fácil execução, mas com efeitos limitados.

Seção "Resumo"

Já na seção "resumo" do artigo, apresenta-se aproximadamente isto:

  • sigilo fraco do voto: é fácil quebrar o sigilo, ou seja, colocar os votos computados em ordem, permitindo então saber quem votou em quem. Basta ter o resultado público da votação e um acesso mínimo ao código-fonte da urna, aos quais os partidos têm acesso;
  • criptografia sem grande utilidade: a chave criptográfica da urna está na própria urna, em uma parte sem criptografia, e a mesma chave criptográfica é usada para TODAS as urnas do país;
  • hash obsoleto: o algoritmo que gera o hash criptográfico (SHA-1) não deveria ser usado há 6 anos (ou seja, desde 2006), pois já foi avisado que ele não tem segurança suficiente;
  • vulnerável a atacantes internos: o modelo de segurança é focado em ataques externos, mas quem gera mais risco é quem está dentro do esquema de votação;
  • processo de desenvolvimento mal-feito: falhas podem ser inseridas, acidentalmente ou propositalmente, devido a práticas inseguras no desenvolvimento;
  • auto-verificação de integridade: a urna verifica a si mesma para saber se foi adulterada, sendo que, se foi adulterada, o próprio sistema de verificação estaria comprometido. Era necessário ter verificão externa! De qualquer forma, essa verificação só serve para dar certeza de que o programa veio do TSE, não que os milhões de linhas de código funcionam como deveria.
pode-se observar de antemão que vários dos recursos implementados no software da urna eletrônica não representam mecanismos de segurança, mas apenas de ofuscação, não resistindo a colaboradores internos ou atacantes persistentes. Como vários dos problemas encontrados resultam de falhas arquiteturais ou premissas inadequadas de projeto, é improvável que a intervenção pontual em algumas dessas questões resolva as causas fundamentais para a sua ocorrência.

O sigilo do voto

Os testes feitos pela equipe conseguiram pôr na ordem de votação os 950 votos (vereador e prefeito) de 475 eleitores fictícios usados no teste.

Registrar os votos inseridos pelo eleitor de forma desordenada é um procedimento crı́tico para se proteger o sigilo do voto. Fica claro, portanto, que a metodologia da equipe permitiu derrotar o único mecanismo utilizado pela urna eletrônica para proteger o sigilo do voto.

Esse tipo de vulnerabilidade não deixa rastro ou vestígio ao ser abusada, pois não é preciso abrir a urna eletrônica e adulterá-la, basta usar os produtos públicos da votação... Mas não é dada a identidade dos eleitores diretamente, apenas a ordem do voto. As identidades de quem votou precisariam ser adquiridas externamente, para ser feita a correlação. Numa situação de voto de cabresto, em que um agente coloque as pessoas em uma ordem específica, por exemplo, dá pra verificar quem votou em quem.

O problema parte do Registro Digital de Voto (RDV), uma tabela com colunas para os cargos que armazena os números dos candidatos votados, mas fora da ordem de voto. Em 2002, foi instituída a impressão do voto, para permitir a verificação do voto em relação ao sistema eletrônico, mas em 2003 foi extinguido, e trocado pelo RDV. O RDV existe para permitir verificar que o Boletim de Urna (BU), que entrega o resultado parcial da urna, está certo, mas isso é inútil, pois é o mesmo software que gera tanto o BU quanto o RDV, e por isso a adulteração do programa alteraria ambos os "documentos". Além disso, se implementado errado, permite quebrar o sigilo do voto!

Com a adoção do voto impresso pela Índia, o Brasil permanece como o único paı́s no mundo a adotar sistema de votação sem verificação independente de resultados.

Números aleatórios

Um bom embaralhamento dos resultados, ou seja, um suficientemente aleatório, precisa de rigor criptográfico, e o desenvolvedor precisa de suficiente entendimento de Segurança Computacional para poder perceber isto e fazer certo. O que ocorre é que a urna usa números pseudo-aleatórios, e além disso foi decidido usar o geramento padrão da linguagem C: rand()/srand()! Esse processo de geração não tem qualidade criptográfica, aceita apenas sementes muito curtas, de até 32-bit. Além disso, a semente é simplesmente a combinação hora, minuto e segundo obtida pela função time(), que pega a representação Unix do calendário UTC.

O calendário UTC é um fuso horário que a Era Unix segue, e essa contagem da era é feita em segundos desde o seu começo, representados em um valor de 32-bit (exemplo: 1466404014).

Como o sistema de votação tem que ser ligado entre as 7AM e as 8AM, isso dá 3600s de variação máxima, então 3600 valores diferentes de semente (dia, mês, ano obviamente já são conhecidos por todos, se não, como as pessoas iriam até a urna votar?). Para completar, a semente é publicada no LOG (público para os partidos ao fim da eleição) e na zerésima (imediatamente pública), essa sendo a "comprovação" de que há zero votos na urna no começo da eleição.

Ou seja, qualquer um que pegue a zerésima (pública) saberá a hora, e portanto a semente de geração de números pseudo-aleatórios, e poderá assim determinar a ordem certa dos votos. Tanto o LOG quanto a zerésima são assinados digitalmente, e à mão pelos fiscais, então fica confirmado: 'os números são embaralhados seguindo essa semente!'. O padrão de posições vazias no RDV, mais o total (público) de eleitores que compareceram à votação, permite comparar o resultado da geração de números aleatórios, vendo se coincidem os espaços vazios, ou seja, se foi deduzido certo.

Solução

A forma mais segura para se efetuar a correção é substituir o gerador pseudo-aleatório atualmente utilizado por outro gerador pseudo-aleatório com propriedades estatı́sticas superiores. Exemplos de geradores assim são documentados em padrões e podem ser encontrados em bibliotecas criptográficas de uso geral.

Esse gerador pseudo-aleatório melhorado apenas precisaria de uma semente mais segura, i.e. não algo que está impresso e divulgado em todo lado. Para resultados realmente aleatórios, seria preciso um gerador em hardware, que depende de algum processo físico conhecido. Nada demais também, os modelos de urna fabricados de 2009 em diante já têm uma CPU AMD Geode que faz isto! Note-se que isso não extingue a necessidade de testes para essas soluções também...

VeraCrypt: é possível quebrar a segurança pela memória RAM?

Este post consiste de um resumo do artigo a seguir:

ANÁLISE DA MEMÓRIA DE ACESSO RANDÔMICO: ARQUIVOS MAPEADOS PELO VERACRYPT - Anderson Luís Moreira
Universidade Católica de Brasília - 2015


O VeraCrypt é um sistema de software para a criação e manutenção de volumes criptografados (containers) on-the-fly-encrypted. Ou seja, os dados são criptografados automaticamente antes de serem salvos e decodificados logo após serem carregados, sem intervenção do usuário. Nenhum dado armazenado em um container pode ser lido (descriptografado) sem a utilização das chaves de criptografia corretas, como senha e key-file(s) este último se existir. O software criptografa o sistema de arquivo inteiro, como por exemplo: Nomes de arquivos, nomes de pastas, o conteúdo de cada arquivo, espaço livre, metadados, etc. Os arquivos são automaticamente descriptografados (em memória / RAM) enquanto são lidos ou copiados. Da mesma forma, os arquivos que estão sendo gravados ou copiados para o container VeraCrypt são automaticamente criptografados on-the-fly (antes de serem escritos no disco) na RAM.
— Anderson Luís

O artigo visa analisar se é possível pegar as chaves criptográficas dos containers criados pelo VeraCrypt enquanto este programa está em execução, afinal, a memória RAM (memória temporária volátil) é o único local onde não há criptografia dos dados manipulados pelo programa enquanto ele está em execução. Após ser finalizado, os dados que estavam na RAM podem ser apagados (aleatoriamente) e aí restariam apenas os dados criptografados no disco rígido. Em outros termos, a memória RAM parece ser o ponto mais fraco de todo o processo.

Para copiar a memória RAM do computador periciado, foi usado o programa DumpIt (para Windows), e para copiar uma imagem do disco, o software dcfldd (para UNIX e similares) - criado pelo Laboratório de Forênsica Computacional do Departamento de Defesa dos EUA. Para analisar a memória RAM, foi usado o programa forense código-aberto Volatility. O processo foi feito 4 vezes, para garantir um padrão no funcionamento do VeraCrypt.

De forma relativamente simples, as keyfiles do volume criptografado foram encontradas, com base em comparação de datas de acesso a arquivos e execução de programas - lembrando que isso apenas porquê esses registros foram tirados diretamente da memória RAM - . As keyfiles, conforme a documentação própria do VeraCrypt, são arquivos que, usados em combinação com as senhas, provêem mais segurança à criptografia, pois sem os arquivos certos não é possível montar o volume. Tendo o realizador do estudo encontrado as keyfiles, pôde montar o volume.

Porém, para de fato acessar o volume, é preciso saber também a senha! A senha não é guardada em forma pura, como texto simples, mas como hash. Ou seja, estão codificadas de uma maneira "praticamente impossível" de reverter, só sendo usável se o usuário digitar a mesma senha no programa, este gerar o mesmo hash, comparar com o hash guardado e eles coincidirem. O desenvolvedor do estudo tentou encontrá-la na memória RAM, onde ficaria armazenada, mas observou que o VeraCrypt em particular tem o devido cuidado de sobrescrever esses dados, impedindo que a senha pura ou os hashes sejam encontráveis nesse tipo de análise posterior.

Dentre os fatores que a equipe de desenvolvimento do VeraCrypt se propôs a melhorar [em relação ao TrueCrypt], o tratamento dos dados armazenados temporariamente na memória RAM foi um ponto de fundamental importância para o presente artigo.
— Anderson Luís

A única alternativa a encontrar a senha ou hash seria quebrá-la na força bruta (tentativas sucessivas exaustivas), mas o uso de derivação de chaves torna isso imprático... se o usuário seguiu a boa prática de usar senha adequada. Se a senha for fraca, ainda pode ser possível! Mas é tema para outros estudos...


Você tem interesse por segurança da informação?Então confira também os outros posts sobre este tema!

Licença Creative CommonsO texto deste post de Anders Bateva está licenciado com uma Licença Creative Commons - Atribuição 4.0 Internacional.

Wikipédia - maior caso de corrupção desvendado: "Esquema Quintinense"

Em março desse ano saiu o resultado da longa e intensa investigação do Esquema Quintinense, considerado pelos verificadores (investigadores) da Wikipédia como um dos mais graves e escabrosos casos de corrupção, formação de conluio, troca de favores e meatpuppetry da história da Wikipédia lusófona. Esse Esquema foi delatado por Raimundo57br, um dos envolvidos, em janeiro, alegando que o Quintinense usou-o e depois o descartou.

Quintinense é um usuário fantocheiro banido indefinidamente em 2010 por fraude processual, devido ao seu uso de contas falsas (fantoches) para ganhar votações inchando artificialmente o número de opositores à eliminação de artigos de seu interesse (escolas de samba, espécies de Pokémon...). Posteriormente, passou a fazer alterações das mais diversas nas políticas e decisões da Wikipédia, tentando direcionar o projeto sozinho, o que vai contra o espírito colaborativo do mesmo.

Meatpuppetry: um tipo de fantocharia que consiste do uso de contas de outras pessoas para passar a agenda do fantocheiro.

Foram identificadas 10 contas comprometidas:

  1. Raimundo57br: réu confesso, mantido o filtro no domínio Wikipédia (impedimento de editar nas páginas que decidem o rumo do projeto);
  2. Matheus Faria (ex-administrador): réu confesso, banido indefinidamente. Depois de chegar ao cargo, devido a estreitas relações com outro fantoche do Quintinense, Maria Madalena, um sockpuppet (conta mantida pelo próprio fantocheiro), emprestou sua conta para o Q. Quando viu o que se passava, renunciou o cargo e abandonou o projeto;
  3. Mário Henrique (ex-administrador): suspeito de ser meatpuppetry (conta que não pertence ao fantocheiro, mas que "faz favores", passa a agenda dele), banido indefinidamente após análise comportamental ser discutida com a comunidade;
  4. Richard Melo da Silva (eliminador): suspeito de meatpuppetry, banido indefinidamente após análise comportamental ser discutida com a comunidade;
  5. Gusta (eliminador): réu confesso, a conta foi compartilhada (meatpuppetry) com o Q através de seu fantoche sockpuppet Maria Madalena;
  6. Maria Madalena (ex-eliminadora): operadora do Esquema juntamente com o Q. Suspeitava-se de ser sockpuppet (conta do próprio Q), mas não há evidências técnicas, bem como não há evidências comportamentais para declará-la meatpuppet (conta emprestada). Foi banida indefinidamente por agir de má-fé (operando o Esquema) e usar sockpuppets (as contas que emprestaram para ela);
  7. Mar França: fantoche (meatpuppet) óbvio de longa data, cujo único objetivo era ditar os rumos do projeto. Foi recrutado fora da Wikipédia para defender a agenda do Q. Banido indefinidamente;
  8. Onjacktallcuca: bloqueado em infinito por meatpuppetry, conforme análise comportamental;
  9. SANDRO NUNES COUTO: bloqueado indefinidamente por meatpuppetry, novato possivelmente aliciado;
  10. Tut - Caçador de Vândalos: sockpuppet confirmado por investigação técnica.

Há mais usuários suspeitos, mas sem provas suficientes para que alguma ação contra eles seja tomada.

Arquivo anual

2012-2014: posts não mantiveram-se

Etiquetas / Assuntos

Nuvem de tags

Subscrever por e-mail

A subscrição é anónima e gera, no máximo, um e-mail por dia.