Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 74 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
74
Dung lượng
3,08 MB
Nội dung
BỘ THÔNG TIN VÀ TRUYỀN THÔNG HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THƠNG lu an va n PHAN ÂN p ie gh tn to NGHIÊN CỨU CÔNG NGHỆ BLOCKCHAIN VÀ ỨNG DỤNG TRONG THANH TOÁN ĐIỆN TỬ d oa nl w an lu nf va LUẬN VĂN THẠC SỸ KỸ THUẬT z at nh oi lm ul (Theo định hướng ứng dụng) z m co l gm @ an Lu HÀ NỘI 2021 n va ac th si BỘ THÔNG TIN VÀ TRUYỀN THÔNG HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THƠNG lu an n va ie gh tn to PHAN ÂN p NGHIÊN CỨU CÔNG NGHỆ BLOCKCHAIN VÀ ỨNG DỤNG TRONG THANH TOÁN ĐIỆN TỬ d oa nl w Mã số: 60.48.01.04 ll u nf va an lu CHUYÊN NGÀNH: HỆ THỐNG THÔNG TIN oi m z at nh LUẬN VĂN THẠC SỸ KỸ THUẬT z @ m co l gm Người hướng dẫn: PGS.TS Lê Hữu Lập an Lu HÀ NỘI 2021 n va ac th si i LỜI CẢM ƠN Lời tơi xin gửi lời cảm ơn lịng biết ơn sâu sắc đến thầy giáo PGS.TS Lê Hữu Lập (Khoa Công nghệ thông tin – Học viện Công nghệ Bưu Viễn thơng), người giúp tơi chọn đề tài, định hình hướng nghiên cứu, tận tình hướng dẫn bảo tơi q trình thực luận văn tốt nghiệp Tôi xin gửi lời tri ân sâu sắc đến thầy giáo PGS.TS Lê Hữu Lập, người lu tận tình bảo, giúp đỡ tơi trình học tập trình thực an luận văn va n Tôi xin gửi lời cảm ơn thầy, cô giáo Học viện Công nghệ Bưu tn to Viễn thơng truyền đạt cho tơi nhiều kiến thức, giúp tơi có tảng p ie gh kiến thức vững sau năm học tập Học viện Tôi xin gửi lời cảm ơn chân thành tới bạn lớp ủng hộ khuyến oa nl w khích tơi suốt trình học tập trường d Cuối cùng, muốn gửi lời cảm ơn sâu sắc đến gia đình bạn bè, đặc lu an biệt mẹ, vợ– người thân yêu kịp thời động viên giúp đỡ vượt qua u nf va khó khăn học tập sống ll Hà Nội, ngày tháng năm 2021 m oi Học viên z at nh z m co l gm @ Phan Ân an Lu n va ac th si ii LỜI CAM ĐOAN Tôi xin cam đoan cơng trình nghiên cứu thực luận văn thực riêng tôi, hướng dẫn PGS.TS Lê Hữu Lập Mọi tham khảo từ tài liệu, cơng trình nghiên cứu liên quan nước quốc tế trích dẫn rõ ràng luận văn Mọi chép không hợp lệ, vi phạm quy chế hay gian trá tơi xin hồn tồn chịu trách nhiệm chịu kỷ luật Học viện lu an n va p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th si iii MỤC LỤC LỜI CẢM ƠN i LỜI CAM ĐOAN ii MỤC LỤC iii DANH MỤC CÁC TỪ VIẾT TẮT v DANH MỤC CÁC BẢNG BIỂU - HÌNH VẼ vi lu LỜI MỞ ĐẦU an n va Chương TỔNG QUAN VỀ BLOCKCHAIN 1.2 Lý thuyết Blockchain ie gh tn to 1.1 Giới thiệu chung công nghệ Blockchain: p 1.2.1 Hàm băm nl w 1.2.2 Chữ ký số, ứng dụng mật mã khóa cơng khai chữ ký số d oa blockchain 13 an lu 1.3 Công nghệ Blockchain [6] 16 u nf va 1.3.1 Các thành phần cấu tạo nên mạng lưới hoạt động Blockchain 16 ll 1.3.2 Tính chất Blockchain 16 m oi 1.3.3 Các ứng dụng công nghệ Blockchain 21 z at nh 1.3.4 Phân loại hệ thống Blockchain 26 z Chương ỨNG DỤNG CÔNG NGHỆ BLOCKCHAIN TRONG THANH @ gm TOÁN ĐIỆN TỬ 28 m co l 2.1 Giới thiệu chung 28 2.2 Thanh toán điện tử: 28 an Lu 2.2.1 Thanh toán truyền thống: 28 n va ac th si iv 2.2.2 Thanh toán điện tử : 29 2.3 Tiền kỹ thuật số 32 2.3.1 Giới thiệu chung tiền số 32 2.3.2 Tính chất tiền số 34 2.3.3 Độ an toàn tiền số 34 2.3.4 Phân loại tiền Crypto 35 2.3.5 Tiềm phát triển tiền kỹ thuật số 36 lu 2.4 Đồng tiền số Ethereum (ETH): 37 an 2.4.1 Mơ hình tổng quan Ethereum (ETH): 37 n va tn to 2.4.2 Các thành phần Ethereum: 38 ỨNG DỤNG THANH TOÁN HỢP ĐỒNG gh CHƯƠNG XÂY DỰNG p ie THƯƠNG MẠI QUỐC TẾ 42 w 3.1 Bài toán đặt ra: 42 d oa nl 3.2 Ví điện tử Metamask: 42 an lu 3.2.1 Giới thiệu ví Metamask 43 u nf va 3.2.2 Các tính bật ví Metamask 43 3.2.3 Độ an tồn ví Metamask 44 ll oi m 3.3 Xây dựng ứng dụng 44 z at nh 3.3.1 Kiến trúc chương trình 44 3.3.2 Đặc tả chức 45 z @ gm 3.3.3 Cài đặt module 46 m co l 3.4 Thử nghiệm đánh giá 51 KÊT LUẬN 61 an Lu TÀI LIỆU THAM KHẢO 62 n va ac th si v DANH MỤC CÁC TỪ VIẾT TẮT Tên từ Thuật ngữ Tiếng Anh/Giải Thuật ngữ tiếng Việt/ Giải thích viết tắt thích ECDSA Elliptic Curve Digital Signature Thuật toán sinh chữ ký số dựa ERC20 Algorithm đường cong Elliptic Ethereum Requetst For Coment Một công nghệ hệ thống Ethereum Network GPU Graphics Processing Unit Bộ xử lý NIST National Institute of Standards Cơ quan thuộc phận Quản trị lu Công nghệ Bộ Thương mại an and Technology va Mỹ n gh tn to NSA National Security Agency/Central Cơ quan thu thập tin tức tình Security Service báo cho lớn thuộc p ie phủ Hoa Kỳ Primitives Họ hàm băm phát triển Integrity Evaluation Message Digest Leuven, Bỉ, ba nhà mật mã oa học Hans Dobbertin, Antoon nl w RIPEMD RACE d lu an Bosselaers Bart Preneel u nf va nhóm nghiên cứu COSIC thuộc đại học Katholieke Universiteit ll oi m Leuven Secure Hash Algorithms Thuật toán hàm băm bảo mật TLS Transport Layer Security Kỹ thuật mã hóa truyền tin z at nh SHA z internet organization and Hiệp hội thành viên tổ chức phi gm membership association lợi nhuận Unspent transaction output Đầu giao dịch chưa chi tiêu m co l UTXO Nonprofit @ USENIX an Lu n va ac th si vi DANH MỤC CÁC BẢNG BIỂU - HÌNH VẼ Hình 1 Mơ hình chữ ký số 13 Hình Địa ví etherium 15 Hình Mơ hình tin cậy nhờ mật mã học blockchain 17 Hình Tính móc xích block giao dịch 18 Hình Tính bền vững blockchain 18 Hình Tính xun biên giới 19 lu Hình Tính sẵn sàng blockchain 20 an n va Hình Tính cộng đồng blockchain 20 tn to Hình Quản lý chuỗi giao vận 21 ie gh Hình 10 Quản lý chuỗi giao vận 22 p Hình 11 Quản lý chuỗi giao vận 23 nl w Hình 12 Quản lý chuỗi giao vận 23 d oa Hình 13 Ứng dụng blockchain lĩnh vực ngân hàng 24 an lu Hình 14 Ứng dụng blockchain lĩnh vực y tế 26 u nf va Hình 15 Ứng dụng blockchain mơ hình phịng chống thuốc giả 26 ll Hình Mơ hình tốn thơng qua blockchain 31 m oi Hình 2 Một số tiền loại kỹ thuật số thị trường 33 z at nh Hình Tính an tồn tiền số 34 z Hình 2.4 Đặc điểm tiền kỹ thuật số so với với tiền Fiat 35 @ gm Hình Phân loại tiền kỹ thuật số 35 m co l Hình Sự tăng trưởng đồng tiền số BTC 36 Hình Sự tăng trưởng đồng tiền số ETH 36 an Lu Hình Các loại tài khoản ETH 38 n va ac th si vii Hình Các thành phần trạng thái tài khoản 38 Hình 10 Cây Merkle [5] 39 Hình 11 Hoạt động Merkle [5] 40 Hình Kiến trúc chương trình 44 Hình Các chức hợp đồng 45 Hình 3 Màn hình cài đặt ví metamark 46 Hình Màn hình hiển thị cài đặt thành công 47 lu Hình Sao chép cụm từ bí mật 48 an n va Hình Màn hình hiển thị cài đặt thành cơng 48 tn to Hình Giao diện nạp rút coin 49 ie gh Hình Nhận gửi token ví 50 p Hình Nhận gửi token ví 50 nl w Hình 10 Chọn mạng thử nghiệm rinkeby 51 d oa Hình 11 Truy cập vào trang web với địa url 51 an lu Hình 12 Định dạng đăng 52 u nf va Hình 13 Số lượng ETH tương ứng nhận mạng testnet 52 ll Hình 14 Giao dịch thành công số lượng ETH nhận 52 m oi Hình 15 Tạo tài khoản tương ứng tài khoản chứa 0.2 ETH 53 z at nh Hình 16 Tạo File HopDongThuongMai.sol thư mục contract 53 z Hình 17 Chọn injected web3 để kết nối đến ví metamask 54 @ gm Hình 18 Kết nối ví thành cơng 54 m co l Hình 19 Tiên hàng 0.01 ETH tương ứng với 10,000 sazbo 55 Hình 20 Các tham số smart contarct 55 an Lu Hình 21 Hợp đồng deploy thành công 56 n va ac th si viii Hình 22 Hợp đồng deploy thành cơng 56 Hình 3.23 Tra cứu theo dõi smartcontract 57 Hình 3.24 Hiển thị thơng tin smart contract với tham số điền deploy 57 Hình 25 Người mua chuyển tiền cọc + tiền vận chuyển 58 Hình 26 Giao diện người mua đặt cọc thành công 58 Hình 2723 Giao diện người vận chuyển đặt cọc thành cơng 59 Hình 28 Giao diện người vận chuyển tới đích 59 lu an Hình 24 Giao diện người mua hàng nhận hàng 60 va n Hình 30 Giao diện tra cứu giao dịch sổ 60 p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th si 48 Bước 4: Sẽ hỏi có muốn cải thiện MetaMask hay không Nhấp vào “I Agree” “No, Thanks” tùy theo lựa chọn người dùng Bước 5: Bạn yêu cầu tạo mật cách đồng ý “Terms of Use ”, sau nhấp vào “Create” Bước 6: MetaMask cho bạn 12 từ khố Cái dùng để khơi phục lại tài khoản bạn quên password lu an n va p ie gh tn to d oa nl w ll u nf va an lu Hình Sao chép cụm từ bí mật oi m z at nh z m co l gm @ an Lu Hình Màn hình hiển thị cài đặt thành công n va ac th si 49 lu an n va gh tn to p ie Hình Giao diện nạp rút coin Bước 7: Nhấp vào biểu tượng khoá để thị seed phrase bạn Bạn nên viết lại oa nl w để ghi nhớ trường hợp bạn quyền truy cập vào tài khoản d Lưu ý: Bạn nên giữ seed phrase chế độ riêng tư có từ khố có lu va an thể truy cập vào tài khoản bạn ll u nf Bước 8: Xác nhận lại từ khoá cách nhập lại lần z at nh (hình 3.6) oi m Bước 9: Bước cuối cùng, nhấp vào “All Done” để hoàn tất thiết lập tài khoản Bước 10: Sẽ thấy hình hiển thị hình 3.7 z gm @ Nhận gửi token từ ví MetaMask m co public key, xuất private key (hình 3.8) l Bạn nhấp vào dấu “3 chấm” bên góc phải để đổi tên tài khoản, lấy QR code nhận chọn token cần gửi (hình 3.9) an Lu Để gửi tài sản địa khác, nhấp vào nút “Send”, sau nhập địa người n va ac th si 50 lu an n va p ie gh tn to d oa nl w Hình Nhận gửi token ví ll u nf va an lu oi m z at nh z m co l gm @ an Lu Hình Nhận gửi token ví n va ac th si 51 3.4 Thử nghiệm đánh giá Do điều kiện không cho phép giá 1ETH ~ 4700$ mạng mainnet Nên học viên chọn mạng thử nghiệm rinkeby testnet lu an n va p ie gh tn to w Hình 10 Chọn mạng thử nghiệm rinkeby d oa nl Truy cập vào trang : https://www.rinkeby.io/#faucet ll u nf va an lu oi m z at nh z l gm @ m co Hình 11 Truy cập vào trang web với địa url Chọn twitter dán địa ví vào viết theo định dạng sau: an Lu n va ac th si 52 Hình 12 Định dạng đăng Coppy link dán vào trang https://www.rinkeby.io/#faucet nhận số ETH tương ứng lu an n va p ie gh tn to oa nl w Hình 13 Số lượng ETH tương ứng nhận mạng testnet d ll u nf va an lu Số lượng ETH nhận được: oi m z at nh z gm @ m co l Hình 14 Giao dịch thành công số lượng ETH nhận Việc nhận ETH nhanh hay chậm tùy thuộc vào mạng blokchain an Lu Trong giao ví metamark tạo tài khoản tương ứng: n va ac th si 53 Tài khoản deploy lên mạng Tài khoản người bán Tài khoản người mua Tài khoản người vận chuyển lu an n va p ie gh tn to d oa nl w Hình 15 Tạo tài khoản tương ứng tài khoản chứa 0.2 ETH ll u nf va an lu oi m z at nh z Hình 16 Tạo File HopDongThuongMai.sol thư mục contract Tạo contract: HopDongThuongMai.sol hình 3.16 an Lu Kết nối đến ví metamask m co l gm @ Truy cập trang: https://remix.ethereum.org/ n va ac th si 54 lu an n va Hình 17 Chọn injected web3 để kết nối đến ví metamask p ie gh tn to Kết nối thành công hiển thị số dư ví d oa nl w ll u nf va an lu oi m z at nh Hình 18 Kết nối ví thành cơng z số bao gốm thông tin: Tiền hàng đơn vị để 10000 sazbo = 0.01 ETH m co l gm @ Bây tạo hợp đồng thông minh cho thỏa thuận mua bán tham an Lu n va ac th si 55 lu an n va tn to ie gh Hình 19 Tiên hàng 0.01 ETH tương ứng với 10,000 sazbo p Tiền vận chuyển để 1000 sazbo = 0.001ETH w Địa ví người bán: 0x17711f560DEF533A749f6316D531685A9A7F83e4 oa nl Địa ví người vận chuyển: d 0xA71151841aA463e1db82F25Fb4EC8579439Ad07 ll u nf va an lu oi m z at nh z m co l gm @ Tiến hành deploy hợp đồng: an Lu Hình 20 Các tham số smart contarct n va ac th si 56 lu an va n Hình 21 Hợp đồng deploy thành công gh tn to Tra cứu giao dịch sổ cái: p ie https://rinkeby.etherscan.io/tx/0xc055239cd22e2d344a8805293b049d9aa9c86524e d oa nl w dd2257ed542b76a41272908 ll u nf va an lu oi m z at nh z m co l gm @ an Lu Hình 22 Hợp đồng deploy thành cơng n va ac th si 57 Tra cứu theo dõi smartcontract giao diện: lu an va n Hình 3.23 Tra cứu theo dõi smartcontract gh tn to Bước 1: Thực kết nối đến ví p ie Bước 2: Dán địa smartcontract để theo dõi d oa nl w ll u nf va an lu oi m z at nh z l gm @ m co Hình 3.24 Hiển thị thông tin smart contract với tham số điền deploy vào smartcontract an Lu Bước 3: Kết nối đến tài khoản người mua hàng chuyển số tiền hàng + số tiền cọc n va ac th si 58 lu an n va Hình 25 Người mua chuyển tiền cọc + tiền vận chuyển tn to Giao dịch sau hoàn thành số dư smart contract từ tăng lên 11000 p ie gh sazbo trạng thái chuyển sang Người mua đặt cọc d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ Hình 26 Giao diện người mua đặt cọc thành công an Lu Bước 4: Người vận chuyển đặt cọc chuyển số tiền số tiền hàng vào smartcontarct n va ac th si 59 lu an va n Hình 2723 Giao diện người vận chuyển đặt cọc thành công p ie gh tn to Bước 5: Người vận chuyển giao hàng nhập tọa độ cần giao xác nhận hàng tới đích d oa nl w ll u nf va an lu oi m z at nh z Bước 6: Người mua hàng nhận hàng: m co l Số tiền smartcontarct = gm @ Hình 28 Giao diện người vận chuyển tới đích o Chuyển cho người bán hàng số tiền hàng an Lu o Chuyển trả người vận chuyển tiền cọc hàng + phí vận chuyển n va ac th si 60 lu an n va p ie gh tn to nl w Hình 24 Giao diện người mua hàng nhận hàng d oa Tra cứu giao dịch sổ: 4bf12 ll u nf va an lu https://rinkeby.etherscan.io/address/0x722e94c48797EC4D061E56fFBad555F96bc oi m z at nh z m co l gm @ an Lu Hình 30 Giao diện tra cứu giao dịch sổ n va ac th si 61 KÊT LUẬN Qua trình nghiên cứu blockchain số ứng dụng cơng nghệ này, luận văn trình bày công nghệ blockchain, tiền số xây dựng thử nghiệm ứng dụng blockchain toán xuyên biên giới: Trình bày tổng quan cơng nghệ blockchain, tiềm công nghệ kỹ thuật tảng hàm băm, chữ ký số, kỹ thuật sử dụng blockchain Tiền số, ứng dụng blockchain sâu nghiên lu cứu Trong luận văn sử dụng đồng tiền số ETH, đồng tiền số đứng thứ an độ thông dụng sau Bitcoin va n Nghiên cứu mơ hình ứng dụng blockchain tốn mua bán hàng hóa Xây dựng thành cơng dapp tốn xun biên giới cơng nghệ blockchain thơng qua ví điện tử Metamask p ie gh tn to thơng qua hợp đồng thông minh oa nl w Định hướng nghiên cứu d Do thời gian chưa có nhiều, bên cạnh kết đạt được, luận văn lu va an nhiều hạn chế việc triển khai chương trình thực nghiệm u nf Với hạn chế kể trên, luận văn tiếp tục nghiên cứu vấn đề sau: ll Thử nghiệm phương pháp ký số khác so sánh tốc độ xử lý, độ an oi m z at nh tồn thuật tốn để cải thiện hiệu tính bảo mật blockchain z m co l gm @ an Lu n va ac th si 62 TÀI LIỆU THAM KHẢO [1] Trịnh Nhật Tiến, Giáo trình An Tồn Dữ Liệu, Hà Nội, 2008, tr.21-46 [2] Bitcoin project, “Bitcoin – open source P2P money,” 2017 [3] Don Tapscott and Alex Tapscott, "Blockchain Revolution: How the Technology Behind Bitcoin Is Changing Money, Business and the World," http://blockchain-revolution.com/ lu an [4] Wang, L Feng, H Zhang, C Lyu, L Wang and Y You, "Human Resource va n Information Management Model based on Blockchain Technology," 2017 Francisco, CA, 2017, pp 168-173 p ie gh tn to IEEE Symposium on Service-Oriented System Engineering (SOSE), San nl w [5] https://ethereum.org/en/whitepaper/#merkle-trees oa [6] Z Zheng, S Xie, H Dai, X Chen and H Wang, "An Overview of d Blockchain Technology: Architecture, Consensus, and Future Trends," an lu 2017 IEEE International Congress on Big Data (BigData Congress), va ll u nf Honolulu, HI, 2017, pp 557-564 oi m [7] S X H D X C a H W Z Zheng, An Overview Blockchain Technology: z at nh Architecture, Consensus, and Future Trends, 2017 IEEE International Congress on Big Data (BigData Congress), Honolulu, HI, 2017, pp 557-564 z https://bitcoin.org/bitcoin.pdf m co l gm @ [8] S Nakamoto, "Bitcoin: A Peer-to-Peer Electronic Cash System," p an Lu n va ac th si