All files within Freenet are identified and requested by a key, in a similar way that normal websites are identified by a domain name.
The most fundamental key type.
All files over 1KiB are ultimately divided into one or more 32KiB CHKs.
CHK filenames are determined only by their contents.
The other basic key type.
These combine a public key with a human-readable filename, and allow for freesites.
Some higher-level key types (which are built out of the basic ones) are:
A variant of SSKs, where everything is determined by a simple human readable filename (e.g.
These are spammable, meaning that other users can insert a different file under the same name. However they are convenient in some cases.
A form of updatable keys especially useful for freesites and ARKs.
Keys may carry either metadata or data.
If a key contains metadata, it may specify:
A redirect to another key
A splitfile manifest - a bunch of pointers to keys which when fetched and reassembled yield a larger file
Multi-level metadata - a splitfile which isn't a file but metadata; the splitfile manifest for a 20MB+ file will not fit in a single CHK so has to be split itself
A Simple Manifest, a list of filenames, each of which has metadata attached to it
An archive manifest - a pointer to a Container
An archive redirect - a pointer to a file within a Container
True metadata, such as the MIME type of the data which will be returned, combined with any of the above
See also: Single File Manifests