1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài tập quá trình môn blockchain và công nghệ sổ cái phân tán cryptography and technical foundations

63 3 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

Thông tin cơ bản

Tiêu đề Bài Tập Quá Trình Môn Blockchain Và Công Nghệ Sổ Cái Phân Tán
Tác giả Lê Minh Khôi, Lâm Minh Trung, Đặng Văn Việt
Người hướng dẫn Ths Phạm Thái Kỳ Trung
Trường học Trường Đại Học Tôn Đức Thắng
Chuyên ngành Công Nghệ Thông Tin
Thể loại bài tập
Năm xuất bản 2023
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 63
Dung lượng 1,33 MB

Nội dung

TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG KHOA CÔNG NGHỆ THÔNG TIN BÀI TẬP Q TRÌNH MƠN BLOCKCHAIN VÀ CƠNG NGHỆ SỔ CÁI PHÂN TÁN CRYPTOGRAPHY AND TECHNICAL FOUNDATIONS Người hướng dẫn: Ths PHẠM THÁI KỲ TRUNG Người thực hiện: LÊ MINH KHÔI – 52000774 LÂM MINH TRUNG – 52000817 ĐẶNG VĂN VIỆT – 52000821 Lớp : 20050301 Khố THÀNH PHỐ HỒ CHÍ MINH, NĂM 2023 : 24 TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG KHOA CÔNG NGHỆ THƠNG TIN BÀI TẬP Q TRÌNH MƠN BLOCKCHAIN VÀ CƠNG NGHỆ SỔ CÁI PHÂN TÁN CRYPTOGRAPHY AND TECHNICAL FOUNDATIONS Người hướng dẫn: Ths PHẠM THÁI KỲ TRUNG Người thực hiện: LÊ MINH KHÔI – 52000774 LÂM MINH TRUNG – 52000817 ĐẶNG VĂN VIỆT – 52000821 Lớp : 20050301 Khoá THÀNH PHỐ HỒ CHÍ MINH, NĂM 2023 : 24 i LỜI CẢM ƠN Lời chúng em xin gửi lời cảm ơn chân thành tới giảng viên Phạm Thái Kì Trung giúp đỡ sinh viên kì học vừa qua Thời gian học vừa chúng em biết thêm nhiều kiến thức tiền điện tử vận hành nào, qua học hỏi kinh nghiệp điều tiếp thu vận dụng chúng vào thực tế sau Bài báo cáo chúng em thực vòng tuần Chúng em tìm hiểu tập kiếm thức blockchain sổ Báo cáo chúng em nhiều thiếu sót mong nhận dạy thầy để rút kinh nghiệm học hỏi từ ii ĐỒ ÁN ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC TƠN ĐỨC THẮNG Tơi xin cam đoan sản phẩm đồ án hướng dẫn giảng viên Phạm Thái Kì Trung; Các nội dung nghiên cứu, kết đề tài trung thực chưa cơng bố hình thức trước Những số liệu bảng biểu phục vụ cho việc phân tích, nhận xét, đánh giá tác giả thu thập từ nguồn khác có ghi rõ phần tài liệu tham khảo Ngồi ra, đồ án cịn sử dụng số nhận xét, đánh số liệu tác giả khác, quan tổ chức khác có trích dẫn thích nguồn gốc Nếu phát có gian lận tơi xin hoàn toàn chịu trách nhiệm nội dung đồ án Trường đại học Tơn Đức Thắng khơng liên quan đến vi phạm tác quyền, quyền tơi gây q trình thực (nếu có) TP Hồ Chí Minh, ngày 27 tháng 10 năm 2023 Tác giả (ký tên ghi rõ họ tên) Lê Minh Khôi Đặng Văn Việt Lâm Minh Trung iii PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN Phần xác nhận GV hướng dẫn _ _ _ _ _ _ _ Tp Hồ Chí Minh, ngày tháng năm (kí ghi họ tên) Phần đánh giá GV chấm _ _ _ _ _ Tp Hồ Chí Minh, ngày tháng năm (kí ghi họ tên) iv TÓM TẮT Bài báo cáo tập trung tìm hiểu thuật tốn mã hóa blockchain, phần quan trọng cơng nghệ blockchain Bài báo cáo gồm nội dung thuật tốn mã hóa, lịch sử hình thành, tầm quan chúng thời đại bên cạnh bước thực MỤC LỤC LỜI CẢM ƠN i PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN iii TÓM TẮT .iv MỤC LỤC DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ, ĐỒ THỊ CHƯƠNG – GIỚI THIỆU 1.1 Đặt vấn đề 1.2 Mục tiêu ý nghĩa báo cáo CHƯƠNG – NỘI DUNG 2.1 Mật mã học 2.1.1 Khái niệm 2.1.2 Mật mã đối xứng .7 2.1.2.1 Stream ciphers 2.1.2.2 Block ciphers 2.1.3 Mật mã bất đối xứng .10 2.2 Các thuật tốn liên quan đến mã hóa .12 2.2.1 Thuật toán RSA 12 2.2.1.1 Lịch sử phát triển (1) .12 2.2.1.2 Định nghĩa thuật toán (2) 13 2.2.1.3 Nguyên tắc hoạt động .15 2.2.1.4 Tầm quan trọng thuật toán (3) 17 2.2.1.5 Ứng dụng (4) 18 2.2.2 Thuật toán Triple DES (3DES) 19 2.2.2.1 Lịch sử phát triển 19 2.2.2.2 Định nghĩa thuật toán (5) 19 2.2.2.3 Nguyên tắc hoạt động .22 2.2.2.4 Tầm quan trọng thuật toán .24 2.2.2.5 Tầm quan trọng thuật toán .25 2.2.3 Thuật toán AES .25 2.2.3.1 Lịch sử phát triển 25 2.2.3.2 Định nghĩa thuật toán 26 2.2.3.3 Tầm quan trọng thuật toán .26 2.2.3.4 Nguyên tắc hoạt động .27 2.2.3.5 Ứng dụng 28 2.2.4 Thuật toán blowfish 29 2.2.4.1 Lịch sử phát triển 29 2.2.4.2 Định nghĩa thuật toán 30 2.2.4.3 Tầm quan trọng thuật toán .30 2.2.4.4 Nguyên tắc hoạt động .30 2.2.4.5 Ứng dụng 31 2.2.5 Thuật toán SHA 31 2.2.5.1 Lịch sử phát triển 31 2.2.5.2 Định nghĩa thuật toán 32 2.2.5.3 Tầm quan trọng thuật toán .33 2.2.5.4 Nguyên tắc hoạt động .34 2.2.5.5 Ứng dụng 35 2.2.6 Thuật toán ECC .36 2.2.6.1 Lịch sử phát triển 36 2.2.6.2 Định nghĩa thuật toán 38 2.2.6.3 Tầm quan trọng thuật toán .38 2.2.6.4 Nguyên tắc hoạt động .40 2.2.6.5 Ứng dụng 41 2.3 Công nghệ chữ ký số (6) (7) 42 2.3.1 Định nghĩa .42 2.3.2 Đặc điểm .43 2.3.3 Công dụng .44 2.3.4 Cách tạo chữ ký số 44 CHƯƠNG – NGHIÊN CỨU THỰC NGHIỆM .46 3.1 Mật mã đối xứng 46 3.1.1 Triple DES (3DES) .46 3.1.2 AES .47 3.1.3 Blowfish .48 3.2 Mật mã bất đối xứng 49 3.3 Xác thực chữ ký điện từ với Elliptic Curve (ECDSA) 51 CHƯƠNG 4: KẾT LUẬN 53 DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ, ĐỒ THỊ DANH MỤC HÌNH Hình Cơ chế hoạt động RSA 17 Hình 2 Công nghệ chữ ký số 19 DANH MỤC BẢNG Bảng Bảng thiết lập số vòng cần thiết cho độ rộng khóa .27 43 2.2.6.5 Ứng dụng Elliptic Curve Cryptography (ECC) có nhiều ứng dụng quan trọng lĩnh vực bảo mật xác thực thông tin Dưới số ứng dụng quan trọng ECC: - SSL/TLS: ECC sử dụng giao thức SSL/TLS để bảo vệ truyền thông an toàn qua Internet, chẳng hạn trang web bảo mật, email bảo mật dịch vụ trực tuyến khác Sử dụng ECC giúp tăng hiệu suất bảo mật q trình thiết lập kết nối an tồn - PGP S/MIME: ECC sử dụng tiêu chuẩn mã hóa email PGP (Pretty Good Privacy) S/MIME (Secure/Multipurpose Internet Mail Extensions) để bảo vệ email thông tin cá nhân email - SSH: Trong giao thức Secure Shell (SSH) dùng cho truy cập an toàn vào máy chủ từ xa, ECC sử dụng để thiết lập kết nối an toàn xác minh danh tính người dùng - Chữ ký số: ECC sử dụng để tạo chữ ký số ứng dụng xác minh danh tính giao dịch điện tử vận chuyển tài liệu quan trọng - Blockchain tiền điện tử: ECC đóng vai trị quan trọng cơng nghệ blockchain tiền điện tử Ví dụ, Bitcoin sử dụng ECC để tạo kiểm tra chữ ký số q trình giao dịch, đảm bảo tính tồn vẹn an toàn hệ thống - Bảo mật IoT: Với gia tăng IoT (Internet of Things), ECC trở thành phương pháp bảo mật hiệu thiết bị kết nối mạng, bao gồm cảm biến thơng minh, máy tính tơ, thiết bị nhúng khác - Xác thực trình duyệt web: ECC sử dụng để xác thực danh tính trang web bảo mật thơng qua chứng số Điều đảm bảo bạn kết nối trang web không gặp nguy bị giả mạo 44 - Bảo mật liệu cá nhân: ECC cung cấp hội bảo mật liệu cá nhân ứng dụng dịch vụ trực tuyến, đặc biệt việc lưu trữ truyền tải thông tin cá nhân - Bảo mật mạng không dây: ECC sử dụng để bảo mật mạng không dây, chẳng hạn mạng Wi-Fi an tồn Tóm lại, ECC đóng vai trị quan trọng việc bảo vệ thơng tin xác thực danh tính nhiều lĩnh vực giới kỹ thuật số, từ truyền thông an toàn qua Internet đến IoT tiền điện tử 2.3 Công nghệ chữ ký số (6) (7) 2.3.1 Định nghĩa Chữ ký số dạng chữ ký điện tử tạo biến đổi thông điệp liệu sử dụng hệ thống mật mã không đối xứng, theo đó, người có thơng điệp liệu ban đầu khóa cơng khai người ký xác định xác: Việc biến đổi nêu tạo khóa bí mật tương ứng với khóa cơng khai cặp khóa; Sự tồn vẹn nội dung thơng điệp liệu kể từ thực việc biến đổi nêu Chữ ký thay hồn tồn chữ ký thường tay được pháp luật thừa nhận mặt pháp lý thực giao dịch môi trường điện tử 45 2.3.2 Đặc điểm Các đặc điểm bật chữ ký số: - Tính xác thực: Thơng qua chứng thư số cá nhân, tổ chức, doanh nghiệp, chữ ký số giúp xác thực danh tính chủ nhân chữ ký số - Tính bảo mật: Chữ ký số có tính bảo mật gần tuyệt đối thông tin không dễ bị đánh cắp hacker Vì chữ ký số có tới lớp mã khóa bảo mật khóa bí mật khóa cơng khai - Tính tồn vẹn: Văn bản/tài liệu có chữ ký số mở người người nhận văn bản/tài liệu Vì vậy, môi trường giao dịch điện tử, thông tin tài liệu/văn đảm bảo toàn vẹn cách tuyệt đối - Tính chống chối bỏ: Khi văn bản/tài liệu/hợp đồng có chữ ký số chữ ký số thay xóa bỏ Các loại chữ ký số sử dụng - Chữ ký số USB Token: loại chữ ký số sử dụng USB ký số để tích hợp phần mềm Đây xem chữ ký số sử dụng phổ biến - Chữ ký số HSM (viết tắt từ Hardware Security Module) loại chữ ký số sử dụng thiết bị HSM để lưu trữ cặp khóa chứng thư số Loại chữ ký cài đặt cho ứng dụng chữ ký số với yêu cầu tốc độ cao, đáp ứng việc xác thực mã hóa - Chữ ký số Smart Card loại chữ số khác biệt hoàn toàn với USB Token HSM tích hợp sim điện thoại Nhờ đó, người dùng nhanh chóng dễ dàng thực ký số điện thoại di động lúc nơi - Chữ ký số từ xa (tiếng Anh Remote Signature) loại chữ ký số sử dụng tảng cơng nghệ điện tốn đám mây Với chữ ký số này, người 46 dùng thực ký số lúc nơi, điện thoại, laptop, máy tính bảng, 2.3.3 Cơng dụng Chữ ký số có nhiều cơng dụng hữu ích sau: - Thay cho chữ ký tay giao dịch thương mại điện tử môi trường số, giúp hoạt động giao dịch diễn nhanh chóng tiết kiệm thời gian; - Với cá nhân, chữ ký số có giá trị pháp lý tương đương chữ ký tay; - Với tổ chức, doanh nghiệp, chữ ký số có giá trị tương đương dấu chữ ký người đại diện pháp luật; - Chữ ký số giúp bạn ký giao dịch thư điện tử, ký vào mail để xác nhận người gửi thư cho khách hàng; - Chữ ký số giúp bạn đầu tư chứng khoán trực tiếp, mua hàng, toán chuyển tiền trực tiếp cách bảo mật, an tồn; - Khơng cần phải in ấn tờ kê khai hay đến quan thuế để giải thực kê khai thuế trực tuyến thơng quan trực tuyến; - Đóng bảo hiểm; - Ký hợp đồng điện tới với khách hàng trực tuyến thông qua hợp đồng điện tử; - Có thể sử dụng chữ ký số với ứng dụng quản lý doanh nghiệp với mức độ tin cậy, bảo mật tính xác thực cao 2.3.4 Cách tạo chữ ký số Bước 1: Từ văn cần ký, người ký sử dụng phần mềm ký (thường sử dụng phần mềm chạy thuật tốn RSA SHA1) để tính tốn tạo giá trị hash(giá trị hash dãy ký tự 0/1 nhất, thay đổi liệu thay đổi ký tự dẫn đến giá trị hash khác) Sau đó, mã hóa giá trị hash khóa riêng người ký (private key) Khóa tạo thành chữ ký số Nhiều chữ ký định dạng chữ ký đính kèm vào văn bản/tin nhắn, chữ ký tham chiếu đến phần khác 47 Bước 2: Người gửi truyền chữ ký số kèm với với giá trị hash Bước 3: Người nhận giải mã chữ ký số khóa cơng khai (public key) người gửi để tạo lại giá trị hash Bước 4: Người nhận xác minh giá trị hash tìm bước với giá trị hash tạo bước xem hai giá trị có giống không Nếu hàm hash giải mã(ở bước 3) khớp với hàm hash tính tốn(ở bước 1) chứng tỏ liệu khơng thay đổi kể từ lần ký Nếu hai hàm hash không khớp, liệu bị giả mạo bị xâm phạm Hoặc chữ ký tạo private key không tương ứng với public key người ký cung cấp 48 CHƯƠNG – NGHIÊN CỨU THỰC NGHIỆM Code demo sử dụng thư viện openssl môi trường ubuntu 22.4.3 3.1 Mật mã đối xứng 3.1.1 Triple DES (3DES) Nội dung văn thơ : Để thực mã hóa đối xứng ta cần khóa mã hóa , sử dụng openssl thuật tốn base64 cho việc tạo khóa đặt key.txt : Ta thực việc mã hóa văn message.txt với khóa mã hóa key.txt , sử dụng thuật toán 3DES với mode CBC với 100 vịng lặp thuật tốn , đặt message.bin : 49 Để giải mã văn mã hóa message.bin , ta làm sau : 3.1.2 AES Nội dung văn thơ : Việc mã hóa văn 3DES áp dụng cho văn , nhiên openssl cung cấp việc mã hóa khóa mã hóa dạng mật (khơng cần định dạng file), mật đặt : 123bon5 , mã hóa sử dụng thuật tốn AES-256 mode CBC sau :  50 Quá trình giải mã sau : 3.1.3 Blowfish Q trình mã hóa giải mã thuật toán giống với thuật toán , nhiên cần lưu ý version openssl 3.0.0 trở lên thuật tốn blowfish khơng cịn thơng dụng đưa vào openssl legacy , cần phải thêm câu lệnh -provider legacy -provider default để sử dụng thuật toán : 51 3.2 Mật mã bất đối xứng Đối với mật mã bất đối xứng việc mã hóa giải mã cần phải có khóa cơng khai khóa bí mật Openssl cung cấp phương thức cho việc tạo khóa cơng khai khóa bí mật Sau sử dụng thuật toán RSA với độ dài 1024 bits để tạo khóa bí mật : 52 Từ khóa bí mật , khởi tạo khóa cơng khai thuật tốn RSA : Mã hóa văn thơ khóa cơng khai : Giải mã văn mã hóa khóa bí mật : 53 3.3Xác thực chữ ký điện từ với Elliptic Curve (ECDSA) Khởi tạo khóa bí mật sử dụng ECC : Khởi tạo khóa cơng khai dựa khóa bí mật : Tạo chữ ký với SHA256 với khóa bí mật cho file signature.txt : 54 Xác thực file signature.txt khóa cơng khai ,file signature.bin, SHA256 : 55 CHƯƠNG 4: KẾT LUẬN Mật mã thơng tin nắm vai trị quan trọng nhiều lĩnh vực khác nhau: tài chính, y tế, phủ, doanh nghiệp Mật mã thông tin gồm loại : mật mã đối xứng , mật mã bất đối xứng , hàm băm đó: - Mật mã đối xứng: sử dụng khóa cho việc mã hóa giải mã - Mật mã bất đối xứng: sử dụng khóa cơng khai khóa bí mật cho mã hóa giải mã - Hàm băm: sử dụng thuật toán SHA để tạo giá trị băm từ liệu đầu vào Chữ ký điện tử sử dụng để xác minh tính xác thực người ký, tính tồn vẹn thơng điệp liệu chấp thuận người ký nội dung thông điệp liệu OpenSSL thư viện mã nguồn mở miễn phí cung cấp công cụ mạnh mẽ để thực giao thức bảo mật khác 56 TÀI LIỆU THAM KHẢO Tiếng Việt TEAM, WIKI TIẾNG VIỆT RSA (mã hóa) WIKI TIẾNG VIỆT [Online] 10 27, 2023 https://www.duhoctrungquoc.vn/wiki/vi/RSA_(m%C3%A3_h %C3%B3a) TENTEN Chữ ký số RSA gì? Giải thích thuật ngữ RSA dễ hiểu TENTEN [Online] GMO, 03 14, 2022 [Cited: 10 27, 2023.] https://tenten.vn/tin-tuc/chu-ky-so-rsa/ bkhost RSA gì? Cơ chế hoạt động ứng dụng thuật tốn RSA bkhost [Online] CƠNG TY CỔ PHẦN GIẢI PHÁP MẠNG TRỰC TUYẾN VIỆT NAM, 08 29, 2022 [Cited: 10 27, 2023.] https://bkhost.vn/blog/rsa/ muabán.net Hệ mã hóa RSA gì? Cách thức hoạt động RSA muabán.net [Online] CÔNG TY CỔ PHẦN MUA BÁN, 05 11, 2022 [Cited: 10 27, 2023.] https://muaban.net/blog/rsa-118289/ MÃ, CỤC QUẢN LÝ MẬT MÃ DÂN SỰ VÀ KIỂM ĐỊNH SẢN PHẨM MẬT Giới thiệu thuật toán DES, 3DES khuyến nghị sử dụng sản phẩm mật mã dân CỤC QUẢN LÝ MẬT MÃ DÂN SỰ VÀ KIỂM ĐỊNH SẢN PHẨM MẬT MÃ [Online] 10 11, 2021 [Cited: 10 27, 2023.] https://nacis.gov.vn/nghien-cuutrao-doi/-/view-content/265342/gioi-thieu-ve-thuat-toan-des-3des-va-khuyen-nghi-khisu-dung-trong-cac-san-pham-mat-ma-dan-su VNPT Chữ ký số gì? điều định phải biết https://vnpt.com [Online] VNPT, 01 03, 2023 [Cited: 10 27, 2023.] https://vnpt.com.vn/doanh-nghiep/tu-van/chu-ky-so-la-gi.html Easyinvoice Chữ ký số gì? Chữ ký số dùng để làm gì? https://easyinvoice.vn/ [Online] Easyinvoice, 11 30, 2020 [Cited: 10 27, 2023.] https://easyinvoice.vn/chu-ky-so-la-gi-chu-ky-so-dung-de-lam-gi/ 57 Tiếng Anh

Ngày đăng: 19/12/2023, 15:23

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

TÀI LIỆU LIÊN QUAN