A system for protecting data held on the hard drive of a laptop or other personal computer from unauthorised access. Data which has been backed up to a server, a memory card, CD or other backup medium is also protected. The data is protected by an unbreakable key which resides on a USB flash drive or similar removable device. Optionally a second key known as the fixed key may also be used. In this case both keys must be present to read the data and so if either the computer or the removable key is lost, the data is safe. To compromise the data requires the theft of both removable key and computer together. The system is designed to encrypt and decrypt data automatically without any action or knowledge on behalf of the user.