1. A method for inhibiting execution of malicious executable files and other unauthorized executable files by a computing system, the method comprising: (a) creating a unique execution key for each executable file authorized by a user to be run on a specific computing system wherein each said key is unique to its respective file and to the specific computing system upon which it is authorized to run; associating each said executable file with its respective execution key; storing execution key information for each said execution key in a key store separate from the executable file but accessible by the computing system; (b) when any executable file is queued to run on the computing system, examining the said executable file for an associated said execution key; and (c) if an associated said execution key is found, comparing the found execution key with the respective said stored execution key information to verify the validity of the found execution key, if the stored execution key information matches the found execution key, allowing the queued executable file to run at least once on the computing system, and if the stored execution key information does not match the found execution key, preventing the executable file from running.