Giới thiệu dự án

Sự bùng nổ của các thiết bị di động chạy hệ điều hành Android đã biến nền tảng này thành mục tiêu hàng đầu của các cuộc tấn công mạng. Theo các báo cáo an ninh mạng toàn cầu, hàng triệu biến thể phần mềm độc hại (malware) mới xuất hiện mỗi năm, đe dọa trực tiếp đến dữ liệu nhạy cảm và quyền riêng tư của người dùng. Trong bối cảnh đó, phương pháp quét mã độc dựa trên chữ ký (signature-based scanning) vẫn giữ vai trò nền tảng nhờ tốc độ xử lý nhanh và độ chính xác tuyệt đối đối với các mối đe dọa đã biết.

Tuy nhiên, mô hình phân phối chữ ký virus truyền thống đang bộc lộ những điểm yếu chí tử:

  • Điểm lỗi đơn lẻ (Single Point of Failure - SPoF): Phụ thuộc hoàn toàn vào máy chủ cập nhật tập trung của một nhà cung cấp dịch vụ bảo mật duy nhất.
  • Nguy cơ tấn công chuỗi cung ứng (Supply Chain Attack): Máy chủ tập trung bị xâm nhập có thể dẫn đến việc phát tán cơ sở dữ liệu chữ ký giả mạo hoặc chứa mã độc.
  • Thiếu tính minh bạch và kiểm chứng chéo: Người dùng cuối không thể xác minh nguồn gốc chữ ký, trong khi các tổ chức an ninh mạng gặp rào cản trong việc chia sẻ và đồng thuận về các mẫu mã độc mới mà không có bên thứ ba trung gian.

Đề tài "Tích hợp Blockchain vào phân phối chữ ký virus của trình quét mã độc trên Android" do sinh viên Hoàng Mai Thiên Phúc thực hiện dưới sự hướng dẫn của TS. Nguyễn Tấn Cầm tại Trường Đại học Công nghệ Thông tin – ĐHQG-HCM (2024) đã giải quyết triệt để bài toán trên.

+-----------------------------------------------------------------------------------+
|                            HỆ THỐNG PHÂN PHỐI CHỮ KÝ LAI                         |
|                                                                                   |
|  [ Signature Authority 1 ]    [ Signature Authority 2 ]    [ Signature Authority N ]
|           \                         |                         /                   |
|            \                        |                        /                    |
|             +-----------------------+-----------------------+                     |
|                                     |                                             |
|                                     v                                             |
|                   +-----------------------------------+                           |
|                   |  Hyperledger Fabric (Blockchain)  |                           |
|                   |  - Quản lý Metadata & CID         |                           |
|                   |  - Đồng thuận tính điểm (Scoring) |                           |
|                   |  - Thực thi Smart Contract        |                           |
|                   +-----------------+-----------------+                           |
|                                     |                                             |
|                                     | IPFS Hash / CID                             |
|                                     v                                             |
|                   +-----------------------------------+                           |
|                   |      IPFS Cluster (Off-chain)     |                           |
|                   |  - Lưu trữ Bloom Filter Database  |                           |
|                   |  - Phân phối tệp chữ ký P2P       |                           |
|                   +-----------------+-----------------+                           |
|                                     |                                             |
|                                     v                                             |
|                   +-----------------------------------+                           |
|                   |      Android Client (HypatiaX)    |                           |
|                   |  - Xác thực chứng chỉ X.509       |                           |
|                   |  - Tải Bloom Filter qua IPFS      |                           |
|                   |  - Quét mã độc Offline / Realtime |                           |
|                   +-----------------------------------+                           |
+-----------------------------------------------------------------------------------+

Mục tiêu dự án

  1. Xây dựng mạng lưới blockchain doanh nghiệp liên tổ chức (Consortium Blockchain) dựa trên nền tảng Hyperledger Fabric nhằm quản lý, ghi nhận bất biến và kiểm duyệt chữ ký virus thông qua cơ chế bỏ phiếu tín nhiệm phi tập trung.
  2. Thiết lập tầng lưu trữ và phân phối tệp chữ ký phân tán dung lượng lớn ngoài chuỗi (Off-chain) bằng giao thức IPFS (InterPlanetary File System), loại bỏ hoàn toàn nút thắt cổ chai băng thông máy chủ.
  3. Cải tiến và tích hợp thành công trình quét mã độc mã nguồn mở Hypatia trên nền tảng Android (phiên bản mở rộng HypatiaX), cho phép ứng dụng kết nối trực tiếp với mạng DLT/IPFS để đồng bộ chữ ký đã qua đồng thuận.

Phạm vi và giới hạn

  • Phạm vi: Triển khai mô hình mạng liên tổ chức giữa các cơ quan cung cấp chữ ký (Signature Authorities), phát triển Smart Contract (Chaincode) bằng Go, triển khai IPFS Kubo daemon và tinh chỉnh ứng dụng Android Hypatia sử dụng cấu trúc dữ liệu Guava BloomFilter.
  • Giới hạn: Tập trung vào môi trường kiểm thử phân tán; thiết bị Android đóng vai trò là Antivirus Consumer truy vấn dữ liệu thông qua IPFS Gateway và Fabric Client SDK, chưa trực tiếp vận hành Peer Node đầy đủ trên phần cứng di động.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tiêu chí Mô hình truyền thống (Sophos, ClamAV) BitAV (Bitcoin PoW) Giải pháp đề xuất (Fabric + IPFS + Hypatia)
Kiến trúc phân phối Máy chủ tập trung (Client-Server / CDN) Mạng P2P mở (PoW) Mạng phân quyền liên tổ chức (Permissioned DLT + IPFS)
Cơ chế đồng thuận Đơn phương từ một nhà cung cấp Proof-of-Work (Tốn tài nguyên) Raft / BFT có thể cắm (Pluggable Consensus)
Lưu trữ dữ liệu lớn Cơ sở dữ liệu quan hệ/tệp phẳng On-chain (Gây phình to chuỗi khối) Off-chain IPFS (Đánh địa chỉ nội dung CID)
Kiểm soát truy cập API Key / Token tập trung Ẩn danh hoàn toàn PKI X.509, MSP (Membership Service Provider)
Chi phí giao dịch Chi phí duy trì hạ tầng Cloud Phí gas / Transaction fee biến động Không tốn phí tiền điện tử (Zero-crypto fee)

Phân loại yêu cầu theo mô hình MoSCoW

  • Must-have (Bắt buộc): Hợp đồng thông minh ghi nhận metadata chữ ký và cơ chế tính điểm (Threshold Scoring); cơ chế xác thực chứng thực số X.509; tải tệp Bloom Filter từ IPFS thông qua CID; quét mã độc cục bộ trên Android.
  • Should-have (Nên có): Phân tách các kênh giao tiếp riêng tư (Private Channels) giữa các tổ chức; cơ chế kiểm tra điểm ngưỡng tự động trước khi tải chữ ký về máy khách.
  • Could-have (Có thể có): Chức năng tải ngược mẫu mã độc chưa nhận diện lên kênh phân tích độc lập; cơ chế chạy node rút gọn trên Android.
  • Won't-have (Chưa thực hiện): Cơ chế đào coin hay tokenomics thương mại hóa; can thiệp quét sâu vào kernel hệ điều hành Android đòi hỏi quyền Root.

Thiết kế hệ thống

Kiến trúc giải pháp được phân tầng rõ ràng nhằm tối ưu hóa hiệu năng và bảo mật:

+-----------------------------------------------------------------------------------+
|                              KIẾN TRÚC MÔ HÌNH HỆ THỐNG                           |
|                                                                                   |
|  +-----------------------------------------------------------------------------+  |
|  | [1] TẦNG QUẢN TRỊ & CUNG CẤP CHỮ KÝ (Authorities & Admins)                 |  |
|  |     - Orderer Service (Raft)       - Org MSP (CA X.509)                     |  |
|  |     - Peer Nodes (Endorsing/Commit) - Admin CLI / Chaincode Manager          |  |
|  +-----------------------------------------------------------------------------+  |
|                                         |                                         |
|                                         v (gRPC / Chaincode Invocation)           |
|  +-----------------------------------------------------------------------------+  |
|  | [2] TẦNG DỮ LIỆU & ĐỒNG THUẬN (Hyperledger Fabric v2.5)                     |  |
|  |     - Channel: signature-channel                                            |  |
|  |     - State Database: LevelDB / CouchDB                                     |  |
|  |     - Smart Contract: VirusSigChaincode (Go)                                |  |
|  +-----------------------------------------------------------------------------+  |
|                                         |                                         |
|                                         v (CID Reference)                         |
|  +-----------------------------------------------------------------------------+  |
|  | [3] TẦNG LƯU TRỮ PHÂN TÁN (IPFS Kubo v0.26+)                                |  |
|  |     - Content Addressing (CIDv1)   - Distributed Hash Table (DHT)           |  |
|  |     - Bitswap Protocol             - Merkle DAG File Blocks                 |  |
|  +-----------------------------------------------------------------------------+  |
|                                         |                                         |
|                                         v (HTTP Gateway / REST API)               |
|  +-----------------------------------------------------------------------------+  |
|  | [4] TẦNG KHÁCH HÀNG (Android Mobile App - HypatiaX)                         |  |
|  |     - PKCS#12 Keystore             - Guava BloomFilter Engine               |  |
|  |     - Signature Sync Manager       - Local Malware Scanner Service          |  |
|  +-----------------------------------------------------------------------------+  |
+-----------------------------------------------------------------------------------+

Technology Stack và phiên bản cụ thể

  • Blockchain Framework: Hyperledger Fabric v2.5.x LTS
  • Smart Contract Language: Go v1.21+ (sử dụng fabric-contract-api-go)
  • Off-chain Storage: IPFS Kubo v0.26.0 (chạy trên môi trường Linux/Docker và Termux Android)
  • Mobile Client: Hypatia Android Engine, Java 17 / Kotlin, Android SDK API 34 (Android 14)
  • Cấu trúc dữ liệu chữ ký: Google Guava BloomFilter (định dạng nhị phân tối ưu hóa bộ nhớ)
  • Giao thức mạng & Bảo mật: gRPC qua TLS song phương (mTLS), Định dạng chứng chỉ PKCS#12, Chuẩn mã hóa SHA-256

Cấu trúc dữ liệu Smart Contract (Go Structs)

Chữ ký virus và phiếu bầu được mô hình hóa chặt chẽ trong Chaincode:

// VirusSignature định nghĩa cấu trúc dữ liệu của một chữ ký virus trên Ledger
type VirusSignature struct {
    SignatureID   string          `json:"signature_id"`   // Định danh duy nhất của chữ ký
    VirusName     string          `json:"virus_name"`     // Tên định danh mã độc (e.g., Android.Trojan.Banker)
    IPFSHash      string          `json:"ipfs_hash"`      // CID của tệp định nghĩa chữ ký trên IPFS
    SubmitterOrg  string          `json:"submitter_org"`  // Tổ chức khởi tạo chữ ký (MSP ID)
    SubmitTime    int64           `json:"submit_time"`    // Unix timestamp thời điểm gửi
    Score         int             `json:"score"`          // Điểm tín nhiệm tích lũy từ các tổ chức
    Threshold     int             `json:"threshold"`      // Ngưỡng điểm bắt buộc để kích hoạt quét
    Votes         map[string]Vote `json:"votes"`          // Danh sách phiếu bầu: OrgMSP -> Vote
    Status        string          `json:"status"`         // Trạng thái: PENDING, APPROVED, REJECTED
}

// Vote biểu diễn lá phiếu thẩm định từ một Signature Authority
type Vote struct {
    VoterOrg   string `json:"voter_org"`   // MSP ID của tổ chức bỏ phiếu
    Decision   bool   `json:"decision"`    // true: Tán thành (Approve), false: Bác bỏ (Reject)
    Weight     int    `json:"weight"`      // Trọng số tín nhiệm của tổ chức
    VoteTime   int64  `json:"vote_time"`   // Thời gian thực hiện bỏ phiếu
    Comment    string `json:"comment"`     // Ghi chú thẩm định kỹ thuật
}

Methodology

Quy trình phát triển hệ thống áp dụng mô hình lặp (Iterative Lifecycle) kết hợp kiểm thử liên tục:

  1. Giai đoạn 1 (Thiết kế & Mô phỏng): Xác định định dạng chữ ký Bloom Filter, thiết lập mô hình tính điểm toán học $Score = \sum (Weight_i \times Decision_i)$, đặc tả Use Case và luồng nghiệp vụ.
  2. Giai đoạn 2 (Xây dựng hạ tầng cốt lõi): Thiết lập mạng Fabric với các tổ chức độc lập (Org1, Org2, OrdererOrg), lập trình Chaincode xử lý logic nghiệp vụ và triển khai cụm IPFS node.
  3. Giai đoạn 3 (Tích hợp Client di động): Xây dựng module cầu nối trên Android giúp ứng dụng Hypatia nạp chứng chỉ định danh PKCS#12, gửi yêu cầu truy vấn đến Ledger và tải tệp chữ ký từ IPFS.
  4. Giai đoạn 4 (Đánh giá & Tối ưu): Thực nghiệm đo đạc độ trễ mạng, mức tiêu thụ RAM/CPU, tỷ lệ phát hiện mã độc và kiểm tra khả năng chịu tải.

Implementation và kết quả

Development process

Logic thực thi của Smart Contract

Logic hợp đồng thông minh được cài đặt nhằm đảm bảo tính toàn vẹn: khi một tổ chức gửi chữ ký mới, trạng thái ban đầu là PENDING. Khi các tổ chức khác kiểm tra chéo mẫu virus và gọi hàm VoteSignature, điểm số sẽ tự động cập nhật.

// VoteSignature xử lý việc bỏ phiếu và cập nhật trạng thái chữ ký
func (s *SmartContract) VoteSignature(ctx contractapi.TransactionContextInterface, sigID string, approve bool, comment string) error {
    clientMSPID, err := ctx.GetClientIdentity().GetMSPID()
    if err != nil {
        return fmt.Errorf("failed to get client MSPID: %v", err)
    }

    sigBytes, err := ctx.GetStub().GetState(sigID)
    if err != nil || sigBytes == nil {
        return fmt.Errorf("virus signature %s not found", sigID)
    }

    var signature VirusSignature
    json.Unmarshal(sigBytes, &signature)

    // Kiểm tra chống gian lận: Không cho phép tự bỏ phiếu nhiều lần
    if _, exists := signature.Votes[clientMSPID]; exists {
        return fmt.Errorf("organization %s has already voted for this signature", clientMSPID)
    }

    weight := 1 // Có thể cấu hình trọng số theo danh tiếng của MSP
    vote := Vote{
        VoterOrg: clientMSPID,
        Decision: approve,
        Weight:   weight,
        VoteTime: time.Now().Unix(),
        Comment:  comment,
    }

    if signature.Votes == nil {
        signature.Votes = make(map[string]Vote)
    }
    signature.Votes[clientMSPID] = vote

    if approve {
        signature.Score += weight
    } else {
        signature.Score -= weight
    }

    // Đạt ngưỡng tin cậy -> Chuyển sang trạng thái APPROVED
    if signature.Score >= signature.Threshold {
        signature.Status = "APPROVED"
    }

    updatedBytes, _ := json.Marshal(signature)
    return ctx.GetStub().PutState(sigID, updatedBytes)
}

Tích hợp trên ứng dụng Android (HypatiaX)

  • Xác thực định danh: Người dùng cài đặt chứng chỉ bảo mật .p12 chứa Private Key và Certificate do Fabric CA cấp để thiết lập kênh mTLS an toàn tới Peer Node.
  • Xử lý tệp Bloom Filter: Ứng dụng đọc CID từ Ledger, kết nối tới IPFS Gateway nội bộ/công khai để tải tệp nhị phân Guava BloomFilter và nạp trực tiếp vào bộ nhớ RAM phục vụ quét siêu tốc ngoại tuyến.
+-----------------------------------------------------------------------------------+
|                        QUY TRÌNH XỬ LÝ PHÂN PHỐI VÀ QUÉT                          |
|                                                                                   |
|  [ Signature Authority ]                                                          |
|         |                                                                         |
|         | 1. Tạo BloomFilter & Upload                                             |
|         v                                                                         |
|  [ IPFS Network ] <------- Trả về CIDv1 (QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP)   |
|         |                                                                         |
|         | 2. Gửi SubmitSignature(sigID, virusName, CID, Threshold=2)              |
|         v                                                                         |
|  [ Hyperledger Fabric Ledger ]                                                    |
|         |                                                                         |
|         | 3. Authority 2 & 3 gọi VoteSignature(sigID, approve=true)                |
|         v                                                                         |
|  [ Ledger: Score=2 >= Threshold -> Status="APPROVED" ]                            |
|         |                                                                         |
|         | 4. HypatiaX (Android) kiểm tra mTLS & truy vấn chữ ký APPROVED          |
|         v                                                                         |
|  [ HypatiaX Client ]                                                              |
|         |                                                                         |
|         | 5. Tải BloomFilter qua CID từ IPFS & Nạp vào RAM (15-30MB)              |
|         v                                                                         |
|  [ Quét File Cục bộ: Match Hash SHA-256 -> Phát hiện & Cách ly Malware ]          |
+-----------------------------------------------------------------------------------+

Testing và validation

Hệ thống được kiểm thử thực tế trên mạng thử nghiệm gồm 2 Tổ chức xác thực (Org1, Org2), 1 Tổ chức Orderer (Raft Consensus), 1 Cụm IPFS Node và các thiết bị kiểm thử Android (Google Pixel / Samsung Galaxy chạy Android 11-14).

Thông số kiểm thử hiệu năng hạ tầng

Thành phần Container CPU khi rảnh (Idle) CPU khi hoạt động (Active) Bộ nhớ RAM sử dụng
peer0.org1.example.com 0.05% 4.12% 85.4 MB
peer0.org2.example.com 0.06% 3.98% 84.1 MB
orderer.example.com 0.02% 1.85% 42.6 MB
ipfs-daemon (Kubo) 0.10% 5.20% 110.2 MB
chaincode-virus_sig 0.00% 2.10% 28.5 MB

Kết quả thử nghiệm trên thiết bị Android

+-----------------------------------------------------------------------------------+
|               KẾT QUẢ QUÉT MALWARE TRÊN CLIENT ANDROID (HYPATIAX)                 |
+------------------------------------+----------------------------------------------+
| Tham số đánh giá                   | Kết quả thực nghiệm                         |
+------------------------------------+----------------------------------------------+
| Thời gian truy vấn Ledger (mTLS)   | 115 ms                                       |
| Thời gian tải BloomFilter từ IPFS  | 420 ms (Kích thước tệp ~2.4 MB)              |
| Tốc độ quét 1,000 tập tin APK/DEX  | 2.18 giây                                    |
| Bộ nhớ RAM tiêu thụ khi quét       | 28.4 MB                                      |
| Tỷ lệ phát hiện (Detection Rate)   | 99.4% (Tập mẫu mã độc Android thực tế)       |
| Tỷ lệ âm tính giả (False Negative) | 0.0% (Đối với các mẫu đã có chữ ký)          |
| Mức tiêu hao pin trung bình        | < 0.8% cho toàn bộ chu trình đồng bộ & quét  |
+------------------------------------+----------------------------------------------+

Kết quả đạt được

  • Triển khai thành công chu trình khép kín: Khởi tạo chữ ký $\rightarrow$ Tải lên IPFS $\rightarrow$ Ghi nhận Chaincode $\rightarrow$ Bỏ phiếu chéo giữa các tổ chức $\rightarrow$ Tự động đồng bộ và quét phát hiện mã độc trên Android.
  • Khử bỏ hoàn toàn nguy cơ giả mạo cơ sở dữ liệu chữ ký nhờ cơ chế xác thực kép: Chữ ký số mật mã X.509 + Băm toàn vẹn nội dung IPFS CID.
  • Đảm bảo ứng dụng di động hoạt động độc lập, quét mã độc không cần kết nối Internet liên tục sau khi tệp Bloom Filter đã được lưu đệm cục bộ.

Đổi mới và đóng góp

  1. Cơ chế đồng thuận chữ ký theo ngưỡng điểm tín nhiệm (Threshold Endorsement Model): Khác với các mô hình phân phối truyền thống nơi một tổ chức duy nhất nắm quyền quyết định, giải pháp áp dụng cơ chế đánh giá đa bên. Một chữ ký chỉ được triển khai rộng rãi cho người dùng cuối khi đạt đủ điểm đồng thuận, ngăn chặn triệt để tình trạng phát tán chữ ký sai lệch gây dương tính giả (False Positive) hoặc đầu độc cơ sở dữ liệu.
  2. Kiến trúc phân phối phân tách On-chain/Off-chain tối ưu: Thay vì lưu trữ toàn bộ dữ liệu chữ ký lên Blockchain gây phình to sổ cái (State Bloat) và nghẽn mạng, giải pháp chỉ lưu metadata, lịch sử biểu quyết và mã băm định danh (IPFS CID) trên chuỗi. Toàn bộ tệp cấu trúc dữ liệu Bloom Filter nặng được phân phối qua mạng P2P IPFS, tăng tốc độ phân phối lên 65% so với việc tải từ một máy chủ đơn lẻ khi có tải cao.
  3. Cầu nối bảo mật mTLS/PKI trực tiếp đến Client di động: Đồ án hiện thực hóa việc tích hợp hạ tầng khóa công khai (PKI) chuẩn doanh nghiệp vào một ứng dụng di động mã nguồn mở trên Android, cho phép xác thực phi tập trung mà không cần thông qua máy chủ ủy quyền (Backend Proxy).

Ứng dụng thực tế và triển khai

Tình huống ứng dụng thực tế

  • Liên minh an ninh mạng đa tổ chức (Cybersecurity Threat Intelligence Alliance): Các viện nghiên cứu, trường đại học và doanh nghiệp an ninh thông tin có thể cùng tham gia vào một mạng lưới Blockchain chung để chia sẻ các mẫu mã độc mới ngay khi vừa phân tích, giúp cộng đồng nhận bản cập nhật tức thời mà không lo ngại rò rỉ dữ liệu ngoài mong muốn.
  • Hệ thống BYOD (Bring Your Own Device) trong doanh nghiệp: Doanh nghiệp có thể thiết lập mạng Fabric nội bộ, cấp phát chứng chỉ số cho điện thoại của nhân viên để quản lý chính sách phòng chống phần mềm gián điệp một cách minh bạch và tự động.

Hướng dẫn triển khai nhanh hệ thống (Deployment Guide)

# 1. Khởi động mạng Hyperledger Fabric và tạo kênh 'sigchannel'
cd fabric-samples/test-network
./network.sh up createChannel -c sigchannel -ca

# 2. Đóng gói và cài đặt Smart Contract VirusSigChaincode
./network.sh deployCC -ccn virus_sig -ccp ../chaincode-go -ccl go -c sigchannel

# 3. Khởi chạy IPFS Node (Kubo Daemon)
ipfs init
ipfs daemon --enable-gc &

# 4. Tải tệp Bloom Filter lên IPFS và lấy CID
ipfs add signatures_db.bloom
# Output: added QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP signatures_db.bloom

# 5. Khởi tạo giao dịch gửi chữ ký qua CLI
peer chaincode invoke -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com \
  --tls --cafile $ORDERER_CA -C sigchannel -n virus_sig \
  -c '{"function":"SubmitSignature","Args":["SIG001","Trojan.AndroidOS.Agent","QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP","2"]}'

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Thiết bị di động hiện vẫn phải dựa vào IPFS Gateway cục bộ hoặc công khai để tải tệp thay vì chạy trực tiếp một nút IPFS hoàn chỉnh do giới hạn về quản lý tiến trình nền trên các phiên bản Android mới.
  • Quá trình phân phối chứng chỉ danh tính người dùng (PKCS#12 Keystore) cho người dùng cuối vẫn yêu cầu thao tác nhập thủ công, chưa có cổng cấp phát tự động dạng Enrollment Web Portal.

Hướng phát triển trong tương lai

  • Tích hợp kênh riêng biệt (Multi-channels): Phân loại kênh chuyên biệt cho từng họ mã độc (Ransomware Channel, Spyware Channel, Banking Trojan Channel) giúp thiết bị di động tùy chọn đồng bộ cơ sở dữ liệu theo nhu cầu.
  • Kênh tải lên mẫu virus tự động (Automated Malware Submission): Mở rộng hệ thống cho phép người dùng ẩn danh gửi mẫu đáng ngờ vào Sandbox phân tán để phân tích tự động bằng máy học (Machine Learning).
  • Phát triển Light Client: Tối ưu mã nguồn Go để chạy một Fabric Light Node siêu nhẹ trực tiếp trên hệ điều hành Android thông qua Android NDK.

Đối tượng hưởng lợi

  • Sinh viên & Nghiên cứu sinh: Cung cấp tài liệu tham khảo thực nghiệm chi tiết về việc kết hợp giữa công nghệ Sổ cái phân tán (DLT), hệ thống tệp phi tập trung (IPFS) và an ninh bảo mật trên thiết bị di động.
  • Kỹ sư phát triển Blockchain / Mobile: Cung cấp mã nguồn mẫu, cấu trúc Chaincode bằng Go và giải pháp xử lý chứng chỉ mTLS X.509 an toàn trên hệ điều hành Android.
  • Doanh nghiệp & Tổ chức An ninh mạng: Sở hữu mô hình kiến trúc tham chiếu để xây dựng mạng lưới chia sẻ thông tin tình báo mối đe dọa (Threat Intelligence) minh bạch, phi tập trung và chống tấn công chuỗi cung ứng.

Câu hỏi thường gặp

1. Yêu cầu kỹ thuật phần cứng và môi trường để triển khai hệ thống là gì?

Hạ tầng mạng yêu cầu máy chủ Linux (Ubuntu 20.04/22.04 LTS), tối thiểu 4 vCPU, 8GB RAM, cài đặt Docker v24+, Docker Compose v2+, Go v1.21+ và IPFS Kubo v0.26+. Phía người dùng yêu cầu thiết bị di động chạy Android 8.0 (API 26) trở lên với tối thiểu 50MB dung lượng bộ nhớ trống.

2. Hệ thống xử lý bài toán nghẽn mạng và mở rộng dữ liệu (Scalability) như thế nào?

Bằng cách tách biệt dữ liệu nhạy cảm/nhẹ (lưu trữ On-chain gồm CID, Metadata, Votes) và tệp dữ liệu dung lượng lớn (lưu trữ Off-chain trên IPFS), dung lượng sổ cái Fabric chỉ tăng vài kilobyte cho mỗi chữ ký. Cơ chế Bitswap của IPFS cho phép tải song song từ nhiều node lân cận, giúp hệ thống mở rộng tự nhiên khi số lượng người tham gia tăng lên.

3. Làm thế nào để ngăn chặn một cơ quan cung cấp chữ ký xấu (Malicious Authority) cố tình bỏ phiếu sai?

Hệ thống sử dụng cơ chế định danh nghiêm ngặt thông qua MSP và CA. Mọi thao tác gửi chữ ký hay bỏ phiếu đều được ký số bất biến trên sổ cái. Nếu một cơ quan có hành vi gian lận (cố tình approve mã độc hoặc reject chữ ký hợp lệ), danh tính của họ sẽ bị phát hiện ngay lập tức và quản trị viên mạng có thể thu hồi chứng chỉ (Revoke Certificate) hoặc giảm trọng số tín nhiệm về 0.

4. Quy trình nâng cấp hợp đồng thông minh (Chaincode Lifecycle) diễn ra như thế nào?

Hyperledger Fabric v2.x hỗ trợ quy trình quản trị vòng đời Chaincode dân chủ: Quản trị viên của từng tổ chức đóng gói phiên bản mới, cài đặt lên các Peer Node của mình, sau đó gửi giao dịch chấp thuận (Approve). Khi số lượng tổ chức chấp thuận đạt đủ chính sách kênh (Channel Policy), định nghĩa Chaincode mới sẽ được kích hoạt (Commit) trên toàn mạng.

5. Chi phí vận hành và tỷ suất hoàn vốn (ROI) của giải pháp này ra sao?

Do sử dụng nền tảng Hyperledger Fabric (không tốn phí gas) và IPFS mã nguồn mở, doanh nghiệp tiết kiệm 100% chi phí bản quyền blockchain thương mại. Chi phí duy nhất là tài nguyên máy chủ duy trì các node. ROI thể hiện ở việc loại bỏ nguy cơ thiệt hại hàng triệu USD do các cuộc tấn công chuỗi cung ứng và cắt giảm đến 40% chi phí băng thông máy chủ phân phối chữ ký truyền thống.


Kết luận

Đồ án tốt nghiệp "Tích hợp Blockchain vào phân phối chữ ký virus của trình quét mã độc trên Android" của tác giả Hoàng Mai Thiên Phúc đã giải quyết thành công một trong những lỗ hổng bảo mật nghiêm trọng nhất của hệ thống phòng chống mã độc truyền thống: sự phụ thuộc vào máy chủ cập nhật tập trung. Bằng việc kết hợp sáng tạo giữa Hyperledger Fabric, IPFS và công cụ quét mã nguồn mở Hypatia, giải pháp đã mang lại một kiến trúc phân phối chữ ký virus an toàn, bất biến, có khả năng mở rộng cao và loại bỏ hoàn toàn điểm lỗi đơn lẻ. Đây là bước đệm quan trọng chứng minh tính khả thi vượt trội của công nghệ sổ cái phân tán trong việc xây dựng các giải pháp an ninh mạng thế hệ mới.