Bomba de tiempo (software)


En el software de computadora , una bomba de tiempo es parte de un programa de computadora que ha sido escrito para que comience o deje de funcionar después de alcanzar una fecha u hora predeterminada. El término "bomba de tiempo" no se refiere a un programa que deja de funcionar una cantidad específica de días después de su instalación; en su lugar, se aplica el término " software de prueba". Las bombas de tiempo se usan comúnmente en el software beta (prelanzamiento) cuando el fabricante del software no desea que la versión beta se use después de la fecha de lanzamiento final. Un ejemplo de software bomba de tiempo sería Windows Vista Beta 2 de Microsoft , que estaba programado para expirar el 31 de mayo de 2007. [1]Los límites de tiempo en el software de bomba de tiempo no suelen aplicarse tan estrictamente como en el software de prueba , ya que el software de bomba de tiempo no suele implementar funciones de reloj seguras.

Las principales diferencias entre las bombas lógicas y las bombas de tiempo es que una bomba lógica puede tener una función de temporización implementada como mecanismo de seguridad si las condiciones no se cumplen en un período de tiempo determinado (puede borrarse o activar su carga usando el sistema de temporización) , mientras que las bombas de tiempo solo usan funciones de tiempo para (des)activarse. Las bombas de tiempo, una vez activadas, descargarán su carga útil (que puede ser maliciosa) de forma similar a como las bombas lógicas entregan su carga útil al objetivo. La principal diferencia entre las bombas lógicas y de tiempo y las bombas bifurcadas es que una bomba bifurcada no tiene carga útil en sí misma y, en cambio, causa daño al replicarse continuamente para agotar los recursos disponibles del sistema.

El primer uso de una bomba de tiempo en el software puede haber sido con el lenguaje de marcado Scribe y el sistema de procesamiento de textos, desarrollado por Brian Reid . Reid vendió Scribe a una compañía de software llamada Unilogic (más tarde rebautizada como Scribe Systems [2] ) y acordó insertar un conjunto de funciones dependientes del tiempo (llamadas "bombas de tiempo") que desactivarían las versiones copiadas libremente del programa después de un 90- fecha de caducidad del día. Para evitar la desactivación, los usuarios pagaban a la empresa de software, que luego emitía un código que desactivaba la función de bomba de tiempo interna. [3]

Richard Stallman vio esto como una traición a la ética del programador. En lugar de honrar la noción de compartir y compartir por igual, Reid había insertado una forma para que las empresas obligaran a los programadores a pagar por el acceso a la información [4] (ver Eventos que llevaron a GNU ).