mcpField
B
blockchain-basics

blockchain-basics

github.com/pluginagentmarketplaceDevelopment154 installsUpdated 42w ago
Repository

About blockchain-basics

A learning skill for developers studying blockchain fundamentals, from consensus and cryptography to network architecture and transaction lifecycles. It combines topic explanations with code examples, troubleshooting guidance, and a staged learning path.

Key features

  1. 01Consensus mechanisms and finality
  2. 02Cryptographic primitives and Merkle proofs
  3. 03P2P networks and node types
  4. 04Transaction lifecycle and mempools
  5. 05Code examples and troubleshooting
  6. 06Progressive learning path

Use cases

  1. 01Learn PoW, PoS, and BFT concepts
  2. 02Practice verifying Merkle proofs
  3. 03Trace transactions from mempool to confirmation

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/pluginagentmarketplace/custom-plugin-blockchain --skill blockchain-basics

After installing, type/blockchain-basicsin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

assets/
config.yaml
schema.json
references/
GUIDE.md
PATTERNS.md
scripts/
validate.py

Details

From the project README

Blockchain Basics Skill

Master blockchain fundamentals including consensus mechanisms, cryptographic primitives, and distributed systems architecture.

Quick Start

# Invoke this skill for blockchain fundamentals
Skill("blockchain-basics", topic="consensus", depth="intermediate")

Topics Covered

1. Consensus Mechanisms

Learn how distributed networks achieve agreement:

  • Proof of Work: Mining, hashrate, difficulty adjustment
  • Proof of Stake: Validators, slashing, finality
  • Byzantine Fault Tolerance: Leader election, view changes
2. Cryptographic Foundations

Understand the security primitives:

  • Hash Functions: SHA-256, Keccak-256, properties
  • Digital Signatures: ECDSA, Ed25519, verification
  • Merkle Trees: Proof construction, verification
3. Network Architecture

Explore distributed systems:

  • P2P Networks: Gossip protocols, peer discovery
  • Node Types: Full nodes, light clients, archives
  • Block Propagation: Compact blocks, relay networks
4. Transaction Lifecycle

Follow data through the chain:

  • Transaction Structure: Inputs, outputs, signatures
  • Mempool: Fee markets, ordering, priority
  • Confirmation: Finality, reorganization

Code Examples

Verify Merkle Proof
import hashlib

def verify_merkle_proof(leaf: bytes, proof: list, root: bytes) -> bool:
    """Verify a Merkle proof for inclusion"""
    current = leaf
    for sibling, is_left in proof:
        if is_left:
            current = hashlib.sha256(sibling + current).digest()
        else:
            current = hashlib.sha256(current + sibling).digest()
    return current == root
Calculate Block Hash
import hashlib
import struct

def calculate_block_hash(header: dict) -> bytes:
    """Calculate Bitcoin-style block hash"""
    data = struct.pack(
        '<I32s32sIII',
        header['version'],
        bytes.fromhex(header['prev_block']),
        bytes.fromhex(header['merkle_root']),
        header['timestamp'],
        header['bits'],
        header['nonce']
    )
    return hashlib.sha256(hashlib.sha256(data).digest()).digest()[::-1]

Common Pitfalls

PitfallIssueSolution
Finality confusionPoW is probabilisticWait for 6+ confirmations
Hash vs encryptionHashes are one-wayUse proper encryption for secrets
Timestamp trustMiners can manipulateUse block height for precision

Troubleshooting

"Why is my transaction not confirming?"
  1. Check transaction fee vs current mempool
  2. Verify nonce is sequential (no gaps)
  3. Ensure sufficient balance for amount + gas
"How do I verify a signature?"
from eth_account import Account
from eth_account.messages import encode_defunct

message = encode_defunct(text="Hello")
address = Account.recover_message(message, signature=sig)

Learning Path

[Beginner] → Hash Functions → Digital Signatures → Transactions
    ↓
[Intermediate] → Merkle Trees → Consensus → Network Layer
    ↓
[Advanced] → BFT Protocols → Sharding → Cross-chain

Test Yourself

# Unit test template
def test_merkle_root():
    txs = [b"tx1", b"tx2", b"tx3", b"tx4"]
    root = build_merkle_root(txs)
    assert len(root) == 32
    assert verify_merkle_proof(txs[0], get_proof(0), root)

Cross-References

  • Bonded Agent: 01-blockchain-fundamentals
  • Related Skills: ethereum-development, smart-contract-security

Version History

VersionDateChanges
2.0.02025-01Production-grade with validation, examples
1.0.02024-12Initial release

Comments

Markdown supported