GOPHERSPACE.DE - P H O X Y
gophering on sdf.org
To find out more about what a gopher client and server do, I read RF
C1436, the gopher protocol request for comments. The basic format of
 gopher requests is to initiate a TCP connection to the specified se
rver (on the specified port): The client is the first one to talk, a
nd sends the 'selector string' (the second tab separated value of th
e gophermap item line). The server then replies with the text associ
ated to that item request. The mysterious item 7 (I say mysterious, 
because bitreich.org has a placeholder 'explaining item 7' textfile 
where they say, 'someone, maybe you, could explain the mysterious it
em 7') gets sent the 'selector string', a tab seperator, and then th
e 'search words'. Presumably the server knows that it should run wha
tever the 'selector string' indicated on the 'search words' to gener
ate the text response (which the server then sends). I guess the ser
ver responses are generically called the 'Menu Entity', which in thi
s case is necessarily dynamically generated.
Server state is forbade in gopher protocol; the RFC says that the se
rver cannot retain any idea of a session. If I want to slip identifi
ed, encrypted requests in, I think I should consider it as encryptin
g and identifying an arbitrary network stream, rather than a modific
ation of gopher's simple standard. What if I just punted gopher thro
ugh an ssh tunnel instead of TCP itself? But that content is very cu
t off from the larger gopher, which might be the point. In that case
, since we're not trying to do https, just ssh into a server (now en
crypted and identified) and use a secret, local gopherhole thence? I
 foresee some human dangers, but you know, the world is dangerous. A
nother problem is that hiding gopherholes as a practice takes away f
rom contributing to the larger gopher, so it should be minimal or av
oided anyway. Notably here I have been concerned about the gophertee
r wanting to identify themselves to receive secret information: I th
ink general browsing anonymity and connection encryption are well-se
rved by using onion routing.