A method and apparatus for protecting computer software from unauthorized execution or duplication using a hardware key is disclosed. The apparatus comprises a means for communicating with the computer to receive command messages from the computer in the hardware key and to provide response messages...http://www.google.co.uk/patents/US20030110388?utm_source=gb-gplus-sharePatent US20030110388 - Software protection device and method