Hoje me deparei com um programa interessante: o Paperback, dos mesmos criadores do poderoso debugger Olly Dbg.
Você imprime um bitmap em papel comúm, esse bitmap contém os dados que se desejam salvar. Posteriormente, com um scanner comúm, é possível recuperar os dados.
No site ele deixa bem claro qual a utilidade disso: nenhuma.
A não ser que você consiga imaginar algo útil para se fazer com um programa ilegal impresso em códigos num papel dobrado dentro de um livro passando transparentemente pela alfândega de um País remoto e perigoso…
Segundo os autores, é possível gravar até 3 Megabytes de dados numa única página impressa se a impressora usada tiver boa resolução(600 dpi). O impressionante disso é que 3 Megabytes pode ser um livro inteiro, impresso em uma única página!
Entre as principais melhorias deste filho mais recente do clássico Netscape Navigator está a utilização otimizada de memória. Realmente o Firefox 2 veio a ser muito mais lento que o Firefox 1.0 porque logo no início arrematava centenas de MB de RAM. Tive diversos problemas com o Firefox 2.0 e é bom ver que na versão 3.0 os desenvolvedores Mozilla se preocuparam com esse aspecto. O Firefox 3 consome cerca de 66% menos memória que o Firefox 2.0, o que é surpreendente.
Vindo da Microsoft nós esperaríamos sistemas que devoram cada vez mais memória, mais lentos e que exigem computadores cada vez mais parrudos….
Por falar nisso…..
A Microsoft transformou o termo “Service Pack” em algo que até nossos avós conhecem. Afinal, desde que eles começaram a produzir software que se comunica através da Internet eles lançaram mais remendos do que as Medidas Provisórias de FHC e Lula somadas. Ops, falei em política….assunto proibido aqui!
Uma das bases de trabalho com software livre é “lance desde cedo e lance continuamente” (Release early, release often). Assim as falhas infantís são encontradas pela comunidade enquanto o software é “Alfa” e depois falhas mais sérias são corrigidas enquanto que o software passa para Beta. E no lançamento você tem algo que funciona e pequenos erros vão sendo corrigidos com o tempo. Ninguém diz que software livre não tem bugs, mas certamente no momento do lançamento o software livre lançado e testado desde estágio primário normalmente tem menos bugs que sistemas não testados.
E a base de trabalho da Microsoft? Sistemas megalomaníacos trabalhados durante anos em ambiente fechado e sem qualquer comunicação com o mundo exterior exceto por contratos formais de “Beta Tester”. E quando os sistemas são finalmente lançados eles tem mais furos de segurança, bugs e instabilidade do que o governo do Iraque.
Olha o saudosismo aí gente! Em 1997 a Borland lançou o melhor compilador C++ para DOS, Windows 16 e Windows 32, o Borland C++ 5.02. Até hoje, quando alguém usa o Borland C++ Builder, o compilador que faz todo o serviço pesado é o bom e velho Borland C++ 5(bem, pelo menos até os C++ Builder de uns poucos anos atrás eu tinha certeza que eram iguais). As bibliotecas mudam, o linker muda, mas o compilador continuou o mesmo.

Um fato pouco conhecido: as primeiras versões do BC++ vieram com um programa chamado Resource Workshop que na época do lançamento recebeu pouca atenção.
Anos depois descobririam que as ferramentas que acompanhavam o Borland C++ eram as mais poderosas armas da engenharia reversa! O Resource Workshop tornava possível extrair ícones, texto, imagens e muita informação da estrutura dos programas comerciais o que fez dessa ferramenta uma ameaça aos programadores comerciais da época.
Nas versões posteriores, a Borland retirou o Resource Workshop de seus ambientes de programação(IDE). Assim, a ferramenta virou ítem cobiçado no underground dos crackers e “engenheiros reversos”. Não demorou para que a ferramenta aparecesse online independentemente do compilador Borland.
Outro ítem que provou ser muito popular entre engenheiros reversos foi o Turbo Debugger para Win32 e o Winsight, ambos programas que entravam entre o programa e a máquina e mostravam os detalhes mínimos de seu funcionamento. Usando essas ferramentas foram quebrados mais sistemas anti-pirataria do que com qualquer outra ferramenta da época.
Juntamente com a “geração Borland” chegaram os debugger em nível de kernel como o Microsoft Kernel Debugger que acompanhava o Driver Development Kit e o lendário SoftICE. Depois das ferramentas Borland, o SoftICE foi o maior amigo dos engenheiros reversos até o lançamento do Windows XP. No XP o SoftICE tinha comportamento instável e logo surgiram ferramentas mais práticas, como o Olly Dbg e o Interactive Disassembler IDA Pro criado pelo programador Russo Ilfak Guilfanov.
Para saber mais, procure no Google os mirrors dos tutoriais do mitológico ++ORC, normalmente publicados por um programador chamado Fjalar Ravia, ou Fravia. O site oficial Fravia.com foi tirado do ar, mas existem mirrors online que você pode estudar para saber mais sobre os “anos dourados” da engenharia reversa de software para PC.
Com o Bit Torrent e um pouco de criatividade você ainda encontra todas essas ferramentas para conhecer um pouco mais.
Não estou incentivando a pirataria, mas a Borland não comercializa mais esses compiladores, debuggers e ferramentas e não há versões para avaliação. Então se você gostar das versões obtidas pelo BT, procure comprar uma versão original de alguém que possua!
Dizem os boatos que este foi o único programa comercial que Bill Gates escreveu. O GW-Basic acompanhava o MS-DOS e era a versão em disco do “Basica” cuja tela você vê logo abaixo. Qualquer semelhança é mera coincidência…ou não? Na verdade, não… A versão foi adaptada para várias empresas que compraram a licença da Micro-Soft, entre elas a IBM que incluia o Basica no ROM de seus microcomputadores do inicio dos anos 1980.
Você já tinha se perguntado por que a Microsoft até hoje insiste no Basic como linguagem de integração do Office, do ASP.NET e do Visual Basic quando existem linguagens tão mais elegantes?
A única explicação que encontrei é porque BASIC é xodó do Bill Gates mesmo. E tudo começou com o interpretador que ele escreveu nos anos 1970 e que depois virou essas telas que você vê aí embaixo.
E o GW, o que quer dizer? Pesquisei na Wikipédia e lá não há consenso. Pode significar Gates, William. Ou a versão oficial da Microsoft de que é Gee Whiz BASIC. O mais provável mesmo é que sejam as iniciais de um dos programadores que trabalharam no sistema: Greg Whitten.
GW-BASIC:

Basica:
