https://github.com/jaekwon/gourami/wiki/Protocol-Overview
I should take a look at pond. Thanks.
Thinking, you register an "address" which can only be registered/announced once... that includes a public key (software generates private key)
When sending a message to someone, the entire envelope of a current email will be encrypted against the recipient's public key. That is the "msg", from there a crc32 of the msg is generated as a "sig" (signature), then a bcrypt of (address + sig) is generated as a "conf" (confirmation of intended recipient). The message is then addressed to a crc32 of the address... this allows for enough uniqueness so that super nodes don't get flooded, but still allow for some routing and query ability.
When you open your client, it connects to the DHT system, and then requests the sig/conf for any messages to crc32(address) then does the calculation locally to determin if a message is actually for said user. It can then request the actual message.
After N days a message should be deleted from the dht systems.
I'm not sure how such a system could combat spam.
Frankly, to take and extreme, if I were reliant on secure email for my life, spam would be the very least of my problems.
As a totally random thought, is there no way to use spam to hide and secure legit email?
If there was a push notification based email server, where the server would have to connect to the sender's server (based on DNS entry) to pull said message, it could allow for better spam filtering... but this would remove the decentralized part.
You are correct in that if I am relying on secure email for my life, then spam would be the least of my problems... but those who feel they must have secure email isn't enough to catalyst a new email system into broad use.
There isn't much code ATM, and the protocol hasn't been spec'd out, but I have an idea. If you want to talk more & contribute in the early protocol design phase you can find me on #gourami on freenode.