Haskell implementation of a basic OpenTimestamps client.
Please see the README on Codeberg at https://codeberg.org/photonsphere/haskell-opentimestamps-client#readme
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: #.#.#.#inpackage.yaml- run
hpackto regenerate the.cabalfile - Add the version to
CHANGELOG.md - Commit the new version.
git tag -a #.#.#.#to add a git taggit 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.