In computer software, a time bomb is part of a computer program that has been written so that it will start or stop functioning after a predetermined date or time is reached. The term "time bomb" does not refer to a program that stops functioning a specific number of days after it is installed; instead, the term "trialware" applies. Time bombs are commonly used in beta software when the manufacturer of the software does not want the beta version being used after the final release date. One example of time bomb software would be Microsoft's Windows Vista Beta 2, which was programmed to expire on May 31, 2007. The time limits on time bomb software are not usually as heavily enforced as they are on trial software, since time bomb software does not usually implement secure clock functions.
The main differences between logic bombs and time bombs is that a logic bomb may have a timing function implemented into it as a failsafe if the conditions are not met in a certain time period, while time bombs only use timing functions to activate themselves. Time bombs, once activated, will unload their payload in a similar way logic bombs deliver their payloads to the target. The main difference between both time and logic bombs and fork bombs, is that a fork bomb has no payload per se, and instead does its damage by continually replicating itself to deplete available system resources.
History
The first use of a time bomb in software may have been with the Scribemarkup language and word processing system, developed by Brian Reid. Reid sold Scribe to a software company called Unilogic, and agreed to insert a set of time-dependent functions that would deactivate 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 defused the internal time bomb feature. Richard Stallman saw this as a betrayal of the programmer ethos. 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.