An open API service indexing awesome lists of open source software.

https://github.com/zachalam/bitfact

πŸ›‘οΈ Robust data integrity tool. Prove data, text, & files using the Ethereum blockchain.
https://github.com/zachalam/bitfact

blockchain crypto data-integrity ethereum ethereum-blockchain fingerprint fingerprint-data hashing javascript-library

Last synced: 6 months ago
JSON representation

πŸ›‘οΈ Robust data integrity tool. Prove data, text, & files using the Ethereum blockchain.

Awesome Lists containing this project

README

          


BitFact Header Image



Prove data with this complete toolkit.


BitFact fingerprints information and then etches it on the Ethereum Blockchain.











___


BitFact in action demo



---

## Install
Available in **[πŸ—„οΈ npm](https://www.npmjs.com/package/bitfact)** and **[🧢 yarn](https://yarnpkg.com/package/bitfact)** flavours.
```java
npm install -g bitfact
```
```java
yarn global add bitfact
```

## Features
- πŸ–οΈ Fingerprint data with one easy command. [What's a fingerprint?](https://en.wikipedia.org/wiki/Fingerprint_(computing))
- ♾️ Permanent hash etched on the Ethereum blockchain.
- β›½ Tiny gas fees (~21,000) - the same as sending ether.
- 😎 Use with: mainnet (live), ropsten (testnet), & beaconchain (eth2).

## Quickstart
πŸš— The only thing you need to drive is an Ethereum `provider` and `privateKey`.
```java
$ bitfact setup
```
### Stamp
πŸͺ§ After setup, use `bitfact stamp` with `-f` to stamp a file or `-t` to stamp text.
```java
$ bitfact stamp -f hello_world.txt
```
```
β “ Confirming..
πŸ›‘οΈ Success! Stamped on Blockchain:
Txid: 0xbae00000000000000005
```
### Verify
```java
$ bitfact verify -f hello_world.txt -tx 0xbae00000000000000005
```
```
β “ Confirming..
πŸ›‘οΈ Response received from Blockchain.
Stamped: YES
```

## Documentation
The code is well tested and fully documented. Pull requests to docs are welcome.
- πŸ“— **Documentation Site: https://docs.bitfact.io/**
- Project Repo: The documentation can also be viewed in the `docs/guides` folder on the repository.

## Use Programatically
πŸ“œ You can also import `bitfact` as a module in your own project.
```javascript
const BitFact = require("bitfact"); // load from npm or yarn
const bitfact = new BitFact({
provider: "https://mainnet.infura.io/v3/37a0db22401bbe211112",
privateKey: "321d3fa232e55dedee2bd914273f78897f69053b61437c5",
options: {chain: 'mainnet'}
});

const receipt = await bitfact.stampText("Hello World!", "this is my memo");
console.log(receipt);

```

BitFact | Crafted in Las Vegas (don't gamble with your data) 🎰