Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh chuyển đổi số giáo dục, việc ứng dụng công nghệ chuỗi khối (blockchain) và hợp đồng thông minh (Smart Contract - SMC) vào các hệ thống quản lý học vụ ngày càng được quan tâm nhờ đặc tính minh bạch, bảo mật và tính bất biến của dữ liệu. Tuy nhiên, rào cản lớn nhất khi vận hành các ứng dụng phi tập trung (DApp) trên mạng lưới Ethereum là chi phí gas rất cao. Mỗi thao tác tính toán, lưu trữ hay thay đổi trạng thái trên mạng lưới đều yêu cầu người dùng chi trả một lượng phí giao dịch nhất định. Trong môi trường quản lý môn học, nơi khối lượng giao dịch cập nhật điểm số và thông tin học vụ diễn ra thường xuyên với số lượng lớn, chi phí tích lũy có thể trở thành gánh nặng kinh tế nghiêm trọng, làm giảm khả năng tiếp cận và tính khả thi thực tiễn của hệ thống.
Một số công trình nghiên cứu trước đây đã đề xuất các mẫu mã lập trình tối ưu hóa mã nguồn Solidity. Dẫu vậy, các nghiên cứu này phần lớn dừng lại ở việc tổng hợp lý thuyết các mẫu tối ưu và thống kê tỷ lệ hợp đồng thông minh chưa áp dụng chúng, chưa tiến hành đo đạc thực nghiệm định lượng trên một hệ thống DApp thực tế. Để giải quyết khoảng trống nghiên cứu này, khóa luận tốt nghiệp của tác giả Nguyễn Ngọc Bảo Kha tập trung nghiên cứu, áp dụng và định lượng hiệu quả của các kỹ thuật tối ưu hóa mã nguồn hợp đồng thông minh trực tiếp trên một DApp quản lý môn học.
Mục tiêu nghiên cứu của đề tài được xác định cụ thể gồm hai nhiệm vụ:
- Nghiên cứu cách thức áp dụng các kỹ thuật tối ưu hóa hợp đồng thông minh lên một ứng dụng phi tập trung quản lý điểm môn học thực tế.
- Phân tích số liệu và đánh giá định lượng mức tiêu hao gas nhằm xác định các phương pháp tối ưu có hiệu suất cao nhất khi triển khai và vận hành trên DApp.
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Các kỹ thuật tối ưu hóa mã nguồn hợp đồng thông minh viết bằng ngôn ngữ Solidity trên máy ảo Ethereum (EVM).
- Phạm vi nghiên cứu: Đề tài tập trung tối ưu hóa trực tiếp ở tầng hợp đồng thông minh trong hệ thống quản lý điểm học vụ; môi trường thử nghiệm và đo đạc số liệu được giới hạn trên nền tảng blockchain Ethereum, triển khai thực tế trên mạng cục bộ Ganache và mạng thử nghiệm Sepolia Testnet.
Cơ sở lý thuyết và phương pháp
Khóa luận xây dựng hệ thống cơ sở lý thuyết dựa trên các trụ cột công nghệ của blockchain và máy ảo Ethereum:
- Công nghệ Blockchain và Ethereum: Hệ thống sổ cái phân tán (distributed ledger) vận hành trên mạng ngang hàng (P2P), bảo đảm tính toàn vẹn và bất biến thông qua hàm băm mật mã và chữ ký khóa công khai/khóa riêng tư. Nền tảng Ethereum mở rộng tính năng của blockchain 2.0 và 3.0 nhờ máy ảo EVM (Ethereum Virtual Machine) — môi trường thực thi phân tán xử lý mã bytecode từ các hợp đồng thông minh viết bằng Solidity.
- Cơ chế và chi phí Gas trong EVM: Gas đóng vai trò là đơn vị đo lường tài nguyên tính toán để ngăn ngừa vòng lặp vô hạn và quá tải hệ thống. Khóa luận viện dẫn bảng chi phí gas chuẩn cho các mã lệnh (Opcode) của EVM:
| Mã Opcode |
Chi phí Gas |
Diễn giải chức năng |
Gzero |
0 |
Thao tác STOP, RETURN, REVERT |
Gverylow |
3 |
Phép toán logic/số học cơ bản (ADD, SUB, MLOAD, MSTORE, PUSH*, DUP*) |
Gsload |
200 |
Thao tác đọc dữ liệu từ bộ nhớ trạng thái (SLOAD) |
Gsreset |
5.000 |
Thao tác ghi đè ô nhớ trạng thái về giá trị zero (SSTORE) |
Gsset |
20.000 |
Thao tác cấp phát ô nhớ trạng thái mới từ zero thành non-zero (SSTORE) |
Gtransaction |
21.000 |
Chi phí cơ bản cố định cho mỗi giao dịch gửi lên mạng |
Gcreate / Gtxcreate |
32.000 |
Chi phí khởi tạo hợp đồng thông minh |
- Các kỹ thuật tối ưu hóa hợp đồng thông minh:
- Các kỹ thuật đã được nghiên cứu trước đây: Đóng gói biến lưu trữ (
Packing), lưu tạm biến cục bộ (Caching), chuyển mã tính toán ra ngoài vòng lặp (Code-motion-out-of-Loop), đánh giá ngắn mạch biểu thức logic (Short-circuiting), và loại bỏ biến boolean (Boolean Variable Elimination).
- Các kỹ thuật trọng tâm được khóa luận thực nghiệm: Kỹ thuật cấu trúc dữ liệu
Mapping (thay thế cho mảng động để giảm chi phí duyệt tuần tự và truy xuất ngẫu nhiên); kỹ thuật dùng mảng byte kích thước cố định Bytes32 (thay thế cho kiểu chuỗi động string chiếm nhiều slot lưu trữ); kỹ thuật chuẩn hóa số nguyên Uint256 (phù hợp với kích thước từ gốc 256-bit của EVM, tránh việc phát sinh mã opcode nén/giải nén từ các kiểu dữ liệu nhỏ hơn); kỹ thuật cấu hình trình tối ưu hóa biên dịch Compiler Optimizer (tự động inline hàm và loại bỏ mã dư thừa); và kỹ thuật gộp giao dịch Batching (thực hiện nhiều thao tác ghi trong một giao dịch đơn lẻ nhằm chia sẻ chi phí cố định 21.000 gas của mỗi transaction).
Phương pháp nghiên cứu thực tế bao gồm phương pháp phân tích - tổng hợp tài liệu học thuật kết hợp thực nghiệm kỹ thuật phần mềm (Design Science Research). Tác giả tiến hành phân tích các công trình nghiên cứu trước về DApp trong giáo dục (như hệ thống lưu trữ thành tích bán tập trung của tác giả nước ngoài, hệ thống kết quả thi đại học sử dụng Truffle và MetaMask), chỉ ra hạn chế của các hệ thống đó là vẫn phụ thuộc vào cơ sở dữ liệu tập trung (off-chain DB) và thiếu đánh giá chi phí gas. Trên cơ sở đó, khóa luận xây dựng một ứng dụng DApp thực nghiệm phi tập trung 100% không dùng cơ sở dữ liệu ngoài, tiến hành đo lường định lượng chi phí gas trước và sau khi tối ưu trên hai môi trường mạng Ganache và Sepolia.
Thiết kế và triển khai hệ thống
Khóa luận thiết kế kiến trúc DApp hoạt động độc lập trên môi trường Web Browser, tương tác trực tiếp với các nút mạng blockchain thông qua nhà cung cấp dịch vụ RPC Alchemy và tiện ích ví MetaMask.
+--------------------------------------------------------------+
| Frontend (Trình duyệt) |
| [ ReactJS / HTML / CSS ] <---> [ Axios ] <---> [ EtherJS ] |
+-------------------------------+------------------------------+
|
(Ký giao dịch / Kết nối ví)
v
+----------------+
| MetaMask |
+--------+-------+
|
(JSON-RPC qua Alchemy Provider)
v
+--------------------------------------------------------------+
| Hạ tầng Blockchain EVM |
| [ Mạng Ganache (Local) / Mạng Sepolia (Testnet) ] |
| |
| +-----------------------+ +------------------------+ |
| | SMC Authorize | | SMC GradeManagement | |
| | (Phân quyền Admin/ | | (Quản lý hồ sơ điểm, | |
| | Teacher/Student) | | thêm/sửa/xóa kết quả) | |
| +-----------------------+ +------------------------+ |
+--------------------------------------------------------------+
Kiến trúc các thành phần và vai trò người dùng
Hệ thống xác định 3 vai trò tác nhân với quyền hạn phân định rõ ràng:
- Quản trị viên (Admin): Quản lý định danh các tài khoản, thực hiện cấp quyền hoặc thu hồi vai trò người dùng tương ứng với địa chỉ ví MetaMask.
- Giáo viên (Teacher): Thực hiện tra cứu, thêm điểm đơn lẻ, thêm điểm hàng loạt (Batching), chỉnh sửa hoặc xóa điểm số của sinh viên.
- Sinh viên (Student): Truy cập vào hệ thống để tra cứu và xem bảng điểm cá nhân lưu trữ trên blockchain.
Thiết kế cấu trúc dữ liệu của hai Smart Contract
Toàn bộ dữ liệu của hệ thống được lưu trữ trực tiếp trên chuỗi (on-chain) thông qua hai hợp đồng thông minh chính:
-
Hợp đồng SMC Authorize: Đảm nhiệm chức năng kiểm soát truy cập và định danh người dùng.
- Định nghĩa các quyền thông qua cấu trúc dữ liệu lưu trữ vai trò:
ADMIN, TEACHER, STUDENT.
- Bảng phân quyền quản lý mối quan hệ giữa địa chỉ ví (
userAddress kiểu address) và vai trò tương ứng (role).
-
Hợp đồng SMC GradeManagement: Đảm nhiệm toàn bộ logic xử lý kết quả học tập.
- Dữ liệu kết quả được lưu trữ thông qua cấu trúc bản ghi
Record gồm 10 trường thuộc tính:
| Tên thuộc tính |
Kiểu dữ liệu ban đầu |
Diễn giải chức năng |
idRec |
int |
Mã số định danh bản ghi |
idClass |
int |
Mã số lớp học |
subject |
string |
Tên môn học |
idStud |
int |
Mã số định danh sinh viên |
student |
string |
Họ và tên sinh viên |
idTeac |
int |
Mã số định danh giáo viên |
teacher |
string |
Họ và tên giáo viên |
progress |
int |
Điểm quá trình / thực hành |
midterm |
int |
Điểm thi giữa kỳ |
final |
int |
Điểm thi cuối kỳ |
Môi trường công nghệ và triển khai
- Ngôn ngữ và môi trường lập trình: Hợp đồng thông minh được lập trình bằng Solidity trên môi trường Remix IDE và Visual Studio Code; phía máy khách sử dụng ReactJS, EtherJS, Axios và Node.js.
- Hạ tầng kiểm thử: Triển khai thử nghiệm cục bộ bằng mạng Ganache nhằm đo đạc chi tiết từng thao tác; đồng thời triển khai lên mạng thử nghiệm công khai Ethereum Sepolia thông qua cổng kết nối Alchemy để xác nhận tính ổn định và tính tương thích của mã nguồn trên mạng phân tán diện rộng.
Nội dung chính theo từng chương
Chương 1: Tổng quan
Chương 1 thiết lập nền tảng đề tài bằng việc đặt vấn đề về áp lực chi phí gas khi ứng dụng công nghệ blockchain vào quản lý giáo dục. Tác giả phân tích tính cấp thiết của việc tìm kiếm các giải pháp tối ưu hóa trực tiếp trên hợp đồng thông minh, xác định mục tiêu đo lường lượng gas tiêu hao, giới hạn phạm vi nghiên cứu trên mạng lưới Ethereum, đồng thời nêu bật ý nghĩa khoa học và các đóng góp cụ thể của khóa luận đối với lĩnh vực kỹ thuật phần mềm phi tập trung.
Chương 2: Cơ sở lý thuyết
Chương 2 trình bày tổng quan lý thuyết về công nghệ blockchain, cơ chế vận hành của mạng ngang hàng, mật mã bất đối xứng và các giao thức đồng thuận (PoW, PoS, PoA). Tác giả phân tích sâu kiến trúc máy ảo EVM, cấu trúc transaction (nonce, gasPrice, gasLimit, to, value, v, r, s), định nghĩa hợp đồng thông minh, ứng dụng DApp và xu hướng Web 3.0. Chương này tổng kết bảng chi phí Opcode theo chuẩn EVM, phân tích 5 kỹ thuật tối ưu lý thuyết của các nghiên cứu trước và 5 kỹ thuật tối ưu mà khóa luận lựa chọn để thực nghiệm. Đồng thời, tác giả khảo cứu 3 công trình nghiên cứu quốc tế liên quan đến DApp giáo dục và chỉ ra các điểm hạn chế cần cải tiến.
Chương 3: Công nghệ sử dụng
Chương 3 mô tả chi tiết ngăn xếp công nghệ được lựa chọn để xây dựng hệ thống DApp. Tác giả phân loại và làm rõ vai trò của từng công cụ hỗ trợ: Visual Studio Code, Remix IDE, Ganache, tiện ích ví MetaMask, ngôn ngữ Solidity, nền tảng Node.js, thư viện giao tiếp chuỗi khối EtherJS, thư viện gửi yêu cầu mạng Axios, cùng bộ ba công nghệ giao diện HTML, CSS và ReactJS.
Chương 4: Phân tích và thiết kế hệ thống
Chương 4 tập trung vào quy trình kỹ nghệ phần mềm cho DApp quản lý môn học. Nội dung bao gồm việc xác định 3 vai trò người dùng (Admin, Teacher, Student); thiết lập sơ đồ ca sử dụng (Use-case Diagram) và đặc tả chi tiết 7 ca sử dụng: Đăng nhập, Đăng xuất, Phân quyền, Thêm điểm, Cập nhật điểm, Xóa điểm và Xem điểm. Tác giả thiết kế cấu trúc dữ liệu cho hai hợp đồng SMC Authorize và SMC GradeManagement, định nghĩa các giao diện API hệ thống, và trình bày các giao diện người dùng tương ứng (màn hình kết nối ví, hồ sơ cá nhân, trang chủ theo vai trò, bảng xem điểm, biểu mẫu thêm điểm theo lô và phân quyền).
Chương 5: Thực nghiệm tối ưu và bàn luận
Chương 5 là nội dung thực nghiệm trọng tâm của khóa luận. Tác giả áp dụng lần lượt từng kỹ thuật tối ưu lên mã nguồn Solidity của hai hợp đồng thông minh và tiến hành đo đạc mức tiêu hao gas trên Ganache và Sepolia:
- Kỹ thuật Mapping: Thay thế các mảng động duyệt tuần tự trong
SMC Authorize bằng cấu trúc ánh xạ khóa - giá trị mapping, giúp loại bỏ chi phí duyệt mảng và giảm đáng kể gas đọc/ghi.
- Kỹ thuật Bytes32: Thay thế các biến chuỗi động (
string) cho các thuộc tính văn bản cố định (như vai trò, tên môn học, tên người dùng) bằng kiểu dữ liệu nhị phân cố định bytes32. Việc này giúp dữ liệu nằm trọn vẹn trong một slot bộ nhớ (32 byte), loại bỏ chi phí quản lý độ dài chuỗi động của EVM.
- Kỹ thuật Uint256: Chuyển đổi các biến số nguyên tổng quát thành kiểu
uint256, tận dụng cơ chế tính toán số học tự nhiên trên các thanh ghi 256-bit của EVM, tránh việc EVM phải sinh mã bổ sung để bù bit (padding).
- Kỹ thuật Compiler Optimizer: Kích hoạt trình tối ưu hóa của trình biên dịch Solc và thực nghiệm kiểm tra ở 4 mức thông số cài đặt số lần chạy (runs):
200, 500, 1.000 và 10.000. Kết quả phân tích giúp xác định sự đánh đổi giữa kích thước bytecode khi triển khai (deploy gas) và hiệu quả tối ưu khi thực thi giao dịch lặp lại.
- Kỹ thuật Batching: Thực hiện gộp nhiều thao tác nhập bản ghi điểm số vào một mảng dữ liệu trong một lần gọi hàm duy nhất (thử nghiệm với quy mô 10 bản ghi và 150 bản ghi). Giải pháp này giúp loại bỏ chi phí cố định 21.000 gas cho mỗi giao dịch đơn lẻ phát sinh thêm.
- Tổng kết hiệu suất: Chương kết thúc bằng hệ thống bảng so sánh toàn diện lượng gas tiết kiệm được trước và sau khi áp dụng kết hợp các giải pháp trên cả hai mạng Ganache và Sepolia.
Chương 6: Kết luận và hướng phát triển
Chương 6 tổng kết các kết quả định lượng đạt được của đề tài, khẳng định tính khả thi của việc giảm thiểu chi phí giao dịch trên DApp quản lý giáo dục, đồng thời đề xuất các hướng nghiên cứu mở rộng trong tương lai.
Kết quả và đóng góp
Khóa luận đã chứng minh tính hiệu quả của các giải pháp tối ưu hóa thông qua các số liệu đo lường thực nghiệm cụ thể:
Số liệu thực nghiệm tối ưu hóa
Bằng việc phối hợp đồng thời các kỹ thuật tối ưu hóa mã nguồn và cấu hình biên dịch, mức tiêu hao chi phí gas của các hợp đồng thông minh đã giảm mạnh trên cả hai môi trường mạng thử nghiệm Ganache và Sepolia:
- Chi phí triển khai hợp đồng (Deployment Gas): Lượng gas tiêu hao cho thao tác triển khai hợp đồng thông minh
SMC Authorize và SMC GradeManagement giảm gần 85% so với phiên bản mã nguồn chưa tối ưu.
- Chi phí thực thi giao dịch (Transaction Execution Gas): Lượng gas tiêu hao cho các thao tác nghiệp vụ thông thường (như cấp quyền, thêm điểm, sửa điểm, xóa điểm) giảm tới 89% sau khi áp dụng cấu trúc dữ liệu
mapping, bytes32, uint256 và gom cụm giao dịch batching.
| Hạng mục thao tác |
Tỷ lệ giảm chi phí Gas tiêu hao |
Ghi chú kỹ thuật tác động chính |
| Triển khai hợp đồng (Deploy SMC) |
~85% |
Tối ưu hóa mã nguồn Solidity, loại bỏ biến thừa và thiết lập Compiler Optimizer |
| Thao tác nghiệp vụ thông thường |
Lên đến 89% |
Ứng dụng Mapping, Bytes32, Uint256 và kỹ thuật gộp giao dịch Batching |
Giải pháp và đóng góp của đề tài
- Xây dựng thành công DApp mẫu phi tập trung hoàn toàn: Hiện thực hóa ứng dụng quản lý điểm học vụ chạy 100% trên chuỗi (on-chain), loại bỏ sự phụ thuộc vào các hệ quản trị cơ sở dữ liệu truyền thống (off-chain DB), đảm bảo tính toàn vẹn và minh bạch tuyệt đối của dữ liệu điểm số.
- Cung cấp bằng chứng thực nghiệm định lượng đầu tiên: Đề tài đã trực tiếp đo đạc, lập bảng biểu chi tiết và đánh giá hiệu năng của 5 kỹ thuật tối ưu hóa (Mapping, Bytes32, Uint256, Compiler Optimizer ở các mức 200, 500, 1000, 10000 runs, và Batching) — những kỹ thuật mà các công trình trước đây chỉ mới dừng lại ở mức mô tả lý thuyết hoặc khảo sát tỷ lệ xuất hiện.
- Cung cấp cơ sở tham chiếu thực tiễn: Bộ dữ liệu thực nghiệm trên hai mạng Ganache và Sepolia cung cấp tài liệu tham khảo chuẩn xác về chi phí gas cho các nhà phát triển khi thiết kế các hệ thống quản lý học vụ và các DApp tương tự trên nền tảng Ethereum.
Hạn chế và hướng nghiên cứu tiếp
Dựa trên phạm vi và nội dung được tác giả trình bày trong văn bản:
- Hạn chế:
- Nghiên cứu mới chỉ tiến hành đo đạc và thử nghiệm trên môi trường chuỗi khối cục bộ Ganache và mạng thử nghiệm Sepolia Testnet, chưa triển khai thực tế trên mạng chính thức Ethereum Mainnet (nơi có sự biến động phức tạp của giá gas theo cơ chế thị trường thực tế).
- Khối lượng chức năng của DApp quản lý môn học mới chỉ dừng lại ở các tác vụ học vụ cơ bản (quản lý phân quyền và thêm/xóa/sửa điểm số); cấu trúc bản ghi
Record còn tương đối đơn giản, chưa bao quát toàn diện các nghiệp vụ quản lý đào tạo phức tạp khác.
- Hướng nghiên cứu tiếp:
- Mở rộng nghiên cứu áp dụng và đo đạc các kỹ thuật tối ưu hóa trên các giải pháp mở rộng quy mô Layer 2 của Ethereum (như Rollups, Arbitrum, Optimism) hoặc các chuỗi khối tương thích EVM khác nhằm tiếp tục cắt giảm chi phí giao dịch.
- Mở rộng chức năng quản lý học vụ của DApp, tích hợp thêm các cấu trúc dữ liệu tối ưu cho việc quản lý chứng chỉ, xét điều kiện tốt nghiệp và nâng cao các cơ chế bảo mật danh tính sinh viên.
Giá trị tham khảo
Khóa luận là tài liệu tham khảo có giá trị học thuật và thực tiễn cao cho:
- Sinh viên và học viên chuyên ngành: Sinh viên ngành Công nghệ Thông tin, Kỹ thuật Phần mềm, Hệ thống Thông tin có định hướng nghiên cứu công nghệ chuỗi khối, phát triển ứng dụng Web 3.0 và lập trình hợp đồng thông minh.
- Kỹ sư phát triển phần mềm Blockchain: Các lập trình viên Solidity cần số liệu thực nghiệm định lượng về chi phí gas để lựa chọn cấu trúc dữ liệu (
mapping thay vì array, bytes32 thay vì string, chuẩn hóa uint256), cấu hình trình biên dịch Compiler Optimizer, và kỹ thuật gom cụm Batching giao dịch trong các dự án thực tế.
- Các phần đáng tham khảo nhất trong tài liệu:
- Bảng phân tích chi phí gas của các mã lệnh Opcode trên EVM tại Chương 2.
- Toàn bộ quy trình thực nghiệm, đo đạc và hệ thống bảng so sánh mức tiêu hao gas của từng kỹ thuật tại Chương 5.
- Mô hình thiết kế kiến trúc DApp phi tập trung 100% không dùng cơ sở dữ liệu ngoài tại Chương 4.
Câu hỏi thường gặp
1. Khóa luận giải quyết điểm hạn chế nào của các nghiên cứu tối ưu hóa hợp đồng thông minh trước đây?
Các nghiên cứu trước đây chủ yếu dừng lại ở việc xác định lý thuyết các mẫu mã lập trình tối ưu hoặc thống kê tỷ lệ các hợp đồng chưa sử dụng chúng, hoàn toàn thiếu số liệu đo đạc thực nghiệm. Khóa luận này đã trực tiếp áp dụng, đo lường định lượng mức gas tiết kiệm được của các kỹ thuật (Mapping, Bytes32, Uint256, Compiler Optimizer, Batching) trên một DApp quản lý điểm thực tế.
2. Bản ghi kết quả học tập trong hợp đồng SMC GradeManagement lưu trữ những trường thông tin nào?
Cấu trúc Record trong hợp đồng quản lý điểm gồm 10 trường dữ liệu: idRec (mã bản ghi), idClass (mã lớp), subject (tên môn học), idStud (mã sinh viên), student (tên sinh viên), idTeac (mã giáo viên), teacher (tên giáo viên), progress (điểm thực hành/quá trình), midterm (điểm giữa kỳ) và final (điểm cuối kỳ).
3. Vì sao kỹ thuật cấu trúc dữ liệu Bytes32 lại tiết kiệm gas hơn kiểu dữ liệu chuỗi string?
Trong EVM, kiểu dữ liệu bytes32 có kích thước cố định vừa vặn với một khe lưu trữ (slot) 32 byte (256 bit). Trong khi đó, kiểu dữ liệu string là mảng byte động, đòi hỏi EVM phải tốn thêm các mã lệnh opcode và slot bộ nhớ phụ để lưu trữ thông tin độ dài chuỗi và quản lý cấp phát bộ nhớ động, làm chi phí gas tăng cao hơn đáng kể.
4. Kỹ thuật Compiler Optimizer được tác giả thiết lập thực nghiệm ở những thông số nào?
Trình tối ưu hóa biên dịch của Solidity (Solc) được tác giả kích hoạt và đo đạc thực nghiệm ở 4 mức thiết lập thông số số lần chạy (runs): 200, 500, 1.000 và 10.000. Các thử nghiệm này được đo đạc song song trên cả hai môi trường mạng Ganache và Sepolia để phân tích tương quan chi phí giữa deploy và transaction.
5. Kỹ thuật gom cụm (Batching) giúp giảm chi phí gas dựa trên cơ chế nào?
Mỗi giao dịch gửi lên mạng lưới Ethereum đều phải chịu một mức phí cơ bản cố định là 21.000 gas (Gtransaction). Khi thêm từng bản ghi điểm đơn lẻ, mỗi bản ghi đều tốn 21.000 gas cố định này. Kỹ thuật Batching gộp nhiều bản ghi (thử nghiệm ở mức 10 và 150 bản ghi) vào một giao dịch duy nhất, qua đó chia sẻ chi phí cố định 21.000 gas cho nhiều bản ghi cùng lúc và giảm mạnh tổng lượng gas tiêu thụ.
Kết luận
Khóa luận tốt nghiệp của tác giả Nguyễn Ngọc Bảo Kha đã giải quyết thành công bài toán chi phí giao dịch trên mạng lưới Ethereum thông qua việc nghiên cứu và thực nghiệm các giải pháp tối ưu hóa hợp đồng thông minh cho ứng dụng quản lý môn học. Hệ thống DApp được thiết kế vận hành phi tập trung hoàn toàn, bảo đảm phân quyền chặt chẽ giữa Quản trị viên, Giáo viên và Sinh viên. Kết quả thực nghiệm định lượng trên Ganache và Sepolia khẳng định các kỹ thuật Mapping, Bytes32, Uint256, Compiler Optimizer và Batching giúp cắt giảm tới gần 85% chi phí triển khai và 89% chi phí thực thi giao dịch. Công trình cung cấp nguồn dữ liệu thực nghiệm có giá trị khoa học và thực tiễn cao cho việc phát triển các ứng dụng chuỗi khối trong lĩnh vực giáo dục.