what is the difference between a backdoor and a trojan