gbs-downloader: A library for downloading data from a Great Black Swamp server

[ bsd3, library, network, program ] [ Propose Tags ]

Integrate tahoe-ssk, tahoe-chk, and tahoe-directory to provide a high-level API for downloading immutable and mutable files and directories.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0
Change log CHANGELOG.md
Dependencies aeson (>=1.4.7 && <2.2), async (>=2.2.2 && <2.3), base (>=4.7 && <5), base32 (>=0.2.1 && <0.3), base64-bytestring (>=1.0.0.3 && <1.3), binary (>=0.8.6 && <0.9), bytestring (>=0.10.8.2 && <0.11), connection (>=0.3.1 && <0.4), containers (>=0.6.0.1 && <0.7), data-default-class (>=0.1.2 && <0.2), exceptions (>=0.10.4 && <0.11), gbs-downloader, http-client (>=0.6.4.1 && <0.8), http-client-tls (>=0.3.5.3 && <0.4), http-types (>=0.12.3 && <0.13), megaparsec (>=8.0 && <9.3), network-uri (>=2.6.3 && <2.7), servant-client (>=0.16.0.1 && <0.21), servant-client-core (>=0.16 && <0.21), tahoe-chk (>=0.1 && <0.2), tahoe-directory (>=0.1 && <0.2), tahoe-great-black-swamp (>=0.3 && <0.4), tahoe-ssk (>=0.2 && <0.3), text (>=1.2.3.1 && <1.3), yaml (>=0.11.5.0 && <0.11.9.0 || >=0.11.9.0.0 && <0.12) [details]
License BSD-3-Clause
Copyright 2023 The Authors
Author Jean-Paul Calderone and others
Maintainer exarkun@twistedmatrix.com
Category Network
Home page https://whetstone.private.storage/PrivateStorage/gbs-downloader
Source repo head: git clone https://whetstone.private.storage/PrivateStorage/gbs-downloader.git
Uploaded by jcalderone at 2023-08-17T18:18:30Z
Distributions
Executables list-dircap, download-sdmf, download-chk
Downloads 31 total (6 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for gbs-downloader-0.1.0.0

[back to package description]

GBS-Downloader

What is it?

GBS-Downloader integrates Tahoe-CHK with Tahoe-Great-Black-Swamp to support downloading and decoding data from Great Black Swamp servers. It aims for bit-for-bit compatibility with the original Python implementation.

What is the current state?

  • It can download immutable and mutable shares from Great Black Swamp storage servers.
    • It does not cryptographically verify the identity of servers it communicates with.
  • It can interpret, decode, and decrypt the data for CHK- and SDMF-encoded shares to recover the plaintext.

Why does it exist?

A Haskell implementation can be used in places the original Python implementation cannot be (for example, runtime environments where it is difficult to have a Python interpreter). Additionally, with the benefit of the experience gained from creating and maintaining the Python implementation, a number of implementation decisions can be made differently to produce a more efficient, more flexible, simpler implementation and API. Also, the Python implementation claims no public library API for users outside of the Tahoe-LAFS project itself.