- For Debian read doc/compiling-geth-on-debian.txt
- For Ubuntu read doc/installing-geth-on-ubuntu.txt
2.`sudo apt install jq ncurses-bin`
2.`sudo apt install jq ncurses-bin curl`
3.`git clone https://github.com/rlegene/bfa.git`
4.`source ${HOME}/bfa/bin`
- You can include this line in your .bash_profile if you want.
- It is perfectly safe to source it multiple times.
5. run `start.sh`
6. create your contract (there is already one deployed, so do not confuse the two)
7. Type lines of text into `tsa-insert.sh` (end with ctrl-D)
-`tsa-verify.sh "<yourtexthere>"`
- If the text can not be found, it is because your insert transaction still isn't in the blockchain. Wait a bit and try again.
11. Try the basic `explorer.sh`
12. consider this crontab: @reboot bfa/network5445/start.sh
13. Try out walker.pl
5. Install this crontab: `@reboot bfa/network5445/start.sh`
- If you are running a sealer you MUST do this.
6. run `start.sh`. This will start synchronizing and probably takes at least an hour.
7. Change your node's settings with `syncmode.sh`
- Do this before you have synced too much in the step before, as it might remove all your downloaded chain data and restart synchronizing the chain.
8. Wait for it to finish synchronizing.
9. Run `maymine.sh` to update your configuration (detects if you are allowed to seal/mine or not).
10. Get some Ether from someone. Once you have some, you can try:
- Create your contract (there is already one deployed, but you can "overwrite" it with your own)
- Type lines of text into `tsa-insert.sh` (end with ctrl-D)
11. Free things to do with the BFA:
- Verify that the checksum has been seen with `tsa-verify.sh "<yourtexthere>"`
- If the text can not be found, it is because your insert transaction still isn't in the blockchain. Wait a bit and try again.
- Try the basic `explorer.sh`. It follows "latest" by default, but you can specify a block number as argument, e.g. `explorer.sh 0` to see genesis (block 0).
- Try out `walker.pl`
There are other "interesting" programs in the bin/ and src/ directories.
## start.sh
requires: **geth**
...
...
@@ -24,37 +33,55 @@ requires: **geth**
Starts a node on the 5445 BFA test net. Creates a genesis.json if you don't have one already.
One is already included in this package, which will allow you to connect to the existing BFA testnet.
## attach.sh
request: **geth**
Connects you to your running local geth.
## create.contract
requires: **geth**, **solc**, **jq**
Compiles and deploys a contract to the blockchain. A local "node1" must already be running.
Compiles and deploys a contract to the blockchain. A local "node1" must already be running and synchronized.
Inserts the checksum of a text into the compiled contract.
Inserts the checksum of a text into the TSA.
## verify.sh
## tsa-verify.sh
requires: **geth**
Returns the first blocknumber where the SHA256 checksum of a document was seen (0 for no match).
Returns the first blocknumber where the SHA256 checksum of a text was seen. The timestamp can then be found in the block (with `explorer.sh` for instance).