Pycardano: The Ultimate Course for Python and AI Developers
About Lesson

PYCARDANO COURSE 

Module 1: Overview & Fundamentals

Video 06: Basic Concepts in Blockchain (Part 1)

Chủ đề: Blockchain fundamentals, Decentralization, Nodes & Consensus

  1. BLOCKCHAIN FUNDAMENTALS (CƠ BẢN VỀ BLOCKCHAIN)

Góc nhìn của Lập trình viên

Khác với góc nhìn tài chính, Developer cần hiểu Blockchain dưới dạng cấu trúc dữ liệu:

  • Linked List (Danh sách liên kết): Blockchain là một chuỗi các khối (Blocks) nối tiếp nhau.
  • Hash Pointer: Mỗi Block chứa mã băm (Hash) của Block liền trước nó.
  • Tính Bất biến (Immutability): Bất kỳ thay đổi nhỏ nào ở dữ liệu quá khứ sẽ làm thay đổi Hash, khiến chuỗi liên kết bị phá vỡ (Invalid Chain).

Máy trạng thái (State Machine)

  • Blockchain hoạt động như một máy trạng thái sao chép (Replicated State Machine).
  • Công thức: Trạng thái mới = Apply(Trạng thái cũ, Giao dịch)
  • Nhiệm vụ của mạng lưới là đảm bảo tất cả các Node đều đồng nhất về trạng thái hiện tại.
  1. DECENTRALIZATION & NODES (PHI TẬP TRUNG & NODES)

Web2 vs. Web3

  • Web2 (Centralized): Client-Server. Có điểm chết duy nhất (Single Point of Failure). Dữ liệu phụ thuộc vào nhà cung cấp (Google, AWS).
  • Web3 (Decentralized): P2P Mesh Network. Khả năng tự phục hồi (Self-healing). Dữ liệu được phân tán toàn cầu.

Tiêu chí

Centralized

Decentralization

Kiểm soát

Một thực thể duy nhất

Phân tán trên mạng lưới

Cấu trúc

Máy chủ trung tâm (Server)

Ngang hàng (P2P Network)

Điểm lỗi

Điểm lỗi duy nhất (Dễ sập)

Khả năng phục hồi cao (Bền vững)

Tin cậy

Cần tin bên trung gian

Không cần tin (Trustless)

Bảo mật

Phụ thuộc vào tổ chức

Dựa trên mật mã & đồng thuận

Minh bạch

Thấp (Dữ liệu nội bộ)

Cao (Sổ cái công khai)

Ví dụ

Ngân hàng, Facebook, Google

Cardano, Bitcoin

 

  1. Cardano Node

Mạng lưới được vận hành bởi phần mềm cardano-node (Mã nguồn mở tại: github.com/IntersectMBO/cardano-node).

  1. Relay Nodes:
    • Đóng vai trò “Người vận chuyển” và “Lá chắn”.
    • Kết nối với Public Internet, bảo vệ Core Node khỏi tấn công DDoS.
  2. Block Producer Nodes (Core Nodes):
    • Đóng vai trò “Người thợ”.
    • Ẩn mình sau Relay Node, giữ khóa bí mật để ký và đóng Block.

Mô hình cho Python Developer

Để phát triển dApp, bạn sử dụng mô hình Light Client:

  • Code PyCardano (trên máy bạn) 🡪 API Gateway (Blockfrost/Ogmios) 🡪 Cardano Network.
  1. CONSENSUS: OUROBOROS PROOF-OF-STAKE

Cơ chế đồng thuận

Cardano sử dụng giao thức Ouroboros (PoS) thay vì Proof-of-Work (PoW).

  • Tiết kiệm năng lượng: Không cần máy đào tốn điện.
  • Cơ chế xổ số (Lottery): Dựa trên lượng ADA nắm giữ (Stake) để chọn người đóng Block.

Mô hình thời gian (Time Model)

Hệ thống thời gian của Cardano được chia như sau:

  • Epoch (Kỷ nguyên): 5 ngày (432,000 slots).
  • Slot (Khe thời gian): 1 giây.
  • Slot Leader: Tại mỗi giây, thuật toán VRF chọn ngẫu nhiên một Node làm Leader để đóng Block.

Lưu ý quan trọng cho Developer: Probabilistic Finality

  • Giao dịch trên Cardano cần thời gian để đạt được tính xác thực cuối cùng (Finality).
  • Khi code báo Submitted, giao dịch mới chỉ vào Mempool. Cần chờ khoảng 20s – 60s để đảm bảo giao dịch không bị đảo ngược.
  1. Tổng kết

Nội dung:

  • Blockchain là chuỗi các khối khối (blocks) chứa dữ liệu giao dịch liên kết với nhau
  • Cardano là mạng P2P phi tập trung.
  • PyCardano kết nối thông qua Blockfrost API.
  • Ouroboros PoS sử dụng Epoch & Slot.

Next Video: Basic concepts in Blockchain (Part 2)

  • Transactions
  • Blocks
  • Addresses
  • Wallets
  • UTxO model

 

Exercise Files
Yellow and Black Simple Deep Sleep Music Playlist YouTube Thumbnail.png
Size: 367.48 KB