Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 71 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
71
Dung lượng
5,94 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ THÔNG TIN XÂY DỰNG SÀN GIAO DỊCH MUA BÁN TRỰC TUYẾN TRÊN NỀN TẢNG BLOCKCHAIN GVHD: NGUYỄN THIÊN BẢO SVTH: NGUYỄN TUẤN ĐẠT MSSV: 16110306 SKL 0 Tp Hồ Chí Minh, 2019 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TPHCM KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM & NGUYỄN TUẤN ĐẠT: 16110306 XÂY DỰNG SÀN GIAO DỊCH MUA BÁN TRỰC TUYẾN TRÊN NỀN TẢNG BLOCKCHAIN KHỐ LUẬN TỐT NGHIỆP KỸ SƯ CƠNG NGHỆ THƠNG TIN GIẢNG VIÊN HƯỚNG DẪN TS NGUYỄN THIÊN BẢO KHÓA 2016 - 2020 an ĐH SƯ PHẠM KỸ THUẬT TP.HCM KHOA CƠNG NGHỆ THƠNG TIN ******* CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Họ tên Sinh viên: Nguyễn Tuấn Đạt MSSV: 16110306 Ngành: Công nghệ thông tin Tên đề tài: Xây dựng sàn giao dịch mua bán trực tuyến tảng Blockchain Họ tên Giáo viên hướng dẫn: TS Nguyễn Thiên Bảo NHẬN XÉT Về nội dung đề tài khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày … tháng … năm …… Giáo viên hướng dẫn (Ký & ghi rõ họ tên) an ĐH SƯ PHẠM KỸ THUẬT TP.HCM KHOA CÔNG NGHỆ THÔNG TIN ******* CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Họ tên Sinh viên: Nguyễn Tuấn Đạt MSSV: 16110306 Ngành: Công nghệ thông tin Tên đề tài: Xây dựng sàn giao dịch mua bán trực tuyến tảng Blockchain Họ tên Giáo viên phản biện: TS Nguyễn Thành Sơn NHẬN XÉT Về nội dung đề tài khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày … tháng … năm …… Giáo viên phản biện (Ký & ghi rõ họ tên) an Trường Đại học Sư phạm Kỹ thuật TP.HCM Khoa công nghệ thông tin ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP Họ tên sinh viên thực hiện: Nguyễn Tuấn Đạt Mã số SV: 16110306 Thời gian làm luận văn: từ 11/03/2019 đến 30/06/2019 Chuyên ngành: Công nghệ phần mềm Tên luận văn: Xây dựng sàn giao dịch mua bán trực tuyến tảng Blockchain Giảng viên hướng dẫn: TS Nguyễn Thiên Bảo Nhiệm vụ luận văn: Tìm hiểu cơng nghệ Blockchain Tìm hiểu cách xây dựng ứng dụng phi tập trung cách kết hợp với ứng dụng truyền thống Xây dựng ứng dụng phi tập trung triển khai lên mạng testnet Đề cương viết luận: MỤC LỤC CHƯƠNG 1: MỞ ĐẦU 1.1 ĐẶT VẤN ĐỀ 1.2 TÍNH CẦN THIẾT CỦA ĐỀ TÀI 1.3 CÁCH TIẾP CẬN VÀ PHƯƠNG PHÁP NGHIÊN CỨU 1.4 NHỮNG CƠNG TRÌNH LIÊN QUAN 1.5 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC CHƯƠNG 2: TỔNG QUAN VỀ BLOCKCHAIN 2.1 KHÁI NIỆM BLOCKCHAIN an 2.2 MỘT SỐ TRÍCH DẪN ĐÁNG CHÚ Ý 2.3 LỊCH SỬ RA ĐỜI CỦA BLOCKCHAIN 2.4 CÁC KHÁI NIỆM CƠ BẢN 2.4.1 Hàm băm 2.4.2 Chữ ký số 2.4.3 Phi tập trung 2.4.4 Sổ phân tán 2.4.5 Chuỗi 2.4.6 Giao dịch lặp chi 2.4.7 Đồng thuận phân tán 2.4.8 Khai thác 2.4.9 Token 2.4.10 Bitcoin 2.4.11 Phân biệt Blockchain Bitcoin 2.4.12 Ethereum 2.4.13 Điểm khác biệt Bitcoin Ethereum 2.5 CÁC KỸ THUẬT TRONG BLOCKCHAIN 2.5.1 Các nhân tố cốt lõi Blockchain 2.5.2 Mật mã hóa khóa cơng khai 2.5.3 Mạng ngang hàng 2.5.4 Cơ chế đồng thuận phi tập trung 2.5.5 Bằng chứng xử lý 2.5.6 Bằng chứng cổ phần 2.7 CÁCH HOẠT ĐỘNG CỦA BLOCKCHAIN 2.7.1 Giao dịch sinh 2.7.2 Giao dịch phát đến mạng ngang hàng an 2.7.3 Cuộc đua tạo khối 2.7.4 Hoàn thành khối 2.7.5 Thêm khối vào chuỗi 2.8 PHÂN LOẠI BLOCKCHAIN 2.8.1 Public Blockchain 2.8.2 Private Blockchain 2.8.3 Consortium Blockchain CHƯƠNG 3: TỔNG QUAN VỀ ETHEREUM 3.1 LỊCH SỬ RA ĐỜI 3.2 SỰ SỤP ĐỔ CỦA DỰ ÁN DAO 3.3 CÁC KHÁI NIỆM CƠ BẢN 3.3.1 Hợp dồng thông minh 3.3.2 Ether 3.3.3 Gas 3.3.4 ERC20 Token 3.3.5 Ví đa chữ ký 3.3.6 Ứng dụng phi tập trung 3.3.7 Máy ảo Ethereum 3.4 NGƠN NGỮ LẬP TRÌNH HỢP ĐỒNG THƠNG MINH – SOLIDITY 3.4.1 Sơ lược ngôn ngữ lập trình hợp đồng thơng minh 3.4.2 Sự đời Solidity 3.4.3 Nhập môn Solidity 3.4.4 Các kiểu liệu 3.4.5 Các đối tượng 3.4.6 Phương thức 3.4.7 Sự kiện an 3.4.8 Tính thừa kế Solidity 3.4.9 Lưu trữ liệu Blockchain CHƯƠNG 4: LỢI ÍCH VÀ THÁCH THỨC TRONG ỨNG DỤNG CÔNG NGHỆ BLOCKCHAIN 4.1 LỢI ÍCH CỦA CƠNG NGHỆ BLOCKCHAIN 4.1.1 Tính minh bạch 4.1.2 Tính riêng tư 4.1.3 Tính phân tán 4.1.4 Khơng phụ thuộc vào tin tưởng 4.1.5 Tính bất biến 4.1.6 Tính phi tập trung 4.2 NHỮNG THÁCH THỨC VÀ RỦI RO KHI ÁP DỤNG BLOCKCHAIN 4.2.1 Lãng phí lượng 4.2.2 Tốc độ giao dịch phụ thuộc vào chi phí 4.2.3 Sự gia tăng kích thước sổ 4.2.4 Tình trạng đầu cơ, lạm phát 4.2.5 Hợp đồng thiếu tính linh hoạt 4.2.6 Bảo mật 4.2.7 Tấn cơng q bán CHƯƠNG 5: CÁC ỨNG DỤNG ĐIỂN HÌNH CỦA BLOCKCHAIN CHƯƠNG 6: XÂY DỰNG SÀN GIAO DỊCH MUA BÁN TRỰC TUYẾN TRÊN NỀN TẢNG BLOCKCHAIN 6.1 GIỚI THIỆU ỨNG DỤNG 6.2 ĐẶC TẢ ỨNG DỤNG 6.2.1 Kiến trúc hệ thống 6.2.2 Các đối tượng ứng dụng an 6.2.3 Các chức 6.2.4 Lược đồ chức 6.2.5 Các công nghệ sử dụng 6.2.6 Ưu điểm hạn chế KẾT LUẬN KẾ HOẠCH THỰC HIỆN STT Thời gian 11/03/2019 – 24/03/2019 Công việc Ghi - Tìm hiểu IPFS Ethereum - Tìm hiểu sơ lược API thư viện hộ trợ việc xây dựng ứng dụng phi tập trung - Xây dựng Proxy IPFS Server, blockchain dùng để lưu trữ file 25/03/2019 – 07/04/2019 liệu cho ứng dụng - Thiết kế sở liệu để xây dựng Discovery server 08/04/2019 – 21/04/2019 - Xây dựng hợp đồng thông minh tảng Smartcontract Ethereum - Xây dựng Discovery server để lắng nghe kiện blockchain lưu vào database 22/04/2019 – 05/05/2019 - Tích hợp Elasticsearch hỗ trợ tìm kiếm ứng dụng - Xây dựng webservice để ứng dụng lấy liệu từ Discovery server an 06/05/2019 – 19/05/2019 Khởi tạo Dapp tích hợp thư viện giúp giao tiếp với mạng Blockchain Xây dựng chức đăng bán sản phẩm, quản lý sản phẩm 20/05/2019 – 02/06/2019 - Xây dựng chức hiển thị, tìm kiếm sản phẩm 03/06/2019 – 16/06/2019 - Xây dựng chức mua sản phẩm Xây dựng quy trình giao dịch người bán người mua 17/06/2019 – 30/06/2019 Hồn thiện báo cáo, chuẩn bị thuyết trình - Deploy smartcontract lên testnet Hồ Chí Minh, ngày 18 tháng 02 năm 2019 Ý kiến giáo viên hướng dẫn Người viết đề cương Nguyễn Tuấn Đạt an CHƯƠNG 5: CÁC ỨNG DỤNG ĐIỂN HÌNH CỦA BLOCKCHAIN Blockchain triển khai nhiều lĩnh vực khác nhau, số lượng ứng dụng phi tập trung sở liệu gia tăng với tốc độ nhanh Tuy số mặt hạn chế cần giải thời gian tới điều cho thấy tiềm lớn công nghệ Blockchain Dưới số ứng dụng tiêu biểu công nghệ này: - Cryptocurrency: Tiền mã hóa nhắc đến danh sách ứng dụng Blockchain từ cơng nghệ Blockchain đời Hình 5.20 Một số tiền ảo mã hóa thị trường - Chính phủ phi tập trung: Tại số quốc gia nơi mà người dân khơng cịn niềm tin vào quyền Blockchain “chiếc phao cứu sinh” vào lúc Blockchain giúp tạo minh bạch công tác quản lý tổ chức quyền, qua cịn giúp giảm chi phí phát sinh cách quản lý truyền thống - Ứng dụng phi tập trung hợp đồng thông minh: Hợp đồng thông minh đời cơng nghệ Ethereum, điểm khác biệt lớn Bitcoin Ethereum Theo đó, Ethereum khơng đơn loại tiền tệ mã hóa, cho phép người dùng tạo hợp đồng tự động thi hành thỏa mãn điều kiện Hơn nữa, dựa hợp đồng thông minh, người dùng tạo đồng tiền ứng dụng phi tập trung cho riêng mà không cần phải tự xây dựng mạng Blockchain 41 an - Kiểm tốn, ngân hàng, tài chính: Cũng giống tiền mã hóa, lĩnh kiểm tốn, ngân hàng hay tài đầu tư, nghiên cứu để ứng dụng Blockchain từ ngày đầu công nghệ xuất - Chuỗi cung ứng: Ứng dụng Blockchain vào lĩnh vực chuỗi cung ứng chủ đề đáng quan tâm Tính minh bạch Blockchain giúp người tiêu dùng kiểm tra nguồn gốc, quy trình sản xuất hay thơng tin nhà sản xuất, nhà cung cấp Từ tạo tin tưởng, an tâm vào sản phẩm sử dụng Hình 5.21 Fruitchain dự án áp dụng thành công Blockchain vào chuỗi cung ứng - Y tế, chăm sóc sức khỏe: Lĩnh vực y tế nói chung, hay chăm sóc sức khỏe nói riêng lĩnh vực được nghiên cứu đầu tư mạnh mẽ việc ứng dụng Blockchain để quản lý bệnh án nhằm giảm chi phí tăng tính đồng liệu bệnh viện, phòng khám - Bất động sản: Áp dụng Blockchain vào việc quản lý đất đai hay lĩnh vực bất động sản tránh tình trạng giao dịch lặp chi (bán mảnh đất cho nhiều người khác nhau) nan giải - Dịch vụ lưu trữ: Việc lưu trữ liệu có dung lượng lớn khơng thích hợp với mạng Bitcoin hay Ethereum mạng sử dụng giao thức đồng thuận PoW, làm cho chi phí lưu trữ liệu mạng cao Do đó, số mạng Blockchain đời phục vụ cho vấn đề lưu trữ liệu Storj, IPFS, Về mạng hoạt động tương đối giống với BitTorrent Hình 5.22 Một số nhà cung cấp dịch vụ lưu trữ dựa tảng Blockchain 42 an - IOT: IoT chủ đề cơng nghệ nói đến nhiều ứng dụng trực tuyến Đối với hệ thống vậy, cần phải bảm đảm giao dịch khác diễn thiết bị ghi chép liệu xác Nói cách khác, hệ thống phải an tồn tự động hóa Ví dụ: Trong việc quản lý xe tự hành, cần giao thức để xe hệ thống giao tiếp với cách an tồn, xác Blockchain công nghệ tốt để thực điều Hình 5.23 Ứng dụng Blockchain vào xe tự hành - ICO: viết tắt Initial Coin Offering – hình thức kêu gọi vốn đầu tư ban đầu dự án Cryptocurrency Cũng giống IPO (Initial Public Offering), ICO hình thức huy động vốn từ nhà đầu tư thông qua việc chào bán cổ phiếu dạng token cho nhà đầu tư 43 an CHƯƠNG 6: XÂY DỰNG SÀN GIAO DỊCH MUA BÁN TRỰC TUYẾN TRÊN NỀN TẢNG BLOCKCHAIN 6.1 GIỚI THIỆU ỨNG DỤNG Mua bán trực truyến ngày người người dùng internet ưa chuộng tính tiện lợi Bên cạnh đó, giao dịch trực tuyến thường đem lại nhiều rủi ro khơng mong muốn như: lừa đảo, hang hố chất lượng, không giống mô tả Điều vơ tình làm cản trở phát triển kinh tế Do đó, áp dụng Blockchain để xây dựng sàn giao dịch trực tuyến cần thiết để hạn chế việc lừa đảo đảm bảo an toàn, tin cậy cho giao dịch trực tuyến 6.2 ĐẶC TẢ ỨNG DỤNG 6.2.1 Kiến trúc hệ thống Hình 6.24 Kiến trúc tổng quan ứng dụng Hệ thống xây dựng dựa bốn thành phần chính: • Marketplace Dapp: đóng vai trị Front End, hiển thị giao diện, cho phép người dùng thực giao dịch thông qua ví điện tử • Smart-contract: hợp đồng thông minh triển khai Ethereum Blockchain Đây thành phần quan trọng hệ thống, đóng vai trò làm trung giao người bán người mua, lưu trữ thông tin quan trọng giao dịch gồm trạng thái giá trị giao dịch • IPFS Swarm: sử dụng để lưu trữ nội dung giao dịch tập tin 44 an • Discovery server: có nhiệm vụ lưu trữ kiện thực thi từ Smart contract nhằm mục đích tìm kiếm truy xuất cần Ứng dụng triển khai tảng website giao tiếp với mạng Blockchain thông qua giao thức RPC cách sử dụng thư viện Ethereum cung cấp (Web3.js), liệu trả dạng JSON 6.2.2 Các đối tượng ứng dụng STT Tác nhân Mô tả Buyer Người có nhu cầu bán sản phẩm Seller Người có nhu cầu mua sản phẩm Arbitrator Nhóm người chịu trách nhiệm giải tranh chấp xảy giao dịch Bảng 6.2 Các đối tượng ứng dụng 6.2.3 Các chức STT Chức Mô tả Xem danh sách Xem danh sách sản phẩm có hệ thống sản phẩm Đăng thông tin Đăng bán sản phẩm sản phẩm Tìm kiếm sản Tìm kiếm sản phẩm theo từ khố gần phẩm Trị chuyện trực Người bán người mua trị chuyện để trao đổi tuyến thông tin sản phẩm giao dịch Chọn mua sản Chọn mua sản phẩm tốn thơng qua ví điện tử phẩm Đánh giá người Người mua người bán đánh giá nhận xét dùng Khiếu nại sản Người mua tạo tranh chấp để khiếu nại sản phẩm phẩm người giao dịch với sau giao dịch kết thúc không kỳ vọng Giải khiếu Arbitrator giải tranh chấp dựa vào nại chứng từ buyer selller 45 an Xác thực khoản tài Người mua người bán cung cấp thông tin cần thiết để xác thực tài khoản Bảng 6.3 Các chức ứng dụng 6.2.4 Lược đồ chức Hình 6.25 Lược đồ chức ứng dụng 6.2.5 Các công nghệ sử dụng a Ethereum Ethereum ví cơng nghệ Blockchain 2.0 với nhiều cải tiến vượt trội so với cộng nghệ Blockchain 1.0 (Bitcoin) Ethereum đời mở nhiều hướng cho công nghệ Blockchain, đặc biệt việc phát triển ứng dụng phi tập trung (Dapp) hay ứng dụng khơng có máy chủ tập trung (Serverless) b IPFS IPFS (viết tắt InterPlanetary File System) giao thức phân phối mã nguồn mở giao thức hypermedia hoạt động dựa nội dung danh tính Cụ thể hơn, phân phối liệu theo hình thức P2P Trong đó, hoạt động IPFS chủ yếu dựa vào 46 an khả tính tốn băng thơng tất máy tham gia không tập trung vào phần nhỏ máy chủ trung tâm giao thức khác c Smart Contract Như đề cập phần trước, sử dụng hợp đồng thông minh để phát triển ứng dụng phi tập trung mà không cần tự xây dựng mạng Blockchain Solidity ngôn ngữ sử dụng để viết hợp đồng thông minh mạng Ethereum Ngôn ngữ có nhiều điểm tương đồng với ngơn ngữ lập trình phổ biến như: Javascript, C++, Do đó, hồn tồn học ngôn ngữ thời gian ngắn d Ganache Ganache (trước TestRPC) khách hàng Ethereum dựa Node.js để thử nghiệm phát triển Nó sử dụng ethreumjs để mô đầy đủ hành vi khách hàng làm cho ứng dụng Ethereum phát triển nhanh Nó bao gồm tất chức tính phổ biến RPC (như kiện) TestRPC đơn giản mạng chuỗi khối chạy máy local chúng ta; thường sử dụng để chạy test cho hợp đồng thơng minh DApp local Ngồi ra, chúng triển khai public network Ropsten, Kovan hay trí testnet Ethereum e Truffle framework Truffle framework phát triển phổ biến cho Ethereum Dưới chức Truffle: • Hợp biên dịch hợp đồng thông minh, liên kết, triển khai quản lý nhị phân • Thử nghiệm hợp đồng tự động để phát triển nhanh • Scriptable, extensible deployment & migrations framework • Quản lý mạng để triển khai đến số mạng cơng cộng riêng • Quản lý gói với EthPM & NPM, sử dụng tiêu chuẩn ERC190 • Giao diện điều khiển tương tác để giao tiếp hợp đồng trực tiếp • Cấu hình xây dựng đường ống với hỗ trợ tích hợp chặt chẽ 47 an • Người chạy tập lệnh bên ngồi thực tập lệnh mơi trường Truffle f NodeJS Node.js mã nguồn mở, xây dựng dựa tảng Javascript V8 Engine, Node.js chạy nhiều tảng hệ điều hành khác từ Window Linux, OS X nên lợi Nó cung cấp thư viện phong phú dạng JavaScript Module khác giúp đơn giản hóa việc lập trình giảm thời gian mức thấp g ReactJS ReactJS tảng phát triển để xây dựng ứng dụng di động ứng dụng web hồn tồn miễn phí phát triển Facebook, tạo ứng dụng dựa HTML JavaScript JSX (một loại cú pháp mở rộng dành cho ngôn ngữ JavaScript viết theo kiểu XML) Trên tất ReactJS bật lên tính đa tảng, tốc độ hiệu cao, hỗ trợ phát triển toàn diện h Elasticsearch Elasticsearch cơng cụ tìm kiếm dựa phần mềm Lucene Nó cung cấp máy tìm kiếm dạng phân tán, có đầy đủ cơng cụ với giao diện web HTTP có hỗ trợ liệu JSON Elasticsearch phát triển Java phát hành dạng nguồn mở theo giấy phép Apache Elasticsearch cơng cụ tìm kiếm phổ biến nhất, theo sau Apache Solr, dựa Lucene i Docker Docker tảng để cung cấp cách để building, deploying running ứng dụng cách dễ dàng tảng ảo hóa 6.2.6 Ưu điểm hạn chế a Ưu điểm - Chịu lưu lượng truy cập lớn sử dụng Blockchain để xử lý giao dịch - Các giao dịch thực cách an tồn nhờ tính chất đặc trưng Blockchain 48 an - Giảm thiểu khả lừa đảo, gian lận cho giao dịch so với phương pháp truyền thống - Các thơng tin cá nhân hồn tồn bảo mật giao dịch không thông qua bên thứ ba khác b Hạn chế - Vì sử dụng Blockchain để xử lý giao dịch, người dùng cần chi trả trả khoản phí cho máy đào - Tốc độ xử lý chậm cần thời gian để xác minh giao dịch - Vẫn cần có tham gia đơn vị trung gian tin cậy để giải tranh chấp trường hợp xảy mâu thuẫn hai bên 49 an CHƯƠNG 7: KẾT LUẬN Việc nghiên cứu tìm hiểu cơng nghệ Blockchain hữu ích bối cảnh Các khái niệm tính mở rộng để áp dụng nhiều tình khác nhau, khơng áp dụng cho lĩnh vực tiền tệ (Blockchain 1.0) hợp đồng thông minh, quản lý tài sản giao dịch thị trường tài (Blockchain 2.0), mà cịn vượt ngồi phân khúc đa dạng phủ, y tế, khoa học, chuỗi cung ứng, quyền sở hữu trí tuệ, phát triển kinh tế, nghệ thuật văn hóa (Blockchain 3.0) chí rộng với quy mô lớn để đuổi kịp tốc độ phát triển công nghệ Với đời Blockchain, giải nhiều toán tồn đọng hàng chục năm qua nhiều lĩnh vực khác như: tính minh bạch tài chính, giao dịch lặp chi hay vấn đề liên quan đến tính riêng tư liệu mạng internet Ngồi lợi ích mà Blockchain mang lại, số vấn đề chưa giải triệt để q trình áp dụng cơng nghệ vào tình thực tế Đó lý nhiều tổ chức, người dùng chưa chấp nhận Blockchain Nhưng cho tín hiệu lạc quan cơng ty cơng nghệ lớn bắt tay với để nghiên cứu phát triển Blockchain, đầu số gồm: IBM, Google, Microsoft, Samsung, Amazon Từ việc tìm hiểu Blockchain ứng dụng phi tập trung giúp hiểu rõ cơng nghệ tiềm Từ đó, có nhìn tổng quan phát triển công nghệ mở hướng nghiên cứu tương lai Các kết đạt được: Tìm hiểu nghiên cứu lý thuyết: • Tổng quan Blockchain, Bitcoin, Ethereum • Tiền mã hố ứng dụng Blockchain • Nền tảng ứng dụng phi tập trung Thực nghiệm: • Khởi tạo thành cơng mạng Blockchain riêng kết nối máy tính với • Phát triển ứng dụng với chức tảng ứng dụng phi tập trung 50 an Định hướng nghiên cứu phát triển: • Tiếp tục phát triển ứng dụng để đáp ứng nhu cầu cao người dùng cách bổ sung số tính sau: o Tính trị chuyện trực tuyến: nội dung hội thoại mã hoá sử dụng Public Key Private Key bên tham gia o Tính giải tranh chấp: áp dụng Multi-Sig Wallet vào trình định kết cho tranh chấp o Tính xác thực tài khoản: giúp tăng độ tin cậy cho tài khoản người dùng o Tính thơng báo qua trình duyệt email phát sinh giao dịch • Tiếp tục tìm hiểu khái niệm chun sâu Blockchain mã hóa • Nghiên cứu thuật tốn đồng thuận để có lựa chọn phù hợp cho việc phát triển dự án tương lai • Nghiên cứu kết hợp với cơng nghệ có để tạo ứng dụng thân thiện với người dùng đảm bảo tính chất đặc trưng Blockchain 51 an TÀI LIỆU THAM KHẢO Andreas M.Antonopoulos, 2017 Mastering Bitcoin: Programming the Open Blockchain O'Reilly Media Mark Gates, 2017 BLOCKCHAIN: Ultimate guide to understanding blockchain, bitcoin, cryptocurrencies, smart contracts and the future of money CreateSpace Independent Publishing Platform Melanie Swan, 2015 Blockchain: Blueprint for a New Economy O'Reilly Media Lisk, 2018 Blockchain Cryptography Explained [Internet] Trích dẫn ngày 9/10/2018 Lấy từ URL: https://lisk.io/academy/blockchain-basics Ethereum Foundation, 2018 Solidity documentation [Internet] Trích dẫn ngày 25/9/2018 Lấy từ URL: https://solidity.readthedocs.io/en/v0.4.25 Warren Fauvel, 2017 Blockchain Advantage and Disadvantages [Internet] Trích dẫn ngày 27/9/2018 Lấy từ URL: https://medium.com/nudjed/blockchain-advantage-anddisadvantages-e76dfde3bbc0 Ethereum Foundation, 2016 Ethereum Javascript API [Internet] Trích dẫn ngày 1/10/2018 Lấy từ URL: https://web3js.readthedocs.io/en/1.0 Consensys, 2018 Truffle Framework documentation [Internet] Trích dẫn ngày 7/10/2018 Lấy từ URL: https://truffleframework.com The go-ethereum Authors, 2016 Go Ethereum [Internet] Trích dẫn ngày 8/10/2018 Lấy từ URL: https://geth.ethereum.org/ 10 Dr Gavin Wood, 2018 Etherum: A secure decentralised generalized transaction ledger [Internet] Trích dẫn ngày 11/10/2018 https://ethereum.github.io/yellowpaper/paper.pdf 52 an Lấy từ URL: PHỤ LỤC STT Thuật ngữ Giải thích AWS Amazon Web Service Bit Gold Tên loại tiền ảo phi tập trung sử dụng thuật toán Bằng chứng xử lý (Trên lý thuyết) Brute force Tấn công vét cạn Centralized server Trạm liệu trung tâm Cryptocurrency Tiền mã hoá Decentralize Application Ứng dụng phi tập trung () (Dapp) DAO Dự án Decentralized autonomous organization DigiCash Một loại tiền ảo xuất vào năm cuối kỷ XX Distributed consensus Đồng thuận phân tán 10 Distributed Tính phân tán 11 Double spending Giao dịch lặp chi 12 Decentralised Tính phi tập trung 13 ETH, BTC Các loại đơn vị đồng Token tương ứng với mạng Ethereum, Bitcoin 14 EVM Máy ảo Ethereum (Ethereum Virtual Machine) 15 Gas Đơn vị sử dụng mạng Ethereum dùng để đo lường chi phí tính toán (computationally expensive) 16 Genesis block Block Blockchain 17 Hash Dạng mật mã đại diện cho đối tượng đơn nhất, hay gọi dấu vân tay kỹ thuật số 18 Immutable Tính bất biến 19 ICO Initial Coin Offering, hình thức kêu gọi vốn đầu tư ban đầu 20 Minning Việc giải đố để tìm khối Blockchain 53 an 21 Nonce Một số xem mảnh ghép để thêm khối vào Blockchain 22 Node Một điểm, máy tham gia mạng Blockchain 23 Proof of Work (PoW) Thoán đồng thuận Bằng chứng xử lý 24 Proof of Stake (PoS) Thoán đồng thuận Bằng chứng cổ phần 25 Peercoin Đồng tiền ảo sử dụng chứng cổ phần 26 Privacy Tính riêng tư 27 P2P Mạng ngang hàng (Peer-to-peer) 28 Ripple , Ethereum, Bitcoin Các loại mạng Blockchain 29 Smart contract Hợp đồng thông minh 30 Token Một giá trị quy đổi Blockchain 31 Transparent Tính minh bạch 32 Trussless Tính chất khơng phụ thuộc niềm tin với cá thể khác 54 an S an K L 0 ... linh hoạt 4.2.6 Bảo mật 4.2.7 Tấn công bán CHƯƠNG 5: CÁC ỨNG DỤNG ĐIỂN HÌNH CỦA BLOCKCHAIN CHƯƠNG 6: XÂY DỰNG SÀN GIAO DỊCH MUA BÁN TRỰC TUYẾN TRÊN NỀN TẢNG BLOCKCHAIN 6.1 GIỚI THIỆU ỨNG DỤNG 6.2... 39 4.2.7 Tấn công bán 40 CHƯƠNG 5: CÁC ỨNG DỤNG ĐIỂN HÌNH CỦA BLOCKCHAIN 41 CHƯƠNG 6: XÂY DỰNG SÀN GIAO DỊCH MUA BÁN TRỰC TUYẾN TRÊN NỀN TẢNG BLOCKCHAIN ... Tên luận văn: Xây dựng sàn giao dịch mua bán trực tuyến tảng Blockchain Giảng viên hướng dẫn: TS Nguyễn Thiên Bảo Nhiệm vụ luận văn: Tìm hiểu cơng nghệ Blockchain Tìm hiểu cách xây dựng ứng dụng