Glossary

Trojan Horse

A Trojan horse is a program that does something undocumented that the programmer intended, but that some of its users would not approve of if they knew about it. Unlike the term "computer virus", the term "Trojan horse" cannot be defined formally, because it includes subjective terms like "intent", "harm", "user approval" and so on.
Different people have different intents, what one person considers harmful another might not, and the different people would approve different kinds of actions on their computer. For instance, a program that records keystrokes and sends them to a remote location would be "harmful" for the user whose password is stolen this way but it would be "beneficial" for a law enforcement agency trying to get access to a criminal's computer.