Báo cáo đồ án: Tìm hiểu Web3 và ứng dụng minh họa NFT Marketplace (UIT)

Báo cáo đồ án tổng quan về Web3, công nghệ Blockchain và ứng dụng. Hướng dẫn chi tiết cách xây dựng một NFT Marketplace minh họa thực tế.

2022

56
0
0

Phí lưu trữ

30 Point

Tóm tắt

I. Giới thiệu về Web3 và NFT Marketplace

Web3Blockchain đang trở thành những công nghệ tiên phong trong cuộc cách mạng số. NFT Marketplace là một ứng dụng phân tán cho phép người dùng mua bán và trao đổi các tài sản kỹ thuật số một cách minh bạch, an toàn và hiệu quả. Không giống như các thị trường truyền thống cần trung gian, NFT marketplace khai thác sức mạnh của công nghệ blockchain để tạo ra một hệ thống ngang hàng, loại bỏ các rào cản giao dịch. Ứng dụng này đặc biệt hữu ích trong lĩnh vực GameFi, nơi người chơi có thể giao dịch vật phẩm trong game trực tiếp thông qua smart contracts. Với sự bùng nổ của NFTblockchain technology, việc xây dựng một marketplace chuyên biệt đáp ứng nhu cầu cộng đồng người dùng hiện đại là cấp thiết và cần thiết.

1.1. Khái niệm Blockchain và NFT

Blockchain là công nghệ sổ cái kỹ thuật số phân tán, chống giả mạo cao. Mỗi giao dịch được mã hóa bằng mật mã khóa bất đối xứng, đảm bảo an toàn tuyệt đối. NFT (Non-Fungible Token) là các token không thể thay thế, đại diện cho quyền sở hữu các tài sản kỹ thuật số độc nhất. Chúng khác biệt với các cryptocurrency thông thường ở chỗ mỗi NFT có giá trị và tính chất riêng biệt. Blockchain cung cấp nền tảng để lưu trữ, xác minh và giao dịch các NFT một cách an toàn.

1.2. Lợi ích của NFT Marketplace

NFT Marketplace mang lại nhiều lợi ích đáng kể cho người dùng và nhà phát triển. Người dùng có thể giao dịch NFT trực tiếp mà không cần bên thứ ba, tiết kiệm chi phí và thời gian. Transparency toàn bộ quá trình trên blockchain giúp xây dựng niềm tin. Cho Developers, đây là cơ hội phát triển các ứng dụng Web3 sáng tạo, mở rộng hệ sinh thái blockchain và tham gia vào nền kinh tế số tương lai.

II. Kiến trúc Blockchain và Công nghệ Mật mã

Hiểu rõ về kiến trúc blockchain là nền tảng để xây dựng NFT Marketplace hiệu quả. Blockchain hoạt động dựa trên cấu trúc dữ liệu phân tán, trong đó mỗi block chứa danh sách giao dịch và được liên kết với block trước bằng hash cryptographic. Cơ chế này đảm bảo rằng bất kỳ thay đổi nào trên dữ liệu cũ sẽ bị phát hiện ngay. Smart contracts chạy trên blockchain tự động thực thi các điều khoản giao dịch khi điều kiện được đáp ứng. Công nghệ mật mã khóa bất đối xứng bảo vệ tài khoản người dùng, với public key công khai và private key riêng tư. Các consensus mechanisms như Proof of Work hoặc Proof of Stake đảm bảo tính toàn vẹn của mạng lưới blockchain.

2.1. Cấu trúc Block và Hash Cryptographic

Mỗi block trong blockchain chứa header (thông tin metadata) và transactions (dữ liệu giao dịch). Header bao gồm timestamp, previous block hash, và merkle root. Hash cryptographic của block hiện tại được tính từ header của nó, tạo nên một liên kết bất khả xâm phạm giữa các block. Nếu ai đó cố gắng sửa đổi một transaction cũ, hash sẽ thay đổi, khiến toàn bộ blockchain không hợp lệ.

2.2. Smart Contracts và Tương tác Giao dịch

Smart contracts là những chương trình tự động chạy trên blockchain, thực thi logic giao dịch mà không cần trung gian. Trong NFT Marketplace, smart contracts kiểm soát việc chuyển ownership NFT, xử lý thanh toán, và quản lý royalties. ERC-721ERC-1155 là các chuẩn token phổ biến trên Ethereum cho NFT. Gas fees là chi phí để thực thi smart contract, phụ thuộc vào độ phức tạp tính toán.

III. Phân loại NFT Marketplace và Yếu tố Thành phần

NFT Marketplace được phân loại thành hai loại chính: generalized marketplaces (cho phép bán các loại NFT khác nhau) và specialized marketplaces (chuyên biệt cho một lĩnh vực cụ thể như game hoặc sining). Các yếu tố cấu thành một NFT Marketplace bao gồm backend system (xử lý logic giao dịch, quản lý smart contracts), frontend interface (giao diện người dùng), blockchain integration (kết nối với mạng blockchain), wallet connectivity (liên kết ví kỹ thuật số), và database management (lưu trữ metadata NFT). Mô hình MVC (Model-View-Controller) được áp dụng để tổ chức code một cách rõ ràng. MongoDB là cơ sở dữ liệu phổ biến để lưu trữ dữ liệu NFT non-blockchain, cung cấp tính linh hoạt cao.

3.1. Generalized và Specialized Marketplaces

Generalized NFT Marketplace như OpenSea cho phép người dùng tạo, liệt kê và giao dịch bất kỳ loại NFT nào. Chúng mang lại tính linh hoạt nhưng cạnh tranh cao. Specialized Marketplace chuyên tâm vào một lĩnh vực, ví dụ game marketplace cho in-game items, hoặc art marketplace cho tác phẩm kỹ thuật số. Chuyên biệt hóa giúp xây dựng cộng đồng người dùng trung thành và cung cấp các tính năng tối ưu cho lĩnh vực cụ thể đó.

3.2. Thành phần Kỹ thuật của Marketplace

NFT Marketplace bao gồm: Smart Contracts quản lý giao dịch NFT, Web Interface cung cấp trải nghiệm người dùng, Wallet Integration kết nối ví kỹ thuật số, Database lưu trữ metadata, và Backend APIs xử lý logic. Mô hình MVC tách biệt Model (logic dữ liệu), View (giao diện), và Controller (điều khiển luồng). MongoDB được chọn vì khả năng lưu trữ dữ liệu không cấu trúc, phù hợp với JSON format metadata NFT.

IV. Yêu cầu Chức năng và Hướng phát triển Marketplace

Một NFT Marketplace thành công cần đáp ứng nhiều yêu cầu chức năng và phi chức năng. Về user experience, ứng dụng phải thân thiện, dễ sử dụng cho mọi lứa tuổi. Về technical requirements, phải chạy trên nhiều nền tảng trình duyệt, đảm bảo responsiveness và tính compatibility. Security là ưu tiên hàng đầu, bảo vệ private key người dùng và giao dịch. Scalability cần thiết để xử lý lượng giao dịch ngày càng tăng. Integration với các blockchain networks phổ biến như Ethereum, Binance Smart Chain mở rộng tiếp cận người dùng. Hướng phát triển tương lai bao gồm: hỗ trợ multi-chain, thêm các tính năng social (comments, follows), DAO governance, và DeFi features như staking hay liquidity pools.

4.1. Yêu cầu Chức năng Ứng dụng

Use cases chính bao gồm: Browse & Search (duyệt và tìm kiếm NFT), Create & Mint (tạo NFT mới), List for Sale (niêm yết NFT bán), Make Offer (đưa giá), Purchase (mua NFT), View History (xem lịch sử giao dịch). Mỗi use case cần được thiết kế rõ ràng để đảm bảo user flow mượt mà. Form validation, error handling, và confirmation dialogs đảm bảo accuracy trong mọi giao dịch.

4.2. Hướng phát triển và Tối ưu hóa

Tương lai NFT Marketplace hứa hẹn nhiều cải tiến. Multi-chain support cho phép giao dịch trên nhiều blockchain khác nhau. Social features như collections, follows, comments tạo cộng đồng sôi động. Auction mechanisms (đấu giá) và bidding systems mở rộng cách giao dịch. Royalty management tự động trích lợi nhuận cho creator. Advanced analytics giúp người dùng hiểu thị trường NFT tốt hơn và đưa ra quyết định mua bán thông minh.

28/12/2025

Trích đoạn nội dung tài liệu

Chương 1 - TỔNG QUAN ĐỀ TÀI 1. Mô tả bài toán - Với khả năng chia sẻ thông tin dữ liệu minh bạch theo thời gian thực, tiết kiệm không gian lưu trữ và bảo mật cao, Blockchain là một trong những xu hướng công nghệ đột phá, có khả năng ứng dụng rộng rãi ở nhiều ngành nghề, lĩnh vực. Công nghệ này cũng được đánh giá là mảnh đất màu mỡ cho hệ sinh thái khởi nghiệp của Việt Nam. - Ngày nay, với sự bùng nổ trong lĩnh vực Blockchain, nổi bật hơn hết là lĩnh vực NFT và GameFi đánh dấu một bước phát triển mới so với lĩnh vực game truyền thống.

Ở lĩnh vực game truyền thống, để giao dịch các vật phẩm trong game với nhau, người chơi bắt buộc phải gặp nhau để giao dịch, hoặc phải nhờ đến một bên trung gian thứ ba đủ uy tín để giao dịch. Chính vì vậy, NFT được ra đời để giải quyết bài toán đó. Với công nghệ Blockchain, người chơi có thể giao dịch trực tiếp thông qua NFT Marketplace - một thị trường cho phép mọi người có thể giao dịch các NFT với nhau. Và sau khi giao dịch, game sẽ có cơ chế để biết được Blockchain đã dịch chuyển NFT, và sẽ tự động cập nhật vật phẩm từ người dùng này sang người dùng kia.

- Nhận thấy được vấn đề đó, website NFT Marketplace được ra đời nhằm đáp ứng được nhu cầu trao đổi, mua bán NFT tiện lợi, minh bạch. Yêu cầu đặt ra Một số yêu cầu nhóm đặt ra khi phát triển ứng dụng: • Tính tiện dụng: ứng dụng phải thân thiện với người dùng, dễ dàng tiếp cận với mọi lứa tuổi • Tính đúng đắn: thông tin đưa lên phải được xác thực kĩ về độ chính xác, ứng dụng chạy không lỗi • Tính thích nghi: ứng dụng chạy được trên nhiều nền tảng trình duyệt web khác nhau • Tính tiến hoá: ứng dụng phải dễ dàng phát triển thêm tính năng mà không ảnh hưởng đến các tính năng đã phát triển trước đó • Tính bảo trì: ứng dụng có thể thay đổi một số chức năng hoặc cập nhật thêm thông tin một cách tiện lợi nhất • Tính tương tác: tạo ra được một môi trường tương tác tốt giữa hệ thống và người dùng Chương 2 - TỔNG QUAN BLOCKCHAIN 2.1 Giới thiệu chung - Blockchain là cuốn sổ cái kỹ thuật số chống giả mạo 1 được triển khai theo mô hình phân tán (tức là không có kho lưu trữ trung tâm) và thường không cần một đơn vị đáng tin cậy chứng thực (như ngân hàng, công ty, chính phủ). Ở mức độ cơ bản, nó cho phép một cộng đồng người dùng ghi các giao dịch vào cuốn sổ cái chia sẻ, mà trong đó, với sự điều hành bình thường của mạng Blockchain thì không giao dịch nào có thể bị thay đổi sau khi xuất bản. Vào năm 2008, ý tưởng Blockchain được kết hợp với một vài công nghệ và khái niệm điện toán khác để tạo ra đồng tiền mã hóa hiện đại: tiền điện tử được bảo vệ bởi các cơ chế mật mã học thay vì nhờ vào bên chứng thực hoặc kho lưu trữ trung tâm.Blockchain - Công nghệ này được biết đến rộng rãi vào năm 2009 với sự ra đời của mạng Bitcoin – một trong những đồng tiền mã hóa hiện đại đầu tiên.

Ở hệ thống Bitcoin và các hệ thống tương tự, việc chuyển thông tin kỹ thuật số với đại diện là tiền điện tử diễn ra trong một hệ thống phân tán. Người dùng Bitcoin có thể ký chữ ký số và chuyển tài sản của mình sang người khác và Bitcoin ghi lại các giao dịch này công khai, cho phép những người tham gia mạng xác minh độc lập tính hợp lệ của giao dịch. Công nghệ Blockchain do đó được xem là giải pháp chung cho các đồng tiền mã hóa sau này. - Blockchain có thể được định nghĩa thông thường như sau: “Blockchain là cuốn sổ cái kỹ thuật số của các giao dịch được ký bằng mật mã.

Mỗi khối được liên kết mã hóa với khối trước nó sau khi được xác thực thì trải qua một quyết định đồng thuận. Khi một khối mới thêm vào, khối cũ hơn trở nên khó bị chỉnh sửa. Cuốn sổ cái sau đó được sao chép đến toàn bộ mạng và bất kỳ xung đột nào được giải quyết tự động thông qua các quy tắc được thiết lập.2 Lịch sử ra đời - Ý tưởng chính đứng sau công nghệ Blockchain này nổi lên vào cuối những năm 1980, đầu năm 1990. Vào năm 1989, Leslie Lamport đã phát triển giao thức Paxos.

Năm 1990, ông có bài báo The Part-Time Parliament1 được gửi đến ACM Transaction on Computer Systems; bài báo được phát hành cuối cùng vào một số của năm 1998. Bài báo miêu tả một mô hình đồng thuận giúp đạt được thỏa thuận trên một kết quả của mạng lưới máy tính – nơi mà các máy tính hoặc bản thân mạng có thể không ổn định. Năm 1991, một chuỗi thông tin được ký đã được dùng như một cuốn sổ cái điện tử cho các tài liệu có chữ ký kỹ thuật số theo cách mà không dễ dàng để tài liệu được ký nào bị thay đổi. Các khái niệm này được kết hợp và áp dụng vào tiền điện tử năm 2008 và được miêu tả trong bài báo – Bitcoin: A Peer to Peer Electronic Cash System – được xuất bản giả bởi Satoshi Nakamoto , và sau đó năm 2009 với sự ra đời của tiền điện tử Bitcoin.

Việc sử dụng Blockchain cho phép Bitcoin được triển khai theo kiểu phân tán, như vậy không có người dùng đơn lẻ điều khiển được tiền điện tử và không có khuyết điểm tồn tại đơn lẻ. Lợi ích chính là cho phép các giao dịch trực triếp giữa những người dùng mà không cần bên thứ ba đáng tin cậy. Nó cũng cho phép phát hành tiền mới theo cách được định nghĩa đến những người quản lý việc xuất bản các khối mới và duy trì bản sao của sổ cái, thì những đó được gọi là các miner ở Bitcoin. Bằng cách sử dụng cơ chế đồng thuận để duy trì và một cơ chế tự kiểm soát được tạo ra để đảm bảo rằng chỉ có các giao dịch và các khối hợp lệ mới được thêm vào Blockchain.

Phân loại Blockchain Mạng Blockchain có thể phân loại dựa trên mô hình quyền hạn của nó mà xác định ai có thể duy trì chúng (chẳng hạn xuất bản các khối). Nếu bất kỳ ai có thể xuất bản một khối mới, gọi là Blockchain mở. Nếu chỉ có những người dùng cụ thể xuất bản các khối, gọi là Blockchain đóng. Hiểu đơn giản, một mạng Blockchain đóng giống như một mạng Intranet của tổ chức, trong khi đó Blockchain mở lại giống như mạng Internet công cộng vậy.

Blockchain mở Mạng Blockchain mở là nền tảng sổ cái phi tập trung mở rộng đến bất kì ai muốn xuất bản các khối mà không cần quyền chứng thực nào cả. Nền tảng Blockchain mở thường là phần mềm mã nguồn mở, có sẵn miễn phí cho mọi người muốn tải xuống. Bởi vì bất kỳ ai đều có quyền xuất bản các khối, nên kết quả là bất kỳ ai cũng có thể đọc Blockchain cũng như là phát hành các giao dịch trên Blockchain (các giao dịch nằm trong các khối được xuất bản). Người dùng có ý đồ xấu có thể xuất bản các khối nhằm đánh sập hệ thống.

Để ngăn chặn điều này, mạng Blockchain mở thường triển khai các thỏa thuận đa bên hay còn gọi là hệ thống “đồng thuận”, yêu cầu người dùng chi tiêu hoặc duy trì tài nguyên khi muốn xuất bản các khối. Đồng thời, hệ thống “đồng thuận” thường thúc đẩy các hành vi đúng đắn thông qua việc trao thưởng cho các nhà xuất bản các khối tuân thủ giao thức với loại tiền điện tử tương ứng. Blockchain đóng Mạng Blockchain đóng là nền tảng sổ cái, nơi mà người dùng xuất bản các khối phải được chứng thực bởi cơ quan nào đó (làm cho nó tập trung hoặc phi tập trung). Bởi vì chỉ có người dùng được chứng thực là có thể duy trì Blockchain nên có có thể hạn chế quyền tiếp cận và hạn chế những ai có thể phát hành các giao dịch.

Do đó, Blockchain đóng có thể quy định bất kỳ ai có thể đọc hoặc phải chứng thực để đọc được. Ngược lại, bất kỳ ai cũng có thể phát hành giao dịch hoặc hạn chế chỉ những cá nhân được chứng thực từ trước. Blockchain đóng có thể khởi tạo và duy trì bằng phần mềm mã nguồn mở hoặc đóng. Mạng Blockchain đóng và Blockchain mở có thể giống nhau ở các đặc điểm: khả năng truy xuất tài sản kỹ thuật số trên Blockchain; hệ thống phân tán; phục hồi và lưu trữ dữ liệu dự phòng; các mô hình đồng thuận; có hoặc không có chi tiêu và duy trì tài nguyên.

Trong mạng Blockchain đóng, có sự phân loại mức độ tin tưởng và thu hồi chứng thực nếu làm sai. Mạng Blockchain đóng có lẽ được sử dụng bởi tổ chức muốn kiểm soát chặt chẽ hơn và bảo vệ Blockchain của họ. Tuy nhiên, nếu một thực thể kiểm soát những ai có thể xuất bản các khối, thì những người dùng sẽ cần phải tin tưởng vào thực thể đó. Một mạng Blockchain đóng của tổ chức này muốn làm việc với tổ chức khác nhưng có thể không hoàn toàn tin tưởng lẫn nhau.

Họ có thể thành lập mạng và mời các đối tác kinh doanh ghi lại các giao dịch trên một cuốn sổ cái phân tán chia sẻ. Các tổ chức này có thể xác định mô hình đồng thuận sẽ được dùng dựa trên mức độ tin tưởng lẫn nhau. Bên cạnh đó, mạng cung cấp sự minh bạch và hiểu biết mà có thể giúp thông báo các quyết định kinh doanh tốt hơn và buộc những bên làm sai chịu trách nhiệm. Một vài mạng Blockchain đóng hỗ trợ khả năng tiết lộ giao dịch có chọn lọc dựa trên danh tính của người dùng.

Với tính năng này, một vài mức độ riêng tư của giao dịch có thể được áp dụng. Ví dụ, mọi người có thể biết được có một giao dịch giữa hai người dùng được diễn ra, nhưng nội dung thật sự của giao dịch thì chỉ có những người liên quan mới có thể tiếp cận. Kiến trúc Blockchain 2. Hàm băm mật mã Một thành phần quan trọng của công nghệ Blockchain là sử dụng các hàm băm mật mã cho các hoạt động.

Băm là một phương pháp áp dụng hàm băm mật mã vào dữ liệu nhằm tạo ra một đầu ra tương ứng duy nhất (được gọi là tóm tắt thông điệp – message digest, hoặc tóm tắt – digest) từ một đầu vào của bất kỳ kích thước (chẳng hạn một tập tin, văn bản hoặc hình ảnh).

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ