Bối cảnh và vấn đề nghiên cứu

Khóa luận tốt nghiệp kỹ sư ngành Hệ thống Thông tin của tác giả Trần Việt Cường (mã số sinh viên: 16520159), do ThS. Hà Lê Hoài Trung hướng dẫn tại Trường Đại học Công nghệ Thông tin – Đại học Quốc gia Thành phố Hồ Chí Minh (năm 2022), đặt trong bối cảnh cuộc Cách mạng công nghiệp lần thứ tư thúc đẩy sự phát triển mạnh mẽ của thương mại điện tử (TMĐT), đặc biệt là TMĐT xuyên biên giới. Theo các dữ liệu thống kê được tác giả trích dẫn từ Sách trắng Thương mại điện tử Việt Nam, năm 2020 tốc độ tăng trưởng của TMĐT Việt Nam đạt 18% với quy mô 11,8 tỷ USD, là quốc gia duy nhất tại Đông Nam Á ghi nhận mức tăng trưởng hai con số trong bối cảnh đại dịch COVID-19. Số lượng người tham gia mua sắm trực tuyến tăng từ 32,7 triệu người (năm 2016) lên 49,3 triệu người (năm 2020). Báo cáo từ Google, Temasek và Bain & Company dự báo quy mô nền kinh tế số Việt Nam có thể vượt ngưỡng 52 tỷ USD vào năm 2025, xếp thứ ba khu vực ASEAN.

Bên cạnh sự tăng trưởng quy mô, văn bản chỉ ra những tồn tại mang tính cố hữu của các sàn giao dịch TMĐT tập trung hiện nay:

  1. Thiếu hụt lòng tin giữa các bên tham gia: giữa nhà cung cấp với người bán, người bán với người mua, và đơn vị vận chuyển với khách hàng.
  2. Khó khăn trong việc xác thực điểm tín dụng và độ uy tín của các chủ thể giao dịch.
  3. Thiếu tính minh bạch trong truy xuất nguồn gốc sản phẩm từ khâu sản xuất đến lưu thông trên thị trường.
  4. Rủi ro an ninh thông tin, nguy cơ bị can thiệp dữ liệu máy chủ tập trung và vấn nạn hàng giả, hàng kém chất lượng.

Trước thực trạng đó, tác giả xác định mục tiêu và các nhiệm vụ nghiên cứu gồm:

  1. Nghiên cứu công nghệ chuỗi khối (Blockchain) và hợp đồng thông minh (Smart Contract) nhằm ứng dụng vào môi trường giao dịch phi tập trung.
  2. Cải tiến phương thức thanh toán điện tử hướng đến bảo vệ danh tính, hạn chế gian lận trung gian.
  3. Đảm bảo an toàn, toàn vẹn dữ liệu giao dịch và thông tin định danh người dùng trước các nguy cơ tấn công mạng.
  4. Thiết lập cơ chế đánh giá, xếp hạng độ tin cậy của khách hàng làm căn cứ phân loại thanh toán.
  5. Cải thiện công tác quản lý chuỗi cung ứng thông qua khả năng truy vết nguồn gốc hàng hóa và hỗ trợ quản lý kho bãi.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Quy trình trao đổi, mua bán sản phẩm trên sàn thương mại điện tử; các giải pháp định danh tài sản số thông qua tiêu chuẩn token không thể thay thế (NFT - ERC-721); kiến trúc ứng dụng phi tập trung (dApp).
  • Phạm vi không gian: Nghiên cứu được triển khai tại Khoa Hệ thống Thông tin, Trường Đại học Công nghệ Thông tin – Đại học Quốc gia TP.HCM.
  • Phạm vi thời gian: Đề tài thực hiện trong hơn 3 tháng, theo kế hoạch đề cương từ ngày 28/02/2022 đến ngày 11/06/2022.

Cơ sở lý thuyết và phương pháp

Khóa luận dựa trên nền tảng lý thuyết về hệ thống phân tán, mã hóa dữ liệu và công nghệ web thế hệ mới (Web3):

  • Cấu trúc Blockchain: Hệ thống khối liên kết thông qua con trỏ băm (hash pointer), trong đó mỗi khối lưu trữ giá trị băm của khối dữ liệu đứng trước, ngăn chặn hành vi sửa đổi dữ liệu quá khứ.
  • Cơ chế đồng thuận: So sánh giữa Bằng chứng công việc (Proof of Work - PoW), Bằng chứng cổ phần (Proof of Stake - PoS) và Bằng chứng cổ phần ủy quyền (Delegated Proof of Stake - DPoS).
  • Nền tảng Ethereum và máy ảo EVM (Ethereum Virtual Machine): Môi trường thực thi các hợp đồng thông minh hoàn chỉnh Turing (Turing-complete), vận hành dựa trên cơ chế phí gas nhằm ngăn chặn vòng lặp vô hạn và duy trì tài nguyên mạng.
  • Chuẩn token ERC-721 (Non-Fungible Token): Bộ tiêu chuẩn giao diện do William Entriken, Dieter Shirley, Jacob Evans và Nastassia Sachs đề xuất năm 2018, quy định tính duy nhất và không thể thay thế của từng đơn vị token đại diện cho sản phẩm vật lý hoặc tài sản số.
  • Phân loại token trên thị trường: Khóa luận phân tích bốn nhóm token chính gồm Security Tokens (token chứng khoán), Utility Tokens (token tiện ích như ETH), Equity Tokens (token cổ phần) và Payment Tokens (token thanh toán như Bitcoin, Litecoin).

Phương pháp nghiên cứu thực tế gồm 5 giai đoạn có tính tuần tự:

  1. Phân tích yêu cầu bài toán quản trị sản phẩm và chuỗi cung ứng TMĐT.
  2. Tham khảo các giải pháp và ứng dụng Web3 tương tự đã có trên thị trường.
  3. Nghiên cứu tài liệu kỹ thuật về các công nghệ, framework chuyên dụng (Solidity, Truffle, Webpack, ReactJS).
  4. Phát triển ứng dụng dApp thử nghiệm tích hợp ví điện tử và hợp đồng thông minh.
  5. Kiểm thử hệ thống trên môi trường mô phỏng cục bộ và triển khai mạng thử nghiệm.

Nguồn dữ liệu của khóa luận bao gồm: Sách trắng Thương mại điện tử Việt Nam năm 2020 của Bộ Công Thương; báo cáo kinh tế số của Google, Temasek và Bain & Company; tài liệu kỹ thuật Ethereum, chuẩn đề xuất ERC (Ethereum Request for Comments); cùng các bài viết kỹ thuật từ trung tâm nghiên cứu công nghệ GMO-Z.com Vietnam Lab Center.

Thiết kế và triển khai

Khóa luận thuộc dạng đồ án xây dựng ứng dụng phần mềm minh họa (demo dApp). Tác giả đã mô tả kiến trúc, công nghệ và quy trình triển khai như sau:

Kiến trúc hệ thống Web3

Hệ thống vận hành theo mô hình phân tán 3 lớp chính:

  1. Tầng giao diện người dùng (Frontend): Ứng dụng xây dựng trên nền tảng ReactJS kết hợp Webpack để đóng gói module và tối ưu hóa tài nguyên tĩnh, tương tác trực tiếp với người dùng thông qua trình duyệt web.
  2. Tầng kết nối trung gian (Provider & Wallet): Sử dụng cổng kết nối Infura đóng vai trò nhà cung cấp hạ tầng nút (Node Provider) liên lạc giữa ứng dụng web và mạng Blockchain; tiện ích ví MetaMask đóng vai trò ký duyệt giao dịch số và quản lý khóa người dùng.
  3. Tầng hợp đồng thông minh và lưu trữ (Blockchain Layer): Các Smart Contract viết bằng ngôn ngữ Solidity, biên dịch thành mã máy (bytecode) chạy trên môi trường EVM của mạng Ethereum, chịu trách nhiệm lưu trữ trạng thái đơn hàng, dữ liệu sản phẩm và quyền sở hữu token ERC-721.
Thành phần kỹ thuật Công nghệ / Công cụ sử dụng Vai trò trong hệ thống
Hợp đồng thông minh Solidity (phiên bản pragma 0.6.0) Định nghĩa logic nghiệp vụ, quản lý quyền sở hữu sản phẩm dưới dạng NFT
Chuẩn token ERC-721 Định danh tính duy nhất của từng mặt hàng trên blockchain
Khung phát triển Smart Contract Truffle Framework Biên dịch, viết kịch bản migration và tự động hóa kiểm thử
Môi trường thử nghiệm cục bộ Ganache Giả lập chuỗi khối Ethereum và các tài khoản thử nghiệm có sẵn số dư
Môi trường mạng kiểm thử Ropsten Testnet Triển khai hợp đồng thông minh lên môi trường chuỗi khối thử nghiệm công khai
Cổng kết nối nút mạng Infura API Kết nối RPC giữa ứng dụng web và mạng lưới chuỗi khối Ethereum
Quản lý khóa và giao dịch Ví MetaMask Xác thực danh tính, lưu ký token và ký số các transaction phát sinh
Giao diện người dùng ReactJS, Webpack Xây dựng giao diện web tương tác, hiển thị danh mục và đơn đặt hàng
Môi trường thực thi backend Node.js Hỗ trợ quản lý gói thư viện phụ thuộc và vận hành công cụ phát triển

Cấu trúc dữ liệu và logic Smart Contract

Trong ứng dụng demo, mỗi sản phẩm (product object) được mô hình hóa với các thuộc tính cụ thể phục vụ truy vết nguồn gốc và trạng thái đơn hàng:

  • Mã định danh sản phẩm (id / hashId)
  • Tên và đường dẫn dữ liệu chi tiết (contentUrl / metadata)
  • Địa chỉ ví của người sở hữu / nhà cung ứng (address owner)
  • Mốc thời gian ghi nhận khối (timestamp)
  • Trạng thái phê duyệt và xử lý đơn hàng

Quy trình đăng bán và đặt mua sản phẩm được cụ thể hóa bằng hai lưu đồ luồng (Flowchart):

  • Luồng đăng bán sản phẩm: Người bán kết nối ví MetaMask -> Khởi tạo thông tin mặt hàng -> Kích hoạt Smart Contract tạo mã token ERC-721 đại diện -> Ghi nhận thông tin khối lên Blockchain.
  • Luồng mua sản phẩm: Người mua chọn sản phẩm -> Gửi yêu cầu đặt hàng (Order) -> Thực hiện giao dịch chuyển tiền/gas qua MetaMask -> Smart Contract thực thi cơ chế chuyển quyền sở hữu (transfer / takeOwnership) sang địa chỉ ví người mua khi đáp ứng đầy đủ điều kiện.

Quy trình kiểm thử và triển khai

Tác giả sử dụng bộ công cụ Truffle Suite để quản lý vòng đời ứng dụng:

  • Kiểm thử tự động trên máy cục bộ với Ganache, phối hợp các thư viện kiểm thử Mocha và Chai.
  • Sử dụng gói thư viện @truffle/hdwallet-provider nhằm cấu hình các chuỗi ký tự ghi nhớ (Mnemonic phrases) từ MetaMask vào tệp tin truffle-config.js.
  • Kết nối tới điểm cuối (Endpoint) của Infura để biên dịch hợp đồng thông qua lệnh truffle compile và phát hành lên mạng thử nghiệm thông qua lệnh truffle deploy --network ropsten.

Nội dung chính theo từng chương

Chương 1: Tổng quan đề tài

Chương 1 giới thiệu khái quát về động lực nghiên cứu bắt nguồn từ sự bùng nổ của TMĐT thời kỳ hậu COVID-19 tại Việt Nam và trên thế giới. Tác giả chỉ ra 4 bài toán bức thiết cần giải quyết: thiết lập lòng tin giữa các bên, đánh giá tín dụng người tham gia, minh bạch hóa luồng hàng hóa và nâng cao an ninh giao dịch. Tác giả đề xuất áp dụng công nghệ chuỗi khối nhằm khắc phục các nhược điểm của sàn TMĐT tập trung. Kế hoạch nghiên cứu được phân bổ trong 14 tuần (từ tuần 1 đến tuần 14) trải qua các giai đoạn từ tìm hiểu lý thuyết, cấu hình môi trường, lập trình giao diện, viết hợp đồng thông minh đến viết báo cáo tốt nghiệp.

Chương 2: Cơ sở lý thuyết và công nghệ

Chương này tập trung hệ thống hóa các định nghĩa và công nghệ cốt lõi phục vụ xây dựng ứng dụng. Văn bản cung cấp các phân tích so sánh chi tiết giữa các mô hình chuỗi khối và cơ chế đồng thuận:

Tiêu chí so sánh Public Blockchain Private Blockchain Permissioned (Consortium)
Quyền đọc dữ liệu Bất kỳ ai Chỉ người dùng được mời Tùy thuộc cấu hình tổ chức
Quyền ghi dữ liệu Bất kỳ ai Tổ chức quản trị cấp phép Các thành viên được chấp thuận
Quyền sở hữu mạng Không thuộc về ai Một tổ chức duy nhất Nhóm nhiều tổ chức liên minh
Bảo mật danh tính Không tiết lộ danh tính Có quản lý danh tính Có quản lý danh tính
Tốc độ giao dịch Tương đối chậm Rất nhanh Nhanh

Bên cạnh đó, văn bản đối chiếu sự khác biệt giữa hai cơ chế đồng thuận PoW và PoS:

  • PoW: Khả năng khai thác dựa trên công suất tính toán phần cứng; thợ đào (miners) nhận phần thưởng khối; mạng lưới an toàn trừ khi kẻ tấn công kiểm soát trên 51% tổng năng lực tính toán toàn hệ thống; mức tiêu thụ năng lượng lớn.
  • PoS: Khả năng xác thực dựa trên lượng cổ phần (stake) nắm giữ trong mạng; người xác thực (validators) thu phí giao dịch thay vì nhận phần thưởng khối mới; kẻ tấn công phải sở hữu tối thiểu 51% tổng lượng tiền mã hóa trong lưu thông; hiệu quả năng lượng cao hơn.

Chương 2 cũng đi sâu vào cách thức vận hành của EVM, vòng đời của một Smart Contract từ mã nguồn Solidity đến mã nhị phân bytecode, nguyên lý tính phí gas và lệnh hủy hợp đồng SELFDESTRUCT nhằm giải phóng không gian lưu trữ. Tác giả cũng phân tích chi tiết chuẩn ERC-721 với các hàm tiêu chuẩn (name, totalSupply, balanceOf, ownerOf, takeOwnership, transfer) và hai sự kiện cơ bản (Transfer, Approval), kết hợp việc sử dụng ví điện tử MetaMask và bộ công cụ Truffle, Ganache, Webpack, ReactJS.

Chương 3: Xây dựng hệ thống

Chương 3 trình bày chi tiết quá trình thiết kế ứng dụng theo chuẩn kỹ thuật phần mềm:

  • Danh sách Actor: Xác định các tác nhân gồm Khách hàng (người mua), Nhà cung ứng/Người bán (Merchant), và Hệ thống Blockchain.
  • Danh sách và đặc tả Use case: Lập bảng đặc tả chi tiết cho 11 ca sử dụng chính:
    1. Tạo tài khoản
    2. Quản lý tài khoản
    3. Quản lý người dùng
    4. Quản lý hàng hóa
    5. Tìm kiếm hàng hóa
    6. Mua hàng
    7. Bán hàng
    8. Thống kê bán hàng
    9. Thống kê giao dịch
    10. Gửi bình luận
    11. Sắp xếp bình luận
  • Thiết kế tương tác: Xây dựng các sơ đồ tuần tự (Sequence Diagram) cho các nghiệp vụ: Mua hàng, Quản lý sản phẩm, Thống kê giao dịch, Gửi bình luận.
  • Thiết kế cơ sở dữ liệu và giao diện: Xác định bảng thuộc tính của thực thể product; thiết kế cấu trúc ứng dụng Web3 và hiện thực hóa các trang chức năng gồm Trang chủ, Trang đăng sản phẩm, Trang chi tiết sản phẩm, Trang đặt hàng (order), Trang hiển thị đơn hàng cho người bán, Trang quản lý đơn hàng của người mua và Trang lịch sử đơn hàng hoàn tất.

Chương 4: Kết luận và hướng phát triển

Chương 4 tổng hợp các kết quả thực tế đạt được sau hơn 3 tháng thực hiện khóa luận, thẳng thắn đánh giá những hạn chế về mặt thời gian và kiến thức thực tế khi tiếp cận công nghệ mới, đồng thời vạch ra các mục tiêu mở rộng ứng dụng trong tương lai.

Kết quả và đóng góp

Về kết quả thực tế:

  • Tác giả đã tìm hiểu và làm rõ quy trình kết nối giữa ứng dụng web client và hệ thống chuỗi khối thông qua thư viện trung gian và nhà cung cấp Infura.
  • Xây dựng thành công phiên bản ứng dụng minh họa (demo dApp) tích hợp Smart Contract viết bằng Solidity, kết nối với ví điện tử MetaMask.
  • Vận dụng chuẩn token ERC-721 để mã hóa quyền sở hữu và định danh duy nhất cho từng sản phẩm được đăng tải trên hệ thống, cho phép thực hiện thao tác đăng bán và mua hàng qua mạng thử nghiệm Ropsten.
  • Thiết kế và hoàn thiện hệ thống giao diện người dùng bằng thư viện ReactJS, đáp ứng các trang chức năng quản lý danh mục, tạo đơn và hiển thị tiến trình hoàn tất giao dịch.

Về đóng góp học thuật và giải pháp:

  • Tài liệu hóa quy trình xây dựng ứng dụng thương mại điện tử phi tập trung, từ phân tích ca sử dụng, thiết kế sơ đồ tuần tự đến cấu hình môi trường triển khai thực tế bằng Truffle và Infura.
  • Đề xuất mô hình chuyển dịch cơ chế giám sát chất lượng và xuất xứ sản phẩm từ hệ thống máy chủ tập trung truyền thống sang cơ chế xác thực bất biến bằng hợp đồng thông minh trên nền tảng chuỗi khối.

Hạn chế và hướng nghiên cứu tiếp

Khóa luận tự chỉ ra những hạn chế trong quá trình thực hiện:

  • Hạn chế về thời gian và kinh nghiệm: Thời gian triển khai kéo dài hơn 3 tháng là tương đối ngắn đối với việc vừa nghiên cứu một ngăn xếp công nghệ hoàn toàn mới (Web3, Blockchain, EVM, Solidity) vừa lập trình hoàn thiện sản phẩm.
  • Mức độ hoàn thiện tính năng: Ứng dụng mới dừng lại ở quy mô sản phẩm minh họa (demo) nhằm chứng minh tính khả thi của việc tích hợp Smart Contract và chuẩn ERC-721; chưa hoàn thiện đầy đủ cơ chế đánh giá xếp hạng điểm tín dụng của khách hàng và thuật toán thanh toán phân cấp dựa trên độ tin cậy như kế hoạch dự kiến ban đầu.

Hướng nghiên cứu tiếp được xác định:

  • Cải tiến, mở rộng kiến trúc ứng dụng web để nâng cao trải nghiệm giao diện người dùng.
  • Nghiên cứu hiện thực hóa đầy đủ module đánh giá điểm uy tín và tín dụng của các chủ thể tham gia giao dịch.
  • Tối ưu hóa chi phí gas của các giao dịch hợp đồng thông minh và nghiên cứu khả năng tích hợp giải pháp mở rộng quy mô khi triển khai trên các mạng chuỗi khối chính thức (Mainnet).

Giá trị tham khảo

Khóa luận có giá trị tham khảo thiết thực cho các đối tượng và mục đích sau:

  • Sinh viên chuyên ngành Hệ thống Thông tin, Kỹ thuật Phần mềm, Khoa học Máy tính đang thực hiện đồ án, khóa luận tốt nghiệp liên quan đến Web3, ứng dụng phi tập trung (dApp) và hợp đồng thông minh trên nền tảng Ethereum.
  • Các nhà phát triển phần mềm đang tìm hiểu phương thức cấu hình, biên dịch và triển khai Smart Contract sử dụng bộ công cụ Truffle, Ganache kết hợp dịch vụ cổng kết nối Infura.
  • Các phần đáng tham khảo trực tiếp trong văn bản:
    • Bảng tổng hợp so sánh các loại hình chuỗi khối và cơ chế đồng thuận tại Chương 2.
    • Bộ đặc tả 11 Use case chuẩn mực cho nghiệp vụ mua bán hàng hóa và chuỗi cung ứng tại Chương 3.
    • Mã nguồn mẫu và cấu trúc khai báo một hợp đồng thông minh Solidity căn bản (quản lý bản quyền, lưu trữ struct dữ liệu, phân quyền chủ sở hữu owner và hàm thanh toán rút quỹ extractFunds).

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

1. Chuẩn token nào được sử dụng trong khóa luận để quản lý sản phẩm và vì sao?

Khóa luận sử dụng chuẩn token ERC-721 (Non-Fungible Token). Tác giả lựa chọn chuẩn này vì mỗi sản phẩm trong hệ thống thương mại điện tử cần có một mã định danh duy nhất và không thể thay thế cho nhau, khác biệt với chuẩn ERC-20 vốn dùng cho các token tiền tệ có thể hoán đổi đồng nhất.

2. Hệ thống demo kết nối ứng dụng web với mạng chuỗi khối Ethereum bằng cách nào?

Hệ thống sử dụng cổng kết nối trung gian Infura API để tạo điểm cuối (Endpoint) kết nối với mạng chuỗi khối, kết hợp tiện ích ví điện tử MetaMask cài đặt trên trình duyệt để quản lý địa chỉ ví, lưu trữ token và ký số xác thực các giao dịch thông qua thư viện @truffle/hdwallet-provider.

3. Tác giả đã trích dẫn số liệu nào để chứng minh tốc độ phát triển của TMĐT Việt Nam?

Văn bản dẫn số liệu từ Sách trắng Thương mại điện tử Việt Nam năm 2020: tốc độ tăng trưởng TMĐT đạt 18%, quy mô thị trường đạt 11,8 tỷ USD; số người mua sắm trực tuyến đạt 49,3 triệu người vào năm 2020 (tăng so với 32,7 triệu người năm 2016). Đồng thời trích dẫn dự báo của Google, Temasek và Bain & Company về quy mô kinh tế số Việt Nam sẽ vượt 52 tỷ USD vào năm 2025.

4. Quy trình biên dịch và triển khai Smart Contract lên mạng thử nghiệm được tiến hành ra sao?

Quy trình gồm 4 bước kỹ thuật chính:

  1. Soạn thảo mã nguồn Smart Contract bằng ngôn ngữ Solidity.
  2. Cấu hình tệp tin truffle-config.js với chuỗi Mnemonic của MetaMask và Endpoint RPC cung cấp bởi Infura.
  3. Chạy lệnh truffle compile để biên dịch mã nguồn thành bytecode tương thích máy ảo EVM.
  4. Chạy lệnh truffle deploy --network ropsten để phát hành hợp đồng thông minh lên mạng thử nghiệm Ropsten.

5. Khóa luận đã hoàn thành được những tính năng nào so với mục tiêu đề ra ban đầu?

Khóa luận đã hoàn thành việc xây dựng giao diện web ReactJS, tích hợp ví MetaMask, triển khai hợp đồng thông minh quản lý sản phẩm bằng token ERC-721 và luồng mua bán cơ bản trên mạng thử nghiệm Ropsten. Tuy nhiên, do giới hạn thời gian hơn 3 tháng, tính năng đánh giá xếp hạng tín dụng người dùng và cơ chế thanh toán tự động dựa trên mức độ tin cậy chưa được hiện thực hóa trọn vẹn, chỉ dừng lại ở mức mô hình minh họa (demo).

Kết luận

Khóa luận tốt nghiệp của tác giả Trần Việt Cường đã hệ thống hóa cơ sở lý thuyết về công nghệ chuỗi khối, máy ảo Ethereum và chuẩn token ERC-721 trong bài toán quản lý chuỗi cung ứng thương mại điện tử. Đề tài xây dựng thành công ứng dụng phi tập trung minh họa, chứng minh tính khả thi của việc ứng dụng hợp đồng thông minh và ví MetaMask vào quy trình xác thực quyền sở hữu sản phẩm. Mặc dù còn hạn chế về thời gian thực hiện khiến một số tính năng nâng cao về đánh giá tín dụng chưa hoàn thiện, công trình cung cấp tài liệu kỹ thuật có giá trị tham khảo rõ ràng cho sinh viên và lập trình viên bước đầu nghiên cứu phát triển ứng dụng Web3.