That is in addition to deciding whether it's even feasible.
The solution requires a number of facets: Introduce an authentication system which requires identities to be globally verifiable. Public keys could be held by the auth servers. In order to send mail, you would need to be able to access the public key of the recipient -- and a certificate encrypted with the public key of the target mail server that contains the identity of the sender, the identity of the target, the identity of the auth server, and a CRC for the message. Keys could be replicated among trusted auth servers. So what does this do? It enables an email server to immediately verify that an email message originated from an authenticated source; if not, it dumps the email immediately. Problem solved. Whoever runs the auth servers could have a policy where you pay a certain amount for each email sent. Anything less than, say, 250 messages per month is free; anything more would cost n cents per message. Which would make it too costly for spammers to continue sending spam.