I wrote about Pet Names a while back as an alternative to PKI.
Now CodeCon includes a presentation on PETmail, an alternative to traditional e-mail in which you can't send someone email without their permission, and there are various spam-resistant mechanisms by which you can gain permission to send an email to someone you don't know.
I just sent the author of PETmail an email about various ideas in his proposal.
Now CodeCon includes a presentation on PETmail, an alternative to traditional e-mail in which you can't send someone email without their permission, and there are various spam-resistant mechanisms by which you can gain permission to send an email to someone you don't know.
I just sent the author of PETmail an email about various ideas in his proposal.
If you haven't already, you should read about SPKI in detail.
http://world.std.com/~cme/html/spki.html
Incidentally, SPKI's serialization is the sanest I've ever seen. I've used it for a project at work and it's a delight. IMHO XML is inappropriate for anything that isn't really a text document with markup.
##########
If Alice knows Bob and Carol, and Carol wants to send Bob a message, I
don't see why Bob's mail server needs to be involved until the message
from Carol arrives. Alice can send Carol a signed certificate that
says "let Carol send Bob a message". Carol can send a signed message
accompanied by Alice's certificate; Bob's MUA can look at both to
decide to allow Carol's request. This is a limited form of SPKI
delegation.
Alice's certificate would include a serial number; Bob would remember
the serial number so the certificate can't be used twice.
Alice's certificate should be valid only between a certain date-range,
so that Bob can discard his record of the serial number once the
certificate expires. Bob might choose to ignore certificates whose
validity period is too wide; this would be recorded in the permission
slips he hands out.
This mechanism works for other ways one-time certificates might be
issued too: Alice might be a CAPTCHA server that Bob trusts, for
example.
If Alice's permission slip is a certificate and accompanies the mail
she sends (and the mail Carol sends based on Alice's permission), then
the machine that spools Bob's mail can examine the certificates
accompanying an email to decide whether Bob's going to accept it,
without needing a copy of Bob's address book and the relevant
permissions. This is another SPKI certificate-chain calculation.
This calculation can have false positives, but no false negatives, and
the number of false positives can be bounded if the mail spool has
some memory.
##########
LiveJournal implemented a voice-based CAPCHA system for blind users
which has been a great success.
Another way by which I might allow people permission to send mail to
me would be via a trust metric. My TrustFlow metric is designed with
such applications in mind: you can prove to me that you score at least
x on my metric by sending me certificates for a subgraph of the
complete trust graph.