haskell-opentimestamps-client: Haskell implementation of a basic OpenTimestamps client

[ bitcoin, bsd3, cryptography, finance, library, network, program ] [ Propose Tags ] [ Report a vulnerability ]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.4.1.0
Change log CHANGELOG.md
Dependencies base (>=4.7 && <5), base16 (>=0.1 && <2.0), bytestring (>=0.10 && <0.13), containers (>=0.5 && <0.8), cryptonite (>=0.25 && <0.35), directory (>=1.2 && <1.4), filepath (>=1.3 && <1.5), haskell-opentimestamps (>=0.5.5.0 && <1.0), haskell-opentimestamps-client, memory (>=0.14 && <0.19), optparse-applicative (>=0.14 && <0.19), temporary (>=1.2 && <1.4), text (>=1.2 && <2.2), time (>=1.4 && <1.13) [details]
License BSD-3-Clause
Copyright 2025 A.H.M. (Mari) Donkers
Author A.H.M. (Mari) Donkers
Maintainer a.h.m.donkers@photonsphere.org
Category Bitcoin, Finance, Network, Cryptography
Source repo head: git clone https://codeberg.org/photonsphere/haskell-opentimestamps-client
Uploaded by photonsphere at 2025-12-02T12:30:17Z
Distributions
Executables haskell-opentimestamps-client-exe
Downloads 2 total (2 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 haskell-opentimestamps-client-0.4.1.0

[back to package description]

This is a Haskell client for OpenTimestamps, providing a command-line utility to interact with the OpenTimestamps network. It's on Hackage here: haskell-opentimestamps-client. The client program allows users to:

  • Info: Display information about a timestamp file.
  • Stamp: Create OpenTimestamps for files.
  • Prune: Prune a timestamp file.
  • Upgrade: Upgrade remote calendar timestamps to be locally verifiable.
  • Verify: Verify existing OpenTimestamps files.

The client uses the haskell-opentimestamps library for core OpenTimestamps stuff.

The project has a number of dependencies, including cryptonite for cryptographic operations, http-client for making requests to calendar servers and haskoin-code and bitcoin-rpc to make RPC-calls to a locally running 'blocksonly' pruned Bitcoin node, which is required for Verification.

Also you will need to have a libsecp256k1 package (Debian: libsecp256k1-dev) installed on your Linux distribution (beware: it needs to be < 0.7.x because of deprecated functions in 0.7.x).

To build an executable:

make release

Updating version (development reminder):

  • version: #.#.#.# in package.yaml
  • run hpack to regenerate the .cabal file
  • Add the version to CHANGELOG.md
  • Commit the new version.
  • git tag -a #.#.#.# to add a git tag
  • git push yourorigin #.#.#.# to push the git tag

Work In Progress...

There is also a Haskell library for working with OpenTimestamps. It's on Hackage here: haskell-opentimestamps.