ArticleslgStudy

computer science

Tahoe-LAFS

Tahoe-LAFS is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Tahoe-LAFS rather than just read about it. In short: Tahoe-LAFS (Tahoe Least-Authority File Store) is a free and open, secure, decentralized, fault-tolerant, distributed data store and distributed file system. It can be used as an online backup system, or to serve as a file or Web host similar to Freenet, depending on the front-end used to insert and access files in the Tahoe system.

Tahoe-LAFS — main illustration
Tahoe-LAFS — illustration

Key takeaways

  • Tahoe-LAFS belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Tahoe-LAFS to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Tahoe-LAFS from memory before moving on to harder problems.

Reference excerpt

Tahoe-LAFS (Tahoe Least-Authority File Store) is a free and open, secure, decentralized, fault-tolerant, distributed data store and distributed file system. It can be used as an online backup system, or to serve as a file or Web host similar to Freenet, depending on the front-end used to insert and access files in the Tahoe system. Tahoe can also be used in a RAID-like fashion using multiple disks to make a single large Redundant Array of Inexpensive Nodes (RAIN) pool of reliable data storage. The system is designed and implemented around the "principle of least authority" (POLA), described by Brian Warner (one of the project's original founders) as the idea "that any component of the system should have as little power of authority as it needs to get its job done". Strict adherence to this convention is enabled by the use of cryptographic capabilities that provide the minimum set of privileges necessary to perform a given task by asking agents. A RAIN array acts as a storage volume; these servers do not need to be trusted by confidentiality or integrity of the stored data.

History Tahoe-LAFS was started in 2006 at online backup services company All My Data and has been actively developed since 2007. In 2008, Brian Warner and Zooko Wilcox-O'Hearn published a paper on Tahoe at the 4th ACM international workshop on Storage security and survivability. When All My Data closed in 2009, Tahoe-LAFS became a free software project under the GNU General Public License or The Transitive Grace License, which allows owners of the code twelve months to profit from their work before releasing it. In 2010, Tahoe-LAFS was mentioned as a tool against censorship by the Electronic Frontier Foundation. In 2013, it was one of the hackathon projects at the GNU 30th anniversary.

Functionality

The Tahoe-LAFS Client sends an unencrypted file via a web API to the HTTPS Server. The HTTPS Server passes the file off to the Tahoe-LAFS Storage client which encrypts the file and then uses erasure coding to store fragments of the file on multiple storage drives. Tahoe-LAFS features "provider-independent security", in that the integrity and confidentiality of the files are guaranteed by the algorithms used on the client, independent of the storage servers, which may fail or may be operated by untrusted entities. Files are encrypted using AES, then split up using erasure coding, such that only a subset K of the original N servers storing the file chunks need to be available in order to recreate the original file. The default parameters are K=3, N=10, so each file is shared across 10 different servers, accessing it requires the correct function of any 3 of those servers. Tahoe provides very little control over on which nodes data is stored.

Fork A patched version of Tahoe-LAFS exists from 2011, and was made to run on anonymous networks such as I2P, with support for multiple introducers. There is also a version for Microsoft Windows. It is distributed from a site within the I2P network. In contrast to normal Tahoe-LAFS operation, when I2P and Tahoe-LAFS are used together the location of the nodes are disguised. This allows for anonymous distributed grids to be formed.

See also

CephFS (file system) Coda (file system) Comparison of distributed file systems Freenet GlusterFS Moose File System LizardFS iFolder List of distributed file systems Lustre (file system) Parallel Virtual File System XtreemFS IPFS

References

External links Official website

Worked examples

Example 1 — a first encounter with Tahoe-LAFS

Start with the simplest possible case. Write down what Tahoe-LAFS claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Tahoe-LAFS before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Tahoe-LAFS ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Tahoe-LAFS

In research
Tahoe-LAFS appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Tahoe-LAFS in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Tahoe-LAFS is common in secondary-school and first-year university syllabi. It links to neighbouring topics Cloud infrastructure, Cloud storage, Cross-platform free software, so understanding it makes those chapters shorter.
In everyday life
Look for Tahoe-LAFS outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Tahoe-LAFS” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Tahoe-LAFS in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Tahoe-LAFS means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Tahoe-LAFS out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Tahoe-LAFS in simple terms?

Tahoe-LAFS (Tahoe Least-Authority File Store) is a free and open, secure, decentralized, fault-tolerant, distributed data store and distributed file system. It can be used as an online backup system, or to serve as a file or Web host similar to Freenet, depending on the front-end used to insert and…

Why does Tahoe-LAFS matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Tahoe-LAFS?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Tahoe-LAFS.

Tags

  • Cloud infrastructure
  • Cloud storage
  • Cross-platform free software
  • Cross-platform software
  • Distributed file systems
  • File sharing software
  • File sharing software for Linux
  • Free file sharing software
  • Free network-related software
  • Free software for cloud computing
  • Free software programmed in Python
  • I2P

Keep exploring