Chữ ký số, chữ ký rsa

31 6 0
Chữ ký số, chữ ký rsa

Đ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

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG KHOA VIỄN THÔNG TIỂU LUẬN MÔN HỌC MÔN: AN NINH MẠNG THÔNG TIN Đề tài Chữ ký số, chữ ký RSA Giảng viên: Nguyễn Thanh Trà HÀ NỘI, 06/2021 Bài thi cuối kỳ môn ANM Bài thi cuối kỳ môn ANM MỤC LỤC LỜI NÓI ĐẦU Chương 1: TỔNG QUAN VỀ CHỮ KÝ SỐ 1.1 Giới thiệu chữ ký số 1.1.1 Giới thiệu chung 1.1.2 Khái niệm chữ ký số 1.1.3 So sánh chữ ký số với chữ ký thông thường(chữ ký viết tay) văn 1.1.4 Vị trí, vai trị chữ ký số điện tử 1.1.5 Sơ đồ tổng quan hệ thống chữ ký số điện tử 1.1.6 Sơ đồ chữ ký số RSA 1.2 Cơ sở hình thành nên chữ ký số 1.2.1 Cơ sở toán học 1.2.2 Hàm băm mật mã 1.2.3 Mật mã học mật mã khóa cơng khai 12 Chương 2: CHỮ KÝ SỐ VÀ CHỮ KÝ SỐ RSA 17 2.1 Đặt vấn đề 17 2.1.1 Vấn đề xác thực 17 2.1.2 Vấn đề chữ ký số 18 2.2 Một số khái niệm tính chất chữ ký số điện tử 18 2.2.1 Các bước tạo kiểm tra chữ ký điện tử 19 2.3 Giải thuật cài đặt giải thuật 20 2.4 Các điểm yếu chữ ký số sử dụng giải thuật RSA 21 2.4.1 Chữ ký số nói chung 21 2.4.2 Chữ ký số sử dụng RSA 22 2.5 Các dạng công 22 2.5.1 Tấn công lặp 22 2.5.2 Kiểu công module n dùng chung 23 2.5.3 Tấn công khố cơng khai e nhỏ 23 Chương 3: PHẦN MỀM MÔ PHỎNG TẠO CHỮ KÝ SỐ RSA 24 3.1 mã hóa giải mã RSA 24 3.1.1 mã hóa 24 3.1.2 Giải mã 27 3.2 Tạo chữ kỹ số 28 3.2.2 Quá trình tạo chữ ký số bên gửi 28 3.2.2 Quá trình xác thực bên nhận……………………………………………… 29 Kết Luận Tài liệu tham khảo Bài thi cuối kỳ mơn ANM Danh mục hình vẽ Hình 1: Ảnh minh họa làm việc hàm băm Hình 2: Giải thuật MD5 12 Hình 3: Mơ hình mật mã khóa cơng khai 14 Hình 4: Mã hóa RSA 15 Hình 5: Ví dụ RSA 16 Hình 6:Hàm MAC 18 Hình 7: Minh họa chữ ký số bên gửi cho thông báo M 19 Hình 8: Tạo chữ ký số RSA 20 Hình 9: Thẩm định chữ ký số RSA 20 Hình 10: Sơ đồ giải thuật RSA 21 Hình 11: Các bước tạo khóa ví dụ 22 Hình 12: Mã hóa, giải mã, lấy ví dụ 19 Hình 13: Giao diện phần mềm 20 Hình 14: Public key Private key có độ dài 64 byte 21 Hình 15: Tập tin cần mã hóa private key public key 21 Hình 16: Nội dung tập tin gốc 26 Hình 17: Mã hóa tập tin public key 27 Hình 18: Nội dung Tập tin sau mã hóa (mahoa64.txt) 27 Hình 19: Các bước giải mã 27 Hình 20: Tập tin sau giải mã 28 Hình 21: Quá trình diễn bên gửi 28 Hình 22: Public key private key 28 Hình 23: Chữ ký vừa tạo mã hóa 29 Hình 24: Nội dung chữ ký mã hóa 29 Hình 25: Các bước xác thực bên nhận 29 Hình 26: Xác thực thành công 30 Hình 27: Xác thực không thành công 30 Bài thi cuối kỳ mơn ANM LỜI NĨI ĐẦU Ngày hoạt động thơng tin đóng vai trị quan trọng thiếu Xã hội phát triển nhu cầu trao đổi thông tin xã hội ngày lớn Mạng máy tính đời mang lại cho người nhiều lợi ích việc trao đổi xử lý thơng tin cách nhanh chóng xác Khi trở thành phương tiện điều hành hệ thống nhu cầu bảo mật thơng tin đặt lên hàng đầu Kỹ thuật sử dụng chữ ký số kỹ thuật sử dụng phổ biến, đa dạng hầu hết lĩnh vực, Tài chính, Ngân hang, Kế tốn…Vì lý đó, nhóm bọn em định nghiên cứu “Giải thuật tạo chữ ký số sử dụng thuật tốn RSA”.Hệ mã hóa RSA – hệ mã hóa điển hình mật mã cơng khai với hàm băm mật mã học chiều cơng cụ việc tạo chữ ký số điện tử Mục đích phạm vi nghiên cứu Tìm hiểu công cụ để xây dựng chữ ký số, lược đồ chữ ký số RSA Tập trung vào mơ hình chữ ký số, trọng tâm chữ ký số RSA ứng dụng Chữ ký số đời nhằm giải vấn đề chưa giải xác thực tồn vẹn liệu.Mơ tả việc thực ký xác thực file tài liệu với phần mềm RSACrypt Demo Phạm vi nghiên cứu Chữ ký số chia loại : +Kỹ thuật ký mà chữ ký số phần đính vào thơng điệp gửi đi, đầu vào cho q trình xác minh tính đắn chữ ký +Chữ ký mà từ phục hồi lại thông điệp ban đầu trước ký, thông điệp ban đầu đầu vào cho q trình xác minh chữ ký Do tính thực tế chữ ký số mà tiểu luận chủ yếu tập trung vào kỹ thuật ký chữ ký số phần đính thêm cho q trình xác minh thông điệp Những đặc điểm chữ ký : - Chữ ký điện tử kèm với thơng điệp gốc - Cần có thơng điệp (gốc) cho trình kiểm tra chữ ký điện tử - Sử dụng hàm băm mật mã Ví dụ: RSA, DSA, ElGamal, Schnorr… - Dựa thuật tốn mã hóa Ví dụ : dựa theo thuật tốn mã hóa RSA, chữ ký số DSA dựa vào thuật toán DSA… Bài thi cuối kỳ môn ANM Chương 1: TỔNG QUAN VỀ CHỮ KÝ SỐ 1.1 Giới thiệu chữ ký số 1.1.1 Giới thiệu chung Trong đời sống hàng ngày, chữ ký (viết tay) văn minh chứng “bản quyền” “ thừa nhận” nội dung văn Chẳng hạn việc ký vào phiếu nhận tiền từ ngân hàng, hợp đồng mua bán, chuyển nhượng, thừa kế, tố tụng… Chữ ký viết tay tay người ký nên chụp Thông thường chữ ký viết tay văn dùng để xác nhận người ký Những yếu tố làm nên “sức thuyết phục nó” ? Về mặt lý tưởng : - Chữ ký chứng thể người ký có chủ định ký văn - Chữ ký thể “chủ quyền”, làm cho người nhận văn biết người ký văn - Chữ ký “tái sử dụng”, tức phần văn mà chép sang văn khác - Văn ký thay đổi - Chữ ký giả mạo thứ chối bỏ( người ký văn khơng thể phủ định việc ký văn người khác tạo chữ ký ) Trong sống, việc tạo mơ hình “lý tưởng”như khơng dễ việc ký văn giấy giả mạo chữ ký, với khả kiểm định sát việc làm thay đổi dễ Tuy nhiên giới máy tính vấn đề ký thực tế gặp phải nhiều khó khăn : dịng thơng tin máy tính thay đổi dễ dàng, hình ảnh chữ ký tay người dễ dàng cho “sang – truyền” từ văn sang văn khác, việc thay đổi nội dung văn điện tử (sau ký) chẳng để lại dấu vết phương diện “tẩy, xóa”… Để có đặc tính trên, giao thức “ký giới điện tử” cần phải có hỗ trợ cơng nghệ mã hóa Sơ đồ chữ ký số phương pháp ký thông báo lưu dạng điện tử Giao thức chữ ký số dựa ý tưởng Diffie Hellman : - Bên gửi (chủ nhân văn bản) ký văn cách mã hóa với khóa bí mật - Bên gửi chuyển văn ký cho bên nhận - Bên nhận văn kiểm tra chữ ký việc sử dụng chìa khóa cơng khai bên gửi để giải mã văn 1.1.2 Khái niệm chữ ký số Chữ ký số (khóa cơng khai) mơ hình sử dụng kỹ thuật mật mã để gắn với người sử dụng cặp khóa cơng khai - bí mật từ ký văn điện tử Bài thi cuối kỳ môn ANM trao đổi thơng tin mật Khóa cơng khai thường phân phối thơng qua chứng thực khóa cơng khai Q trình sử dụng chữ ký số bao gồm trình: tạo chữ ký kiểm tra chữ ký - Khóa bí mật dùng để tạo chữ ký số Khóa cơng khai dùng để thẩm định chữ ký số Các thuật toán chữ ký số cho phép xác định nguồn gốc, bảo đảm tính tồn vẹn liệu truyền đi, đồng thời bảo đảm tính khơng thể phủ nhận thực thể ký thông tin 1.1.3 So sánh chữ ký số với chữ ký thông thường(chữ ký viết tay) văn Chữ ký số chữ ký thường có nhiều điểm khác : - Về tài liệu ký : Với tài liệu thơng thường, phần vật lý tài liệu Ngược lại, chữ ký số theo kiểu vật lý gắn vào thông báo nên khơng nhìn thấy điện - Chữ kí thơng thường kí phần văn bản, cịn chữ kí số kí tồn nội dung, bit thông điệp - Về vấn đề kiểm tra chữ ký : Chữ ký thông thường kiểm tra cách so sánh với chữ ký xác thực khác ( chữ ký mẫu) Điểm yếu chữ ký thơng thường khơng an tồn, dễ giả mạo Ngược lại, chữ ký số lại kiểm tra nhờ dùng thuật toán kiểm tra cơng khai, kiểm tra Việc dùng sơ đồ chữ ký an toàn ngăn chặn giả mạo 1.1.4 Vị trí, vai trò chữ ký số điện tử - Xu hướng quốc tế hóa tồn cầu hóa ảnh hưởng đến phát triển giới Việc trao đổi thơng tin từ u cầu nhanh gọn, xác đặc biệt phải an tồn Việc trao đổi thơng tin, chứng thực thơng tin theo phong cách truyền thông làm giảm tốc độ, xác thơng tin Những cơng việc mang tính chất thủ cơng gây chậm chễ thiếu xác trao đổi - Chính khó khăn nảy sinh phát triển mạnh mẽ cơng nghệ thơng tin cơng nghệ mã hóa Hiện nay, tất nước phát triển phát triển, mạng máy tính ngày đóng vai trị thiết yếu lĩnh vực hoạt động toàn xã hội nhu cầu bảo mật thơng tin đặt lên hàng đầu Điển hình việc mã hố bảo mật thơng tin số doanh nghiệp, dùng chữ ký số xác thực email trao đổi thơng tin, kiểm sốt truy cập vào sàn thương mại điện tử đơn đặt hàng, ngân hàng điện tử, mua sắm trực tuyến mà vai trò chủ yếu chữ ký số điện tử - Trên thực tế, chữ ký số không thực cho giao dịch điện tử mạng internet mà cịn qua hệ thống mạng viễn thơng di động.Đặc biệt, nhiều nước giới không triển khai ứng dụng chữ ký số mạng máy Bài thi cuối kỳ mơn ANM tính mà áp dụng mạng điện thoại di động để thực giao dịch điện tử Hướng giúp đẩy nhanh giao dịch, đơn giản hoá mua sắm trực tuyến giúp người dùng truy cập lúc, nơi - Sự đời chữ ký số khẳng đinh lợi ích to lớn chiến lược kinh tế, đồng thời vấn đề liên quan đến chữ ký số chủ đề quan trọng mật mã học 1.1.5 Sơ đồ tổng quan hệ thống chữ ký số điện tử Một sơ đồ chữ ký số thường bao gồm hai thành phần chủ chốt thuật toán ký thuật toán xác minh Một sơ đồ chữ ký số (P, A, K, S, V) thỏa mãn điều kiện sau: - P tập hợp rõ - A tập hữu hạn chữ ký - K tập hữu hạn khóa - S tập thuật toán ký - V tập thuật toán xác minh Với k thuộc K, tồn thuật toán ký sigk thuộc S thuật tốn xác minh verk thuộc V, sigk verk ánh xạ : sigk ánh xạ từ P sang A vàVerk ánh xạ từ A sang tập biểu diễn {True, False} thỏa mãn với x thuộc P, y thuộc A,ver (x,y)= true y=sig(x) ver(x,y) = false y khác sig(x) Với k thuộc K, hàm sigk verk hàm thời gian đa thức, verk hàm cơng khai cịn sigk hàm mật o Ý nghĩa sơ đồ : Khi người dùng muốn ký lên thơng báo x người dùng thuật tốn an tồn để tạo chữ ký y =sig(x) nhận gửi cho người nhận Người nhận nhận chữ ký sig(x) dùng thuật tốn xác minh ver(x,y) để xác định tính đắn chữ ký số ( trả true false) 1.1.6 Sơ đồ chữ ký số RSA Cho N = P x Q với P Q số nguyên tố khác Cho P = A = ZN định nghĩa P = {(N, P, Q, A, B) với N = PQ, AB  mod(  (N)))} Các giá trị N B công khai Ta định nghĩa :sigk(x) = x  (mod N) verk(x,y) = true x  y B(mod N) Trong sơ đồ này,  (N) phi hàm Euler (  (N) = (P-1)x(Q-1)) Thông điệp x ký theo phép tính đồng dư với khóa riêng với khóa riêng người gửi trình xác thực chữ ký dựa vào phép tính đồng dư với khóa cơng khai người gửi Bài thi cuối kỳ môn ANM 1.2 Cơ sở hình thành nên chữ ký số 1.2.1 Cơ sở tốn học Số học nhánh toán học, lại trở thành cơng cụ hữu dụng ngành an ninh máy tính Như khởi đầu, số học giúp bảo vệ liệu bí mật số thẻ tín dụng giúp người dùng mua sắm trực tuyến Những giao thức mã hóa đặc biệt chữ ký số điện tử dựa lý thuyết số học để tạo khóa, mã hóa giải mã An tịan giao thức liên quan tới vấn đề số học : giải thuật cơng khai phân tích thừa số nguyên tố 1.2.2 Hàm băm mật mã 1.2.2.1 Giới thiệu Hàm băm mật mã học (cryptographic hash function) hàm với số tính chất phù hợp hệ thống, ứng dụng bảo mật Hàm băm cung cấp tính chứng thực (authentication) kiểm tra tính ngun vẹn thơng điệp (message integrity) Các hàm băm nhận chuỗi bit có chiều dài tùy ý ( hữu hạn) làm liệu đầu vào tạo chuỗi bit có chiều dài cố định n bit, gọi mã băm Sự thay đổi nhỏ chuỗi đầu vào làm thay đổi giá trị băm Trong lĩnh vực mã hóa thơng tin, mã băm xem đặc trưng thu gọn chuỗi bit tùy ý dùng để nhận chuỗi bit Hàm băm cơng cụ để tạo chữ ký số đảm bảo an toàn liệu 1.2.2.2 Các khái niệm định nghĩa Hàm băm giải thụât nhằm sinh giá trị băm tương ứng với khối liệu Giá trị băm đóng vai trị gần khóa để phân biệt khối liệu o Hình 1: Ảnh minh họa làm việc hàm băm Phân loại Hàm băm chiều: (one – way hash functions) : Là hàm băm mang chất : với mã băm biết trước, khơng thể tính tốn để tìm chuỗi bit ban đầu vào có mã băm với mã băm cho Bài thi cuối kỳ môn ANM Hàm băm kháng xung đột: (collision resistant hash funtions) hàm băm mang tính chất: khơng thể tính tốn để tìm hai chuỗi bit có giá trị băm Một số tính chất hàm băm : - (i) Có thể áp dụng với thơng báo đầu vào có độ dài - (ii) Tạo giá trị băm y = h(x) có độ dài cố định - (iii) h(x) dễ dàng tính với x - (iv) Tính chiều : Với đầu y cho trước khơng thể tìm x’ cho h(x’) giá trị y cho trước - (v) Tính chống xung đột yếu: Với liệu đầu vào x1 cho trước khơng thể tìm giá trị x2 (x2 khác x1) mà h(x2) = h(x1) - (vi) Tính chống xung đột mạnh: Khơng thể tính tốn đẻ tìm hai liệu đầu vào x1 x2 phân biệt cho chúng có giá trị băm (h(x1) = h(x2)) Như dựa theo tính chất ta thấy hàm băm chiều thỏa mãn tính chất (iv) tính chất (v), cịn hàm băm kháng xung đột thỏa mãn tính chất (iv) (vi) 1.2.2.3 Cấu trúc thuật toán băm Khối liệu đầu vào x có chiều dài hữu hạn tùy ý phân thành khối liên tiếp có chiều dài cố định r, giả sử đánh số x1,x2, ,xm Tuy nhiên chiều dài khối liệu ban đầu x tùy ý, cần phải thêm vào liệu ban đầu số bit phụ cho tổng số bit khối liệu x’ sau thêm vào bội số r Ngoài khối bit thêm vào thường chứa khối bit (có chiều dài cố định trước, thường 64 bit) xác định chiều dài thực khối bit liệu chưa thêm bit phụ Tiếp theo, cắt khối r bit từ khối mở rộng x’ Mỗi khối r bit xi bước qua hàm nén f hàm băm h(x) Tại bước thứ i, hàm nén f nhận liệu đàu vào xi kết trung gian bước trước (bước i – 1) để tạo đầu kết trung gian bước thứ i, ký hiệu Hi Kết trung gian bước Hi chuỗi bit có độ dài cố định n > Kết ký hiệu IV giá trị ban đầu (cho H0 ), trình lặp xử lý dãy khối x1,x2, ,xm mô tả : H0 = IV Hi = f(Hi-1,xi) (i = 1,2, ,m) h(x) = g(Hm) - Các biến Hi biến dây chuyền - Hàm g(x) lấy biến dây chuyền cuối để tạo mã băm cuối cần tìm Trong hầu hết thuật tốn g(x) thường chọn ánh xạ đồng tức g(Hm) = Hm - Khâu then chốt xây dựng hàm băm thiết kế hàm nén f Bài thi cuối kỳ môn ANM - Xác định trực tiếp d khơng thơng qua (n) 1.2.3.7 Hạn chế khóa cơng khai - Tốc độ xử lý: Các giải thuật khóa công khai chủ yếu dùng phép nhân chậm nhiều so với giải thuật đối xứng khơng thích hợp cho mã hóa thơng thường - Tính xác thực khóa cơng khai : Bất tạo khóa cơng khai người khác Chừng việc giả mạo chưa bị phát đọc nội dung thông báo gửi cho người Cần đảm bảo người đăng ký khóa đáng tin Nhận xét Hệ mã hóa RSA cơng cụ việc tạo chữ ký số Qua việc trình bày ta thấy an toàn cách tránh cơng vào hệ mã hóa RSA Chương 2: CHỮ KÝ SỐ VÀ CHỮ KÝ SỐ RSA 2.1 Đặt vấn đề 2.1.1 Vấn đề xác thực Trong trao đổi thông tin, thông điệp truyền bên gửi bên nhận cấn có tiêu chuẩn cần xác minh, xác thực Xác thực thông báo kỹ thuật mật mã học để xác minh tính đắn thơng báo đuợc gửi Một thông báo đuợc xác thực thỏa mãn u cầu: - Thơng báo có nguồn gốc rõ ràng, xác - Nội dung thơng báo tồn vẹn không bị thay đổi - Thông báo gửi trình tự thời điểm o Các phương pháp xác thực Xác thực thơng báo đuợc sử dụng hệ mã khóa bí mật người dùng chung khóa dùng mã hóa khóa cơng khai cách người gửi dùng khóa bí mật để mã hóa thơng báo gửi Một số phuơng pháp xác thực thông dụng Sử dụng mã xác thực thông báo (MAC): MAC kỹ thuật xác thực thông báo cách sử dụng khóa bí mật MAC sử dụng thơng báo khóa bí mật đầu vào tạo chuỗi thơng tin có kích thước cố định Bên tham gia trình trao đổi thơng báo kiểm tra tính đắn thông báo cách tạo đoạn mã MAC kiểm tra đoạn mã vừa nhận đoạn mã tạo để so sánh Giải thuật MAC giống giải thuật mã hóa khơng có q trình nguợc lại (giải mã) Cũng gần giống kỹ thuật băm mật mã học giới thiệu truớc, có nhiều thơng báo có mã MAC, biết thơng báo mã MAC Nhóm 13 16 Bài thi cuối kỳ mơn ANM khó tìm thơng báo khác có mã MAC thơng báo có mã MAC khơng thể Hình 6: Hàm MAC Sử dụng hàm băm: Như giới thiệu chương 1, hàm băm tạo giá trị cố định từ thông báo đầu vào Người tham gia trao đổi tạo giá trị băm từ thông báo nhận được, so sánh với giá trị băm nhận đuợc thơng báo để kiểm tra tính đắn 2.1.2 Vấn đề chữ ký số Xác thực thông báo bảo vệ hai bên tham gia q trình trao đổi thơng tin từ kẻ thứ ba Tuy nhiên, xác thực thông báo khơng có tác dụng bên gửi bên nhận muốn gây hại cho nhau: - Bên nhận giả mạo thông báo bên gửi - Bên gửi chối gửi thông báo đến bên nhận  Chữ ký số giúp xác thực thông báo mà bảo vệ bên khỏi bên 2.2 Một số khái niệm tính chất chữ ký số điện tử Khái niệm: Chữ ký số khóa cơng khai (hay hạ tầng khóa cơng khai) mơ hình sử dụng kỹ thuật mật mã để gắn với người sử dụng cặp khóa cơng khai - bí mật qua ký văn điện tử trao đổi thông tin mật Khóa cơng khai thường phân phối thơng qua chứng thực khóa cơng khai Q trình sử dụng chữ ký số bao gồm trình: tạo chữ ký kiểm tra chữ ký Chức chữ ký số - Xác minh tác giả thời điểm ký thông tin đuợc gửi - Xác thực nội dung thông tin gửi - Là để giải tranh chấp – từ chối trách nhiệm Giao thức chữ ký số bao gồm thuật toán tạo chữ ký số thuật tốn để kiểm tra chữ ký số Nhóm 13 17 Bài thi cuối kỳ mơn ANM Hình 7: Minh họa chữ ký số bên gửi cho thông báo M KRa, KUa : khóa bí mật cơng khai bên A K : khóa phiên đối xứng dùng chung A B M : thông báo gửi H : hàm băm E : Mã hóa D : Giải mã 2.2.1 Các bước tạo kiểm tra chữ ký điện tử Bên gửi A thực băm thông điệp cần gửi hàm băm H, mã hóa giá trị vừa băm mật mã khóa cơng khai với khóa bí mật bên A KRa, phần thơng tin chữ ký xác thực người dùng A thông điệp M gửi A gửi cho B văn chữ ký (Thơng điệp mã hóa khơng mã hóa tùy theo u cầu Như hình vẽ chữ ký gắn liền với thông điệp mã hóa mật mã đối xứng với khóa dùng chung K A B) B nhận thông điệp (hoặc mã giải mã với khóa chung K để lấy thơng điệp) tiến hành việc : băm giá trị thông điệp hàm băm H, giải mã chữ ký khóa cơng khai KUa bên gửi so sánh giá trị vừa tính tốn Nếu giá trị trùng khớp chúng tỏ thơng điệp nhận có nội dung khơng thay đổi so với ký Nhóm 13 18 Bài thi cuối kỳ mơn ANM Hình 8: Tạo chữ ký số RSA Hình 9: Thẩm định chữ ký số RSA a, Q trình ký (bên gửi) ➢ Tính tốn chuỗi đại diện (message digest/ hash value) thông điệp sử dụng giải thuật băm (Hashing algorithm) SHA-1 ➢ Chuỗi đại diện ký sử dụng khóa riêng (Priavte key) người gửi giải thuật tạo chữ ký (Signature/ Encryption algorithm) RSA Kết chữ ký số (Digital signature) thơng điệp hay cịn gọi chuỗi đại diện mã hóa giải thuật RSA (Encryted message digest) ➢ Thông điệp ban đầu (message) ghép với chữ ký số( Digital signature) tạo thành thông điệp ký (Signed message) ➢ Thông điệp ký (Signed message) gửi cho người nhận b, Quá trình kiểm tra chữ ký (bên nhận) ➢ Tách chữ ký số RSA thông điệp gốc khỏi thông điệp ký để xử lý riêng; ➢ Tính tốn chuỗi đại diện MD1 (message digest) thông điệp gốc sử dụng giải thuật băm (là giải thuật sử dụng trình ký SHA-1) ➢ Sử dụng khóa cơng khai (Public key) người gửi để giải mã chữ ký số RSA-> chuỗi đại diện thông điệp MD2 ➢ So sánh MD1 MD2: o Nếu MD1 =MD2 -> chữ ký kiểm tra thành cơng Thơng điệp đảm bảo tính toàn vẹn thực xuất phát từ người gửi (do khóa cơng khai chứng thực) o Nếu MD1 MD2 -> chữ ký khơng hợp lệ Thơng điệp bị sửa đổi không thực xuất phát từ người gửi Nhóm 13 19 Bài thi cuối kỳ môn ANM 2.3 Giải thuật cài đặt giải thuật Sơ đồ giải thuật Hình 10: Sơ đồ giải thuật RSA Thuật tốn RSA có hai Khóa: - Khóa công khai (Public key): công bố rộng rãi cho người dùng để mã hóa - Khóa bí mật (Private key): Những thơng tin mã hóa khóa cơng khai giải mã khóa bí mật tương ứng a, Tạo khóa Nhóm 13 20 Bài thi cuối kỳ mơn ANM Hình 11: Các bước tạo khóa ví dụ b, Mã hóa giải mã Hình 12: Mã hóa giải mã, lấy ví dụ 2.4 Các điểm yếu chữ ký số sử dụng giải thuật RSA 2.4.1 Chữ ký số nói chung Sự xuất chữ ký số chức tiền định nó, đặc biệt vai trị cơng cụ việc xác định tính nguyên gốc, xác định tác giả, bảo đảm tính tồn vẹn tài liệu số, đóng vai trị vơ quan trọng việc xác định địa vị pháp lý tài liệu số giao dịch số Việc sử dụng chữ ký số phần lớn trường hợp sở khẳng định giá trị pháp lý văn điện tử tương đương với tài liệu giấy Hiện nay, chữ ký số phương tiện để xác nhận giá trị pháp lý tài liệu điện tử Như vậy, với xuất chữ ký số, vấn đề giá trị pháp lý tài liệu điện tử, coi giải Việc sử dụng chữ ký số giao dịch có ưu điểm bất cập định Dưới hạn chế chữ ký số: - Sự lệ thuộc vào máy móc chương trình phần mềm: chữ ký số chương trình phần mềm máy tính Để kiểm tra tính xác thực chữ ký cần có hệ thống máy tính phần mềm tương thích Đây hạn chế chung sử dụng văn điện tử chữ ký số - Tính bảo mật khơng tuyệt đối: Nếu chữ ký tay thực giấy, ký trực tiếp kèm với vật mang tin, chữ ký tay chuyển giao cho người khác, chữ ký số khơng Chữ ký số mật mã cấp cho người sử dụng, phần mềm máy tính khơng phụ thuộc vào vật mang tin Chính vậy, trở ngại lớn sử dụng chữ ký số khả tách biệt khỏi chủ nhân chữ ký Nói cách khác, chủ nhân chữ ký số khơng phải người có mật mã chữ ký Tồn số nhóm đối tượng có mật mã, là: Nhóm 13 21 Bài thi cuối kỳ môn ANM phận cung cấp phần mềm; phận cài đặt phần mềm, người sử dụng máy tính có cài đặt phần mềm Ngồi ra, mật mã bị đánh cắp Cũng có thể, chủ nhân chữ ký số chuyển giao cho người khác mật mã Như vậy, tính bảo mật chữ ký số khơng phải tuyệt đối - Vấn đề gốc, chính: Nếu tài liệu giấy, chữ ký ký lần có (được coi gốc) Bản gốc ký chữ ký lúc hai chỗ khác Có thể tin tưởng rằng, gốc khơng thể có thứ hai giống hệt Nhưng với văn điện tử ký chữ ký số, người copy lại copy từ copy từ copy khơng có khác biệt so với ký Đây thách thức công tác văn hành Khái niệm gốc, văn hành phải xem xét lại - Sự có thời hạn chữ ký điện tử Chữ ký điện tử chương trình phần mềm cấp có thời hạn cho người sử dụng Về lý thuyết, văn có hiệu lực pháp lý ký thời hạn sử dụng chữ ký Tuy nhiên, thực tế hiệu lực pháp lý văn hồn tồn bị nghi ngờ chữ ký số hết thời hạn sử dụng Đây hạn chế thách thức lớn việc sử dụng chữ ký số 2.4.2 Chữ ký số sử dụng RSA 2.4.2.1 Hiệu suất thực thuật toán RSA Tốc độ thực hệ RSA điểm yếu so với hệ mật mã khóa đối xứng Theo ước tính, thực mã hóa giải mã hệ mật mã RSA chậm 100 lần so với hệ mã khóa đối xứng DES (Khi thực phần mềm) Và chậm 1000 lần so với DES (Khi thực phần cứng) 2.4.2.2 Chi phí tốc độ thực thuật tốn RSA a, Chi phí Để thực thuật tốn RSA phần lớn tốn chi phí thực phép tính như: Tạo khóa, mã hóa, giải mã Q trình mã hóa, giải mã tương với chi phí thực phép tính lũy thừa module n Để đảm bảo cho khóa bí mật an tồn thường chọn mũ cơng khai e nhỏ nhiều so với số mũ bí mật d, chi phí thời gian để thực mã hóa liệu nhỏ nhiều so với thời gian giải mã b, Tốc độ hệ RSA Tốc độ RSA điểm yếu RSA so với hệ mã đối xứng, so với hệ mã DSA RSA chậm từ 100 đến 1000 lần, RSA khơng dùng để mã hóa khối lượng liệu lớn mà thường dùng để mã hóa liệu nhỏ 2.5 Các dạng công 2.5.1 Tấn cơng lặp Hệ thống RSA bị cơng sử dụng cơng lặp liên tiếp Đó kẻ Nhóm 13 22 Bài thi cuối kỳ mơn ANM cơng biết khóa cơng khai (e, n) mã C tính chuỗi mã sau: C1 = Ce (mod n) C2 = C1e (mod n) ………………… Ci = Ci-1e (mod n) Nếu có phần tử Cj chuỗii C1, C2, …, C, … cho Cj = C tìm M = Cj-1 vì: e Cj = C j-1 (mod n) C = Me (mod n) 2.5.2 Kiểu công module n dùng chung Hệ thống RSA bị cơng sử dụng module n dùng chung, thơng điệp M mã hố hai khố công khai e1 e từ hai thành viên hệ thống được: C1 = M e1 C2 = M e2 (mod n) (mod n) Sau người cơng dùng thuật tốn Euclide mở rộng: e1*a +e2*b = cho gcd(e1, e2 ) = M khôi phục lại sau: M = C a C b mod n 2.5.3 Tấn cơng khố cơng khai e nhỏ Hastad đưa kiểu cơng khố cơng khai e nhỏ (e =3) hệ mã công khai RSA sau: Giả sử để gửi thông điệp M đến người dùng P1, P2 …,Pk với khố cơng khai (ei , ni) A mã hố M khố cơng khai (ei , ni) gửi mã Ci đến người dùng Pi, biết M < n với i = 1, 2,…, n Ta nghe trộm kết nối A thu thập k mã Ci i Giả sử khố cơng khai ei = khơi phục M k ≥ Thực vậy, có C1, C2, C3 với C1= M3 mod ni; C2= M3 mod n2; C3= M3 mod n3 gcd(ni, nj) = 1, i ≠ j Áp dụng định lý số dư Trung Hoa với C1,C2,C3 tìm được: C’ thuộc Zn1n2n3 thỏa C’ = M3 mod n1n2n3 -> M3 số nguyên Vậy M= √C′ Nhóm 13 23 Bài thi cuối kỳ mơn ANM Chương 3: MÔ PHỎNG PHẦN MỀM TẠO CHỮ KÝ SỐ 3.1 Mã hóa giải mã RSA 3.1.1 Mã hóa Hình 13: giao diện phần mềm Các bước tiến hành mã hóa Bước 1: Tạo public key private key có độ dài tùy ý Hình14: Public key Private key có độ dài 64 byte Hình 15: Tập tin cần mã hóa private key public key Bước 2: Chọn tập tin cần mã hóa Hình 16:Nội dung tập tin gốc Nhóm 13 24 Bài thi cuối kỳ mơn ANM Bước 3: Chọn Public key để mã hóa (file public64byte hình) Bước 4: Bấm “mã hóa” để hồn tất lưu tập tin Hình 17: Mã hóa tập tin public key Hình 18: Nội dung Tập tin sau mã hóa (mahoa64.txt) 3.1.2 Giải mã Hình 19: Các bước giải mã Bước 1: Chọn tập tin mã hóa (mahoa64.txt) Bước 2: Chọn Private key (private64byte.pri) Nhóm 13 25 Bài thi cuối kỳ mơn ANM Bước 3: Chọn “giải mã” để giải mã tập tin ban đầu Hình 20: Tập tin sau giải mã 3.2 Tạo chữ kỹ số 3.2.1 Quá trình tạo chữ ký số bên gửi Hình 21: Quá trình diễn bên gửi Bước 1: Tạo private key public key Public key gửi cho bên nhận Hình 22: Public key private key Bước 2: Chọn tập tin cần tạo chữ ký bên gửi, sau chọn “băm” để đảm bảo an toàn Bước 3: Chọn private key để mã hóa chữ ký Bước 4: Chọn “phát sinh chữ kí” để hồn tất Hình 23:Chữ ký vừa tạo mã hóa Nhóm 13 26 Bài thi cuối kỳ mơn ANM Hình 24:Nội dung chữ ký mã hóa 3.2.2 Q trình xác thực bên nhận Hình 25: Các bước xác thực bên nhận Bước 1: Chọn tập tin gửi qua cần xác nhận chữ ký (dữ liệu vào.txt) Bước 2: Chọn chữ kí kèm theo tập tin (dữ liệu vào txt.sig) Bước 3: Chọn Public key để giải mã (public64byte) Bước 4: Chọn kiểm tra Nếu liệu tập tin cũ thơng báo hợp lệ Hình 26: Xác thực thành cơng Nhóm 13 27 Bài thi cuối kỳ mơn ANM Nếu chữ ký hay nội dung tập tin bị thay đổi chương trình thơng báo kết chữ ký khơng hợp lệ Hình 27 : Xác thực khơng thành cơng Nhóm 13 28 Bài thi cuối kỳ môn ANM KẾT LUẬN Chữ ký số kỹ thuật bảo mật thông tin hàng đầu ngày trở lên phổ biến tất hệ thống truyền có độ tin cậy an tồn cao Hướng xây dựng theo hướng kỹ thuật mật mã khóa cơng khai điều khóa bí mật Vấn đề an tồn hệ thống khơng phải dựa vào độ an tồn cơng nghệ mà dựa vào khóa Qua tiểu luận trình bày cách để tạo nên chữ ký số, hoạt động chữ ký số sử dụng RSA, thực trình tạo chữ kí số, xác thực tài liệu cho trước thông qua phần mềm RSACrypt Demo Nhóm 13 29 Bài thi cuối kỳ mơn ANM Tài liệu tham khảo An ninh mạng Viễn Thông, giảng, Học viện Cơng nghệ Bưu Viễn thơng, Hà Nội/2017 William Stallings, Cryptography and Network Security Principles and Practices, Fourth Edition, November 16, 2005 https://vi.wikipedia.org/wiki/RSA_(m%C3%A3_h%C3%B3a) http://vi.wikipedia.org/wiki/Chữ_ký_số http://vi.wikipedia.org/wiki/Hàm_băm_mật_mã_học http://vi.wikipedia.org/wiki/Mật_mã_học https://www.youtube.com/watch?v=iUtSPXynh7U Nhóm 13 30 ... việc tạo chữ ký số điện tử Mục đích phạm vi nghiên cứu Tìm hiểu công cụ để xây dựng chữ ký số, lược đồ chữ ký số RSA Tập trung vào mô hình chữ ký số, trọng tâm chữ ký số RSA ứng dụng Chữ ký số đời... QUAN VỀ CHỮ KÝ SỐ 1.1 Giới thiệu chữ ký số 1.1.1 Giới thiệu chung 1.1.2 Khái niệm chữ ký số 1.1.3 So sánh chữ ký số với chữ ký thông thường (chữ ký viết... khai Q trình sử dụng chữ ký số bao gồm trình: tạo chữ ký kiểm tra chữ ký - Khóa bí mật dùng để tạo chữ ký số Khóa cơng khai dùng để thẩm định chữ ký số Các thuật toán chữ ký số cho phép xác định

Ngày đăng: 26/02/2023, 15:07

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

Tài liệu liên quan