Skip to content
This repository was archived by the owner on Jan 7, 2026. It is now read-only.
/ WavesEscrow Public archive

Simple source code escrow utility. Checksum a folder and store the result under a label using a Waves Data Transaction.

License

Notifications You must be signed in to change notification settings

palomanel/WavesEscrow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WavesEscrow

Simple source code escrow utility. Generate a fingerprint for a file and store the result under a key using a Waves Data Transaction.

Installation

This tool has been tested with python 2.7. To run the script you will need to install the dependencies and clone the repository:

pip install pywaves
git clone https://github.com/compalmanel/WavesEscrow
cd WavesEscrow

After this copy the configuration sample and update the configuration with your own Waves address and seed:

cp .config.json.sample .config.json
vi .config.json

You're ready to rock!

Usage

The tool uses a CLI with builtin help, invoking it will yield the main commands:

$ ./escrow.py
usage: escrow.py [-h] {dump,store,compare} ...

Generate a fingerprint for a file and store the result under a key on the
Waves blockchain.

positional arguments:
  {dump,store,compare}
    dump                Fingerprint a file and dump the results in JSON format
    store               Store file fingerprint in the blockchain under a key
    compare             Compare a file with a fingerprint stored in the
                        blockchain

optional arguments:
  -h, --help            show this help message and exit

Perform a dry run

It's possible to fingerprint a file, then dump the information in JSON format:

$ ./escrow.py dump --help
usage: escrow.py dump [-h] archive

positional arguments:
  archive     The file to fingerprint

optional arguments:
  -h, --help  show this help message and exit

Store information

Fingerprint a file and store the fingerprint under a key in the Waves blockchain, using a Waves Data Transaction:

$ ./escrow.py store --help
usage: escrow.py store [-h] archive key

positional arguments:
  archive     The file to fingerprint
  key         The key for the resulting fingerprint

optional arguments:
  -h, --help  show this help message and exit

Retrieve a key

Retrieve the information stored under a key in the Waves blockchain, using a Waves Data Transaction:

$ ./escrow.py retrieve --help
usage: escrow.py retrieve [-h] key

positional arguments:
  key         The key to retrieve

optional arguments:
  -h, --help  show this help message and exit

Compare a file to a fingerprint

Compare a file with the fingerprint stored in Waves the blockchain:

$ ./escrow.py compare --help
usage: escrow.py compare [-h] archive key

positional arguments:
  archive     The file to compare
  key         The key to compare to

optional arguments:
  -h, --help  show this help message and exit

Disclaimer

This software is provided "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the authors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.

About

Simple source code escrow utility. Checksum a folder and store the result under a label using a Waves Data Transaction.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages