Dumpnet drafts, and societal models

Attached at the end of this post will be some drafts of the Dumpnet protocol and specification. There’s some good ideas in them, and a kernel of truth in the idea presented there of Ant Routing. However, these drafts are crap for a number of reasons, both technical and societal.

A perfect society wouldn’t need the DUMPNET. A perfect society would have distinct similarities to a surveillance society: Cameras, records, logs would be everywhere. The difference would be that while a surveillance society would keep those records to those in power, a perfect society would keep them open to anyone.

Granted, this probably wouldn’t work for any number of reasons, but it’s a nice hope. A society where security procedures and anonymity are unnecessary is simply a dream, because there will always be a fringe who attempt to work outside the system.

Where is the DUMPNET necessary, then? Really, it’s current design is for a dystopian society. It allows perfect anonymity. Nobody can prove which packets you sent, or just routed, without careful examination of your computer. The design is paranoid. More along the lines of a cyberpunk world. Not practical in any way.

Not everyone shares my idea of a perfect world. I know some people who would love to live in said dystopia cyberpunk world. Even in our world, they live and value privacy as if they were living in that world. It’s not a bad attitude to take, all things considered. It serves them suprisingly well, if not the best socailly.

Most of those friends are people who I would consider “Hacker” friends. It’s not coincidental. Technological people tend to have higher concerns for issue like privacy. Perhaps because we better understand exactly how much data is being collected, and how it’s used.

I like the idea of the darknet. I like both the idea of freedom and the community that surrounds it. I like the idea of creating a service that can be used to make the world better. I like the access, the intrigue, and mystery that surrounds it.

I’m re-writing the spec. It was written as both a layer 3 and 4 protocol, but really, what’s important is the layer 3.

DUMPTRUNK Server Routing Protocol.

Programs that operate over the DUMPNET supply the DUMPTRUNK node with a Public key on which to listen. They are then allowed to send packets to the DUMPNET, as permitted by server policy, and all incoming messages with a DEST matching their key are routed to them.

To send a packet, the DUMPNET programs simply send a basic encapsulation of the packet to the DUMPTRUNK node along their connection to it. This should be essentially a full packet, with ID at 0. It should already include DEST, TTL, SRC, ID, and DATA, and data should be pre-encrypted. DEST should not be hashed.

The DUMPTRUNK node hashes DEST, lowers TTL according to policy, hashes SRC with it’s own private key if non-zero, sets ID

A packet, be it ANT or DATA, is received via a connection. The DEST hash is checked against the public keys registered with this DUMPTRUNK routing node. If it does not match, the ID is checked with the “Recent ID” table. If that returns a match, the packet is dropped. Zero should always be on the “Recent ID” table.

If there is no match on the “Recent ID” table, SRC is hashed with the DUMPTRUNK node’s private key and TTL is modified, appropriately. The new SRC is added to the public key table, along with the interface upon which it was received. (Unix Model note: If designed properly, there needs be no differentiation between a registered program and a linked node within the routing table. It’s just an opened filehandle.) It is then forwarded to each other node that is connected.

If the DEST matches one of them, it is determined whether it is an ANT or DATA packet, by the value of ID. The SRC and DATA are then passed on to the program that “owns” the public key.

DUMPNET Ant Packet specification:

An ant packet is used to set up a connection. It consists of the following information

DEST: A hash of a public key specifying destination.

TTL: A number, counting down the number of hops left to go for a given packet before it should be destroyed. TTL is one of the more flexible parts of DUMPNET. It should be randomized at the sender’s end, and at each node. There must be a general downward trend, but a 50% chance of reducing by one hop, a 40% chance of reducing by two, and a 10% chance of increasing by one helps mask the network architecture. Each DUMPNET routing node software MAY handle this differently.

SRC: An identifier, essentially a repeated crypt of a public key used in linking packets.

??? ID: An identifier, unchanged from node to node, to reduce traffic by preventing broadcast collision.

DATA: A further message, encrypted, with the same public key as used to generate DEST.

Dumpnet Packet Specification:

DEST: the SRC of the ant that was received to create the connection.

TTL: As above

SRC: Zero. There’s no need for a backtrace in this occurance.

??? ID: An identifier, unchanged from node to node, to reduce traffic by preventing broadcast collision. Note that, since the DEST should be a direct path, this should be 0. Perhaps this should be omitted for packets with a SRC of zero?

U-Stor-it

I’ve got a bunch of stuff in an “Uncle Bob’s Self Storage” up in Rochester, NY. As I was checking in when I got the unit, I asked if anyone had ever tried to live in one, as in “Snow Crash” (And a story by Aido in City Limits). The clerk said no, but recounted another tale to me.

There was a 40-something man, who rented one of the units big enough to store a car in. He didn’t keep anything in there, let it sit empty. But, every day, he would drive to the storage lot, open up his unit, drive his car in and eat his lunch.

I guess some people just need privacy.

I’m fine without being final

A lot of people thought the ending to Pirates III was detracted from by the scene in which Barbarossa and Jack head towards the fountain of youth. It lessened the finality of the movie.

Who cares? The movie, despite being the third and final in the series, wasn’t supposed to be final. Jack Sparrow wasn’t simply going to end his piracy. The scene left an opening, both for another movie (unlikely, but possible), and in the viewer’s imagination. Instead of sitting still for the end of the movie, in the viewers mind leaving the theater, Jack is already headed out for destinations unknown. Thar be adventure in these waters, rather than doldrums.

Sluggy and Cerebus

My Cerebus, Part 2 post isn’t done yet. I was trying to think of what to say. The objective, from the beginning, was to compare and contrast Sluggy and Cerebus, the two most obvious examples of Cerebus syndrome. I was having trouble, because, quite honestly, I was bored with sluggy. I wasn’t sure what to talk about, and I wasn’t sure that Sluggy wasn’t going the crazy ranting way of Sims’ original epic in the latter years. Today’s comic sparked some additional love for it, so I’m trying again. I think I understand once more what it was that drew me to sluggy, and why I still read it.

Also, it’s worth noting that having Computer Science lectures on public TV rules. <3 Seattle.

The Clock in the tree

“There’s a clock on that tree”.

“Where?”

“On that tree! Look!”

“You’re right. It’s … it’s a clock”

And it was. A little glowing neon blue set of digits stared back from the side of the tree, implacably fluorescing 9:24.

“I wonder what it’s doing there?”

“I dunno. It’s a clock. Who would want a tree with a clock in it? What good is the time out here, in the forest?”

“A good point, young one,” came a third voice, “A very good point indeed. Time, at-least out here, is rather meaningless, is it not?”

At this, the children were frightened. The source of the voice was not immediately obvious, and they looked around for several seconds before finally spotting it’s owner: A small green froggish thing, about a foot tall, stepping out from behind the aforementioned clock tree.

“Time is Relative. Or, rather, in my case, A Relative: He’s my great-great uncle, twice removed.”

“Who are you?” Said the little boy, Joey, who was not infact certain of what the little green thing was, or it’s intentions. He moved to shield his sister, Hazel, who had of course been the one to spot the clock in the first place, from whatever this little man (For it was man shaped, mostly) and his intentions may be.

“I,” said the frog/man/thing, “Am a Goblin.”

“A goblin?” questioned Joey, with distrust. “I’m fairly certain my mother wouldn’t want me talking to goblins, least of all ones that sneak up on us like that.”

“Truly, child, it was you who snuck up on us. We had, of course, seen you, but imagine our surprise when you could see us!”

“Us?” interjected Hazel

“Yes,” Boomed a deep voice, “Us.” And, before their very eyes, the tree moved. Carefully, and precisely, it shifted it’s limbs to resemble arms, and two rather large but rather disconcertingly uneven knotholes blinked open to form eyes. Roughly equally between them was the clock, now reading 9:28. A split in the wood below the eyes, they now saw, was it’s mouth.

“Who are you?” inquizited Joey, pushing Hazel further behind him even while she attempted to scramble in front to get a better look. “Why are you talking to us?”

“I am called… Well, most simply call me Tree.” Said the tree.

“And I,” said the frog/man/Goblin, “Am called Bartholomew. Might I inquire as to your names, young mister and miss?”

“I’m Hazel”, replied Hazel, “And this is my brother, Joey”

“Well met, Sir Joey and Miss Hazel, and welcome to my forest,” boomed Tree, as his gash of a mouth twisted into a crooked and sideways, yet very endearing, smile. Bartholomew smiled too, but with his crooked teeth and green pointed ears, it wasn’t quite so endearing.

“Would you,” Boomed tree, “Fine youngsters,” He withdrew a limb behind him, and brought back with it a kettle and several cups, “Care for some Tea?”

On Cerebus, Part 2

I finished the second volume of Cerebus today.

It’d been sitting on my desk, waiting to be read for a while. At first, it was waiting for me to finish the first part of my Cerebus essay. I wanted to write that without knowledge of what further would happen in the second volume. And then, when that was done, it was waiting simply for the right time for me to sit down and drink it in.

It was on a long plane ride that I finished it, a 5 hour affair from Cincinnati to Seattle. I’ll spare the details. But, with stoically silent people in the seats next to me, I read.

The first thing that strikes me is the art. The basic style is the same as it’s always been, and much the same as more mainstream comics. But the visual “flair”, as it were, is amazing. The use of grayscale text for echoes, heavy use of white on black to bring out text, or facial features. Most of the second half is drawn with the right side as the bottom, and over one set of pages the comic does a full corkscrew, as part of a sequence in which our favorite aardvark is rather inebriated.

Part of this essay is of course, comparing and contrasting such to sluggy. I’m not sure that sluggy has quite the same artistic nuance to it, but it certainly did and does push borders in how it’s story was presented. Perhaps the first thing to mention is that Sluggy is a webcomic: In 1997, there were perhaps a dozen comics on the internet, and only a handful that updated regularly. It was one of the first “three panel” comics to gain popularity on the internet.

Proposal for a semi-reliable, collaborative, encrypted anonymous network.

Part one, of perhaps Many.

Modern American culture is entirely dependent on a common disregard for copyright law. Proving the morality of such or the truth of such is far from the point of this article, however. This is about how to lock in such culture: to prevent society from being dragged back into the stone ages from before it was so.

What America, and the World, needs here is an easy to use, yet secure filesharing network. For that, you need a secure backbone. And that’s what this document intends to create.

First, some definitions. Easy means that it needs to be simple enough that anyone who could use previous filesharing networks can use this one. Secure means that it will be hard for the RIAA, MPAA, BSA, or any other organization that would prevent said sharing to discover who is talking to who, and what they are saying, or more importantly, make it hard to prove such.

Next, some limitations: This project cannot keep the such forces out. Part of the idea is to make the framework robust and resilient to such intrusion. However, we can make it hard to do something stupid and get yourself discovered.

Basic idea: The Network, codenamed for the moment DUMPNET (After Justin Frankel’s WASTE, Tag: The DUMP, where WASTE goes next), will be composed of several distinct parts.

1) The DUMPTRUNK. This is simply a darknet “Trunk” based upon the ideas of a web of trust with anonymity within. Each user will run a DUMPTRUNK node, which knows very little about it’s surroundings but has a lot of logic for the packets going through it. Unfortunately, despite it’s name, it’s not a big truck: It’s a series of tubes.

2) The DUMPSTER. Named for Napster, the start of the revolution, the DUMPSTER is a protocol for caching file lists and searching. Again, this is based on a web of trust, but still anonymous: The trusted server knows only the Public key of the users, not their actual identity. The Server also hosts no files itself, it simply tells people who to request from.

3) The DUMPFTP. A simple file transfer protocol, based on the DUMPTRUNK. Routes using an ant-logic algorithm, built into the DUMPTRUNK, that sets up TCP-like connections.

Each user would have separate keysets for each app, “listening” for packets aimed at it’s public key.