Bomba-relógio (software)

Em software de computador, bomba-relógio faz parte de um programa de computador que foi escrito para que comece ou pare de funcionar após uma data ou hora predeterminada. O termo "bomba-relógio" não se refere a um programa que para de funcionar em um número específico de dias após a instalação, para esse tipo de programa, é utilizado o termo "trialware". Bombas-relógio são comumente usadas em software beta (pré-lançamento) quando o fabricante do software não deseja que a versão beta seja usada após a data da versão final. Um exemplo de software de bomba-relógio seria o Windows Vista Beta 2 da Microsoft, programado para expirar em 31 de maio de 2007.[1] Os limites de tempo para o software de bomba-relógio geralmente não são tão rigorosamente aplicados quanto para o software de avaliação, pois o software de bomba-relógio geralmente não implementa funções de relógio seguro.

História editar

O primeiro uso de uma bomba-relógio em software pode ter sido com a linguagem de marcação Scribe e o sistema de processamento de texto, desenvolvido por Brian Reid. Reid vendeu o Scribe para uma empresa de software chamada Unilogic (mais tarde renomeada para Scribe Systems [2]) e concordou em inserir um conjunto de funções dependentes do tempo (chamadas "bombas de tempo") que desativariam versões livremente copiadas do programa após um período de expiração de 90 dias. Para evitar a desativação, os usuários pagaram à empresa de software, que então emitiu um código que desativava o recurso interno da bomba-relógio.[3]

Richard Stallman viu isso como uma traição ao ethos do programador. Em vez de honrar a noção de compartilhamento, Reid havia inserido uma maneira de as empresas obrigarem os programadores a pagar pelo acesso à informação[4] (veja os Eventos que levaram ao GNU).

Comparação de bombas lógicas e bombas de bifurcação editar

As principais diferenças entre bombas lógicas e bombas-relógio é que uma bomba lógica pode ter uma função de tempo implementada como uma segurança contra falhas se as condições não forem atendidas em um determinado período de tempo (ela pode se excluir ou ativar sua carga útil usando o sistema de tempo), enquanto as bombas-relógio usam apenas funções de tempo para se (des)ativarem. As bombas-relógio, uma vez ativadas, descarregam sua carga útil (o que pode ser malicioso) da mesma maneira que as bombas lógicas entregam suas cargas úteis ao alvo. A principal diferença entre bombas de tempo e lógicas e bombas de bifurcação é que uma bomba de bifurcação não tem carga útil em si e, em vez disso, causa danos ao se replicar continuamente para esgotar os recursos disponíveis do sistema.

Veja também editar

Referências

  1. Windows Vista home page
  2. PostScript Printer Driver Optimization Case Study, Adobe Systems, Technical Note #5042, 31 de Março de 1992. Página 5.
  3. Williams, Sam (Março de 2002). «Free as in Freedom – Richard Stallman's Crusade for Free Software». O'Reilly. Consultado em 26 de setembro de 2008. In 1979, Reid made the decision to sell Scribe to a Pittsburgh-area software company called Unilogic. His graduate-student career ending, Reid says he simply was looking for a way to unload the program on a set of developers that would take pains to keep it from slipping into the public domain. To sweeten the deal, Reid also agreed to insert a set of time-dependent functions- "time bombs" in software-programmer parlance-that deactivated freely copied versions of the program after a 90-day expiration date. To avoid deactivation, users paid the software company, which then issued a code that disabled the internal time-bomb feature. 
  4. Williams, Sam (Março de 2002). «Free as in Freedom – Richard Stallman's Crusade for Free Software». O'Reilly. Consultado em 26 de setembro de 2008. For Reid, the deal was a win-win. Scribe didn't fall into the public domain, and Unilogic recouped on its investment. For Stallman, it was a betrayal of the programmer ethos, pure and simple. Instead of honoring the notion of share-and-share alike, Reid had inserted a way for companies to compel programmers to pay for information access. 
  Este artigo sobre programação de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.