[plt-scheme] Forum

From: Synx (plt at synx.us.to)
Date: Sat Dec 26 17:32:00 EST 2009

I had an important idea for a forum the other day...

* if messages were split into pieces once greater than a certain size,
the size of a message (or attachment) you could download is limited only
to how long you're willing to wait for it.

* if all pieces were hashed, you could receive messages from untrusted
sources because they can't modify the content without changing the hash

* if some hashes of pieces were signed, you could receive messages from
untrusted sources, but still be assured who it's from.

* if these pieces were encrypted, you could deliver it via untrusted
sources, and still be assured that only the chosen recepient can read
the message privately.

The above points are to solve problems I see existing already in email,
newsgroups and those web forums. Firstly that you can't tell who signed
a signed email until you download the entire thing, plus the size of
such emails is greatly limited, and combining split emails is a lengthy,
manual, tedious process. Secondly, you can't send your messages through
untrusted sources. This has application in web forums, where if the
forum is down, you can't post messages that anyone else can read. You
have to send the message to the forum, and are dependent on their
authority (DNS records etc) to validate yourself as a poster. Similarly
email is only as trustworthy as the authority monitoring your From:
address, so for instance by using a member's From address, one should be
able to post anything to any mailing list with or without being subscribed.

Thirdly, identifying who a message came from is extremely tricky with
current systems. Newsgroups use the honor system pretty much, and PGP
signing is few and far between. Email can use PGP, but again it's a
tedious process, not enabled by default, tricky to set up, full of
unaddressed concerns, and thus nobody uses it. Web forums you can tell
who posted it, assuming the forum administrators aren't screwing with
you. This allows said administrators to act as censors, against the will
of both the posters and the readers, and doesn't allow any of the
posters or readers any way to work around this kind of blockage.

And fourthly, our messages aren't nearly private enough. When I send a
private letter to someone else I don't expect the mailman, the post
office, the government, and various marketing firms to open my letter
and record its contents, before passing it on to the desired source, or
else impersonating said source and trying to trick me into divulging my
own privacy. Call me paranoid, but it seems like if there's a simple
technological solution to avoiding that, it would not be unreasonable
for me to make use of it. If you're running a web forum, and I post some
encrypted data that you can't cross-check, you're free to deny me the
right to use you as a transport for that message, but I don't think it
reasonable for you to deny me the right to use encryption at all. And
since PGP is so tricky to set up and error-prone, I feel that a more
direct solution is needed.

A solution is needed that strictly, and concisely produces the situation
I have enumerated above, in the simplest and most obvious manner
possible. If we could set up the infrastructure for secure, signed, and
encrypted messages, then I think that would be a big step toward
increasing the freedom of communication in general, and in fostering a
society more compatible with self determination. PGP is a good start,
but it doesn't benefit from a lot of the ideas we have implemented since
then, and it has some rather compromising flaws. I feel if those flaws
are rectified, the use of such tools in communication would be easier
and more accessible, and more popular, instead of a tool used by the out
of touch uber-geeky paranoid elites. Yes I am aware of the irony of this
message. :>

So, anyone interested in that sort of thing? It's been eating /my/ brain
for a while, if you can't tell. I don't have people to bounce ideas off
of though, so my thoughts have been running in circles too much,
delaying my ability to produce a reliable implementation. Is anyone
working on something like that? No sorry, Frost sucks too.

This idea seems simple in theory, but I'm not sure how to make it
practical. I'd really appreciate it if someone else who liked coding
would talk to me about this. Sorry if this is off-topic, although I am
working in plt-scheme to try and implement it.

Posted on the users mailing list.