Storj

From FileZilla Wiki
Revision as of 23:34, 13 June 2017 by Braydonf (talk | contribs)
Jump to navigationJump to search


Storj is a decentralized peer-to-peer file storage system, and new protocol being added to FileZilla.

Source code is available at https://svn.filezilla-project.org/filezilla/FileZilla3/branches/storj/ and depends on https://github.com/Storj/libstorj

To checkout the code with subversion:

   svn co https://svn.filezilla-project.org/svn/FileZilla3/branches/storj/ filezilla


Getting Started

  • Add a new site in the Site Manager and select Storj as the protocol.
  • Enter `api.storj.io` as the host and `443` as the port.
  • Enter the bridge user name and password
  • If you have not created an Encryption Key before, generate a new one, otherwise add your existing key.


Frequently Asked Questions

What is an Encryption Key?

The Encryption Key is a series of 12 to 24 words that represents 128 to 256 bits of entropy that is used to encrypt files before they are uploaded into the network.

Here is an example Encryption Key:

   legal winner thank year wave sausage worth useful legal winner thank year wave sausage worth useful legal will

If you're familiar with Bitcoin, this will be familiar as it's based on the BIP39 standard.

How do I export settings from libstorj CLI?

First run this command to get the bridge user, pass and the encryption key:

   storj export-keys

And then enter those settings into FileZilla in the Getting Started section.

What does it mean if I see "Error: Wrong encryption key for at least one bucket"?

This means that a bucket was added using a different Encryption Key and you won't be able to download the files within that bucket as it won't be able to decrypt them.

Why is there more data transfered over the wire compared to the total size of the file?

Files are encoding with Reed Solomon error correction before they are uploaded to the network. This provides the ability to repair parts the file that are missing or inaccessible. The number of parity shards is currently calculated as 2/3 the original file size.

How are files encoded before being uploaded to the Storj network?

Files are first encrypted using the Encryption Key and then encoded using Reed Solomon into various size shards. For specific details please read SIP5. These shards are then uploaded to different nodes in the Storj network directly after communicating with the Storj bridge to negotiate which nodes to communicate. After the file is uploaded in is then mirrored to other nodes in the network, in the event that a shard goes missing after this initial upload, a shard can be repaired. The total number of shards that can be repaired is around 1/2 of the original file.

Debugging

It's possible to view full detailed logs for file transfers. To enable it (you'll need to do this each time you start up):

  • Open up the Preferences/Settings
  • Go to Logging and optionally enable timestamps and select a file to log
  • Go to Debug and select "4 - Debug"
  • View logs in the command console