Lý do chọn đề tài: Với xu hướng công nghệ hiện tại tập trung vào việc xây dựng những Metaverse, việc sử dụng công nghệ Blockchain là một trong những xu hướng hiện tại nhằm đáp ứng cũng n
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHÓ HÒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHÀN MÈM
Nguyễn Trí Đức MSSV: 20520453Trương Kim Điền MSSV: 20520442
KHOÁ LUẬN TÓT NGHIỆP 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)
CU NHAN NGANH KY THUAT PHAN MEM
GIANG VIEN HUONG DAN
ThS Nguyén Tan Toan
TP Hồ Chí Minh, năm 2024
Trang 2LOI CẢM ON
Chúng em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đến thay Nguyễn Tan
Toàn, người đã hướng dẫn và tạo điều kiện cho nhóm chúng em hoàn thành Khoá luận
tốt nghiệp Sau 16 tuần làm việc, trao đổi và hướng dẫn, thầy đã hỗ trợ chúng em những
tìm hiểu những kiến thức cần thiết về công nghệ áp dụng vào đề tài Bên cạnh đó, nhờ
sự hướng dan của thay, quá trình nghiên cứu và hiện thực dé tài của chúng em đã đi đúnghướng và đạt được nhiều kết quả tích cực Song, quá trình thực hiện và nghiên cứu củanhóm chắc chắn không thê tránh khỏi những thiếu sót, những mặt chưa được và cần cảithiện Chúng em rất mong nhận được sự thông cảm và góp ý chân thành từ thầy Chúng
em xin chân trọng cảm ơn.
Thành phố Hồ Chí Minh, tháng 07 năm 2024
Nguyễn Trí Đức
Trương Kim Điền
Trang 3DE CƯƠNG CHI TIẾTTÊN ĐÈ TÀI: Nghiên cứu và xây dựng hệ thống hỗ trợ mua bán token trên
blockchain
TEN DE TÀI TIENG ANH: Research and build a trading token system in blockchain
Cán bộ hướng dẫn:
- ThS Nguyễn Tan Toàn
Thời gian thực hiện: Từ ngày 19/2/2024 đến ngày kết thúc Khóa luận tốt nghiệp
Sinh viên thực hiện:
Nguyễn Trí Đức — 20520453
Trương Kim Điền — 20520442
Nội dung đề tài
1 Lý do chọn đề tài:
Với xu hướng công nghệ hiện tại tập trung vào việc xây dựng những Metaverse, việc sử dụng công nghệ Blockchain là một trong những xu hướng
hiện tại nhằm đáp ứng cũng như giải quyết những khó khăn trong các ngành
nghề cần dit liệu được lưu trữ chính xác mà minh bach đặc biệt là ngành kinh té,
tài chính Ngoài ra, công nghệ Blockchain còn tạo ra một khái nệm về tiền điện
tử đem lại nhiêu ưu điêm tích cực khiên chính phủ các nước phải nghiên cứu
công nghệ này, các nhà phát triển dần bắt đầu đầu tư vào các dự án mới ứng
dụng công nghệ Blockchain nhằm giải quyết một số bài toán trong đời sống xã
hội Trong khi một số dự án nhận được sự đầu tư từ các ông lớn về công nghệ,một số ít khác lại phải chật vật tự tìm lay nguồn tai chính cho mình bởi tính ứng
dụng của dự án có thể chưa thuyết phục được các nhà đầu tư Do đó, nhóm chọn
Trang 4đề tài “Nghiên cứu và xây dựng ứng dụng hỗ trợ mua bán token trên blockchain”
như một giải pháp tạo nguồn tài chính cho các nhà phát triển dự án sử dụng công
nghệ Blockchain bằng việc bán các token cho cộng đồng, bên cạnh việc gọi vốn
từ các tổ chức, quỹ đầu tư lớn
Dé đảm bảo về tinh an toàn về an ninh mạng, giảm thiểu nguy cơ, rủi ro
những cuộc tấn công của các hacker có thể làm sai lệch đữ liệu giao dịch của cả
nhà phát hành token và người mua, đề tài sẽ được nhóm xây dựng bằng công
nghệ Blockchain Một trong những lý do quan trọng là blockchain là một công nghệ ngày càng được ưa chuộng với tính năng phi tập trung và an toàn dữ liệu.
Việc áp dụng blockchain vào lĩnh vực này giúp tăng cường sự minh bạch và
minh chứng cho quá trình quản lý tài chính, đảm bảo răng thông tin về các dự
án được lưu trữ một cách an toàn và không thé thay đôi Quan trọng nhất là vớiviệc ứng dụng blockchain vào trong quá trình giao dịch là các dự án sẽ tiếp cậnđược các nguồn tiền da dang và nhanh chóng ở nhiều quốc gia hay ở nhiều
blockchain layer-1 mà không gặp nhiều trở ngại, giúp người dùng dé dàng thực
hiện giao dịch mua bán token với token sẵn có mà không cần phải chuyên đổi
loại token mình đang sở hữu sang token phù hợp, góp phần tạo sự tiện lợi chongười dung và thu hút được nhiều giao dich hon
Dé xây dựng khả năng tương tác, thực hiện giao dịch giữa các token từ các
blockchain khác nhau, nhóm chọn sử dụng giao thức Axelar Giao thức Axelar
là giao thức truyền tin đa chuỗi, cung cấp cơ sở hạ tầng hỗ trợ các blockchain
tương tác với nhau Axelar đóng vai trò là bên thứ ba để xác thực độ tin cậy của
các giao dịch đa chuỗi, giúp đơn giản hóa quá trình chia sẻ và truyền thông tin
cho cả người dùng và các ứng dụng phi tập trung.
Tóm lại, chọn đề tài “Nghiên cứu và xây dựng ứng dụng hỗ trợ mua bán
Trang 5đóng góp vào sự phát triển của một trong những lĩnh vực day tiềm năng và đổi
mới nhất trong thế giới công nghệ hiện nay
Mục tiêu: bao gồm 2 mục tiêu chính:
Xây dựng website:
« Cung cấp giao diện giới thiệu về dự án, doanh nghiệp, quy trình đăng ký
mở bán token, các chính sách của ứng dụng một cách trực quan, đem đến
cho người dùng những nội dung chỉ tiết nhấtCung cấp giao diện quản lý tài khoản, đăng tin giao dịch, thực hiện giaodịch đầu tư
Cung cấp các thống kê, biểu đồ trực quan số liệu, hỗ trợ công tác quản
tri tài chính
Xây dựng hệ thống giao dịch ứng dụng công nghệ Blockchain:
Hệ thống thực hiện giao dịch trao đôi token và trả bằng tiền ảo của dự
án đó cho người mua.
Các hoạt động giao dịch được minh bạch trên hệ thống.
Ứng dụng công nghệ giao tiếp giữa các blockchain là Axelar dé thựchiện việc đăng ký một dự án ở nhiều blockchain khác nhau
Pham vi:
Phạm vi môi trường: Web
Phạm vi chức năng:
„ _ Đối với hệ thống giao dich token
« Hệ thống giao dich token được xây dựng theo công nghệ
Blockchain (Crypto launchpads)
Quy trình giao dịch được chia thành nhiều giai đoạn do người
dùng tự xác định
Trang 6Cho phép chủ dự án tạo ra đồng tiền riêng đại diện cho giá trị của
dự án
Cho phép chủ dự án gửi tiền của dự án đó vào kho dé người dùng
đã thực hiện giao dịch mua token từ dự án có thể nhận tiền khi
giao dịch kết thúc
Token của dự án có thể được mua băng nhiều loại token ở nhiều
blockchain khác nhau nhờ công nghệ Axelar
« _ Hỗ trợ tính năng Staking trả thưởng
¢ H6 trợ tính năng Airdrop trả thưởng token theo chu kì thời gian
¢ _ Hỗ trợ tính năng Swap được tích hợp từ bên thứ 3 (Squid)
¢ Đối với ứng dụng:
‹ _ Hệ thống cung cấp giao diện đăng tin giao dich cho các chủ dự án
dễ dàng sử dụng và thao tác
Cung cấp các thông tin cơ bản về quá trình mở bán token của dự
án, hỗ trợ doanh nghiệp theo dõi tiễn trình mở bán token như tiễn
độ token đã được bán ra.
Hệ thống cung cấp giao diện bán token cho dự án giúp người dùng
dễ dàng thực hiện giao dịch với các dự án tiềm năng
Hệ thống cung cấp giao diện đăng nhập bằng ví web3 giúp xác
thực người dùng.
Hệ thống cung cấp trang quan lý dé người quan trị có thé lọc và
cho phép dự án được đăng
Đối tượng sử dụng:
cách phát hành token riêng của dự án
Người dùng muốn thực hiện các giao dịch mua bán token
Trang 7Phương pháp thực hiện:
e Phuong pháp làm việc:
Làm việc nhóm 2 thành viên thông qua cả 2 phương thức online và
offline dưới sự hướng dẫn của giảng viên hướng dẫn.
Lập kế hoạch, phân công công việc cho các thành viên
Báo cáo tiến độ, tiếp thu góp ý của giảng viên hướng dẫn
Triển khai xây dựng website theo đúng kế hoạch đã đề ra
e Phuong pháp nghiên cứu:
o Phân tích nhu cầu sử dụng của đối tượng người dùng
o Tìm hiểu và nghiên cứu cách thức hoạt động của blockchain, cách tương
tác, thực hiện giao dịch giữa người dùng, cách hệ thống ghi lại và xác
thực các thông tin giao dịch vào blockchain,
Khảo sát ứng dụng tương tự (PinkSale, PAD, Binance Launchpad), và liệt kê các chức năng của ứng dụng Đánh giá và chọn lọc các chức năng
Front-end: Reactjs cùng với thư viện Wagmi hỗ trợ tương tác với blockchain
Back-end: Python sử dụng framework FastAPI giúp xây dung API nhanh chóng Database: PostgreSQL, MongoDb
o Sử dụng Supabase làm nơi lưu trữ co sở dữ liệu PostgreSQL
Trang 8Visual Studio Code giúp triển khai code cho dự án
Kết quả mong đợi:
Ứng dụng hoàn thiện và hoạt động phù hợp với quy trình giao dịch của các dự
án blockchain
Ung dụng công nghệ blockchain dé hỗ trợ tốt nhất cho quá trình giao dịch
Website hoạt động 6n định, các chức năng đáp ứng tốt với nhu cầu của người
dùng.
dụng hỗ trợ
Hướng phát triển của đề tài:
Cung cấp thêm các tiện ích cho khách hàng đề thu hút người dùng sử dụng ứng
dụng
Tích hợp thêm các dịch vụ giúp giao tiếp giữa các blockchain khác dé tăng độ
bao phủ của các chain
Kiểm tra smart contract với các bên uy tín và triên khai ứng dụng ở mainnet
9, Kế hoạch làm việc:
Thời gian thực hiện từ ngày 19/02/2024 đến ngày kết thúc Khóa luận tốt nghiệp
Nhóm chia thành 2 giai đoạn cu thể:
Giai đoạn 1: Hoàn thiện phần giao diện người dùng, hoàn thành chức năng nhập,
xây dựng cơ bản backend, cơ sở dữ liệu Gồm 4 sprint với thời gian mỗi sprint kéo
dai 2 tuần:
Thoi gian: 19/02/2024 — 13/04/2024
Sprint 1: Dang ký dé tài, soạn dé cương chi tiết
Sprint 2: Khâu chuẩn bi tài liệu đặc tả cho đồ án
Sprint 3: Xây dựng giao diện, cài đặt các tính năng năng đăng nhập bằng ví
metamask
Trang 9Sprint 4: Hoàn thiện giao diện người dùng va xây dựng cơ ban backend.
Sprint Thoi gian Công việc dự kiên
Sprint 1 19/02/2024 —
03/03/2024
Dang ky dé taiTìm hiểu và xác định phạm vi, hướng phat triểncủa đề tài
Tìm hiểu và phân tích các yêu cầu nghiệp vụ của
Xây dựng sơ đồ use case
Xây dựng sơ đồ ERD
Tham khảo các giao diện có sẵn trên thị trường
Tao dt liệu gia cho ứng dụng
Chuẩn bị báo cáo giữa kỳ
Giai đoạn 2: Hoàn thiện các tính năng của ứng dụng, triên khai và kiêm thử ứng
Sprint 5: Xây dựng backend để quét các sự kiện của ứng dụng trên blockchain
Trang 10Sprint 6: Xây dựng tính năng giao dich token
Sprint 7: Kiểm thử và hoàn thiện hệ thống giao dịch token
Sprint 8: Tổng kiêm thử và viết báo cáo
Sprint [Thời gian Công việc dự kiến
Xây dựng api trả dữ liệu cơ bản
Sprint 6 29/04/2024 — 12/05/2024 |Hoàn thiện các tính năng của ứng dụng
Hoàn thiện hệ thống giao dịch token
Sprint 7 [13/05/2024 — 26/05/2024 |Téng kiêm thử ứng dụng
Triển khai ứng dụng
27/05/2024 - kết thúc — |Viết báo cáo
10 Phan công công việc:
Công việc Mô tả công việc
Công việc chung |Tìm hiểu công nghệ
Phân tích yêu cầu
Kiểm thử ứng dụngTriển khai ứng dụngChuẩn bị tài liệu, viết báo cáoXây dựng hệ thống gợi ý sản phẩm
Trang 11Công việc cá nhân |Lập trình Back-end Lập trình Front-end
Lập trình smart contract
Quản lý tiến độ
Xác nhận của CBHD TP HCM, ngày tháng năm 2024
(Ký tên và ghi rõ họ tên) Sinh viên
(Ký tên và ghi rõ họ tên)
Trang 12CHƯƠNG 2 TONG QUAN - - S4 152151EE151E1111111111111111111E11111111xecrke 7
2.1 Cac ứng dụng hiện có trên thi tƯỜng: s + x3 E+eekseeereseeereree 7
"5a ` 5 7 2.1.2 ChainGPT Pad: occ ố 8
2.1.3 Binance Launchpad: cccccsccsccesscessscesecesseeeseeeseeseescsseesseeeeseesseeeensenss 10 2.2 Đánh giá chung: .c c1 112119 1110 1192111811181 8 111 1g ng rệt 11
CHƯƠNG 3 CƠ SỞ LÝ THUYET ccseeecsssssssssssesssnsecessnesessnneseesnneeeesnnesensnneeen 12
3.1 Block chain: o .- 12
3.1.1 Giới thiỆU: - ST TH TH TH TH TH TH TH HH nhờ 12 3.1.2 Cách thức hoạt động: - - - +2 321312111 1311118111111 rerrre 13
3.13 Ưuđiểm: cu re 14
3.1.4 Nhược điểm ccvthhnhHhnnH ng l6
3.1.5 Ung dụng: -k tk kEEEEE211211211 2111121121111 1xx 16
3.2 Axelar NGtWOFẨK: GGGGGG G 00000 ng ng TH ng ng ng vn 17
Trang 133.2.1 _ GIỚI thiỆU: Gv TH TH nh ng ng trệt 17 3.2.2 Lần 0n ae 18
3.3 Chainlink price 0 0 20
9 21
Al Kiến trúc hệ thống: -+2<+EE+EE£EEEEE2E12212212717171E211 21.211 1x 23
4.1.1 _ Tổng quan kiến trÚC: -:- + ©+++E2E£+EE+EE+EEEEEEEEEEEEEEEErrkerkerkee 23
4.2 Sơ đồ Use-case: 46555: 2210 2đYẾt: coccdggSEXẤU co: ào SọH Son 111113 2x 25
4.2.1 So đồ Use-case tổng: -:- S522 2 E2 2121121121121 crxe 254.2.2 Sơ đồ Use-case Presale: cscecccessessesssesssssssssessssssecssecsecssecsscssecasecsecsseesecases 264.2.3 Sơ đồ Use-case Public sale: -. -©2¿- +c2c++cxt+Exerkeerxerrrerkerreee 26
4.2.4 Damh sach Actor: nha 27 4.2.5 Damnh sách SG-Ca§€: G2 11v nghiệp 27 4.2.6 Đặc tả S€-CaAS€: LG TQ TQ Q0 ng vu 28
4.3 Sơ đỒ hoạt động -¿- - tt E1 E21 21571511211211211111 211111 111111Ecy 38
4.3.1 Dang kí dự án pre€Sale: -. -Ă Ăn nghiệp 38
4.3.1 Mua token từ dự an DT€SaÌC: - - G6 211911311 11 1 1v ng rưy 39 4.3.2 Đăng kí dự án public SaÌ€: 5 2c 3113233 EEeirsrrrrrerrrsrrree 40 4.3.1 Mua token từ dự an public SaÏ€: 5 +5 +3 *++ssevseeereeerreeeresee 41
4.3.2 Staking fOK€n: Ă LH HH HH kệ 42 4.3.3 Dang ki no 0n 43
Trang 144.3.4 Đăng ki staking pOOl: - Gv nh ng ng ng rưy 43
4.3.5 SCAN! da 44
AA, Thiết kế đối trong? occ ceccecccccccccssessessessssssessessessessessessssssessessessessessssessseseeesees 45
4.4.1 Sơ (00 (6) 0 CS E121 2121101121121 11011 2112111 re 45
4.4.3 Mô tả lớp đối tượng: :- ©2222 2222121712112 xe 474.5 Thiết kế giao dit ei.cecceecccscssessesssessessessessssssesssssessessessessussssssessessessessessesssesseesees 56
4.5.2 Thiét kế component c.ccscccccscssessessessessesesessessesscsecsessessesscsecsessessssecseeaes 56
4.5.3 Thiét kế trang: ceccecccscesccscssessesscssesesecssesscsscssssvssesscsscsscssssesecsscstsassateseseeass 59
5.1 Môi trường cài đặt và kiỂm thử: - ¿2-2 E2 £+keEEeESEEEEEEEeEkerkerkererkee 695.2 Kết quả kiểm there oeecceccescecceccssccssessesecssesssssessessessecsecsucssessessessessessvcseessessesseeaes 69
Trang 15DANH MỤC HÌNH ẢNH
Hình 2.1: Logo website PInkSaÌe - << s1 11x TH TH HH nh 7 Hình 2.2: Màn hình giao diện PinkSaÌe - 5 c5 3+ 322333 E*EESeesrerereeerrerrreree 8
Hình 2.3: ChainGPT Pad 6 6 c1 11T nh nh nh nh nh nh Thọ nh Thu Thọ Thu nh ch nh 9
Hình 2.4: Logo của BinanC€ - - - +21 3111321111111 111 11 1111 11 H1 1H ng ng ng nếp 10
Hình 3.1: Cấu trúc dit liệu của blockchain -¿-2- se +E+E+EEE£E+E+EEEE+EeEeEEzEerererezrrrs 12
Hình 3.2: Cách thức hoạt động của blockchaIn 55 s55 +2 *++v++eexseereeeesesse 13 Hình 3.3: Cơng nghệ blockcha1i - - - - +6 E113 1* 9E 911 E1 91 91 9 1 ng ngư 17 Hình 3.4: Axelar DTOfOCỌ c1 22013311111 11111 11118111 1811 1H vn kg vn ket 18 Hình 3.5: Mơ hình hoạt động của À X€Ï4T - 5 25 + 123 1S 113911 9 11911 9v nrưệp 19 Hình 3.6: Mơ hình phương thức hoạt động của Chainlink - «55s «5s s++s+2 20
Hình 3.8: Một số token sử dung tiêu chuẩn ER.C-20 - ¿2 + + +Ee+Ee£x+£zEred 22
Hình 4.1: Sơ đồ kiến trúc hệ thống -¿- 2 ¿©s£SE+EE+E£+E£+E£EE+EE+EEEEEEEerkerkrrerrered 23
Hình 4.2: Sơ đồ Use-case tỔng ©2¿- 2 4222221 EEEEEEE121121121112171711211 2111112 crx e6 25Hình 4.3: Sơ đồ Use-case presaÏe ¿2¿- 2-5251 SE2EE2E122121112171711211211 1121 cxe 26Hình 4.4: Sơ đồ Use-case public saÌ€ - 2-52 SE EEE£EEEEEEEEEEEEEEEEEEEkErkrrkrrrred 26
Hình 4.6: Sơ đồ hoạt động mua token từ dự án presaÌe - - «+ ++s<++ss++exzxss 39
Hình 4.8: Sơ đồ hoạt động Mua token từ dự án public saÌe - - «+ +ss«=+<ss++s+2 41
Hình 4.9: Sơ đồ hoạt động Staking token c.cccscceccsscessessessessesseessesessessessesstesssasessessees 42
Hình 4.12: Sơ đồ hoạt 6581011777 44
Hình 4.13: Sơ d6 lớp ¿2-2 E+SE£SE‡EE2E2E12E1571271711211211211211211171 1.1111 11 xee 45
Hình 5.1: Sơ đồ liên kết các màn hình ¿2s Set +E+E+E+E+EtESEEEEEEEEEEEE+E+EeErErrerersrrs 56
Trang 16Hình 5.2: Giao diện ProJect card theo chiều OC - c6 Sx+E‡EkeEEEEeEerkeEerkererkeree 56
Hình 5.3: Giao điện Project card theo chiều ngang - 2-2552 z+£z+£++zs+rxzes 57
Hình 5.5: Giao diện NavBar đã kết nối wallet - ¿+ + Et+E+E£EEEE£EeEeEErEsrerererrers 58
Hình 5.7: Giao điện f00ter - E221 11 11111112 25353111111 SH 51 1k tre rre 58 Hình 5.8: Giao diện trang Home Ì - - 5+ + 33213333132 EE2EEESEEEeeEEerrrsrsreeersee 59 Hình 5.9: Giao diện trang Home 2 sseceseeseesseeeeceseeeceseceeessecseeeeesseeseseaeeneeeas 60 Hình 5.10: Giao diện tao presale Ì - 13c 111211113811 15811 111111111811 ree 61 Hinh 5.11: Giao dién tao presale 2 62 Hình 5.12: Giao diện tao presale 3 - c2 2221222113211 321 3131511112111 Eerrke 63 Hình 5.13: Giao diện tao public sale Í 5 5< +21 3+2 E++tEE+eEEseeEseersserseserrree 64 Hình 5.14: Giao diện tao public sale 2 - - - + 3321113251138 3E 1Ekrrre 65 Hình 5.15: Giao diện tao public sale 3 - 2c S22 31132 EESeEEseeeserreerseserrrke 66 Hình 5.16: Giao diện danh sách project ccceecceesceescceseceececeseeeseeeeseceaeeeneeeeaeceaeeeeneeeas 67
Hình 5.17: Giao diện project (|€fA1Ì - ¿c2 31121183113 11931 11 11 11 11 ng rưếp 68
Trang 17DANH MỤC BANG
Bang 4.1: Danh 0.iv0 on Ầ 27
›)i s8 288 ¡00 ï9:(80/ vi 28
Bang 4.3: Đặc tả Use-case Connect wallet - c5 xxx vn ng rưệp 29
Bảng 4.4: Đặc tả Use-case Tạo fOK€I1 - c1 321991119 11111181 111811 1 rệt 30 Bảng 4.5: Đặc tả Use-case Tao DT€SaÏ€ - - G1113 1kg HH Hiệp 3l
Bảng 4.6: Đặc tả Use-case Mua token (presale) . - c1 se rey 32
Bang 4.7: Đặc tả Use-case Tạo public SaÏe c5 « x1 ng ng rưưt 33 Bảng 4.8: Dac tả Use-case Mua token (public sale) -.- + +5 S5 ‡++sssvssseersseesres 35 Bảng 4.9: Đặc tả Use-case A1TTOD -SĂ 11k 11H HH TH HH nếp 36 Bảng 4.10: Đặc tả Use-case StakIng - c1 12c 11 v1 1 1 1 1111811 rệt 37
Bảng 4.11: Danh sách các lớp đối tượng -2¿©5++2£+E++£x+£xerkezkevrerrxerxerxees 46
Bảng 4.12: Mơ tả lop PTOJ€C -c - c1 1112111111 1111111111 1111 0111 ng 1H vn ng re 48 Bảng 4.13: Mơ tả lớp Pr€SaÏ€ - G111 E1 gu TH ng nu ng ngờ 49 Bang 4.14: M6 ta lop PublicSale 15 50 Bảng 4.15: Mơ tả lớp WhtePaØe c 2c HT HH TH TH HH Hệ 50 Bảng 4.16: Mơ tả lớp ROacimap - c 21223113311 311 33 19 11 911 9 1 ng ng nếp 51 Bảng 4.17: Mơ tả lớp TOk€enOTNIC - (c2 E111 E9E*#EEEEESeEEeeEeeEeekeeeeeerseerree 51 Bảng 4.18: Mơ ta lớp Chantel - - 5 +53 213321333113 E32 ESEEEErsrierrerrrkrrrerree 51
Bảng 4.25: Mơ tả lớp AnnaÌyfTC - - c1 1119911911911 1 911 vn nh ng ng ng rưệp 55
Bang 5.1: Kết qua kiểm thử 2 52-5cESESE9EE2EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEErkErkrrkrrrred 69
Trang 18DANH MỤC TU VIET TAT
Từ viết tắt | Từ đầy đủ Ý nghĩa
dApps Decentralized Applications Ung dung phi tap trung
API Application programming | Giao diện chương trình ứng
interface dung
CRUD Create, Read, Update, Delete Mô hình 4 thao tac dữ liệu:
tạo, đọc, chỉnh sửa, xoá dữ liệu
ERC-20 Ethereum Request for | Tiéu chuan trién khai token
Comments 20 trên mạng lưới Ethereum
Trang 19TOM TAT KHOA LUẬN
Đề tài “Nghiên cứu và xây dung hệ thống hỗ trợ mua ban token trên blockchain”
là một website ứng dụng công nghệ blockchain cho phép người sử dụng giao dịch, trao
đổi token Ung dụng cung cấp nền tang cho phép người dùng là chủ các dự án tự tạo các
đồng token mới và người mua có thể sử dụng đồng token từ nhiều chain khác nhau có
thé trao đổi một cách tức thì ma không cần phải qua thao tác quy đổi đồng token minhđang sở hữu sang cùng loại đồng token mà đối phương đang nắm giữ dé giao dich
Với việc ứng dụng công nghệ blockchain, các giao dịch trở nên minh bach hơn va
có tính 6n định, giảm thiểu rủi ro bị tấn công từ các tin tặc, giup tối đa hoá tính sở hữucho người dùng Ngoài ra, việc hỗ trợ trao đôi đa chuỗi còn giúp tăng tính tiện dụng của
ứng dụng, thu hút được nhiều người dùng hơn
Cấu trúc báo cáo gồm:
- Chương 1: Mở đầu
- Chương 2: Tổng quan
- Chuong 3: Cơ sở lý thuyết
- - Chương 4: Thiết kế hệ thong
- _ Chương 5: Kiểm thử và cài đặt
Trang 20CHƯƠNG 1 MỞ ĐẦU
1.1 Lí do chọn đề tài:
Với xu hướng công nghệ hiện tại tập trung vào việc xây dựng những Metaverse,
việc sử dụng công nghệ Blockchain là một trong những xu hướng hiện tại nhăm đáp ứng
cũng như giải quyết những khó khăn trong các ngành nghề cần đữ liệu được lưu trữ chính
xác mà minh bạch đặc biệt là ngành kinh tế, tài chính hay với những ngành nghề cần tao
đổi các thông tin bảo mật của người dùng như y tế hay nghiên cứu cần dữ liệu cá nhân
để phân tích Ngoài ra, công nghệ Blockchain còn tạo ra một khái niệm về tiền điện tử
đem lại nhiều ưu điểm tích cực khiến chính phủ các nước phải nghiên cứu nhằm hợppháp hoá công nghệ và đồng tiền điện tử Nhận thấy tiềm năng của công nghệ này, các
nhà phát triển dần bắt đầu đầu tư vào các dự án mới ứng dụng công nghệ Blockchain
nhằm giải quyết một số bài toán trong đời sông xã hội Trong khi một số dự án nhận
được sự đầu tư từ các ông lớn về công nghệ, một số ít khác lại phải chật vật tự tìm lấy
nguồn tài chính cho mình bởi tính ứng dụng của dự án có thê chưa thuyết phục được các
nhà đầu tư Do đó, nhóm chọn đề tài “Nghiên cứu và xây dựng ứng dụng hỗ trợ mua bán
token trên blockchain” như một giải pháp tạo nguồn tài chính cho các nhà phát triển dự
án sử dụng công nghệ Blockchain bằng việc bán các token cho cộng đồng, bên cạnh việc
gọi vốn từ các tổ chức, quỹ đầu tư lớn
Dé đảm bảo về tính an toàn về an ninh mạng, giảm thiểu nguy cơ, rủi ro những
cuộc tấn công của các hacker có thể làm sai lệch dữ liệu giao dịch của cả nhà phát hànhtoken và người mua, dé tài sẽ được nhóm xây dựng bằng công nghệ Blockchain Một
trong những lý do quan trong là blockchain là một công nghệ ngày càng được ưa chuộng với tính năng phi tập trung và an toàn dữ liệu Việc áp dụng blockchain vào lĩnh vực này
giúp tăng cường sự minh bạch và minh chứng cho quá trình quản lý tài chính, đảm bảo
rằng thông tin về các dự án được lưu trữ một cách an toàn và không thê thay đổi Quantrọng nhất là với việc ứng dụng blockchain vào trong quá trình giao dịch là các dự án sẽ
Trang 21tiếp cận được các nguồn tiền đa dạng và nhanh chóng ở nhiều quốc gia hay ở nhiều
blockchain layer-1 mà không gặp nhiều trở ngại, giúp người dùng dé dàng thực hiện giao
dịch mua ban token với token sẵn có mà không cần phải chuyên đổi loại token minh
đang sở hữu sang token phù hợp, góp phần tạo sự tiện lợi cho người dùng và thu hút
được nhiều giao dịch hơn
Để xây dựng khả năng tương tác, thực hiện giao dịch giữa các token từ các
blockchain khác nhau, nhóm chọn sử dụng giao thức Axelar Giao thức Axelar là giao
thức truyền tin đa chuỗi, cung cấp cơ sở hạ tầng hỗ trợ các blockchain tương tác với
nhau Axelar đóng vai trò là bên thứ ba đề xác thực độ tin cậy của các giao dịch đa chuỗi,giúp đơn giản hóa quá trình chia sẻ và truyền thông tin cho cả người dùng và các ứng
dụng phi tập trung.
Tóm lại, chọn đề tài “Nghiên cứu và xây dựng ứng dụng hỗ trợ mua bán token trên
blockchain” không chi là sự lựa chon chiến lược mà còn là cơ hội để đóng góp vào sự
phát triển của một trong những lĩnh vực day tiềm năng và đổi mới nhất trong thế giới
công nghệ hiện nay.
1.2 Mục tiêu thực hiện
e Xây dung website:
o Ung dung chay trén nén tang Web
o Cung cấp giao diện giới thiệu về dự án, doanh nghiệp, quy trình đăng ky mở
bán token, các chính sách của ứng dụng một cách trực quan, đem đến cho
người dùng những nội dung chỉ tiết nhất
o 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
Trang 22o Hệ thống thực hiện giao dịch trao đôi token và trả băng tiền ảo của dự án đó
cho người mua.
o Các hoạt động giao dịch được minh bạch trên hệ thống.
o Ứng dụng công nghệ giao tiếp giữa các blockchain là Axelar dé thực hiện việc
đăng ký một dự án ở nhiều blockchain khác nhau
o Hệ thống liên tục quét các sự kiện diễn ra trên blockchain để đảm bảo đồng
bộ dữ liệu.
1.3 Phạm vi thực hiện:
e Phạm vi môi trường: Web
e Phạm vi chức nang:
© Đối với hệ thống giao dich token
Hệ thống giao dịch token được xây dựng theo công nghệ
Blockcham (Crypto ICO launchpads)
Quy trình giao dịch được chia thành nhiều giai đoạn do người dùng
tự xác định
Cho phép chủ dự án tạo ra đồng tiền riêng đại diện cho giá trị của
dự án
Cho phép chủ dự án gửi tiền của dự án đó vào kho dé người dùng
đã thực hiện giao dịch mua token từ dự án có thể nhận tiền khi giao
dịch kết thúcToken của dự án có thể được mua bằng nhiều loại token ở nhiều
blockchain khác nhau nhờ công nghệ Axelar
Hỗ trợ tính năng Staking trả thưởng
Hỗ trợ tính năng Airdrop trả thưởng token theo whitelist
Hỗ trợ tính năng Swap được tích hop từ bên thứ 3 (Squid)
o Đôi với ứng dung:
Trang 23= Hệ thống cung cấp giao diện đăng tin giao dich cho các chủ dự án
dễ dàng sử dụng và thao tác
“ Cung cấp các thông tin cơ bản về quá trình mở bán token của dự án,
hỗ trợ doanh nghiệp theo dõi tiễn trình mở bán token như tiến độ
token đã được bán ra.
= H6 thống cung cấp giao diện bán token cho dự án giúp người ding
dễ dàng thực hiện giao dịch với các dự án tiềm năng
= Hệ thống cung cấp giao diện đăng nhập bằng ví web3 giúp xác thực
người dùng.
1.4 Đối tượng sử dụng:
e Chủ dự án blockchain muốn xây dựng nguồn tài chính từ cộng đồng bằng cách
phát hành token riêng của dự án
e Người dùng muốn thực hiện các giao dịch mua token từ các dự án tiềm năng
1.5 Phương pháp thực hiện:
e Phương pháp làm việc:
o Làm việc nhóm 2 thành viên thông qua cả 2 phương thức online và offline
dưới sự hướng dẫn của giảng viên hướng dẫn.
o Lập kế hoạch, phân công công việc cho các thành viên
o Báo cáo tiến độ, tiếp thu góp ý của giảng viên hướng dan
o_ Triển khai xây dựng website theo đúng kế hoạch đã dé ra
e Phương pháp nghiên cứu:
o Phân tích nhu cầu sử dụng của đối tượng người dùng
o Tìm hiểu và nghiên cứu cách thức hoạt động của blockchain, cách tương
tác, thực hiện giao dịch giữa người dùng, cách hệ thống ghi lại và xác thực
các thông tin giao dịch vào blockchain,
Trang 24o Khảo sát ứng dụng tương tự (PinkSale, PAD, Binance Launchpad), và liệt
kê các chức năng của ứng dụng Đánh giá và chọn lọc các chức năng quan
e Front-end: Reactjs cùng với thư viện Wagmi hỗ trợ tương tác với blockchain
e Back-end: Python sử dung framework FastAPI giúp xây dựng API nhanh chóng
e Database: PostgreSQL
o Sử dung Supabase làm nơi lưu trữ co sở dữ liệu PostgreSQL
e Ứng dụng Axelar protocol giúp giao tiếp giữa các blockchain
e Visual Studio Code giúp triển khai code cho dự án
Trang 25CHƯƠNG 2 TÔNG QUAN
2.1 Các ứng dụng hiện có trên thị trường:
2.1.1 PinkSale:
2.1.1.1 Giới thiệu:
PinkSale là một website ứng dụng công nghệ Web3 dưới hình thức là website
launchpad PinkSale cung cấp một loạt các chức năng cho phép người dùng tạo cáclaunchpad, tạo và phát hành đồng token riêng cho dự án launchpad Ngoài ra, PinkSale
con cung cấp một loạt các tính năng phụ như lock, airdrop, staking hỗ trợ các chủ dự
án thu hút người dùng tham gia trao đổi đồng token của mình cũng như một số chức
năng giúp hạn chế lượng token lưu thông trên thị trường nhằm đảm bảo tính thanh khoản
của token.
- PinkSale
(
Hình 2.1: Logo website PinkSale
Với giao diện đơn giản, gần gũi, dé nhìn va dé sử dung, PinkSale thu hut mot số
lượng tương đối lớn người dùng tham gia giao dịch, trao đổi token cũng như tạo ra các
launchpad, airdrop, staking
Trang 26sỉ Tế Q ø Ề deeiewcom Connect Wallet
Trending #1 % #2 B #3 SH #4 #5 #6 #7? JMEN #8 HOK #9 MUMIN #10 W #11 C2 #12 $DONK
© Launchpads
All Advanced Mode My Contributions
[on y
Chains All Status No Sort Types B=
g &\, © Sale live xa © Upcoming @ © Upcoming
4 Liquidity (Manual Listing) Liquidity (Manual Listing) Liquidity
3 Lockup Time Unlocked Lockup Time Unlocked iiseksan Tíng
Pal p
Sale Ends In: Sale Starts In
Sale Starts In
e Có các tính năng phụ trợ như airdrop, staking hỗ trợ người dùng quản trị token
e Hỗ trợ giao dịch ở nhiều chain khác nhau
e Cho phép tao token mới ngay trên website
2.1.1.3 Nhược điểm:
e Đồng token được sử dụng trong giao dịch của mỗi launchpad phải được quy định
trước trong lúc tạo launchpad.
e Số lượng loại token được phép sử dung trong giao dịch có giới hạn (5 loại)
2.1.2 ChainGPT Pad:
2.1.2.1 Giới thiệu:
ChainGPT Launchpad là một nền tảng IDO và hỗ trợ cho các doanh nghiệp phát
triển dự án Web3 hiện thực hoá ý tưởng của mình và tạo bệ phóng cho hệ sinh thái token
của họ.
Trang 27của họ sẽ được đăng tải Những sản phâm nhận được sự chấp thuận sẽ được xếp vào các
giai đoạn khác nhau (incubation/acceleration phase) và nhận được sự hỗ trợ cũng như
hướng dẫn từ cộng đồng của ChainGPT
2.1.2.2 Ưu điểm:
e Website được làm hoàn thiện, giao diện bắt mắt, dé dang thu hút người dùng
e Số lượng người dùng cao
2.1.2.3 Nhược điểm:
e Đồng token được sử dụng trong giao dich của mỗi launchpad phải được quy định
trước trong lúc tạo launchpad.
e Chỉ hỗ trợ 6 chain
Trang 282.1.3 Binance Launchpad:
2.1.3.1 Giới thiệu:
Binance, là một công ty toàn cầu vận hành hệ thống trao đôi tiền điện tử lớn nhất
trên thế giới về khối lượng giao dịch hàng ngày Binance được thành lập vào năm 2017
bởi Changpeng Zhao Ban đầu, Binance có trụ sở tại Trung Quốc và sau đó dời sang
Nhật Ban một thời gian ngắn trước khi chính phủ Trung Quốc ra lệnh cắm các công ty
về tiền điện tử hoạt động Sau đó, công ty này dời đến Malta và hiện tại không có một
trụ sở chính thức nao trên thế giới
Binance Launchpad là một ứng dụng web thuộc hệ sinh thái của Binance — nhà
phát hành của đồng token BNB Binance Launchpad cung cấp một loạt các tính năng
dùng trong giao dịch tiền điện tử cũng như các hoạt động đào tiền điện tử (mining — xác
thực các giao dịch trên hệ thống blockchain và nhận về các đồng token như tiền thù lao)
2.1.3.2 Ưu điểm:
e Là một hệ sinh thái lớn trong lĩnh vực tiền điện tử
e Cung cấp một kho tính năng rộng rãi, đáp ứng nhiều nhu cầu khác nhau của người
dùng
e Hồ trợ rat tot các giao dich và có độ uy tín cao.
10
Trang 292.1.3.3 Nhược điểm:
e_ Chỉ hỗ trợ thanh toán bằng các đồng token thuộc chain BNB (chủ yếu là đồng
BNB native)
2.2 Danh gia chung:
Các sản pham trên nói chung có chung một đặc điểm, đó là mỗi project sau khi đã
được tạo, chỉ chấp nhận giao dịch bằng 1 loại token nhất định Khi người dùng muốn
thực hiện giao dịch với project, người dùng phải đảm bảo rằng trong token wallet củamình có đồng token phù hợp với yêu cầu của dự án Điều này dẫn đến việc người dùngphải thực hiện thêm thao tác đổi token mình sở hữu sang loại token phù hợp với giaodịch Người dùng sẽ gặp khó khăn trong vấn đề ra quyết định có tiếp tục thực hiện giao
dịch hay sẽ tìm một proJect khác phù hợp với những loại token mình đang sở hữu hơn.
Bên cạnh những khó khăn của người dùng, các chủ dự án cũng sẽ đối mặt với tình trạngngười dùng quyết định không thực hiện giao dịch với project của mình vì không có đồng
token phù hợp và làm giảm hiệu quả của launchpad.
11
Trang 30CHUONG 3 CƠ SỞ LÝ THUYET
3.1 Blockchain:
3.1.1 Giới thiệu:
Blockchain là một dạng cơ sở dữ liệu phân tán, vận hành một chuỗi các bảng ghi
có thứ tự, được gọi là các khối (block) Mỗi khối có một địa chỉ cụ thé được thé hiệnbăng một giá trị hash Các khối được liên kết với nhau theo dạng tương tự một danh sách
liên kết (linked list) tạo thành một chuỗi với mỗi mắt xích là một khối nên còn được gọi
là công nghệ chuỗi khối (blockchain)
Header Header Header
Previous Block Previous Block Previous Block
44-27 ® Address -* Address „+-“''* Address
Timestamp Timestamp Timestamp
Nonce Nonce
Merkel Root | | Merkel Root
Merkel Root |
Hình 3.1: Cấu trúc dit liệu của blockchain
Mỗi khối (hay mỗi block) sẽ chứa các dự liệu bao gồm: địa chỉ hash của khối trước
đó, một mốc thời gian, và dữ liệu của một giao dịch đã được thực hiện bằng công nghệ
blockchain.
12
Trang 31A transaction is A block that represents The block is sent to ig
requested the transaction is created _ every node »
in thenework ,*
°
+
Nodes validate Nodes recieve a A block is added, The transaction
tha tranicfon reward for the to the existing is complete
proof of work Blockhain
Hình 3.2: Cách thức hoạt động của blockchain
1 Tao một transaction: Một transaction mới được đưa vào mạng lưới blockchain.
Toàn bộ thông tin cần được lưu trữ về transaction sẽ được mã hoá 2 bước sử dụng
public key va private key.
2 Xác thực transaction: Transaction sau đó được gửi tới các máy tính (các nút)
trong mạng lưới được phân bồ trên toàn thé giới Tat cả những máy trong mạng
lưới này sẽ kiêm tra tính xác thực của transaction này
3 Tao một block mới: Sau khi trai qua quá trình xác thực và được xác nhận là một
transaction hợp lệ, một block mới sẽ được tạo ra.
4 Giải thuật đồng thuận: Sau khi block mới đã được tạo ra, từ nút đã tạo ra nó,
block sẽ được đưa vào chuỗi đề trở thành một block chính thức tồn tại vĩnh viễn
trong chuỗi Mỗi khi thực hiện hành động thêm một block mới, nó sẽ ảnh hưởng
đến quá trình hoạt động của chuỗi Đề giải quyết vẫn đề này, các nút sử dụng một
cơ chế đồng thuận dé mỗi block khi thêm mới vào chuỗi phải là độc bản và được
châp nhận bởi các nút còn lại trong mạng Quá trình này được gọi là quá trình xác
13
Trang 32thực block Bên cạnh đó, tại nút được chọn thêm block mới vào chuỗi, sẽ được
trả một khoản thưởng tương ứng Đây chính là nguồn gốc của khái niệm “đào tiền
ảo” trong cộng đồng đam mê công nghệ
5 Thêm block vào chuỗi: Sau khi một block mới được sinh ra, nhận giá tri hash và
được xác thực, chúng đã sẵn sàng để được thêm vào chuỗi Trong mỗi khối sẽ tồn
tại một giá trị hash của khối phía trước nó, tạo thành một chuỗi liên kết các block
với nhau, từ đó hình thành một chuỗi các khối hay nói cách khác, là một
blockchain.
6 Kết thúc giao dịch: Sau khi quá trình thêm block vào bên trong chuỗi kết thúc,
những dữ liệu bên trong chuỗi sẽ chính thức được lưu trữ và tồn tại vĩnh viễn trênchuỗi Bat kì ai cũng có thé xem chi tiết và xác nhận những transaction này
3.1.3 Ưu điểm:
3.1.3.1 Tính bất biến:
Những đữ liệu thông thường không cung cấp khả năng bắt biến của dữ liệu Các cơ
sở dữ liệu thông dụng hiện có trên thị trường đều áp dung theo mô hình CRUD dé dambao khả năng vận hành của một số thao tác xảy ra trên các ứng dụng Đề làm được việc
đó, mô hình CRUD cung cấp khả năng thao tác với dữ liệu một cách rất dễ dàng Dir liệu
từ các ứng dụng có thê bị xoá đi hoặc thay thế một cách rất nhanh chóng bởi người dùng
có quyền quản trị hệ thống phù hợp hoặc các tin tặc tan công từ bên ngoài
Blockchain cung cấp khả năng bat biến cho dữ liệu, điều này cũng đồng nghĩa rằng
việc xoá hoặc chỉnh sửa dữ liệu đã được ghi không thể xảy ra Vì thế, blockchain còn
giúp giảm thiểu nguy cơ dir liệu bi xáo trộn trong mạng lưới, dam bảo tính nhất quán và
toàn vẹn của những dữ liệu đã được ghi nhận.
3.1.3.2 Tính minh bạch:
Với đặc điểm phân tán đữ liệu, blockchain cho phép bat kì người dùng nao trong
mạng lưới có khả năng giám sát và xác thực các khối thông tin có trong chuỗi Với việc
cung câp khả năng giảm sát và xác thực đôi với toàn bộ dữ liệu trong mạng lưới cho toàn
14
Trang 33bộ người dùng, blockchain đảm bảo tính minh bạch và trung thực của đữ liệu, góp phần
làm tăng mức độ uy tín của những dữ liệu có trong chuỗi.
Ở mặt ngược lại, đối với các cơ sở đữ liệu kiểu cũ, toàn bộ các bảng ghi được quản
ly bởi các quản trị viên Người cá nhân này có toàn bộ quyền quyết định đối với dữ liệu
bao gồm cả việc chon lọc những dữ liệu nào sẽ được công khai và những dữ liệu nao sẽ
được bảo mật Mọi quyền quyết định thuộc về phía sở hữu hệ thống dữ liệu này, và người
dùng cuối không thể xác thực tính chính xác của các dữ liệu này
3.1.3.3 Tính độc lập:
Do không phải chịu sự quản lý bởi bất kì tổ chức, cá nhân nào, blockchain có khả
năng vận hành một cách độc lập mà không phải chiu sự kiểm soát hay can thiệp từ bat
kì ai kế cả các cơ quan thực thi pháp luật
Đối lập với blockchain, các hệ cơ sở đữ liệu truyền thống thuộc quyền sở hữu củacác tô chức, hoặc cá nhân nhát định Trong đó, những người nắm quyền quản trị hệ thống
có thé thực thi hoặc được yêu cầu từ các cơ quan chức năng, khi cần thiết, thực thi bất
kỳ hành động nào đối với dit liệu Một ví du đơn giản có thé thấy, là các hệ thống ngân
hàng có khả năng đình chỉ và phong toả tài khoản của khách hàng khi có yêu cầu từ
người dùng hoặc cơ quan điều tra
3.1.3.4 Khả năng truy xuẤt:
Được cấu tạo dưới dạng một danh sách liên kết, kết hợp với tính bất biến của dữliệu, blockchain cung cấp khả năng theo déi những biến đổi xảy ra trong mạng lưới một
cách rõ ràng nhất khi tất cả những thay đổi đều được lưu dưới dạng các giao dịch
(transaction) theo thứ tự không đổi Không có bat kì ai có thê thay đổi dữ liệu của nhữngtransaction này hay tác động đếu thứ tự của các block, khiến cho việc quan sát trở nên
dễ dàng hơn.
15
Trang 343.1.4 Nhược điểm
3.1.4.1 Tốc độ và hiệu suất:
Blockchain có tốc độ truy suất và hiệu suất kém hơn với các loại cơ sở dit liệu
truyền thống Vì là cơ sở đữ liệu phi tập trung, được phân tán rộng khắp thế giới, tốc độ
truy suất của blockchain sẽ thấp hon so với lại các hệ quản trị cơ sở dữ liệu thông thường
Bên cạnh đó, việc chạy các giải thuật đồng thuận, xác thực các block cũng đòi hỏi thời
gian tính toán và xử lí cao hơn so với các thao tác của mô hình CRUD thông thường
khiến cho hiệu suất đầu ra của blockchain giảm đáng ké
3.1.4.2 Chi phí vận hành cao:
Với đặc thù là một công nghệ mới, xuất hiện một vài năm gần đây, blockchain vẫncòn ở giai đoạn sơ khai hình thành của mình Chính vi thé, để tích hợp blockchain vào
các hệ thống ứng dụng, các doanh nghiệp cần phải bỏ ra khoảng chỉ phí không nhỏ Hơn
hết, số lượng lập trình viên hiện có trên thế giới chuyên về công nghệ này cũng không
nhiều, khiến cho chỉ phí nghiên cứu và nhân lực đề sử dụng công nghệ này là không rẻ
3.1.4.3 Khả năng chỉnh sửa dữ liệu:
Với cơ chế đặc thù là không hỗ trợ việc chỉnh sửa dữ liệu một khi block đã được
thêm vào bên trong mạng blockchain, việc sửa chữa những lỗi từ con người trong qua
trình nhap input đầu vào trở nên cực kì phức tạp và khó có thé thực hiện Việc này cũng
đồng nghĩa với các ứng dụng Web 2.0 nếu muốn nâng cấp lên thế hệ Web 3.0 phải thực
3.1.5 Ứng dụng:
Công nghệ Blockchain là một dạng cơ sở dữ liệu mới, tiên tiến, cho phép người
dùng chia sẻ các thông tin một các minh bạch Cơ sở dữ liệu chuỗi khối lưu trữ dữ liệudưới hình thức các khối dữ liệu liên kết với nhau thành một chuỗi liên kết Bên cạnh đó,
dữ liệu được lưu trữ bên trong blockchain có tính nhất quan cao và có trình tự về thờigian vì những khối dit liệu này không thể được chỉnh sửa hay xoá khỏi chuỗi nếu không
có sự đồng thuận từ mạng lưới Do đó, blockchain có thé được ứng dụng trong những
16
Trang 35lĩnh vực như theo dõi các đơn đặt hàng, khoản thanh toán, tai khoản và những giao dịch
khác nhăm đảm bảm tính toàn vẹn của dữ liệu
TECHNOLOGY
Hình 3.3: Công nghệ blockchain
Các hệ thống quản lý tài chính hoặc các thông tin cần đảm bảo tính toàn vẹn của
dữ liệu có thé ứng dụng các ưu điểm của công nghệ blockchain dé quản lý các thông tin
của mình như các khoản thanh toán trực tuyến, tài khoản
Trang 36Hinh 3.4: Axelar protocol
Axelar Network sử dung giao thức định tuyến phi tập trung (decentralized routing
protocol) dé hỗ trợ cho việc giao tiếp đa chuỗi Hệ thống này tận dụng một tập hợp cácvalidators và relayers đề truyền thông tin giữa nhiều blockchain một cách bảo mật Với
việc sử dụng công nghệ mã hoá và các cơ chế đồng thuận, Axelar đảm bảo khả năng tích
hợp và bảo mật của các giao dịch xuyên chuỗi.
3.2.2 Mô hình hoạt động:
“Axelar Network là giao thức general cross-chain messaging, được xây dựng dựa
trên bộ công cụ Cosmos SDK và cung cấp cơ sở hạ tang hỗ trợ các blockchain tương tác
với nhau”.
Axelar cung cấp phương thức giao tiếp bảo mật giữa các chuỗi khối, cho phép lậptrình viên xây dựng các ứng dụng phi tập trung phát triển trên nhiều chuỗi khối khácnhau Axelar được xây dựng dựa trên nguyên lý proof-of-stake, được sử dụng bởi nhiều
chuỗi khác nhau như Ethereum, Polygon, Cosmos, and more Phương thức giao tiếp này
cũng cho phép người dùng ứng dụng tương tác với tài sản, ứng dụng trên bất kỳ chuỗi
khôi nào chỉ với một cú nhâp chuột.
18
Trang 37ggiuve MO HINH HOAT BONG CUA AXELAR
_-— Point-to-Point es Hub and Spoke —
Updated: Aug 17th, 2023 4 # Ø ecoingsinsights Ö coingBnet
Hình 3.5: Mô hình hoạt động của Axelar
Axelar đóng vai trò như là một API Gateway trung gian, hỗ trợ chuyên tiếp cácmessage đến chain đích Nếu không sử dụng Axelar, các chain phải thiết lập phương thức
giao tiếp với từng chain đích, tạo thành một mạng lưới thông tin rất phức tap (mô hìnhpoint-to-point) Điều này cũng tiềm ấn rủi ro về an ninh nếu như một chain xảy ra sự cô,các chain còn lại cũng có khả năng bị ảnh hưởng do đã thiết lập các phương thức giao
tiếp trực tiếp với nhau
Dé giải quyết van đề đó, Axelar cung cấp một nền tảng định tuyến phi tập trung,giúp chuyền tiếp các message đến chain đích Các phương thức giao tiếp giữa các chain
sẽ được tập trung bên trong Axelar Khi một chain cần gọi đến một chain khác, chúng
chỉ cần gửi một message đến Axelar Axelar khi đó sẽ tự động chuyển một message tương
tự đến chain đích Như vậy, các chain vẫn có thê tương tác qua lại với nhau mà khôngcần phải thiết lập các phương thức giao tiếp một cách trực tiếp đến mỗi chain mà chỉ cầnthiết lập duy nhất một phương thức giao tiếp đến Axelar, mọi việc sau đó sẽ được Axelar
xử lý và trả kết quả
19
Trang 383.3 Chainlink price oracles:
Chainlink là một nền tảng dịch vụ Web3 vận hành hàng nghìn tỷ đô giá trị giao
dịch trên các lĩnh vực DeFi, insurance, gaming, NFTs Là một mang oracle phi tập
trung hàng đầu, Chainlink cho phép lập trình viên xây dựng các ứng dụng Web3 với khả
năng tương tác không giới hạn với những dữ liệu từ thế giới thực, những off-chain trên
bất kì blockchain nào và cung cấp cho các doanh nghiệp toàn cầu một gateway đến tất
ZøwœBHäO@ziees Ea = = 2 © High Quality Data
7 : : < : x 3B 7 ý On: _ | = PP (web © Highly Responsive ẩ8 “© =
Hình 3.6: Mô hình phương thức hoạt động của Chainlink
Cac dự liệu thô sẽ được các don vi tong hop dữ liệu chuyên nghiệp thu thập từ cácnền tang giao dịch tai sản trên blockchain như Coinbase, Binance, Kraken, Uniswap,Curve, PancakeSwap đưới dạng kết quả của các giao dịch diễn ra trên các nền tảngnày Sau đó, những dữ liệu này sẽ được tổng hợp lại từ các nút (node) của Chainlink
Các nút này được cấu hình đề kết nối được các đơn vị tổng hợp dữ liệu Các nút này sẽ
tiễn hành tính toán và đưa ra một giá trị chung từ những dit liệu đã lấy về Cuối cùng
toàn bộ những dữ liệu đã được các nút tính toán sẽ được tổng hợp lại vào Oracle network
dé có giá tri cuôi cùng.
20
Trang 39Enrtanso Baia *Ÿ;BINANCE coinbase aKraKen ÄÄUNISWAP © Sushi
H Asoregaion + etnereum f@ BNB CHAIN Cy polygon = SOLANA Qvatancue
Hình 3.7: Pipeline tổng hop dit liệu của Chainlink Price Feed
3.4 ERC-20:
ERC-20 là một tiêu chuẩn kỹ thuật được các nhà phat triển của công nghệ phát
mình và sử dụng cho mục đích triển khai các đồng token mới trên mạng lưới Ethereum
cùng khả năng tương tác smart contract.
Tiêu chuan ERC-20 cung cap cho các nhà phát triển blockchain một bộ quy tắcchung của mang lưới Ethereum, qua đó giúp các lập trình viên có thé dé dàng tạo mới
và triển khai các đồng token với những tinh năng như giao dịch, tương tác dApp
ERC-20 được ra mắt lần đầu tiên đến với cộng đồng blockchain vào tháng 11/2015,trong một bản đề xuất cải tiến Ethereum thứ 20 (EIP-20), bởi Vitalik Buterin và Fabian
Vogelsteller Bản đề xuất này đặc tả các quy tắc và chức năng của tiêu chuẩn ERC-20,
nhằm hoàn thiện và giúp hỗ trợ các lập trình viên blockchain có thể xây dựng và phát
triển các ứng dụng dApp sử dụng hệ sinh thái Ethereum
21
Trang 4047) MANA ẩM — STOR) Œ€ cuspc QC NPXS
PC MATIC © sUSD ˆ® ELF wo PAY
ERC-20 [ul MTL @) WBTC @ ENG £ POWR
q NMR rrg WTC bi FET 5 REN
Hình 3.8: Một số token sử dụng tiêu chuẩn ERC-20Theo đặc tả EIP-20 đề xuất, một token ERC-20 sẽ được tạo thông qua các smartcontract, giúp cho những token này chỉ có thê giao dịch khi và chỉ khi các điều kiện được
lập trình san bên trong smart contract được đáp ứng Vì vậy, ERC-20 còn giúp ngăn chặn
rủi ro vê lừa đảo, tân công an ning mạng.
22