Nghiên cứu công nghệ blockchain và ứng dụng xây dựng hệ thống tiền điện tử

78 0 0
Nghiên cứu công nghệ blockchain và ứng dụng xây dựng hệ thống tiền điện tử

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO UBND TỈNH THANH HÓA TRƯỜNG ĐẠI HỌC HỒNG ĐỨC LÊ XUÂN LÂM NGHIÊN CỨU CÔNG NGHỆ BLOCKCHAIN VÀ ỨNG DỤNG XÂY DỰNG HỆ THỐNG TIỀN ĐIỆN TỬ LUẬN VĂN THẠC SĨ MÁY TÍNH THANH HÓA, NĂM 2022 BỘ GIÁO DỤC VÀ ĐÀO TẠO UBND TỈNH THANH HÓA TRƯỜNG ĐẠI HỌC HỒNG ĐỨC LÊ XUÂN LÂM NGHIÊN CỨU CÔNG NGHỆ BLOCKCHAIN VÀ ỨNG DỤNG XÂY DỰNG HỆ THỐNG TIỀN ĐIỆN TỬ LUẬN VĂN THẠC SĨ MÁY TÍNH Chun ngành: Khoa học máy tính Mã số: 8480101 Người hướng dẫn khoa học: PGS TS Trịnh Viết Cường THANH HÓA, NĂM 2022 Danh sách Hội đồng đánh giá luận văn Thạc sỹ khoa học (Theo Quyết định số: /QĐ- ĐHHĐ ngày tháng năm 2022 Hiệu trưởng Trường Đại học Hồng Đức) Học hàm, học vị Cơ quan Chức danh Họ tên Công tác Hội đồng Chủ tịch HĐ UV, Phản biện UV, Phản biện Uỷ viên Uỷ viên, Thư ký Xác nhận Người hướng dẫn Học viên chỉnh sửa theo ý kiến Hội đồng Ngày tháng năm 2022 LỜI CAM ĐOAN Tôi xin cam đoan Luận văn “Nghiên cứu công nghệ Blockchain ứng dụng xây dựng hệ thống tiền điện tử” cơng trình nghiên cứu riêng dưới sự hướng dẫn PGS.TS Trịnh Viết Cường Luận văn khơng trùng lặp với khóa luận, luận văn, luận án cơng trình nghiên cứu cơng bố Thanh Hố, ngày 12 tháng năm 2022 Người cam đoan Lê Xuân Lâm i LỜI CẢM ƠN Đề tài “Nghiên cứu công nghệ Blockchain ứng dụng xây dựng hệ thống tiền điện tử” nội dung chọn để nghiên cứu làm luận văn tốt nghiệp sau hai năm theo học chương trình cao học chuyên ngành Khoa học máy tính trường Đại học Hồng Đức Để hồn thành q trình nghiên cứu hồn thiện luận văn này, lời tơi xin chân thành cảm ơn sâu sắc đến Thầy giáo PGS.TS Trịnh Viết Cường thuộc Khoa Công Nghệ thông tin Truyền thông – Trường Đại học Hồng Đức, thầy trực tiếp bảo hướng dẫn suốt q trình nghiên cứu để tơi hồn thiện luận văn Nhân dịp này, xin cảm ơn Khoa Công Nghệ thông tin Truyền thông, Trường Đại học Hồng Đức, lãnh đạo anh chị công tác khoa tạo điều kiện thời gian cho tơi suốt q trình nghiên cứu Cuối cùng, xin cảm ơn người thân, bạn bè ln bên tơi, động viên tơi hồn thành khóa học luận văn Trân trọng cảm ơn! Thanh Hoá, ngày 12 tháng năm 2022 Tác giả Lê Xuân Lâm ii MỤC LỤC LỜI CAM ĐOAN - LỜI CẢM ƠN ii MỤC LỤC iii DANH MỤC CÁC KÝ HIỆU, CÁC TỪ VIẾT TẮT v DANH MỤC HÌNH ẢNH vi MỞ ĐẦU 1 Lý chọn đề tài Mục tiêu nghiên cứu Nội dung nghiên cứu Tổng quan luận văn Chương 1.GIỚI THIỆU TỔNG QUAN VỀ CÔNG NGHỆ BLOCKCHAIN VÀ TIỀN ĐIỆN TỬ 1.1 Một số khái niệm cơng nghệ Blockchain 1.2 Phân loại hệ thống Blockchain 1.3 Tiền điện tử - Tiền ảo 10 1.3.1 Giới thiệu 10 1.3.2 Một số loại tiền điện tử phổ biến 12 1.3.3 Tiền điện tử Bitcoin 15 1.3.4 Tiềm phát triển tiền điện tử 23 Kết luận chương 25 Chương GIẢI PHÁP KỸ THUẬT XÂY DỰNG ỨNG DỤNG TIỀN ĐIỆN TỬ 26 2.1 Kiến trúc chức hệ thống 26 2.2 Giải pháp kỹ thuật xây dựng hệ thống tiền điện tử 29 2.2.1 Thuật toán đồng thuận 30 2.2.2 Chữ ký điện tử hàm băm 35 2.2.3 Kỹ thuật lập trình phân tán 46 iii 2.3 Kết luận chương 48 Chương XÂY DỰNG ỨNG DỤNG TIỀN ĐIỆN TỬ 49 3.1 Lựa chọn giải pháp kỹ thuật chức cài đặt thử nghiệm 49 3.1.1 Lựa chọn giải pháp kỹ thuật 49 3.1.2 Các chức cài đặt thử nghiệm 49 3.2 Cài đặt thực nghiệm đánh giá 53 KẾT LUẬN 56 TÀI LIỆU THAM KHẢO 66 iv DANH MỤC CÁC KÝ HIỆU, CÁC TỪ VIẾT TẮT Các từ viết tắt API Nghĩa tiếng Anh Application Programming Interface BLOCK BTC ECDSA Nghĩa tiếng Việt Giao diện lập trình ứng dụng Khối Một loại tiền ảo Bitcoin Elliptic Curve Digital Signature Algorithm Hệ chữ ký điện tử ECDSA POS Proof of Work Bằng chứng công việc POW Proof of Stake Bằng chứng cổ phần Node có đầy đủ chức FULL NODE Node có chức đào MINER NODE tiền ảo Node sử dụng dịch vụ hệ CLIENT NODE SHA thống Secure Hash Algorithm BLOCKCHAIN Họ hàm băm SHA Chuỗi khối v DANH MỤC HÌNH ẢNH Hình 1.1: Cấu trúc hệ thống Blockchain (nguồn tham khảo Internet) Hình 1.2: Thơng tin Block mạng Bitcoin (nguồn: https://blockchain.info) 18 Hình 1.3: Mơ hình giao dịch Bitcoin (nguồn Internet) 19 Hình 1.4: Dữ liệu Transaction (nguồn Internet) 19 Hình 1.5: Tạo khóa để thực giao dịch bitcoin 20 Hình 1.6: So sánh tốc độ ký ECDSA RSA Nguồn Internet 23 Hình 1.7: Giá trị vốn hóa thị trường số đồng tiền điện tử Nguồn Internet………………………………………………………………… 24 Hình 2.1: Kiến trúc tổng quan hệ thống 27 Hình 2.2: Quá trình giao tiếp Wallet với Full Node 31 Hình 2.3: Chuỗi khối (nguồn Internet) 32 Hình 2.4 Đường cong Elliptic 36 Hình 2.5: Phép cộng đường cong Elliptic (nguồn Internet) 36 Hình 2.6: Phép nhân đường cong Elliptic (nguồn Internet) 37 Hình 2.7: Mơ hình RMI hoạt động (nguồn Internet) 46 Hình 2.8: Kiến trúc RMI (nguồn Internet) 47 vi Phần mềm Phần mềm Ghi Hệ điều hành  Mac os Third party software Cài đặt chương trình hệ  NetBeans 8.2 thống Xây dựng mạng phân tán  Java RMI b) Kết thực nghiệm Sau tiếp nhận triển khai đề tài, học viên cố gắng để hoàn thành mục tiêu đặt ban đầu xây dựng thử nghiệm hệ thống phần mềm tiền điện tử với chức giao dịch, mua bán, kiểm tra Kết thực nghiệm chạy hệ thống hình ảnh đoạn chương trình chức thiết yếu trình bày Phần Phụ lục c) Đánh giá kết Do thời gian thực luận văn ngắn, khối lượng công việc nhiều, đặc biệt việc tìm hiểu cài đặt mơi trường phân tán, kết cài đặt thử nghiệm hệ thống tiền điện tử học viên tự đánh sau: Ưu điểm: + Thực chức hệ thống tiền điện tử như: chuyển, nhận, kiểm tra xác minh giao dịch + Hệ thống chạy ổn định, không xảy lỗi giao dịch + Các thuật toán, hàm kiểm tra để giao dịch đạt độ xác cao Nhược điểm: + Giao diện vẫn chưa bắt mắt + Hệ thống mới hoạt động thử nghiệm mạng LAN + Lưu trữ Blockchain dưới dạng file đơn giản, thao tác xử lý liệu chưa tối ưu 54 Hướng phát triển: + Thử nghiệm mơi trường Internet + Sử dụng thuật tốn, kỹ thuật lập trình để cải thiện độ hiệu hệ thống, đặc biệt kỹ thuật lập trình phân tán, thao tác với file, thuật tốn tìm kiếm, … + Ứng dụng giải pháp kỹ thuật Zerocoin [13] Zerocash [14] để tăng tính an toàn bảo mật hệ thống tiền điện tử 55 KẾT LUẬN Luận văn trình bày hai nội dung chính, nội dung thứ công nghệ Blockchain, công nghệ quan tâm gần với nhiều ứng dụng thực tế tiền điện tử, truy xuất nguồn gốc sản phẩm, hợp đồng thông minh, sở hữu quyền điện tử, … Nội dung thứ hai trình bày tiền điện tử bao gồm: giới thiệu tiền điện tử; giải pháp kỹ thuật để xây dựng hệ thống tiền điện tử; lựa chọn kỹ thuật, cài đặt, đánh giá thử nghiệm hệ thống tiền điện tử cụ thể Cụ thể cấu trúc luận văn chia làm ba chương Chương luận văn trình bày cơng nghệ Blockchain giới thiệu chung tiền điện tử, đặc biệt nhấn mạnh chi tiết vào loại tiền điện tử phổ biến Bitcoin Chương luận văn trình bày kiến trúc, chức hệ thống tiền điện tử nói chung, giải pháp kỹ thuật để xây dựng hệ thống tiền điện tử, đánh giá ưu nhược điểm giải pháp Chương chương cuối luận văn trình bày cài đặt thực nghiệm, đánh giá hệ thống tiền điện tử Những hướng mở để phát triển luận văn như: thử nghiệm hệ thống môi trường Internet Sử dụng thuật tốn, kỹ thuật lập trình để cải thiện độ hiệu hệ thống, đặc biệt kỹ thuật lập trình phân tán, thao tác với file, thuật tốn tìm kiếm, … Ứng dụng giải pháp kỹ thuật để tăng tính an tồn bảo mật hệ thống tiền điện tử 56 PHỤ LỤC Kết thực nghiệm chạy hệ thống hình ảnh đoạn chương trình chức thiết yếu Cấu trúc Transaction Output Cấu trúc Transaction 57 Cấu trúc Block Tạo khoá hệ chữ ký ECDSA 58 Tạo chữ ký hệ chữ ký ECDSA Ký lên giao dịch 59 Kiểm tra chữ ký hệ chữ ký ECDSA Kiểm tra chữ ký giao dịch 60 Chương trình Proof of Work 61 Kiểm tra Block tạo thành cập nhật vào Blockchain Chương trình Server Peer 62 Chương trình kết nối Peer với Peer khác Chương trình khởi chạy mạng Peer 63 Hiển thị số dư ví giao dịch phát sinh Giao diện thực giao dịch chuyển tiền 64 Giao diện lịch sử giao dịch Giao diện tạo nhập địa ví 65 TÀI LIỆU THAM KHẢO [1] A Kiayias, A Russel, B David, and R Oliynycov(2018), “Ouroburos: A provably secure proof-of-stake protocol”, Eurocrypt [2] Bandara, H M N D; A P Jayasumana(2012), "Collaborative Applications over Peer-to-Peer Systems – Challenges and Solutions", Peer-to-Peer Networking and Applications [3] Cope, James(2002), "What's a Peer-to-Peer (P2P) Network?", Computerworld [4] Dimitris Karakostas, Aggelos Kiayias, and Mario Larangeira(2020), “Account Management in Proof of Stake Ledgers”, IACR Cryptol ePrint Arch [5] Daniel R L Brown, SECG SEC 1: Elliptic Curve Cryptography (Version 2.0) https://www.secg.org/sec1-v2.pdf [6] D Boneh, M Drijvers, and G Neven (2018), Compact multi-signatures for smaller blockchains, In T Peyrin and S Galbraith, editors, ASIACRYPT, Part II, volume 11273 of LNCS, pages 435–464 Springer Heidelberg [7] Dmitry Khovratovich, Christian Rechberger & Alexandra Savelieva(2011), "Bicliques for Preimages: Attacks on Skein-512 and the SHA-2 family", IACR Cryptology ePrint Archive [8] Eli Ben-Sasson, Alessandro Chiesa, Christina Garman, Matthew Green, Ian Miers, Eran Tromer and Madars Virza(2014), “Zerocash: Decentralized Anonymous Payments from Bitcoin”, IEEE Symposium on Security and Privacy [9] Foteini Baldimtsi and Varun Madathil and Alessandra Scafuro and Linfeng Zhou(2020), “Anonymous Lottery in the Proof-of-Stake Setting”, IEEE Computer Security Foundations Symposium [10] Fabrice Benhamouda and Craig Gentry and Sergey Gorbunov and Shai Halevi and Hugo Krawczyk and Chengyu Lin and Tal Rabin and Leonid Reyzin(2020), “Can a Blockchain Keep a Secret?”, Cryptology ePrint Archive: Report /464 [11] Fiat; Shamir(1986), "How To Prove Yourself: Practical Solutions to Identification and Signature Problems", Proceedings of CRYPTO '86 Lecture Notes in Computer Science, 263: 186–194 doi:10.1007/3-540-477217_12 ISBN 978-3-540-18047-0 S2CID 4838652 66 [12] G Maxwell, A Poelstra, Y Seurin, and P Wuille Dec(2018), “Simple schnorr multi-signatures with applications to bitcoin”, Cryptology ePrint Archive, Report , 068, https://eprint.iacr.org/2018/068 [13] Ian Miers, Christina Garman, Matthew Green and Aviel D Rubin(2013), “Zerocoin: Anonymous Distributed E-Cash from Bitcoin”, IEEE Symposium on Security and Privacy [14] Ji Chen and Silvio Micali(2019), “Algorand”, Theoretical Computer Science (TCS) , volume 777 [15] Johnson, Don; Menezes, Alfred(1991), "The Elliptic Curve Digital Signature Algorithm (ECDSA)", CiteSeerX 10.1.1.38.8014 [16] M Bellare, C Namprempre and G Neven(2007), “Unrestricted Aggregate Signatures”, ICALP 411-422 [17] Mario Lamberger & Florian Mendel(2011), Higher-Order Differential Attack on Reduced SHA-256 [18] Rivest, R.; Shamir, A.; Adleman, L (1978), “A Method for Obtaining Digital Signatures and Public-Key Cryptosystems", ACM [19] Rivest, Ronald(2011), The Early Days of RSA – History and Lessons [20] Rüdiger Schollmeier(2002), “A Definition of Peer-to-Peer Networking for the Classification of Peer-to-Peer Architectures and Applications”, Proceedings of the First International Conference on Peer-to-Peer Computing, IEEE [21] RFC 6979 - Deterministic Usage of the Digital Signature Algorithm (DSA) and Elliptic Curve Digital Signature Algorithm (ECDSA) [22] Somitra Kumar Sanadhya & Palash Sarkar (2008), New Collision Attacks Against Up To 24-step SHA-2 [23] Satoshi Nakamoto(2008), Bitcoin: A Peer-to-Peer Electronic Cash System [24] Seurin, Yannick(2012), On the Exact Security of Schnorr-Type Signatures in the Random Oracle Model [25] Schnorr(1989) "Efficient Identification and Signatures for Smart Cards", Proceedings of CRYPTO '89 Lecture Notes in Computer Science, 435: 239– 252 doi:10.1007/0-387-34805-0_22 ISBN 978-0-387-973173 67 [26] Shimin Pan, Kwan Yin Chan, Handong Cui, Tsz Hon Yuen(2022), “Multisignatures for ECDSA and its Applications in Blockchain”, ACISP Conference, Link: https://uow-ic2.github.io/acisp2022/accepted.html [27] S Micali, K Ohta, and L Reyzin(2001), “Accountable-Subgroup Multisignatures”, ACMCCS [28] Xiuhua Lu, Wei Yin, Qiaoyan Wen, Zhenping Jin, Wenmin Li(2018), “A Lattice-Based Unordered Aggregate Signature Scheme Based on the Intersection Method”, IEEE Access 68

Ngày đăng: 17/07/2023, 23:33

Tài liệu cùng người dùng

Tài liệu liên quan