John Goerzen ([EMAIL PROTECTED]) wrote:

> I'm new to Freenet and I'm struggling to understand some of the
> implications of all the different key types.

Me too.  I'm about 2 weeks ahead of you, so I just went through this. :-/

My answers may not be 100% accurate, but hopefully I can at least shed
a *little* bit of light.

> First, what is the difference between an MSK and a SSK?

The MSK is a "manifest", and it's got some black magic built into it
that allows it to use a date-based redirect.  It was apparently added
only recently (which is why it's not covered in Ian Clarke's older
documentation).

> Secondly, what is the whole point of this date-based redirect thing?

It's one of the only ways you can "update" Freenet content.  The MSK, as
I understand it, redirects to an SSK that has a timestamp in it.

> To me, it seems that it has a lot of downsides; if the original author
> of content drops off the 'net for even a few days, it's lost
> even if it's popular.

In theory, at least, you can retrieve older date-based pages by explicitly
using the SSK with an older timestamp.  But it's certainly not transparent
to fproxy (i.e., it won't fall back automatically -- you just get the
infamous Network Error).

> Third, what is the purpose of the KSKs, which appear to be insecure,
> when we have things like CHKs?

They're human-readable.  Yes, they're insecure; but they're useful as
a one-shot publication.  They also have the advantage of being extremely
easy to use.

> Fourth, what are the types of keys that can be updated?

Technically speaking, none of them.  The MSK@SSK DBR thing is a bit of
a hack to work around that -- you insert a new "meta-key" each day, even
the contents of the documents it points to are unchanged.  The old keys
stick around until nobody wants them any more, then they expire in the
normal Freenet manner.

If you actually publish a freesite and keep it updated for a few days
in a row, it will make a little more sense.  You'll see how your static
files (images, etc.) have a constant CHK associated with them, so they
don't get re-inserted every time; but your dynamic files (text, HTML)
get re-inserted when they change; and finally, your "manifest" (meta-key,
MSK) gets redone every time no matter what.

>  There is Freenet.client.IndexClient that some pages reference
>  but there are zero docs on it.  Can someone explain what it does
>  and how it works?

This seems to require Freenet 0.3.9.1, which not everyone has yet
(especially us Debian users).  The best source of documentation for
this stuff is probably "Snarfoo", which is
<freenet:MSK@SSK@p0EFqjmDioSqKmYYORPrClUepi4QAgE/snarfoo//>.

Your other questions, I don't know the answers to. :(

-- 
Greg Wooledge                  |   "Truth belongs to everybody."
[EMAIL PROTECTED]              |    - The Red Hot Chili Peppers
http://wooledge.org/~greg/     |

PGP signature

Reply via email to