Tìm hiểu về chữ ký số sử dụng giải thuật RSA Thạc sĩ PTIT

19 1.2K 2
Tìm hiểu về chữ ký số sử dụng giải thuật RSA Thạc sĩ PTIT

Đ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

MỤC LỤC Nhóm Lớp M1CQIS-B LỜI MỞ ĐẦU Ngày với phát triển bùng nổ công nghệ thông tin, hầu hết thông tin doanh nghiệp chiến lược kinh doanh, thông tin khách hàng, nhà cung cấp, tài chính, mức lương nhân viên,… lưu trữ hệ thống máy tính Ngoài ra, với phát triển yêu cầu doanh nghiệp cần phải chia sẻ thông tin cho nhiều đối tượng khác qua Internet Đây hội để kẻ gian đánh cắp thông tin doanh nghiệp Việc mát, rò rỉ thông tin ảnh hưởng nghiêm trọng đến tài chính, danh tiếng công ty quan hệ với khách hàng Các phương thức công thông qua mạng ngày tinh vi, phức tạp dẫn đến mát thông tin, chí làm sụp đổ hoàn toàn hệ thống thông tin doanh nghiệp Vì an toàn bảo mật thông tin nhiệm vụ cấp bách Bởi mà nhóm tiếp cận tìm hiểu đề tài: “Tìm hiểu giải thuật tạo chữ ký số sử dụng RSA” Tuy nhiên, kiến thức hạn chế, đề tài không tránh khỏi thiếu sót Rất mong thầy giáo bạn đóng góp để đề tài nhóm hoàn thiện Nhóm thực Nhóm Lớp M1CQIS-B I- TỔNG QUAN VỀ CHỮ KÝ ĐIỆN TỬ VÀ ỨNG DỤNG Chữ ký điện tử Đặt vấn đề 1.1 Kể từ người phát minh chữ viết, chữ ký thường sử dụng hàng ngày, chẳng hạn ký biên nhận thư nhận tiền từ ngân hàng, ký hợp đồng hay văn bất kỳ Chữ ký viết tay thông thường tài liệu thường dùng để xác định người ký Tuy nhiên, ngày lĩnh vực hợp đồng điện tử, thử thách đạt chế khác thay chữ ký tay, phải thực chức chữ ký tay, cụ thể là: Đảm bảo tính đồng bên tham gia ký kết hợp đồng, ràng buộc nhà thầu cam kết mục đích họ cuối nội dung hợp đồng Giải pháp cho vấn đề chữ ký điện tử Nó biện pháp sử dụng phương tiện điện tử ràng buộc nhà thầu hợp đồng hay xác nhận tài liệu, đảm bảo chức chữ ký tay Trước hết, thảo luận vài điểm biệt khác Nhóm 3 Lớp M1CQIS-B chữ ký thông thường chữ ký điện tử Đầu tiên vấn đề ký tài liệu Với chữ ký thông thường phần vật lý tài liệu Tuy nhiên, chữ ký điện tử không gắn theo kiểu vật lý vào điện nên thuật toán dùng phải “không nhìn thấy” theo cách điện Thứ hai vấn đề kiểm tra Chữ ký thông thường kiểm tra cách so sánh với chữ ký xác thực khác Ví dụ, ký séc để mua hàng, người bán so sánh chữ ký mảnh giấy với chữ ký nằm mặt sau thẻ tín dụng để kiểm tra Mặt khác, chữ ký số kiểm tra thuật toán kiểm tra cách công khai Như vậy, bất kỳ cũng kiểm tra chữ ký điện tử Việc sử dụng sơ đồ ký an toàn ngăn chặn khả giả mạo Sự khác biệt chữ ký điện tử chữ ký thông thường chỗ: copy tài liệu có chữ ký đồng với gốc Nói cách khác, tài liệu có chữ ký giấy thường khác biệt với gốc điều để ngăn chặn điện ký khỏi bị dùng lại 1.2 Khái niệm Chữ ký điện tử Chữ ký điện tử (tiếng Anh: electronic signature) thông tin kèm theo liệu (văn bản, hình ảnh, video ) nhằm mục đích xác định người chủ liệu Chữ ký điện tử sử dụng giao dịch điện tử Xuất phát từ thực tế, chữ ký điện tử cũng cần đảm bảo chức năng: xác định người chủ liệu đó: văn bản, ảnh, video, liệu có bị thay đổi hay không Một số định nghĩa pháp lý Nhiều luật ban hành giới công nhận giá trị pháp lý chữ ký điện tử nhằm thúc đẩy giao dịch điện tử xuyên quốc gia Luật Giao dịch điện tử (Việt Nam), điều định nghĩa: Nhóm Lớp M1CQIS-B (1) Chứng thư điện tử thông điệp liệu tổ chức cung cấp dịch vụ chứng thực chữ ký điện tử phát hành nhằm xác nhận quan, tổ chức, cá nhân chứng thực người ký chữ ký điện tử (2) Chứng thực chữ ký điện tử việc xác nhận quan, tổ chức, cá nhân chứng thực người ký chữ ký điện tử (5) Dữ liệu thông tin dạng ký hiệu, chữ viết, chữ số, hình ảnh, âm dạng tương tự (12) Thông điệp liệu thông tin tạo ra, gửi đi, nhận lưu trữ phương tiện điện tử Bộ luật ESIGN (Hoa Kỳ), điều 106 định nghĩa: (2) Điện tử (electronic)- công nghệ liên quan tới điện, số, từ, không dây, quang, điện từ khả tương tự (4) Văn điện tử (electronic record)- Các hợp đồng văn khác tạo ra, lưu trữ, trao đổi dạng điện tử (5) Chữ ký điện tử (electronic signature)- Các tín hiệu âm thanh, ký hiệu, trình gắn (vật lý logic) với hợp đồng hay văn thực người muốn ký vào hợp đồng hay văn Bộ luật GPEA (Hoa Kỳ), điều 1710 định nghĩa (1) Chữ ký điện tử (electronic signature) - cách thức ký văn điện tử đảm bảo: (A) Nhận dạng xác thực cá nhân tạo văn (B) Chỉ chấp thuận người ký nội dung văn Ứng dụng chữ ký điện tử Chữ ký điện tử dùng môi trường số, giao dịch điện tử với máy tính mạng Internet Trong môi trường số dùng chữ ký tay được, nhiên lại có nhiều ứng dụng đòi hỏi phải cần đến chế ký xác thực người dùng chữ ký tay, công nghệ mã hóa chữ ký số đời để giúp giải vấn đề Như chữ ký điện tử sử dụng tất trường hợp giao dịch cần đến ký tay lại phải thực môi trường số - Bạn sử dụng chữ ký điện tử giao dịch thư điện tử, ký vào email để đối tác, khách hàng bạn biết có phải bạn người gửi thư không Nhóm Lớp M1CQIS-B - Bạn sử dụng dụng chữ ký điện tử để mua bán hàng trực tuyến, đầu tư chứng khoán trực tuyến, chuyển tiền ngân hàng, toán trực tuyến mà không sợ bị đánh cắp tiền với tài khoản VISA, Master - Bạn sử dụng với ứng dụng phủ điện tử, quan nhà nước tương lai làm việc với nhân dân hoàn toàn trực tuyến cửa Khi cần làm thủ tục hành hay xin xác nhận quan nhà nước bạn cần ngồi nhà khai vào mẫu ký số vào để gửi xong - Bạn sử dụng để kê khai nộp thuế trực tuyến, khai báo hải quan thông quan trực tuyến mà in tờ kê khai, đóng dấu đỏ công ty chạy xe ôm đến quan thuế để chen lấn, xếp hàng ngồi đợi vài tiếng đồng hồ có đến ngày để nộp tờ khai - Bạn sử dụng chữ ký điện tử với ứng dụng quản lý doanh nghiệp với mức độ tin cậy, bảo mật xác thực cao nhiều - Bạn dùng chữ ký điện tử để ký hợp đồng làm ăn với đối tác hoàn toàn trực tuyến mạng mà không cần ngồi trực tiếp với nhau, cần ký vào file hợp đồng gửi qua email Chữ ký điện tử tương đương với chữ ký tay nên có giá trị sử dụng ứng dụng giao dịch điện tử cần tính pháp lý cao Tuy nhiên việc Nhóm Lớp M1CQIS-B phương tiện điện tử pháp luật thừa nhận tính pháp lý, chữ ký điện tử công nghệ mã hóa xác thực mạnh, giúp đảm bảo an toàn, bảo mật cao cho giao dịch trực tuyến, giao dịch chứa thông tin liên quan đến tài chính, chuyển tiền chẳng hạn Những tiện ích chữ ký điện tử: - Bằng cách sử dụng chữ ký điện tử, thông tin liệu gửi điện tử bảo vệ tốt - Chữ ký điện tử cho phép nội dung thông điệp gửi nhất, huỷ bỏ thay đổi - Nó tạo điều kiện thuận lợi cho việc nhận dạng hai người gửi người nhận Mặt hạn chế: Hệ thống tự hỏng, điều có nghĩa cần sử dụng hệt thống thích hợp để phân loại mật mã riêng Hệ thống phân loại cần bảo vệ cách hợp lý quản lý cá nhân hay tập thể uỷ quyền tuyệt đối để làm việc II- THUẬT TOÁN RSA RSA mã công khai sáng tạo Rivest, Shamir & Adleman MIT (Trường Đại học Công nghệ Massachusetts) vào năm 1977 RSA I mã công khai biết đến nhiều sử dụng rộng rãi Nó dựa phép toán lũy thừa trường hữu hạn số nguyên theo modulo nguyên tố Cụ thể, mã hoá hay giải mã phép toán luỹ thừa theo modulo số Nhóm Lớp M1CQIS-B lớn Việc thám mã, tức tìm khoá riêng biết khoá công khai, dựa toán khó phân tích số lớn thừa số nguyên tố Nếu thông tin gì, ta phải kiểm tra tính chia hết số cho tất số nguyên tố nhỏ Đây việc làm không khả thi Người ta chứng minh rằng, phép lũy thừa cần O((log n)3) phép toán, nên coi lũy thừa toán dễ II III Cần ý ta sử dụng số lớn khoảng 1024 bit, tức cỡ 10 350 Tính an toàn dựa vào độ khó toán phân tích thừa số số lớn Bài toán phân tích thừa số yêu cầu O(e log n log log n) phép toán, toán khó V Khởi tạo khoá RSA • • • Mỗi người sử dụng tạo cặp khoá công khai – riêng sau: Chọn ngẫu nhiên số nguyên tố lớn p q Tính số làm modulo hệ thống: N = p.q o Ta biết Ф(N) = (p-1)(q-1) o Và dùng Định lý Trung Hoa để giảm bớt tính toán • Chọn ngẫu nhiên khoá mã e o Trong 1< e < ФN), gcd(e,Ф(N))=1 • Giải phương trình sau để tìm khoá giải mã d cho: e.d=1 mod Ф(N) với ≤ d ≤ Ф(N) • In khoá mã công khai KU={e,N} • Giữ khoá riêng bí mật KR={d,p,q} Nhóm Lớp M1CQIS-B Sử dụng RSA • Để mã hoá mẩu tin, người gửi: o Lấy khoá công khai người nhận KU={e,N} o • Để giải mã hoá mã, người sở hữu nhận: o Sử dụng khóa riêng KR = {d,p,q} o • Tính C = Me mod N, ≤ M < N Tính M = Cd mod N Lưu ý tin M < N, cần chia khối rõ Cơ sở RSA • Theo Định lý Ole Ф o a (n)mod N = gcd(a,N)=1 o Ta có N = p.q o Ф(N) = (p-1)(q-1) o o e.d = mod Ф(N) e.d = + k.Ф(N) giá trị k Suy Cd = (Me)d = M1+k.Ф(N) = M1.(MФ(N))k suy o Cd modN = M1.(1)k modN = M1 modN = M modN o III- ỨNG DỤNG THUẬT TOÁN RSA TRONG CHỮ KÝ ĐIỆN TỬ Dựa vào ưu điểm hệ mã RSA, thiết lập sơ đồ chữ ký dựa toán phân tích thừa số nguyên tố độ an toàn chữ ký cao Việc thiết lập sơ đồ xác thực chữ ký RSA đơn giản, ta cần đảo ngược hàm mã hoá giải mã Sau sơ đồ chữ ký RSA Nhóm Lớp M1CQIS-B Cho n = p*q, p, q số nguyên tố Đặt P = A = Zn định nghĩa: K = {(n, p, q, a, b): n=p*q, p q số nguyên tố, ab ≡ (mod (n))} Các giá trị n b công khai; p, q, a bí mật Với K = (n, p, q, a, b), ta xác định: sigK(x) = xa mod n verK(x,y) = TRUE x ≡ yb (mod n) với x, y thuộc Zn (sigK(x):thuật toán ký, verK(x,y) :thuật toán xác minh ) Thông thường, chữ ký kết hợp với hàm mã hoá công khai Giả sử A muốn gửi điện mã hoá ký đến cho B Với rõ x cho trước, A tính toán chữ ký y = sigA(x) sau mã hoá x y sử dụng khoá công khai eB B, kết nhận z = eB(x, y) Bản mã z gửi tới B, B nhận z, giải mã với hàm giải mã dB để nhận (x, y) Sau dùng hàm xác minh công khai A để kiểm tra xem verA(x,y) = TRUE hay không Song A mã hoá x , rồi sau ký lên mã nhận sao? Khi đó, A tính: y = sigA(eB(x)) A truyền cặp (z, y) tới B, B giải mã z nhận x, sau xác minh chữ ký y x nhờ dùng verA Một vấn đề nảy sinh A truyền (x, y) kiểu người thứ ba C thay chữ ký y A chữ ký mình: y‟ = sigC(eB(x)) Chú ý rằng, C ký lên mã eB(x) rõ x Khi C truyền (z, y‟) đến B, chữ ký C B xác minh verC đó, B cho rõ x xuất phát từ C Do khó khăn này, hầu hết người sử dụng khuyến nghị “ký trước mã” IV- BẢO MẬT TRONG RSA Về mặt lý thuyết RSA bẻ khóa được, có hai thành phần public (n,e) toán bẻ khóa RSA trở toán tìm hai số nguyên tố từ tích cho trước (n) Nhóm 10 Lớp M1CQIS-B - Khóa công cộng dễ công khóa bí mật, thành phần khóa truyền tự mạng Việc công phá hoàn toàn thực với điều kiện có đủ tài nguyên thời gian xử lý - Bài toán RSA toán tính bậc e môđun n (với n hợp số): tìm số m cho me=c mod n, (e, n) khóa công khai c mã Hiện phương pháp triển vọng giải toán phân tích n thừa số nguyên tố Khi thực điều này, kẻ công tìm số mũ bí mật d từ khóa công khai giải mã theo quy trình thuật toán Nếu kẻ công tìm số nguyên tố p q cho: n = pq dễ dàng tìm giá trị (p-1)(q-1) qua xác định d từ e Chưa có phương - pháp tìm máy tính để giải toán thời gian đa thức Tại thời điểm năm 2005, số lớn phân tích thừa số nguyên tố có độ dài 663 bít với phương pháp phân tán khóa RSA có độ dài từ 1024 tới 2048 bít Một số chuyên gia cho khóa 1024 bít sớm bị phá Với khóa 4096 bít khả bị phá vỡ tương lai gần Do đó, người ta thường cho RSA đảm bảo an toàn với điều kiện n chọn đủ lớn Nếu n có độ dài 256 bít ngắn hơn, bị phân tích vài giờ với máy tính cá nhân dùng phần mềm có sẵn Nếu n có độ dài 512 bít, bị phân tích vài trăm máy tính thời điểm năm 1999 Một thiết bị lý thuyết có tên TWIRL Shamir Tromer mô tả năm 2003 đặt câu hỏi độ an toàn khóa 1024 bít Vì - người ta khuyến cáo sử dụng khóa có độ dài tối thiểu 2048 bít Năm 1993, Peter Shor công bố thuật toán Shor rằng: máy tính lượng tử giải toán phân tích thừa số thời gian đa thức Tuy nhiên, máy tính lượng tử chưa thể phát triển tới mức độ nhiều - năm Gần đây, nhà khoa học thuộc Đại học Michigan công bố phát kẽ hở hệ thống mật mã hoá RSA Cách phá vỡ hệ thống, lấy khoá bí mật Nhóm 11 Lớp M1CQIS-B RSA 1024 bit vài ngày thay vài năm công theo cách thông thường - công brute force Các nhà khoa học tạo điện lớn để gây lỗi hệ thống, từ giúp tìm khoá bí mật Việc công thực FPGA Báo cáo trình bày hội nghị DATE 2010 diễn Dresden, Đức tháng năm 2010 Các cách công khóa RSA: Phương pháp sử dụng : - Giả sử người công biết giá trị φ(n) Khi việc xác định giá trị p, q - đưa việc giải hai phương trình sau: n = p ×q Thay q = n/p, ta phương trình bậc hai : - p, q hai nghiệm phương trình bậc hai Tuy nhiên vấn đề phát - giá trị khó việc xác định hai thừa số nguyên tố n Nếu kẻ công nắm ưu thời gian phần cứng áp dụng thuật toán phân tích số nguyên tố để dò khóa bí mật, đảm bảo an toàn - hệ thống bị đe dọa Thuật toán công dựa công lặp lại: Hệ thống RSA bị tổn thương sử dụng công lặp liên tiếp Nếu đối thủ biết cặp khóa công cộng {n, b} từ khóa C tính chuỗi từ khóa sau: - Nếu có phần tử Cj chuỗi C1, C2, C3,…., Ci cho Cj = C tìm M = Cj-1 Nhóm 12 Lớp M1CQIS-B Ngoài ra, biết thông tin cần thiết phần cứng, thời gian mã hóa giải mã với số mã lựa chọn dò khóa riêng d Cách công thường sử dụng để công vào hệ thống chữ ký điện tử sử dụng RSA Các vấn đề an ninh khác: - Để đảm bảo tính an toàn cho hệ thống hai số nguyên tố chọn phải đủ - lớn (1024 bít trở lên) Hệ thống RSA có đặc điểm thông tin luôn che dấu Giả sử người nói có e = 17, n = 35, muốn gửi liệu tập {1, 6, 7, 8, 13, 14, 15, 20, 21, 22, 28, 29, 34} kết việc mã hóa lại liệu ban đầu Nghĩa M = Memod n Ngoài M = - kết việc mã hóa lại với số khóa bí mật Với e, có ba giá trị không che dấu thông tin: {-1,0,1} Các vấn đề an ninh khác: Các vấn đề khó giải RSA: o Vấn đề số nguyên tố: Kiểm tra số lớn có phải số nguyên tố hay không Trên thực tế, việc kiểm tra số nguyên dương n số nguyên tố thường áp dụng phương pháp thuộc nhóm thuật toán Monte Carlo, o ví dụ thuật toán: Solovay-Strassen hay thuật toán Miller-Robin Vấn đề số lớn: cần số nguyên tố đủ lớn để phân tích thừa số nguyên tố Mỗi số nguyên tố có cũng phải 100 chữ số, phéo toán học đơn giản trở nên phức tạp chiếm nhiều thời gian tính toán: thuật toán kiểm tra số nguyên tố, phép mũ số lớn, phép lấy dư, … tất phép toán trình tạo khóa, mã giải mã RSA Cần thiết tạo thuật toán giải vấn đề cách • nhanh chống để thời gian xử lý thuật toán RSA chấp nhận Kết luận: Nhóm 13 Lớp M1CQIS-B - Như vậy, tính an toàn phương pháp RSA dựa sở máy tính thời điểm chưa đủ khả giải việc phân tích số lớn thừa số nguyên tố V- XÂY DỰNG ỨNG DỤNG Giới thiệu chính: Chương trình ứng dụng gồm có ba phần chính: Thuật toán sinh khóa RSA Thuật toán ký lên văn cần gửi Thuật toán kiểm tra tính hợp lệ văn nhận Hướng dẫn sử dụng chương trình: Tạo khóa RSA: Bước 1: Tạo khóa: - Nhóm 14 Lớp M1CQIS-B - Bước 2: Lưu khóa vào tệp: Nhóm 15 Lớp M1CQIS-B - Ký vào văn cần chuyển đi: Chọn văn cần chuyển đi, tạo văn mới: - Chọn chữ ký cần sử dụng thực ký lên văn bản, chữ ký điện tử ký, tức mã hóa phải sử dụng khóa private người gửi: Kiểm tra tính hợp lệ văn nhận: Thực theo trình tự sau: a Load file văn nhận Tách chữ ký văn rõ: - Nhóm 16 Lớp M1CQIS-B b Giải chữ ký (với giá trị khóa công khai người gửi): c Thực tính hàm băm văn rõ: Nhóm 17 Lớp M1CQIS-B d Kiểm tra tính hợp lệ văn bản: Trình bày thuật toán lập trình: - Sử dụng thuật toán trình bày phần lý thuyết Kết hợp sử dụng thư viện số lớn để giải vấn đề số lớn, vấn đề kiểm tra số nguyên tố mà chương trình cần sử dụng Nhóm 18 Lớp M1CQIS-B - Ngoài sử dụng hàm băm trình tạo chữ ký số Sử dụng ngôn ngữ C# windows tạo giao diện thân thiện cho người sử dụng Nhóm 19 Lớp M1CQIS-B [...]... bản: 3 Trình bày các thuật toán trong lập trình: - Sử dụng các thuật toán đã trình bày trong phần lý thuyết Kết hợp sử dụng thư viện số lớn để giải quyết vấn đề số lớn, vấn đề kiểm tra số nguyên tố mà chương trình cần sử dụng Nhóm 3 18 Lớp M1CQIS-B - Ngoài ra còn sử dụng hàm băm trong quá trình tạo chữ ký số Sử dụng ngôn ngữ C# trên nền windows tạo giao diện thân thiện cho người sử dụng Nhóm 3 19 Lớp... Solovay-Strassen hay thuật toán Miller-Robin Vấn đề số lớn: cần số nguyên tố đủ lớn để không thể phân tích ra thừa số nguyên tố Mỗi số nguyên tố có ít nhất cũng phải 100 chữ số, như thế thì các phéo toán học đơn giản trở nên phức tạp và chiếm nhiều thời gian tính toán: thuật toán kiểm tra số nguyên tố, phép mũ số lớn, phép lấy dư, … tất cả đều là các phép toán trong quá trình tạo khóa, mã và giải mã RSA Cần... RSA là bài toán tính căn bậc e môđun n (với n là hợp số) : tìm số m sao cho me=c mod n, trong đó (e, n) chính là khóa công khai và c là bản mã Hiện nay phương pháp triển vọng nhất giải bài toán này là phân tích n ra thừa số nguyên tố Khi thực hiện được điều này, kẻ tấn công sẽ tìm ra số mũ bí mật d từ khóa công khai và có thể giải mã theo đúng quy trình của thuật toán Nếu kẻ tấn công tìm được 2 số. .. thời gian mã hóa và giải mã với một số bản mã được lựa chọn thì có thể dò ra khóa riêng d Cách tấn công này thường sử dụng để tấn công vào các hệ thống chữ ký điện tử sử dụng RSA 4 2 Các vấn đề an ninh khác: - Để đảm bảo tính an toàn cho hệ thống thì hai số nguyên tố được chọn phải đủ - lớn (1024 bít trở lên) Hệ thống RSA có đặc điểm là thông tin không phải luôn luôn được che dấu Giả sử người nói có... chính nó với mọi số khóa bí mật Với mỗi e, có ít nhất ba giá trị không được che dấu thông tin: {-1,0,1} Các vấn đề an ninh khác: Các vấn đề khó giải quyết trong RSA: o Vấn đề số nguyên tố: Kiểm tra một số lớn có phải là số nguyên tố hay không Trên thực tế, việc kiểm tra một số nguyên dương n là số nguyên tố thường áp dụng các phương pháp thuộc nhóm thuật toán Monte Carlo, o ví dụ như thuật toán: Solovay-Strassen... ba phần chính: 1 2 3 Thuật toán sinh khóa RSA Thuật toán ký lên văn bản cần gửi Thuật toán kiểm tra tính hợp lệ của văn bản nhận 2 Hướng dẫn sử dụng chương trình: Tạo khóa RSA: Bước 1: Tạo khóa: 1 - Nhóm 3 14 Lớp M1CQIS-B - Bước 2: Lưu khóa vào tệp: Nhóm 3 15 Lớp M1CQIS-B - Ký vào văn bản cần chuyển đi: Chọn văn bản cần chuyển đi, hoặc là tạo văn bản mới: - Chọn chữ ký cần sử dụng và thực hiện ký... tạo ra một thuật toán giải quyết các vấn đề một cách • nhanh chống để thời gian xử lý của thuật toán RSA là chấp nhận được Kết luận: Nhóm 3 13 Lớp M1CQIS-B - Như vậy, tính an toàn của phương pháp RSA dựa trên cơ sở các máy tính tại thời điểm hiện tại chưa đủ khả năng giải quyết việc phân tích các số rất lớn ra thừa số nguyên tố V- XÂY DỰNG ỨNG DỤNG 1 Giới thiệu chính: Chương trình ứng dụng gồm... cho: n = pq thì có thể dễ dàng tìm được giá trị (p-1)(q-1) và qua đó xác định d từ e Chưa có một phương - pháp nào được tìm ra trên máy tính để giải bài toán này trong thời gian đa thức Tại thời điểm năm 2005, số lớn nhất có thể được phân tích ra thừa số nguyên tố có độ dài 663 bít với phương pháp phân tán trong khi khóa của RSA có độ dài từ 1024 tới 2048 bít Một số chuyên gia cho rằng khóa 1024... khuyến cáo sử dụng khóa có độ dài tối thiểu 2048 bít Năm 1993, Peter Shor công bố thuật toán Shor chỉ ra rằng: máy tính lượng tử có thể giải bài toán phân tích ra thừa số trong thời gian đa thức Tuy nhiên, máy tính lượng tử vẫn chưa thể phát triển được tới mức độ này trong nhiều - năm nữa Gần đây, các nhà khoa học thuộc Đại học Michigan đã công bố phát hiện một kẽ hở trong hệ thống mật mã hoá RSA Cách... định giá trị p, q - được đưa về việc giải hai phương trình sau: n = p ×q Thay q = n/p, ta được phương trình bậc hai : - p, q chính là hai nghiệm của phương trình bậc hai này Tuy nhiên vấn đề phát - hiện được giá trị còn khó hơn việc xác định hai thừa số nguyên tố của n Nếu kẻ tấn công nắm ưu thế về thời gian và phần cứng thì có thể áp dụng thuật toán phân tích số nguyên tố để dò ra khóa bí mật, ... - Sử dụng thuật toán trình bày phần lý thuyết Kết hợp sử dụng thư viện số lớn để giải vấn đề số lớn, vấn đề kiểm tra số nguyên tố mà chương trình cần sử dụng Nhóm 18 Lớp M1CQIS-B - Ngoài sử dụng. .. an toàn bảo mật thông tin nhiệm vụ cấp bách Bởi mà nhóm tiếp cận tìm hiểu đề tài: Tìm hiểu giải thuật tạo chữ ký số sử dụng RSA Tuy nhiên, kiến thức hạn chế, đề tài không tránh khỏi thiếu sót... tay, công nghệ mã hóa chữ ký số đời để giúp giải vấn đề Như chữ ký điện tử sử dụng tất trường hợp giao dịch cần đến ký tay lại phải thực môi trường số - Bạn sử dụng chữ ký điện tử giao

Ngày đăng: 07/12/2016, 20:57

Từ khóa liên quan

Mục lục

  • I- TỔNG QUAN VỀ CHỮ KÝ ĐIỆN TỬ VÀ ỨNG DỤNG

  • 1. Chữ ký điện tử

    • Một số định nghĩa pháp lý

    • 2. Ứng dụng chữ ký điện tử

    • II- THUẬT TOÁN RSA

    • 1. Khởi tạo khoá RSA

    • 2. Sử dụng RSA

    • 3. Cơ sở của RSA

    • III- ỨNG DỤNG THUẬT TOÁN RSA TRONG CHỮ KÝ ĐIỆN TỬ

    • IV- BẢO MẬT TRONG RSA

    • 3. 1. Các cách tấn công khóa RSA:

    • 4. 2. Các vấn đề an ninh khác:

    • V- XÂY DỰNG ỨNG DỤNG

    • 1. Giới thiệu chính:

    • 2. Hướng dẫn sử dụng chương trình:

    • 3. Trình bày các thuật toán trong lập trình:

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

  • Đang cập nhật ...

Tài liệu liên quan