1. Trang chủ
  2. » Cao đẳng - Đại học

Tìm hiểu blockchain và xây dựng ứng dụng tiền gửi ngân hàng

108 22 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM Phan Đình Minh Hiếu 16520412 Hà Kiệt Hùng 16520470 KHĨA LUẬN TỐT NGHIỆP TÌM HIỂU BLOCKCHAIN VÀ XÂY DỰNG ỨNG DỤNG TIỀN GỬI NGÂN HÀNG LEARN BLOCKCHAIN AND BUILD A BANK DEPOSIT APPLICATION KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM TP HỒ CHÍ MINH, NĂM 2021 ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN KHOA CƠNG NGHỆ PHẦN MỀM Phan Đình Minh Hiếu 16520412 Hà Kiệt Hùng 16520470 KHĨA LUẬN TỐT NGHIỆP TÌM HIỂU BLOCKCHAIN VÀ XÂY DỰNG ỨNG DỤNG TIỀN GỬI NGÂN HÀNG LEARN BLOCKCHAIN AND BUILD A BANK DEPOSIT APPLICATION KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM GIẢNG VIÊN HƯỚNG DẪN ThS TRẦN ANH DŨNG TP HỒ CHÍ MINH, NĂM 2021 DANH SÁCH HỘI ĐỒNG BẢO VỆ KHÓA LUẬN Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số …………………… ngày Hiệu trưởng Trường Đại học Công nghệ Thông tin Chủ tịch Thư ký Ủy viên Ủy viên ĐHQG TP.HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC Độc lập –Tự –Hạnh phúc CÔNG NGHỆ THÔNG TIN TP HCM, ngày……tháng… năm…… NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ PHẢN BIỆN) Tên khóa luận: TÌM HIỂU BLOCKCHAIN VÀ XÂY DỰNG ỨNG DỤNG TIỀN GỬI NGÂN HÀNG Nhóm SV thực hiện: Cán phản biện: Phan Đình Minh Hiếu 16520412 Hà Kiệt Hùng 16520470 Đánh giá Khóa luận Về báo cáo: Số trang 107 Số chương 05 Số bảng số liệu 13 Số hình vẽ 35 Số tài liệu tham khảo 12 Sản phẩm 01 Một số nhận xét hình thức báo cáo: Về nội dung nghiên cứu: Về chương trình ứng dụng: Về thái độ làm việc sinh viên: Đánh giá chung: Điểm sinh viên: Phan Đình Minh Hiếu: …./10 Hà Kiệt Hùng: …./10 Người nhận xét (Ký tên ghi rõ họ tên) MỤC LỤC Chương TỔNG QUAN ĐỀ TÀI 17 1.1 Tên đề tài 17 1.2 Giới thiệu đề tài 17 1.3 Khảo sát trạng 18 1.4 Một số vấn đề tồn 19 1.5 Mục tiêu đề tài 19 Chương KIẾN THỨC NỀN TẢNG 23 2.1 Blockchain 23 2.1.1 Giới thiệu 23 2.1.2 Ứng dụng Blockchain 26 2.1.3 Áp dụng vào đề tài 28 2.2 Phương thức đồng thuận POA 28 2.2.1 Giới thiệu 28 2.2.2 Ưu điểm phương thức đồng thuận POA 28 2.3 Smart Contract 29 2.3.1 Giới thiệu 29 2.3.2 Cơ chế hoạt động Smart Contract 30 2.3.3 Tính chất 31 2.3.4 Ứng dụng vào đề tài 31 2.4 Nền tảng Ethereum 32 2.4.1 Giới thiệu 32 2.4.2 Các thành phần Ethereum 33 2.4.3 Áp dụng vào đề tài 37 2.5 NodeJS 37 2.5.1 Giới thiệu 37 2.5.2 Ứng dụng vào đề tài 39 2.6 2.6.1 Laravel Framework 39 Giới thiệu 39 2.6.2 Ưu điểm Laravel 40 2.6.3 Ứng dụng vào đề tài 41 2.7 ReactJS 41 2.7.1 Giới thiệu 41 2.7.2 Các ưu điểm ReactJS 41 2.7.3 Ứng dụng vào đề tài 42 2.8 Flutter 42 2.8.1 Giới thiệu 42 2.8.2 Ưu điểm Flutter 42 2.8.3 Ứng dụng vào đề tài 42 2.9 MySQL 43 2.9.1 Giới thiệu 43 2.9.2 Ưu điểm MySQL 43 2.9.3 Ứng dụng vào đề tài 44 2.10 Docker 44 2.10.1 Giới thiệu 44 2.10.2 Ưu điểm Docker 44 2.10.3 Ứng dụng vào đề tài 45 Chương PHÂN TÍCH THIẾT KẾ HỆ THỐNG 46 3.1 Đặc tả yêu cầu 46 3.1.1 Mục đích xây dựng hệ thống 46 3.1.2 Phạm vi hệ thống 47 3.1.3 Kiến trúc hệ thống 47 3.2 Thiết kế liệu 49 3.2.1 Danh sách hệ thống bảng 49 3.2.2 Bảng “bank_accounts” 50 3.2.3 Bảng “blockchain_blocks” 50 3.2.4 Bảng “blockchain_transactions” 52 3.2.5 Bảng “daily_statistics” 53 3.2.6 Bảng “devices” 54 3.2.7 Bảng “interest_rates” 54 3.2.8 Bảng “news” 54 3.2.9 Bảng “notifications” 54 3.2.10 Bảng “personal_access_token” 55 3.2.11 Bảng “receivers” 55 3.2.12 Bảng “transactions” 55 3.2.13 Bảng “settings” 56 3.3 Kết chương 56 Chương 4: HIỆN THỰC HỆ THỐNG 57 4.1 Sơ đồ Use Case 57 4.1.1 Danh sách Actor 57 4.1.2 Sơ đồ Use Case tổng quát 58 4.1.3 Đặc tả số Use Case 59 4.1.3.1 Đặc tả Use Case “Đăng ký” 59 4.1.3.2 Đặc tả Use Case “Active Pin Code” 59 4.1.3.3 Đặc tả Use Case “Đăng nhập” 60 4.1.3.4 Đặc tả Use Case “Giao dịch” 60 4.1.3.5 Đặc tả Use Case “Quản lý người dùng” 61 4.1.3.6 Đặc tả Use Case “Quản lý tài khoản” 62 4.1.3.7 Đặc tả Use Case “Quản lý giao dịch” 63 4.1.3.8 Đặc tả Use Case “Quản lý lãi suất” 63 4.1.3.9 Đặc tả Use Case “Trang cá nhân” 64 4.1.3.10 Đặc tả Use Case “Chi tiết tài khoản” 65 4.1.3.11 Đặc tả Use Case “ Chi tiết giao dịch” 66 4.1.3.12 Đặc tả Use Case “Thống kê” 66 4.2 Sơ đồ Activity Sequence 68 4.2.1 Sơ đồ “Tao tài khoản” 68 4.2.1.1 Mục đích 69 4.2.1.2 Mô tả 69 4.2.2 Sơ đồ “Active Pin Code” 71 4.2.2.1 Mục đích 72 4.2.2.2 Mô tả 72 Hình 4.3.4.6 Giao diện “Chi tiết Block” Hình 4.3.4.7 Giao diện “Thống kê” 81 Hình 4.3.4.8 Giao diện “Danh sách lãi suất” Hình 4.3.4.9 Giao diện App “Login” 82 Hình 4.3.4.10 Giao diện App “Profile” 83 Hình 4.3.4.11 Giao diện App “Bank Accounts” 84 Hình 4.3.4.12 Giao diện App chi tiết “Bank Accounts” 85 Hình 4.3.4.13 Giao diện App “History” 86 Hình 4.3.4.14 Giao diện App chi tiết “History” 87 Hình 4.3.4.15 Giao diện App “News” 88 Chương 5: TỔNG KẾT Kết đạt Về nội dung nghiên cứu: 5.5.1  Đã nghiên cứu áp dụng thành công công nghệ Blockchain tảng Ethereum, ngồi đề tài cịn áp dụng số công nghệ bật khác NodeJs, React Cms, Laravel Framework, Docker, Flutter, Ngnix… để thực hóa yêu cầu đề từ ban đầu Ngồi q trình thiết kế phát triển ứng dụng, nhóm cịn vận dụng sử dụng mơ hình thiết kế kiến trúc MVC Laravel kết hợp với React Cms Flutter việc xây dựng build Smart Contract để xây dựng ứng dụng có khả bảo trì phát triển tốt cho tương lai Về chương trình ứng dụng 5.1.1  Đã xây dựng thành công ứng dụng quản lý tiền gủi ngân hàng Blockchain đầy đủ tính năg cần thiết 5.2 Đánh giá 5.2.1 Thuận lợi  Giảng viên hướng dẫn tận tình hỗ trợ định hướng nhóm nghiên cứu thực đề tài  Thường xuyên trao đổi học hỏi kinh nghiệm từ anh chị khóa bạn lớp  Các tài liệu ngôn ngữ, công cụ thực chia sẻ nhiều mạng  Vận dụng kiến thức, quy trình phát triển học  Cộng đồng lập trình NodeJs ReactJs Việt Nam phát triển với viết hướng dẫn có tính ứng dụng cao 89 5.2.2 Khó khăn  Vấn đề tìm hiểu tảng Blockchain Ethereum gặp nhiều khó khăn thời gian tài liệu  Viết SmartContract ngơn ngữ Solidity tốn nhiều thời gian cho việc tìm hiểu tài liệu, nghiên cứu build Smart Contract  Tìm hiểu Business model ngân hàng, đặc biệt với Blockchain giới nên nhiều thời gian để tìm hiểu xây dựng hệ thống  Tài liệu ít, số tài liệu ngơn ngữ khác (ngồi Anh, Việt) nên nhóm tự nghiên cứu tốn nhiều thời gian 5.3 Hướng phát triển  Hoàn thiện đầy đủ chức tại, nâng cấp giao diện thân thiện, dễ sử dụng Có thể giảm bớt thao tác giao diện để tăng trải nghiệm người dùng  Tích hợp thêm chức cần có ngân hàng như: người thụ hưởng, nạp tiền điện thoại,…  Cải thiện tốc độ phần mềm 5.4 Kết luận  Trong thời gian thực đề tài, nhóm áp dụng kiến thức học với hướng dẫn, dạy thầy vào q trình phát triển xây dựng dự án cho đề tài khóa luận  Trong q trình làm việc, nhóm trau dồi thêm nhiều kinh nghiệm học hỏi thêm nhiều kiến thức Thơng qua đó, nhóm hoàn thành đề tài nội dung nghiên cứu  Tuy đạt thành bên cạnh nhóm cịn gặp nhiều khó khăn hạn chế Trong thời gian tới, nhóm tiếp tục phát triển để khắc phục mặt hạn chế trau dồi thêm kỹ thân cho dự định tương lai 90 TÀI LIỆU KHAM KHẢO Tài liệu tiếng Anh [1] Mastering Bitcoin [Online] Available: https://unglueitfiles.s3.amazonaws.com/ebf/05db7df4f31840f0a873d6ea14dcc28d pdf [2] Laravel [Online] Available: https://laravel.com/docs/master/installation [3] Ethereum DApps [Online] Available: https://cryptozombies.io/ [4] Flutter [Online] Available: https://flutter.dev/docs [5] React Cms [Online] Available: https://www.cosmicjs.com/react-cms [6] NodeJS Available: https://nodejs.org/en/docs/ [7] MySQL [Online] Available: https://dev.mysql.com/doc/ [8] Docker [Online] Available: https://docs.docker.com/ [9] Sol Solidity [Online] Available: https://solidity.readthedocs.io/en/v0.5.14/ [10] Ngnix [Online] Available: https://nginx.org/en/docs/ 91 Tài liệu tiếng Việt [1] Tìm hiểu Smart Contract Ethereum [Online] Available: https://viblo.asia/p/phan-6-tim-hieu-ve-smart-contract-va-dong-tienao-ethereum-3Q75w2dBlWb [2] Ngân hàng Blockchain [Online] Available: http://tapchinganhang.gov.vn/blockchain-trong-ngan-hang-motgoc-nhin-tong-quan.htm 92 93 94 95 ... hợp với tìm hiểu cơng nghệ nhóm, luận văn tốt nghiệp nhóm đạt mục đích mong đợi 1.4 Ý nghĩa đề tài Trước hết, đề tài ? ?Tìm hiểu Blockchain xây dựng ứng dụng tiền gửi ngân hàng? ?? ứng dụng xây dựng. .. nhóm 1.5 Nhiệm vụ đề tài Đề tài ? ?Tìm hiểu Blockchain xây dựng ứng dụng tiền gửi ngân hang” Ứng dụng gồm có phần: Ứng dụng viết cho App, Webservice Sever - Ứng dụng App Web: Dành cho người tiêu... ban Giao dịch hàng hóa tương lai (CFTC) hàng hóa 15 Cũng xuất phát từ nhu cầu đó, nhóm em tìm hiểu định chọn cho đề tài “TÌM HIỂU BLOCKCHAIN VÀ XÂY DỰNG ỨNG DỤNG TIỀN GỬI NGÂN HÀNG” Với đề tài

Ngày đăng: 05/09/2021, 20:51

Xem thêm:

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w