This wiki is now locked - both user registration and edits (except by admins) are disabled. We're currently migrating all the content to our new wiki. If you have time, please register and help us out!

You can still view the source code of every page. Once a page has been copied over to the new wiki, please add a link to it to MigratedPages (the only page which is still editable), to notify the admins to go and blank it.


Binary Blobs


Binary blobs are essentially collections of node-level blocks. When fetching a uri over FCP, a special flag can be set that causes the node to write every low-level key involved in fetching that uri to a file (or return them via FCP messages). This would include every key in a splitfile, and it includes keys such as SSKs where the user doesn't know the private key. It is then possible to reinsert this binary package on another node. This allows you to migrate your favourite freesite from one network to another, or store it and later reinsert it, without having to change its pubkey and its url. To fetch the full freesite, rather than just one page, we need support for fetching a whole freesite. But basic binary blobs support was implemented in build 1035.

It is also required for UpdateOverMandatory.

File Format


MIME type etc

Binary blobs unofficially use the extension .fblob and application/x-freenet-binary-blob. This is a simple, extensible format.

Overall format

The file format is as follows:
(As with all Freenet binary formats, Java byte order, aka big-endian, is used.)

64-bit magic value: 6d58 249f 72d6 7ed9
(This uniquely identifies the file as a freenet binary blob container file)
2 bytes - binary blob overall format version number (at present, 0)

A series of blobs:

4 bytes - length of blob data
2 bytes - type of blob
2 bytes - version of blob
[ blob data ]

Block blob

Type of blob = 1

Format:
1 byte - key type
1 byte - key subtype
1 byte - key length
2 bytes - headers length
2 bytes - data length
2 bytes - pubkey length (if a pubkey is required, otherwise 0)
key
headers
data
pubkey

End blob

Type of blob = 2
No data
Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki