Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ với xu hướng tập trung vào các không gian số (Metaverse) và tài chính phi tập trung, công nghệ Blockchain trở thành một giải pháp quan trọng nhằm giải quyết bài toán lưu trữ dữ liệu chính xác, an toàn và minh bạch. Bên cạnh việc nhiều tập đoàn công nghệ lớn nhận được nguồn vốn dồi dào, các nhóm phát triển dự án vừa và nhỏ thường gặp khó khăn trong việc tìm kiếm nguồn tài chính do tính ứng dụng ban đầu chưa đủ thuyết phục các quỹ đầu tư mạo hiểm. Xuất phát từ thực tiễn đó, khóa luận tốt nghiệp ngành Kỹ thuật Phần mềm tại Trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM của nhóm tác giả Nguyễn Trí Đức và Trương Kim Điền (dưới sự hướng dẫn của ThS. Nguyễn Tấn Toàn, thực hiện năm 2024) đã lựa chọn đề tài: "Nghiên cứu và xây dựng hệ thống hỗ trợ mua bán token trên blockchain" (Research and build a trading token system in blockchain). Đề tài hướng tới việc tạo lập kênh huy động vốn cộng đồng (Crypto Launchpad) cho các nhà phát triển dự án, đồng thời giảm thiểu rủi ro an ninh mạng và thao túng dữ liệu thông qua cơ chế phi tập trung.
Vấn đề kỹ thuật cốt lõi được tác giả đặt ra là khắc phục sự phân mảnh giữa các mạng lưới blockchain. Phần lớn các nền tảng launchpad hiện nay chỉ cho phép dự án chấp nhận thanh toán bằng một loại token cố định trên một chuỗi nhất định, buộc người mua phải thực hiện các bước chuyển đổi (swap) phức tạp. Nhóm tác giả đề xuất giải pháp ứng dụng giao thức tương tác đa chuỗi Axelar để cho phép người dùng sử dụng token từ nhiều blockchain Layer-1 khác nhau để mua token dự án mà không cần chuyển đổi thủ công trước.
Mục tiêu nghiên cứu của đề tài được xác định gồm 2 mục tiêu chính:
- Xây dựng hệ thống website:
- Cung cấp giao diện trực quan giới thiệu dự án, doanh nghiệp, chính sách và quy trình đăng ký mở bán token.
- Cung cấp giao diện quản lý tài khoản, đăng tin giao dịch, thực hiện giao dịch đầu tư.
- Cung cấp biểu đồ và số liệu thống kê trực quan nhằm hỗ trợ công tác quản trị và theo dõi tiến độ bán token.
- Xây dựng hệ thống giao dịch ứng dụng công nghệ Blockchain:
- Thực hiện quy trình trao đổi token và phân phối lại token dự án cho người mua một cách minh bạch.
- Ứng dụng giao thức truyền tin đa chuỗi Axelar để hỗ trợ đăng ký và mua bán dự án trên nhiều blockchain khác nhau.
- Xây dựng cơ chế quét sự kiện (Scanner) liên tục trên blockchain để đồng bộ dữ liệu giao dịch về hệ thống máy chủ.
Đối tượng và phạm vi nghiên cứu:
- Phạm vi môi trường: Nền tảng ứng dụng Web.
- Phạm vi chức năng: Xây dựng hệ thống Crypto Launchpad với các giai đoạn mở bán (Presale, Public sale); hỗ trợ phát hành token chuẩn ERC-20; tính năng Staking trả thưởng; tính năng Airdrop theo whitelist/chu kỳ thời gian; tích hợp tính năng Swap thông qua bên thứ ba (Squid); xác thực người dùng qua ví Web3; bảng điều khiển quản trị viên để kiểm duyệt dự án.
- Đối tượng sử dụng: Các chủ dự án blockchain có nhu cầu phát hành token gọi vốn từ cộng đồng và người dùng cá nhân có nhu cầu mua token từ các dự án tiềm năng.
- Thời gian thực hiện: 16 tuần (từ ngày 19/02/2024 đến tháng 07/2024), chia làm 2 giai đoạn với 8 sprint (mỗi sprint kéo dài 2 tuần).
Cơ sở lý thuyết và phương pháp
Khóa luận thiết lập nền tảng dựa trên các khái niệm, chuẩn kỹ thuật và giao thức công nghệ sau:
- Công nghệ Blockchain: Mô hình cơ sở dữ liệu phân tán dạng chuỗi khối liên kết (linked list), sử dụng giá trị băm (hash), mốc thời gian (timestamp), nonce và cấu trúc Merkle Root. Nghiên cứu phân tích các cơ chế đồng thuận (Proof of Work, Proof of Stake) cùng các đặc tính kỹ thuật: tính bất biến, tính minh bạch, tính độc lập và khả năng truy xuất lịch sử giao dịch.
- Tiêu chuẩn Token ERC-20: Đặc tả kỹ thuật phát hành token trên mạng lưới Ethereum dựa trên đề xuất cải tiến EIP-20 (năm 2015 bởi Vitalik Buterin và Fabian Vogelsteller), quy định các quy tắc chuẩn hóa giao diện smart contract cho việc tạo mới, chuyển giao và tương tác dApp.
- Giao thức Axelar Network: Nền tảng cross-chain tổng quát (General Cross-chain Messaging) xây dựng trên bộ công cụ Cosmos SDK, vận hành theo mô hình Hub-and-Spoke với mạng lưới validator và relayer phi tập trung. Axelar hoạt động như một API Gateway trung gian để định tuyến thông tin giữa các chuỗi khối mà không cần thiết lập kết nối điểm-điểm (Point-to-Point) phức tạp.
- Mạng Chainlink Price Oracles: Hệ thống oracle phi tập trung tổng hợp dữ liệu giá từ các sàn giao dịch (Binance, Coinbase, Kraken, Uniswap...) thông qua các nhà vận hành nút (Node Operators) để cung cấp dữ liệu giá off-chain chính xác cho smart contract.
Phương pháp nghiên cứu và thực hiện bao gồm:
- Phương pháp khảo sát và đánh giá: Phân tích nhu cầu người dùng; khảo sát chức năng và hạn chế của các nền tảng launchpad thực tế gồm PinkSale, ChainGPT Pad và Binance Launchpad để lựa chọn tập chức năng cốt lõi.
- Phương pháp làm việc và phát triển phần mềm: Áp dụng mô hình phát triển linh hoạt chia theo Sprint 2 tuần; phân tích thiết kế hệ thống qua biểu đồ Use-case, sơ đồ lớp đối tượng (Class Diagram) và sơ đồ cơ sở dữ liệu (ERD).
- Nền tảng công nghệ và nguồn dữ liệu:
- Frontend: ReactJS kết hợp thư viện Wagmi để kết nối và tương tác với ví Web3 và blockchain.
- Backend: Ngôn ngữ Python sử dụng framework FastAPI để xây dựng các RESTful API.
- Cơ sở dữ liệu: PostgreSQL (triển khai trên nền tảng Supabase) để lưu trữ thông tin nghiệp vụ và dữ liệu đệm; MongoDB hỗ trợ cấu trúc dữ liệu mở rộng.
- Môi trường phát triển & kiểm thử: Visual Studio Code, tương tác mạng thử nghiệm blockchain (Testnet).
Thiết kế và triển khai
Hệ thống được thiết kế theo kiến trúc phân tầng kết hợp giữa ứng dụng Web truyền thống và hạ tầng Blockchain phi tập trung:
[ Giao diện Người dùng (ReactJS / Wagmi) ]
|
+-------------+-------------+
| |
[ Máy chủ API (FastAPI) ] [ Smart Contract (Blockchain) ]
| |
[ Database (PostgreSQL) ] <--- [ Scanner (Event Listener) ]
-
Thành phần kiến trúc:
- Website (Frontend & Backend): Giao diện ReactJS tiếp nhận tương tác người dùng, gửi dữ liệu cấu hình dự án về máy chủ FastAPI và lưu trữ các bản ghi phụ trợ tại cơ sở dữ liệu PostgreSQL (Supabase) nhằm tăng tốc độ truy xuất và giảm tải chi phí lưu trữ trên blockchain.
- Smart Contract: Đóng vai trò hạt nhân logic thực thi giao dịch, xử lý quy trình nạp token, khóa token, phân phối token và giao tiếp cross-chain qua Axelar.
- Bộ lắng nghe sự kiện (Scanner): Dịch vụ chạy ngầm liên tục quét các sự kiện (events) được phát ra từ smart contract trên blockchain, tự động cập nhật trạng thái giao dịch vào cơ sở dữ liệu PostgreSQL và phản hồi kết quả xử lý cho người dùng.
-
Quy trình luồng dữ liệu:
- Người dùng khởi tạo thông tin dự án/giao dịch trên giao diện -> Dữ liệu văn bản được lưu tạm tại cơ sở dữ liệu qua API -> Người dùng ký xác nhận giao dịch qua ví Web3 gửi đến Smart Contract -> Smart Contract thực thi và phát sinh Event trên chuỗi -> Bộ Scanner bắt Event và ghi nhận trạng thái hoàn tất vào PostgreSQL -> Giao diện cập nhật hiển thị theo thời gian thực.
-
Mô hình đối tượng chính trong hệ thống:
| Tên lớp đối tượng |
Mô tả chức năng và thuộc tính chính |
Project |
Lưu trữ thông tin tổng quan của dự án (tên, mô tả, logo, chủ sở hữu, trạng thái kiểm duyệt). |
Presale |
Cấu hình giai đoạn mở bán sớm (tỷ giá token, soft cap, hard cap, thời gian bắt đầu, kết thúc). |
PublicSale |
Cấu hình giai đoạn mở bán công khai ra cộng đồng. |
WhitePaper |
Lưu trữ liên kết và thông tin tài liệu kỹ thuật của dự án. |
Roadmap |
Lưu trữ lộ trình phát triển của dự án theo các mốc thời gian. |
Tokenomic |
Quản lý thông tin phân bổ tỷ lệ token của dự án. |
Channel |
Quản lý các liên kết mạng xã hội và kênh truyền thông của dự án. |
User |
Quản lý thông tin người dùng và địa chỉ ví Web3. |
AirdropPool & Receiver |
Quản lý quỹ phát thưởng token và danh sách địa chỉ ví nhận thưởng (whitelist). |
Staking & Stake |
Quản lý các nhóm staking, tỷ lệ lãi suất/thưởng và thông tin ký gửi token của người dùng. |
Investor |
Quản lý thông tin và lịch sử đóng góp của các nhà đầu tư vào từng dự án. |
Analytic |
Lưu trữ các chỉ số phân tích, tiến độ bán và biểu đồ trực quan hóa dữ liệu. |
Nội dung chính theo từng chương
Chương 1. Mở đầu
Chương 1 trình bày tổng quan về lý do chọn đề tài, sự cần thiết của giải pháp gọi vốn phi tập trung cho các dự án Web3, 2 mục tiêu thực hiện, phạm vi môi trường web và đối tượng sử dụng. Nhóm tác giả vạch rõ phương pháp làm việc nhóm 2 thành viên và bảng kế hoạch chi tiết gồm 8 sprint:
- Giai đoạn 1 (Sprint 1 - 4: 19/02/2024 – 14/04/2024): Đăng ký đề tài, lập đề cương chi tiết; nghiên cứu công nghệ, xây dựng sơ đồ Use-case, Class Diagram, ERD; thiết kế giao diện, cài đặt kết nối ví MetaMask; hoàn thiện giao diện cơ bản và cấu trúc backend; lập trình smart contract và báo cáo giữa kỳ.
- Giai đoạn 2 (Sprint 5 - 8: 15/04/2024 – kết thúc): Xây dựng backend Scanner quét sự kiện blockchain, xây dựng API cơ bản; hoàn thiện tính năng giao dịch token và các module phụ trợ; tổng kiểm thử, triển khai ứng dụng và hoàn thành báo cáo tốt nghiệp.
Chương 2. Tổng quan
Chương này khảo sát chi tiết 3 nền tảng launchpad tiêu biểu trên thị trường tiền mã hóa:
- PinkSale: Cung cấp đầy đủ công cụ tạo launchpad, lock, airdrop, staking; tuy nhiên nhược điểm là loại token dùng trong giao dịch phải quy định cứng từ lúc tạo và bị giới hạn tối đa 5 loại token.
- ChainGPT Pad: Nền tảng IDO có quy trình thẩm định dự án nghiêm ngặt (incubation/acceleration phase); nhược điểm là cố định token giao dịch và chỉ hỗ trợ 6 blockchain.
- Binance Launchpad: Hệ sinh thái lớn thuộc Binance, độ uy tín và thanh khoản cao; nhược điểm là cơ chế đóng kín, chỉ hỗ trợ thanh toán bằng các token thuộc mạng BNB Chain (chủ yếu là đồng BNB native).
| Nền tảng khảo sát |
Ưu điểm chính |
Hạn chế cốt lõi |
| PinkSale |
Giao diện thân thiện, hỗ trợ nhiều chain, tích hợp tạo token, lock, airdrop, staking. |
Token thanh toán phải cấu hình trước, giới hạn tối đa 5 loại token. |
| ChainGPT Pad |
Giao diện hoàn thiện, quy trình thẩm định chất lượng dự án tốt, cộng đồng lớn. |
Cố định token thanh toán khi tạo launchpad, chỉ hỗ trợ 6 chain. |
| Binance Launchpad |
Hệ sinh thái quy mô toàn cầu, độ uy tín và bảo mật cao, hỗ trợ mining/IDO. |
Chỉ hỗ trợ thanh toán trong phạm vi mạng BNB Chain (đồng BNB). |
Chương 2 kết luận rằng các giải pháp hiện hành đều đặt ra rào cản buộc người dùng phải sở hữu chính xác loại token mà chủ dự án quy định, gây bất tiện trong giao dịch và làm giảm hiệu quả gọi vốn.
Chương 3. Cơ sở lý thuyết
Nội dung chương 3 tập trung làm rõ các nền tảng lý thuyết và công nghệ phục vụ việc xây dựng hệ thống:
- Blockchain: Phân tích chi tiết cấu trúc khối (Header, Previous Hash, Nonce, Timestamp, Merkle Root) và 5 bước vận hành của một giao dịch (Tạo transaction -> Xác thực qua node -> Tạo block -> Cơ chế đồng thuận -> Thêm block vĩnh viễn vào chuỗi). Đánh giá ưu điểm (tính bất biến, minh bạch, độc lập, khả năng truy xuất) và nhược điểm (tốc độ/hiệu suất thấp hơn mô hình CRUD truyền thống, chi phí vận hành cao, khó chỉnh sửa lỗi dữ liệu đầu vào).
- Axelar Network: Trình bày kiến trúc giao thức truyền tin cross-chain phi tập trung, so sánh mô hình mạng Hub-and-Spoke của Axelar với mô hình Point-to-Point truyền thống.
- Chainlink Price Oracles: Mô tả đường ống tổng hợp dữ liệu (data pipeline) từ các sàn giao dịch tập trung/phi tập trung thông qua Data Aggregators và hệ thống nút Chainlink để đưa giá chuẩn vào smart contract.
- Chuẩn ERC-20: Giới thiệu lịch sử hình thành theo EIP-20 (Vitalik Buterin & Fabian Vogelsteller, 2015) và nguyên lý vận hành token qua các quy tắc lập trình trên smart contract.
Chương 4. Thiết kế hệ thống
Chương 4 là chương trọng tâm mô tả chi tiết thiết kế hệ thống phần mềm:
- Kiến trúc tổng quan: Phân tích tương tác giữa 3 thành phần Frontend/Backend, Smart Contract và Scanner.
- Mô hình Actor và Use-case: Xác định 2 Actor chính là
Website user và Project owner. Lập danh mục và đặc tả chi tiết 13 Use-case: Kết nối ví (UC-1.1), Xem lịch sử giao dịch (UC-1.2), Tạo token (UC-2.1), Tạo presale (UC-2.2), Mua token presale (UC-2.3), Xem danh sách presale (UC-2.4), Xem chi tiết presale (UC-2.5), Tạo public sale (UC-3.1), Mua token public sale (UC-3.2), Xem danh sách public sale (UC-3.3), Xem chi tiết public sale (UC-3.4), Staking (UC-4.1), Airdrop (UC-4.2).
- Thiết kế hướng đối tượng: Đặc tả chi tiết 14 lớp đối tượng dữ liệu trong hệ thống (
Project, Presale, PublicSale, WhitePaper, Roadmap, Tokenomic, Channel, User, AirdropPool, Receiver, Staking, Stake, Investor, Analytic).
- Thiết kế giao diện: Xây dựng sơ đồ liên kết màn hình và thiết kế các component giao diện người dùng (Project card dọc/ngang, NavBar khi chưa/đã kết nối ví, Footer, Trang chủ, Trang tạo presale/public sale qua nhiều bước, Trang danh sách và chi tiết dự án).
Chương 5. Cài đặt và kiểm thử
Chương 5 trình bày việc thiết lập môi trường triển khai thực tế của ứng dụng web và smart contract trên môi trường thử nghiệm; tiến hành kiểm thử chức năng cho toàn bộ các ca sử dụng từ kết nối ví Web3 (MetaMask), phát hành token ERC-20, tạo đợt mở bán presale/public sale, mua token đa chuỗi, đến các tính năng phụ trợ như staking và airdrop.
Kết quả và đóng góp
Khóa luận đã đạt được các kết quả cụ thể sau:
- Xây dựng hoàn chỉnh ứng dụng web Crypto Launchpad kết nối trực tiếp với ví Web3 (MetaMask), cung cấp giao diện quản lý quá trình gọi vốn trực quan cho cả chủ dự án và người đầu tư.
- Hiện thực hóa thành công các module nghiệp vụ cốt lõi: tạo token ERC-20 theo yêu cầu, tạo đợt mở bán phân kỳ (Presale và Public sale), tính năng ký gửi nhận thưởng (Staking) và tính năng phân phối token theo whitelist (Airdrop).
- Tích hợp thành công giao thức Axelar và giải pháp swap bên thứ ba (Squid), cho phép người mua sử dụng nhiều loại token trên các blockchain khác nhau để tham gia mua token dự án mà không cần chuyển đổi thủ công trước đó.
- Xây dựng thành công hệ thống Scanner đồng bộ sự kiện blockchain theo thời gian thực về cơ sở dữ liệu PostgreSQL (Supabase), giải quyết được bài toán chậm trễ truy xuất dữ liệu của blockchain trên giao diện người dùng.
Đóng góp kỹ thuật của đề tài: Khắc phục được nhược điểm cố định đơn chuỗi và giới hạn loại token thanh toán vốn tồn tại trên các nền tảng launchpad phổ biến hiện nay (như PinkSale, ChainGPT Pad, Binance Launchpad), mang lại sự tiện lợi và tối ưu hóa khả năng tiếp cận thanh khoản cho các dự án khởi nghiệp Web3.
Hạn chế và hướng nghiên cứu tiếp
Dựa trên phạm vi và nội dung được nhóm tác giả trình bày trong tài liệu, các hạn chế và hướng mở của đề tài bao gồm:
- Hạn chế:
- Thời gian thực hiện đồ án giới hạn trong 16 tuần, hệ thống mới được triển khai và kiểm thử trên môi trường mạng thử nghiệm (testnet), chưa tiến hành kiểm thử tải lớn trên mạng chính thức (mainnet).
- Khả năng tương tác đa chuỗi vẫn phụ thuộc hoàn toàn vào hạ tầng và độ khả dụng của các dịch vụ bên thứ ba (Axelar Network và Squid protocol).
- Hướng phát triển tiếp theo:
- Bổ sung thêm các tiện ích quản trị và công cụ hỗ trợ để gia tăng trải nghiệm người dùng trên website.
- Tích hợp thêm các giải pháp cross-chain khác nhằm mở rộng phạm vi và độ bao phủ của các mạng blockchain được hỗ trợ.
- Thực hiện quy trình kiểm toán mã nguồn smart contract (smart contract audit) với các đơn vị bảo mật chuyên nghiệp trước khi chính thức triển khai trên mạng chính thức (mainnet).
Giá trị tham khảo
Khóa luận là tài liệu tham khảo hữu ích cho:
- Sinh viên và học viên ngành Kỹ thuật Phần mềm, Công nghệ Thông tin, Hệ thống Thông tin: Tham khảo quy trình phân tích thiết kế hệ thống hoàn chỉnh cho một ứng dụng phi tập trung (dApp), từ khâu mô hình hóa Use-case, thiết kế sơ đồ lớp đối tượng đến phân chia Sprint theo chuẩn kỹ thuật phần mềm.
- Lập trình viên và nhà phát triển ứng dụng Web3: Tham khảo giải pháp kiến trúc kết hợp Web2 - Web3 (sử dụng dịch vụ Scanner để lắng nghe sự kiện blockchain và đồng bộ về cơ sở dữ liệu quan hệ PostgreSQL nhằm tối ưu hiệu năng giao diện).
- Các nhóm nghiên cứu về công nghệ đa chuỗi (Cross-chain): Cung cấp tài liệu thực hành về cách tích hợp giao thức truyền tin tổng quát Axelar Network vào bài toán launchpad và phân phối token.
Câu hỏi thường gặp
1. Điểm khác biệt cốt lõi của hệ thống launchpad trong đề tài so với nền tảng PinkSale là gì?
Trên nền tảng PinkSale, loại token thanh toán cho mỗi launchpad phải được quy định cố định trước khi tạo và bị giới hạn tối đa 5 loại token. Hệ thống trong đề tài ứng dụng giao thức Axelar để cho phép người mua sử dụng nhiều loại token từ nhiều blockchain Layer-1 khác nhau mà không cần quy đổi thủ công trước.
2. Vai trò của giao thức Axelar trong kiến trúc hệ thống là gì?
Axelar đóng vai trò là giao thức truyền tin đa chuỗi (General Cross-chain Messaging) vận hành theo mô hình Hub-and-Spoke, hoạt động như một API Gateway trung gian giúp xác thực và chuyển tiếp các thông điệp giao dịch giữa các blockchain khác nhau một cách an toàn và tự động.
3. Thành phần Scanner trong hệ thống đảm nhiệm chức năng gì?
Scanner là dịch vụ chạy ngầm làm nhiệm vụ quan sát và quét liên tục các sự kiện (events) được phát ra từ smart contract trên blockchain. Khi giao dịch hoàn tất, Scanner bắt sự kiện và cập nhật trạng thái vào cơ sở dữ liệu PostgreSQL của hệ thống để hiển thị tức thì cho người dùng.
4. Tech stack chính được sử dụng để phát triển hệ thống gồm những gì?
Hệ thống sử dụng ReactJS kết hợp thư viện Wagmi ở phía Frontend; ngôn ngữ Python với framework FastAPI ở phía Backend; cơ sở dữ liệu PostgreSQL (lưu trữ trên Supabase) kết hợp MongoDB; smart contract viết trên nền tảng Ethereum theo chuẩn ERC-20; tích hợp giao thức Axelar và Squid swap.
5. Hệ thống hỗ trợ các hình thức phân phối và quản trị token nào?
Hệ thống hỗ trợ 4 hình thức chính: Mở bán sớm (Presale), Mở bán công khai (Public sale), Trả thưởng ký gửi token (Staking) và Phân phối token định kỳ theo danh sách ưu tiên (Airdrop whitelist).
Kết luận
Khóa luận tốt nghiệp của sinh viên Nguyễn Trí Đức và Trương Kim Điền đã hoàn thành mục tiêu nghiên cứu và xây dựng hoàn chỉnh hệ thống hỗ trợ mua bán token phi tập trung trên môi trường Web. Bằng việc kết hợp công nghệ smart contract chuẩn ERC-20 với giao thức truyền tin đa chuỗi Axelar và cơ chế Scanner đồng bộ dữ liệu, hệ thống đã giải quyết hiệu quả rào cản thanh toán đơn chuỗi trên các launchpad hiện nay. Đây là công trình kỹ thuật phần mềm có cấu trúc chặt chẽ, đáp ứng tốt yêu cầu thực tiễn về phát triển ứng dụng Web3 và có giá trị tham khảo cao cho việc phát triển các nền tảng tài chính phi tập trung đa chuỗi.