@hackage haskell-opentimestamps-client0.4.1.0

Haskell implementation of a basic OpenTimestamps client

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.