Tiny Block: A Simple Blockchain
Installation
Install and update using pip:
$ pip install tinyblock
Block
dict({'previous_hash'(str): '...',
'timestamp'(int): '...',
'data'(any): '...',
'nonce'(int): '...',
'next_hash'(str): '...'})
Usage
Define a simple blockchain:
from tinyblock import tinyblock #The initial variable should be a list of blocks. If not set it, the default chain would be an empty list. my_blockchain = tinyblock()Add a block to the chain:
#The parameter is the data of this block my_blockchain.add('This is a block.')Find a block with statement:
#Find the blocks with features below. The return elements will content the index in origin chain list. #Completely match: previous_hash, nonce, next_hash. #Partly match: data. (Currently support str, int, float, list, dict, bool and tuple) #Range match: timestamp.(Could be an int, list or tuple) my_blockchain.find(previous_hash='', timestamp='', data='', nonce='', next_hash='')Pop the last block of the chain:
my_blockchain.pop()Check wether the blockchain is anything correct:
my_blockchain.chainCheck(print_option=True)Fix the blockchain(with start and stop index):
my_blockchain.chainFix(start=0, stop=4)Get the block list:
my_blockchain.getChain()Customise the rule for mining new block:
#The default rule is hash start with '0000'. #To change the rule, you can override the mineRule function. def newRule(hash): if hash[0:5] == '0'*5: return True return False my_blockchain.mineRule = newRule
Metadata
Release files for tinyblock 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| tinyblock-0.2.0.tar.gz | 4.0 kB | Without provenance | Details for tinyblock-0.2.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| tinyblock-0.2.0-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details for tinyblock-0.2.0-py2.py3-none-any.whl |
Total release size: 10.1 kB
Release files / tinyblock-0.2.0.tar.gz
| Download URL | tinyblock-0.2.0.tar.gz |
|---|---|
| Size | 4.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ebfc13d44d3b56560bc2c2e869e05e8319f61c010f2789d22863a12a0d7b9f17
|
|
BLAKE2b-256 checksum How to use checksums |
f605e9ba7fca7e2886d3841f7d54b635c571b237f31e3e0488c5b6f6c0b22921
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / tinyblock-0.2.0-py2.py3-none-any.whl
| Download URL | tinyblock-0.2.0-py2.py3-none-any.whl |
|---|---|
| Size | 6.1 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
d90da78a1aade97e05cf675f08c32b5f671dc433a095eea14f3283cf8b29837c
|
|
BLAKE2b-256 checksum How to use checksums |
a1fcfa11420d5bd4199c66b6ead1ff6bc37329a673237a8017485964943c1837
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for tinyblock 0.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.