I am currently developing a piece of software, basically for part of the software I need it to be able to send and receive a message (email) on load from one program to another which are separated in different locations on the net the purpose of this is for validation.

so when the program starts on my computer it will first check to see if I have an email account already setup if no then you create one, if yes then it will then generate an encrypted key which is sent to all other people on your contacts that you have set within the program, on your friends computer when the program starts up it will do the same and will also check for an email from your friends if it finds and message(email) from them it will extract the encrypted key decrypt it and validate. once it has validated I want it to delete the message(email) completely.

I already have sample code for a vb.net send SMTP and retrieve POP3, the question is is this the best way to do this or could it be done easier or a different way?