Skip to main content

A Python-based cryptocurrency implementation with quantum-resistant features

Project description

Qbitcoin

A Python-based cryptocurrency implementation with quantum-resistant features.

Features

  • Quantum-resistant cryptography using Falcon signatures
  • Proof-of-Work consensus mechanism
  • Multi-signature support
  • Token transactions
  • Web-based GUI interface
  • gRPC API services
  • Comprehensive testing suite

Project Structure

  • qbitcoin/ - Core blockchain implementation
    • core/ - Blockchain core components (blocks, transactions, miners)
    • crypto/ - Cryptographic functions and quantum-resistant algorithms
    • daemon/ - Wallet daemon services
    • services/ - Network and API services
    • generated/ - Protocol buffer generated files
  • gui/ - Web-based graphical user interface
  • scripts/ - Utility scripts for various operations
  • tests/ - Comprehensive test suite

Installation

1 using pip

pip install qbitcoin

then run the smart installer

install build dependcies

 sudo apt install -y build-essential cmake swig python3-dev libssl-dev libboost-all-dev libuv1-dev

after this run smart installer

python3 -m qbitcoin.smart_installer 

after installing type 'qbitcoin' in terminal to start node

For mining

qbitcoin --miningAddress <your qbitcoin address>

if you want to run directly

  1. Clone the repository:
git clone https://github.com/Hamza1s34/Qbitcoin.git
cd Qbitcoin
  1. Install dependencies:
pip install -r requirements.txt
  1. Run the node:
python start_qbitcoin.py

Usage

GUI Mode

Launch the graphical interface:

python gui/qbitcoin_gui.py

CLI Mode

Use the command-line interface:

python -m qbitcoin.cli

Scripts

Various utility scripts are available in the scripts/ directory for operations like:

  • Creating transactions
  • Token management
  • Multi-signature operations
  • Address debugging

Testing

Run the test suite:

pytest tests/

Note

Please note that this project is in the final development phase, so some files and features may be incomplete. If you observe any issues, kindly provide feedback or open an issue on the repository. Your input is greatly appreciated!

Credits

This project is based on the QRL (Quantum Resistant Ledger) source code. We have modified and adapted the original QRL implementation to create Qbitcoin with enhanced features and improvements.

Original Source Code: QRL - Quantum Resistant Ledger

We acknowledge and appreciate the foundational work done by the QRL development team in creating a quantum-resistant blockchain platform. This project builds upon their innovative approach to post-quantum cryptography in blockchain technology.

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests for new functionality
  5. Submit a pull request

License

This project is open source. Please see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qbitcoin-1.1.0.tar.gz (284.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qbitcoin-1.1.0-py3-none-any.whl (265.4 kB view details)

Uploaded Python 3

File details

Details for the file qbitcoin-1.1.0.tar.gz.

File metadata

  • Download URL: qbitcoin-1.1.0.tar.gz
  • Upload date:
  • Size: 284.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for qbitcoin-1.1.0.tar.gz
Algorithm Hash digest
SHA256 14b4042bbba6837fd6d5be4de6b8598ba12a5f76166fcdb79126f413744c01fd
MD5 a3ec8c303015f5a0e426744b4f82acf3
BLAKE2b-256 4afb63a5f40d0562bc91a02202a95d0c65192515a309938a51ecac2106d81953

See more details on using hashes here.

File details

Details for the file qbitcoin-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: qbitcoin-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 265.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for qbitcoin-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d7dc386c7fee1b0cc65c5254750b2acf88b20fb053c0c339d064b987d30909ff
MD5 02ac1a9f1e7fc11d0ecb39c126348be7
BLAKE2b-256 17f97d0aaa68b61483487f2b3b9244abf0f093c61aaa8c945b7cbbf1ea94947d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page