Cubo mágico

[Atualizado em 2008-04-19.]

Lembra do Cubo Mágico? É um quebra-cabeça tridimensional consistindo em um cubo colorido multi-facetado em 3 fileiras e 3 colunas, todas giratórias, cujo objetivo é embaralhar os cubinhos e depois montar de forma que cada uma das 6 faces fique com seu 9 quadradinhos na mesma cor.

O Cubo Mágico, ou Cubo de Rubik, foi inventado em 1974 pelo escultor e professor de arquitetura húngaro Ernö Rubik. Foi um passatempo bastante popular nos anos 80. Atualmente, tem até versões eletrônicas do cubo para brincar on-line: no site oficial Rubik’s.

Eu tinha um comigo há anos com as cores todas embaralhadas. Tentei solucionar algumas vezes, mas nunca consegui montar mais do que uma face completa. Hoje encontrei o cubo abandonado e resolvi apelar para a maior enciclopédia de todas, a Internet (e o Google!), e não é que com a Solução do Cubo Mágico, por Max Artur (cubomagico.sytes.net; endereços alternativos: www.maxartur2.890m.com, cubomagico.k6.com.br, www30.websamba.com/maxartur), fui seguindo os passos e em menos de uma hora lá estava o meu cubo “resolvido”?

Compreender cada passo e identificar no cubo suas iterações necessárias é o que toma mais tempo, mas uma vez encaminhado, é só seguir os movimentos propostos sem errar. A lógica dos passos da solução proposta é bem clara.

Recomendo também o site Cubo Mágico, do campeão brasileiro Pedro Santos (dica de Renato), rico em métodos e algoritmos com ilustrações animadas (applet), do básico ao avançado.

Posso não ter entendido ainda toda a fabulosa engenhosidade dos movimentos nem saber se existem outras soluções mais diretas, mas… o que importa? A satisfação de ver o cubo solucionado foi boa mesmo assim!

[photopress:cubo_magico1.jpg,full,centered]
[photopress:cubo_magico2.jpg,full,centered]

Existem muitas variantes possíveis de técnicas. Por exemplo, o método básico apresentado por Pedro Santos difere um pouco do de Max Artur. Ambos começam por uma cruz, mas em seguida a proposta de Max Artur é formar T’s laterais completando a camada mediana, enquanto no método de Santos cada T é formado completando a camada mais próxima à face da cruz inicial. Não importa qual técnica você assimile melhor ou prefira, todas levam ao mesmo resultado final.

Enquanto eu fico feliz em montar o Cubo de Rubik, olhe em que ponto estão os mais fanáticos, nestes vídeos do YouTube:

Veja também em um câmera mais próxima: YouTube – Rubik’s Cube Former World Record.

Para saber mais:

Processo judicial eletrônico no Brasil

Após 3 anos e meio tramitando na Comissão de Constituição, Justiça e Cidadania (CCJ) do Senado Federal e mais 6 meses na Comissão equivalente (CCJC) da Câmara dos Deputados, está pronto para ser apreciado em plenário na Câmara o Projeto de Lei 5.828/2001, que dispõe sobre a informatização do processo judicial e dá outras providências.

Na CCJ do Senado, o Projeto de Lei sofreu uma emenda na forma de um Substitutivo, tendo como relatora a Sena. Serys Slhessarenko (PT-MT). O Substitutivo foi aprovado em plenário aos 07/12/2005. De volta à Câmara dos Deputados, o Substitutivo foi submetido à CCJC e sofreu apenas 6 emendas de redação visando maior clareza e rigor de técnica legislativa, em parecer do relator Dep. José Eduardo Cardozo (PT-SP), de 29/06/2006.

Este importante projeto rege o uso de meio eletrônico na tramitação de processos judiciais, comunicação de atos e transmissão de peças processuais. Trata de tópicos como o uso de documentos eletrônicos com assinatura digital no judiciário e uso de Diário da Justiça via portal web para publicações eletrônicas oficiais. Esta lei pode alavancar a Justiça brasileira rumo à era digital do novo milênio, a um nível de agilidade e modernidade sem precedentes.

O judiciário, advogados e toda a sociedade usuária da justiça aguardam ansiosos as definições legais e avanços das discussões e concretizações práticas das medidas para instituir procedimentos judiciais em meio eletrônico.

Até então, a Lei 9.800/1999 — conhecida como “Lei do Fax nos Tribunais” — apenas permitia, às partes e juízes, a utilização de sistema de transmissão de dados e imagens tipo fac-símile ou outro similar, porém exigindo posterior apresentação dos originais (em papel). Conforme artigo do prof. Osmar Brina Corrêa-Lima, em “outro similar” se enquadram também meios eletrônicos via Internet, como o correio eletrônico (e-mail). O fato, contudo, é que os meios eletrônicos eram aceitos apenas como uma facilidade adicional na comunicação de atos processuais, não no uso oficial destes com valor legal e jurídico em substituição ao papel.

Em junho de 2001, era adotada a primeira versão da Medida Provisória nº 2.200, que instituiu a Infra-Estrutura de Chaves Públicas Brasileira — ICP Brasil — como instrumento fundamental de tecnologia, administração e legislação para garantir a autenticidade, a integridade e a validade jurídica de documentos em forma eletrônica. Em 24 de agosto de 2001, foi publicada a segunda revisão que está válida até hoje, a MP 2.200-2, marco que alavancou o uso oficial de documentos eletrônicos no Brasil com validade jurídica.

Na mesma época, a Lei 10.259, de 12 de julho de 2001, que instituiu os Juizados Especiais Federais incluira um pequeno avanço sobre considerar a utilização de meios eletrônicos:

Art. 8º § 2º Os tribunais poderão organizar serviço de intimação das partes e de recepção de petições por meio eletrônico.

Art. 14 § 3º A reunião de juízes domiciliados em cidades diversas será feita pela via eletrônica.

O Art. 2º da Lei nº 11.280/2006, de 16 de fevereiro de 2006, preparou o Código de Processo Civil para o processo eletrônico, definindo o seguinte:

O art. 154 da Lei nº 5.869, de 11 de janeiro de 1973, Código de Processo Civil, passa a vigorar com a seguinte redação:

“Art. 154. …………………………………………………………

Parágrafo único. Os tribunais, no âmbito da respectiva jurisdição, poderão disciplinar a prática e a comunicação oficial dos atos processuais por meios eletrônicos, atendidos os requisitos de autenticidade, integridade, validade jurídica e interoperabilidade da Infra-Estrutura de Chaves Públicas Brasileira – ICP – Brasil.” (NR)

Se você está se informando sobre o assunto, por favor desde já preste atenção a um fato importante: Algumas pessoas vem se referindo ao processo eletrônico indevidamente como “processo virtual”. Mesmo com o uso de meios eletrônicos no processo judicial, ele continua sendo real e concreto. Nunca virtual! Essa era uma preocupação que me incomodava de longa data e felizmente vi que ela faz sentido ao ler o artigo de 27 de dezembro de 2006, do prof. José Carlos de Araújo Almeida Filho, Um erro grave: denominação do “Processo Virtual”.

Para saber mais, eis a seguir uma série de referências relacionadas:

Struts-Layout

O Struts-Layout é um projeto de código livre que provê ferramentas de desenvolvimento Java para web. Baseado em Struts, o projeto visa a criação rápida, fácil e padronizada de interface, com componentes de interação avançados.

Struts-Layout é uma biblioteca de tags para Struts que adiciona recursos como:

  • campo de texto com sugestão automática via AJAX;
  • indicador (asterisco) de obrigatoriedade ao lado de campos texto;
  • date picker, um ícone ao lado de um campo texto, que abre um pop-up de calendário para se escolher uma data e preencher o campo com ela;
  • lista de valores (LOV), um ícone ao lado de um campo com alternativas de preenchimento tabeladas, que abre um pop-up com uma lista de valores para preencher o campo;
  • tabela/lista de registros (datagrid) com: campos editáveis, ordenação por colunas, linhas com cores alternadas, seleção de linhas;
  • lista aninhada (múltiplos níveis);
  • painel com abas (tabbed panel);
  • menu;
  • localizadores “migalha de pão” (breadcrumbs);
  • lista hierárquica em árvore (treeview);
  • aparência amplamente configurável com CSS.

Além disso, o projeto inclui o Struts-Layout Studio, um plugin editor de JSP para o IDE Java Eclipse, com validação de tags Struts e preview gráfico.

Veja imagens de exemplo de páginas web com dos componentes do Struts-Layout, extraídas do demo on-line:

[photopress:struts_layout_datepicker.png,full,centered]
[photopress:struts_layout_lov.png,full,centered]
[photopress:struts_layout_required.png,full,centered]
[photopress:struts_layout_grid.png,full,centered]
[photopress:struts_layout_tabs.png,full,centered]
[photopress:struts_layout_treeview.png,full,centered]

Para saber mais:

Pesquisa de Livros do Google

Hoje foi lançada a Pesquisa de Livros do Google, edição brasileira do serviço Goolge Book Search que oferece a pesquisa em livros, com pesquisa de textos na íntegra e visualização (integral, limitado, extratos ou trechos, dependendo do livro), para que você encontre e descubra livros pesquisando por conteúdo.

Há discussão e controvérsia sobre o projeto da Google para digitalizar livros do mundo todo, visando torná-los mais acessíveis para as pessoas pesquisarem e comprarem, mas certamente representa uma possibilidade fantástica para a registro, integração e divulgação da cultura escrita mundial.

A Pesquisa de Livros (Book Search) foi idealizada em 2002 e lançada em inglês no final de 2004 como “Google Print” – Library Project (Google Imprensa – Projeto Biblioteca). Começou com a adesão de diversas editoras americanas, quatro grandes universidades (Harvard, Michigan, Oxford e Stanford) e a Biblioteca Pública de Nova Iorque, cobrindo assim um acervo estimado em mais de 15 milhões de livros ainda naquele ano de 2004.

O projeto da Google está em sintonia com outros projetos extraordinários de digitalização em progresso pelo mundo, como projeto Memória da América (pela Biblioteca do Congresso dos EUA), Projeto Gutenberg, Projeto Milhão de Livros e Biblioteca Universal (pela Universidade Carnegie Mellon), só para citar alguns.

Para saber mais:

Antivírus contra programas de fraude no Brasil (4)

Após 17 dias acompanhando a detecção de três exemplos de malware (ameaça) pelos 27 antivírus disponíveis no serviço VirusTotal, dou por finalizado os resultados. Hoje o antivírus Avast passou a detectar a primeira ameaça e o Norman a terceira.

Resumo: 10 antivírus detectam atualmente as três ameaças, dois detectam duas; e 7, só uma. 8 antivírus continuaram sem detectar nenhuma das ameaças; são eles: Authentium, eTrust-InoculateIT, F-Prot, Ikarus, Panda, Sophos, TheHacker, VirusBuster.

A relação alfabética atualizada (exclusos os antivírus que não detectaram nenhuma ameaça) fica assim:

  • [3] AntiVir = TR/VB.Downloader.Gen; TR/Banker.Delf.EC; TR/VB.Downloader.Gen
  • [2] Avast = Win32:Downloader-DD; Win32:Banker-ARH; não
  • [3] AVG = Downloader.Generic2.LOK; PSW.Banker2.KYQ; Downloader.Generic2.LNX
  • [3*] BitDefender = Win32.Worm.VB.AR; Generic.Banker.Delf.C095A38D; BehavesLike:Trojan.Downloader
  • [2*] CAT-QuickHeal = (Suspicious) – DNAScan; não; (Suspicious) – DNAScan
  • [1] ClamAV = não; Trojan.Spy.Banker-3994; não
  • [3] DrWeb = Trojan.DownLoader.3176; Trojan.PWS.Banker.4625; Trojan.DownLoader.5921
  • [1] eTrust-Vet = não; Win32/Bancos.EVO; não
  • [3] Ewido = Downloader.VB.ji; Logger.Banker.bsh; Downloader.Banload.ln
  • [3] Fortinet = W32/VB.JI!tr.dldr; Banker.T!tr.pws; W32/Banload.LN!tr.dldr
  • [1*] F-Prot4 = não; não; Possibly a new unknown PE_Virus!Maximus
  • [3] Kaspersky = Trojan-Downloader.Win32.VB.ji; Trojan-Spy.Win32.Banker.bsh; Trojan-Downloader.Win32.Banload.ln
  • [1] McAfee = não; PWS-Banker.gen.t; não
  • [1] Microsoft = não; TrojanSpy:Win32/Banker!A7F5; não
  • [3*] NOD32v2 = a variant of Win32/TrojanDownloader.VB.LP; a variant of Win32/Spy.Banker.AXC; probably unknown NewHeur_PE virus
  • [3*] Norman = W32/Suspicious_U.gen; W32/Banker.AIWR; W32/Banload.GCB
  • [1] Symantec = não; Infostealer.Bancos; não
  • [1] UNA = não; Trojan.Spy.Win32.Banker.501A; não
  • [3] VBA32 = Trojan-Downloader.Win32.VB.ji; Trojan-Spy.Win32.Banker.bsh; Trojan-Downloader.Win32.Banload.ln

O asterisco (*) indica um antivírus que detectou vagamente alguma ameaça (apenas como suspeita ou provável).

Antivírus contra programas de fraude no Brasil (3)

Desde meu artigo de 2 dias atrás, continua melhorando a detecção dos três artefatos que tomei como exemplo pelos diversos antivírus.

Agora, mais quatro antivírus identificaram o primeiro e o terceiro programas malware: AVG, Ewido, Fortinet e VBA32. No caso do Fortinet, ele antes já reportava estes arquivos como “suspeito”, mas agora o antivírus classifica cada ameaça com um nome específico.

Como AVG, Ewido e VBA32 já haviam detectado o segundo artefato, o número de antivírus que detectam as três ameaças passou de 6 para 9, dentre os 27 analisados.

Você aceita?

Há poucos dias, me deparei com o serviço de Atualizações Automáticas do Windows XP instruindo a instalar a atualização denominada “Windows Genuine Advantage Notification (KB905474)” da Microsoft. Essa atualização exige a aceitação de um Contrato de Licença de Usuário Final (EULA) antes da instalação.

Se eu fosse como a grande maioria dos usuários, que clicam “OK” ou “Aceito” em resposta a qualquer janela de mensagem apresentada na tela sem ler nada, eu teria instalado de forma irreversível esse componente, em poucos segundos. Mas eu li o que estava escrito. E fiquei espantado!

O que os programas espiões, ou spyware, fazem? Se instalam sorrateiramente em seu computador, extraem dele informações e enviam para alguém via Internet. Pois bem, este componente da Microsoft pede para ser instalado como uma atualização crítica de segurança do Windows, mas é um programa que identifica um monte de informações do seu computador e, sem muito aviso, envia tudo para a Microsoft e seus parceiros. E este componente sequer permite ser desinstalado depois. E o pior: quando você clica em “Aceito”, tudo isso ocorre supostamente com o seu consentimento.

Os termos da licença e dos demais materiais de divulgação do Windows Genuine Advantage informam que isto ajuda você a verificar se sua cópia do Windows é autêntica e licenciada, mas na verdade esta é uma ação clara e incisiva para ajudar a Microsoft a identificar e combater a pirataria de seu software. Embora seja a mais pura verdade que estão espalhadas pelo mundo milhões de cópias pirata do Windows (e muitos outros softwares) e seja legítimo o direito da Microsoft em se defender desse mal, dizer que isso é uma vantagem para o usuário soa como um exagero com toque de sinismo.

Veja abaixo um extrato do Contrato de Licença de Uso da Microsoft para essa “atualização crítica” Windows Genuine Advantage Notification (KB905474), também conhecida como Notificação do WGA, com partes mais controversas destacadas.

AVISO: Esta atualização da Microsoft irá ajudá-lo a identificar se está executando uma cópia autêntica e devidamente licenciada do Windows XP. […]

Antes de instalar, leia e aceite os termos de licença a seguir. […]

Ao usar este suplemento, você estará aceitando estes termos. Se você não os aceitar, não use este suplemento. […]

1. Aplicação dos termos. […]

2. Propósito do suplemento. Este suplemento atualiza o Windows XP e foi desenvolvido para notificá-lo se está utilizando uma cópia licenciada indevidamente do Windows XP. Para assegurar o uso correto do software devidamente licenciado, este suplemento não pode ser desinstalado.

3. Validação. […]

4. Notificação. Se o suplemento detectar que você não possui uma cópia devidamente licenciada do Windows XP, você irá receber uma notificação e lembretes periódicos para instalar uma cópia devidamente licenciada do Windows XP. […]

5. Serviços de Internet. […] Este suplemento conecta-se a sistemas de computador da Microsoft ou do provedor de serviços pela Internet, conforme descrito a seguir. Em alguns casos, você não receberá um aviso separado quando ele se conectar. […]

6. Informações sobre o computador. Este suplemento utiliza protocolos de Internet, que transmitem à Microsoft as informações do computador, tais como chave do produto Windows XP, número de série do disco rígido, fabricante do computador, versão do sistema operacional, ID do produto Windows XP, informações de BIOS do computador, configuração de local do usuário, versão de idioma do Windows XP, resultado da validação e se a instalação deste suplemento foi concluída corretamente. Determinadas informações derivadas do seu endereço IP, que não podem ser utilizadas para identificá-lo, serão retidas em associação às informações do computador.

7. Uso de informações. […] Poderemos também compartilhar os dados obtidos com terceiros, como fornecedores de hardware e software e aos licenciadores por volume, a fim de ajudá-los a proteger suas chaves de licença.

8. Consentimento para serviços de Internet. Ao usar esse recurso, você concorda com a transmissão e o uso das informações do computador mencionadas anteriormente. a Microsoft não utiliza as informações para identificá-lo ou contatá-lo.

9. Aviso de privacidade. […]

10. Serviços de suporte do suplemento. […]

[photopress:winup04.png,full,centered]

E aí, você aceita?

A Microsoft lançou o programa Windows Genuine Advantage (WGA) em setembro de 2004. Há alguns meses atrás, uma versão piloto (preliminar) do notificador WGA já havia sido lançada como uma atualização automática do Windows XP. O WGA Notification atual é uma versão atualizada, uma vez que os crackers/piratas têm encontrado formas de driblar a verificação. A Notificação WGA piloto podia ser manualmente desinstalada, conforme instruções de suporte da própria Microsoft.

Nos computadores com versão “pirata” do Windows, é exibido um alerta na inicialização (logon) do Windows, avisando que aquela cópia do Windows não é legítima/licenciada. O alerta também é exibido periodicamente por um ícone na área de notificação (bandeja do sistema, ao lado do relógio no canto inferior direito).

A medida causou, obviamente, incômodo aos usuários desatentos com cópia irregular do Windows. Mas também indignou técnicos e profissionais de informática e segurança, pela forma dissimulada e intrusiva como a ferramenta é instalada como uma atualização crítica do Windows, conecta-se diariamente à Microsoft via Internet sem aviso e repassa para terceiros informações detalhadas da configuração do computador. São características condenáveis típicas de programas espiões (spyware).

Para saber mais:

Antivírus contra programas de fraude no Brasil (2)

Em meu artigo 2 semanas atrás, iniciei o acompanhamento da evolução de 3 exemplos de malware (programas maléficos) utilizados em fraudes circulantes no Brasil.

Naquele dia, do total de 27 mecanismos antivírus testados pelo serviço VirusTotal, eram 10 antívirus detectando 1 ou mais das amaças, sendo que apenas 4 haviam dectado todas as três.

Hoje, transcorridas duas semanas (14 dias), a situação está assim:

A primeira triste constatação é que todos os três artefatos continuavam acessíveis (disponíveis para download) na Internet.

Dos 27 antivírus analisados, 6 detectaram as três ameaças, 2 detectaram duas delas, 11 detectaram apenas uma e os outros 8 antivírus continuaram não detectando nenhuma delas. Ou seja, o número de antivírus detectando pelo menos uma das ameaças aumentou de 10 para 19, após duas semanas.

Alguns detectam de forma imprecisa as ameaças (*), apresentando para uma ou mais delas vereditos vagos como “suspeito”, “ameaça desconhecida” ou “provável ameaça”.
O segundo artefato foi o de detecção mais ampla, identificado por 17 antivírus (eram só 5 no primeiro dia), sendo por sinal aquele reconhecido por 10 dos 11 antivírus que só detectaram uma ameaça.

  • [3] DrWeb = Trojan.DownLoader.3176; Trojan.PWS.Banker.4625; Trojan.DownLoader.5921
  • [3] Kaspersky = Trojan-Downloader.Win32.VB.ji; Trojan-Spy.Win32.Banker.bsh; Trojan-Downloader.Win32.Banload.ln
  • [3] AntiVir = TR/VB.Downloader.Gen; TR/Banker.Delf.EC; TR/VB.Downloader.Gen
  • [3*] BitDefender = Win32.Worm.VB.AR; Generic.Banker.Delf.C095A38D; BehavesLike:Trojan.Downloader
  • [3*] NOD32v2 = a variant of Win32/TrojanDownloader.VB.LP; a variant of Win32/Spy.Banker.AXC; probably unknown NewHeur_PE virus
  • [3*] Fortinet = suspicious; Banker.T!tr.pws; suspicious
  • [2*] CAT-QuickHeal = (Suspicious) – DNAScan; não; (Suspicious) – DNAScan
  • [2*] Norman = W32/Suspicious_U.gen; W32/Banker.AIWR; não
  • [1] Avast = não; Win32:Banker-ARH; não
  • [1] AVG = não; PSW.Banker2.KYQ; não
  • [1] ClamAV = não; Trojan.Spy.Banker-3994; não
  • [1] Ewido = não; Logger.Banker.bsh; não
  • [1] eTrust-Vet = não; Win32/Bancos.EVO; não
  • [1] McAfee = não; PWS-Banker.gen.t; não
  • [1] Microsoft = não; TrojanSpy:Win32/Banker!A7F5; não
  • [1] Symantec = não; Infostealer.Bancos; não
  • [1] UNA = não; Trojan.Spy.Win32.Banker.501A; não
  • [1] VBA32 = não; Trojan-Spy.Win32.Banker.bsh; não
  • [1*] F-Prot4 = não; não; Possibly a new unknown PE_Virus!Maximus
  • [0] Authentium
  • [0] eTrust-InoculateIT
  • [0] F-Prot
  • [0] Ikarus
  • [0] Panda
  • [0] Sophos
  • [0] TheHacker
  • [0] VirusBuster

É claro que a pequena amostragem de artefatos não serve de avaliação criteriosa dos 27 antivírus existentes no serviço VirusTotal, mas serve pelo menos como indicativo concreto de que boa parte dos antivírus atuais ainda não está lidando de forma eficaz contra as pragas envolvidas em fraudes on-line do Brasil, incluindo os três antivírus mais populares no mercado brasileiro: AVG, McAfee e Symantec.

Por enquanto, honra ao mérito dos antivírus DrWeb e Kaspersky, que identificaram mais rápida e precisamente as três amaeças tomadas como exemplo. Destaque também para a boa atuação dos antivírus AntiVir, BitDefender, NOD32, Fortinet, CAT-QuickHeal e Norman.

Fraude do dia: "Orçamento"

Olhe aí o serviço YouSendIt.com usado mais uma vez para hospedar uma aplicação maliciosa de fraude.
Desta vez, o tema da fraude é uma suposta solicitação de orçamento comercial.

[photopress:fraude_orcamento.png,full,centered]

No serviço VirusTotal, 12 antivírus detectaram a ameaça:

  • AntiVir = TR/Spy.Banker.Gen
  • AVG = PSW.Banker2.LJJ
  • DrWeb = BACKDOOR.Trojan
  • eTrust-InoculateIT = Win32/Bancos.Variant!Trojan
  • Ewido = Logger.Banbra.gl
  • Fortinet = Spy/Banbra!0917
  • Kaspersky = Trojan-Spy.Win32.Banbra.gl
  • McAfee = PWS-Banker.gen.b
  • NOD32v2 = probably a variant of Win32/Spy.Banker.BIG
  • Norman = W32/Banker.AJYT
  • Panda = Suspicious file
  • UNA = Trojan.Spy.Win32.Banbra.899C

Fraude do dia: "Boticário"

Em clima de Dia dos Pais (que será no próximo domingo dia 13), uma fraude — que já existe há algum tempo — usando o nome do Boticário foi reciclada para circular agora com o título (Assunto) “Promoção dia dos pais”.

[photopress:scam_boticario.png,full,centered]

No endereço real de destino, YouSendIt.com é um serviço público de envio e armazenamento de arquivos em geral. Sem oferecer grande controle ou segurança, este tipo de serviço é muito usado para hospedagem de malware usado em fraudes.

Resultado decepcionante da varredura em VirusTotal.com: do total de 27 antivírus, apenas os seguintes 2 detectaram alguma ameaça:

  • Authentium: could be a corrupted executable file
  • Fortinet: suspicious