1. Trang chủ
  2. » Kinh Tế - Quản Lý

Tìm hiểu về hệ bảo mật RSA

26 545 8

Đ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

Định dạng
Số trang 26
Dung lượng 1,05 MB

Nội dung

Thực Tập Chuyên Đề: Hệ Bảo Mật RSA  ………… ……………… 2 1.1 Khái niệm mật mã…………………… ………………… ……2 1.2 Hệ thống mã hóa……………………………………… …… 3 1.3 Khái niệm mã hóa dữ liệu…………………………… … … 3 1.4 Hệ thống mã hóa qui ước…………………………… … ….…4 1.5 Hệ thống mã hóa khóa công cộng……………………… … 4 1.6 Kết hợp mã hóa qui ước và mã hóa khóa công cộng… …… 5 1.7 Hệ bảo mật khóa công khai và hệ bảo mật RSA………… … 5 ………………………… …… 8 2.1 Mô tả sơ lược RSA……………………………………… ……8 2.2 Thuật toán RSA………………………………………… …….8 2.2.1 Sinh khóa………… ……… …………………… …….8 2.2.2 Mã hóa………………… … …………………… …….10 2.2.3 Giải mã …………………………… …………… ……12 2.2.4 Chuyển đổi văn bản rõ…………… … …… …… 14 2.2.5 Tạo chữ kí điện tử………………… ………… ………16 ……………… …………… 17 3.1 Phương pháp RSA………………………………… ………… 17 3.2 Một số phương pháp tấn công bảo mật RSA……… ………… 18 3.2.1 Phương pháp sử dụng φ …………………… ……… 18 GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA 3.2.2 Bẻ khóa dựa trên tấn công lặp lại…………… ………….19 3.3 Sự che giấu thông tin trong hệ thống RSA……… …… 19 3.4 An ninh…………………………………………… ………… 21  … ………….23 4.1 Quá trình tạo khóa……………………………… ………………23 4.2 Tốc độ……………………… ………………………………… 24 4.3 Phân phối………………………………… …………………… 24 4.4Tấn công theo thời gian……………………… ………… …… 24 ! "#$ GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA %&'" Ngày nay khoa học công nghệ đang phát triển với tốc độ nhanh chóng đặc biệt là ngành công nghệ thông tin. Có thể nói công nghệ thông tin đóng vai trò vô cùng quan trọng trong đời sống của chúng ta, đặc biệt vấn đề an ninh và bảo mật thông tin luôn được chú trọng. Với ứng dụng rộng rãi công nghệ thông tin trong việc truyền tải dữ liệu việc dữ bí mật là vấn đề luôn được đề cao ,vấn đề bảo mật vẫn là bài toán đã và đang được nghiên cứu trong thời gian gần đây. Hiện nay với các thông tin tại các cơ quan công sở yêu cầu tính bảo mật cao là một công việc quan trọng. Đó là một công việc mà bất kì cơ quan nào cũng cần quan tâm. Nếu như không quan tâm nhiều đến việc truyền và dấu dữ liệu dẫn đến mất mất dữ liệu là một việc đáng tiếc.Vì vậy tôi lựa chọn đề tài “Tìm hiểu về hệ bảo mậtRSA ”với mong muốn giải quyết được những khó khăn này. Trong đề tài này, mặc dù tôi đã cố gắng rất nhiều nhưng vẫn còn nhiều thiếu xót. Rất mong thầy cô và các bạn góp ý để đề tài này được hoàn thiện hơn. Sinh viên thực hiện Nguyễn Hữu Thành GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA ( 1.1 Khái niệm MậtMật mã học là ngành khoa học ứng dụng toán học vào việc biến đổi thông tin thành một dạng khác với mục đích che dấu nội dung, ý nghĩa thông tin cần mã hóa. Đây là một ngành quan trọng và có nhiều ứng dụng trong đời sống xã hội Ngày nay, các ứng dụng mã hóa và bảo mật thông tin đang được sử dụng ngày càng phổ biến hơn trong các lĩnh vực khác nhau trên thế giới, từ các lĩnh vực an ninh , quân sự, quốc phòng,…,cho đến lĩnh vực dân sự như thương mại điện tự , ngân hàng… Cùng với sự phát triển của khoa học máy tính và Internet, các nghiên cứu và ứng dụng của khoa học kĩ thuật mã hóa ngày càng trở nên đa dạng hơn, mở ra nhiều hướng nghiên cứu chuyên sâu vào từng lĩnh vực ứng dụng đặc thù với những đặc trưng riêng . Ứng dụng của khoa khoa học mật mã khổng chỉ là đơn thuần là mã hóa và giải mã thông tin mà còn bao gồm nhiều vấn đề khác nhau cần được nghiên cứu và giải quyết: chứng thực nguồn gốc nội dung thông tin (kĩ thuật chữ kí điễn tử) chứng nhận tính xác thực về người sở hữu mã khóa( chứng nhận khóa công cộng), các quy trình giúp trao dổi thông tin và thực hiện giao dịch điện tử an toàn trên mạng … Những kết quả nghiên cứu về mật mã cũng đã được đưa vào trong các hệ thống phức tạp hơn, kết hợp với các kĩ thuật khác để đáp ứng nhu cầu đa dạng của các hệ thống ứng dụng khác nhau trong thực tế, ví dụ như hệ thống bỏ phiếu bầu cử qua mạng, hệ thống đào tạo từ xa, hệ thống quản lí an ninh của các đơn vị với hướng tiếp cận sinh trắc học , hệ thống cung câp dịch vụ multimedia trên mạng với nhu cầu cung cấp dịch vụ và bảo vệ bản quyền sở hữu trí tuệ đối với thông tin số… GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA 1.2 Hệ thống Mã hóa )*+*,+ /Hệ thống mã hóa (cryptosystem) là một bộ năm ( P, C, K , E, D) Thỏa mãn điều kiện sau : 1. Tập nguồn P là tập hữu hạn tất cả các mẫu tin nguồn cần mã hóa có thể có. 2. Tập đích C là tập hữu hạn tất cả các mẫu tin có thể có sau khi mã hóa. 3. Tập khóa K là tập hữu hạn các khóa có thể sử dụng. 4. E và D lần lượt là tập luật mã hóa và giải mã . Với mỗi khóa k ∈ K tồn tại luật mã hóa e k ∈ E và luật giải mã d k ∈ D tương ứng . Luật mã hóa e k : P → C và luật giải mã e k : C → P là hai ánh xạ thỏa mãn d k ( e k (x)) = x , ∀ x ∈ P Tính chất 4 là tính chất chính và quan trọng của một hệ thống mã hóa. Tính chất này đảm bảo một mấu tin x ∈ P được mã hóa bằng luật mã hóa e k ∈ E có thể được giải mã chính xác bằng luật d k ∈ D 1.3 Khái niệm mã hóa dữ liệu 0+1.2345674895:*9;<*+=+>2?72345679+@9AB4.5*9>C9DE*,+ 48 =+7FG*2345679+@99+8*+234567H+I*,=1J*,+ +KL==1J*,+ H+M=C.NO52345679+@95:*9;<*+P1,Q548R0+1.A>*=;F95K*D!:9 S7T=U.95:*9;<*+,Q548VT*R0A=5B+>;9>C9DWX>*=;F95K*YPZ[=9\K ;.9WX=;FB9K,;.B+FYAR@9R0DC7?9B+M99W95:*,5\B=]CZ. X!;FB9K^YA+>2?7DN89WX,;.B+5.YAN5:9D5:*9;<*+R0+1.234567 =19+:PZ[=9+_=+56*V`*,=M=++KM*N)2345679+@9+KL=9+.F9+: =+a*,V`*,234567H+M= Tiến trình ngược với tiến trình mã hóa tức là chuyển từ bản mã thành dữ liệu ban đầu gọi là giải mã. GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA Mã hóa và giải mã là hai thành phần của mật mã học. 1.4 Hệ thống mã hóa qui ước (mã hóa đối xứng) Trong hệ thống mã hóa qui ước , quá trình mã hóa và giải mã một thông điệp sử dụng cũng một mã khóa gọi là khóa bí mật hay khóa đối xứng . Do đó, vấn đề bảo mật thông tin đã mã hóa hoàn toàn phụ thuộc vào việc giữ bí mật nội dung của mã khóa đã được sử dụng. Với tốc độ và khả năng xử lý ngày càng cao được nâng cấp của các bộ vi xử lí hiện nay , phương pháp mã hóa chuẩn (DES) đã trở nên không an toàn trong bảo mật thông tin. Do đó,Viện tiêu chuẩn và Công nghệ Hoa Kỳ (NIST) đã quyết định chọn một chuẩn mã hóa mới với đọ an toàn cao nhằm mục đích phục vụ nhu cầu bảo mật thông tin liên lạc của chính phủ Hoa Kỳ cũng như trong các ứng dụng dân sự. 1.5 Hệ thống mã hóa khóa công cộng (mã hóa bất đối xứng) Nếu như vấn đề khó khăn đặt ra đối với các phương pháp mã hóa qui ước chính là bài toán trao đổi mã khóa thì ngược lại, các phương pháp mã hóa khóa công cộng giúp cho việc trao đổi mã khóa trở nên dễ dàng hơn. Nội dung của khóa công cộng (public key) không cần phải giữ bí mật như đối với khóa bí mật trong các phương pháp mã hóa qui ước . Sử dụng khóa công cộng, chúng ta có thể thiết lập một qui trình an toàn để truy đổi khóa bí mật được sử dụng trong hệt hống mã hóa qui ước. Trong những năm gần đây , các phương pháp mã hóa khóa công cộng, đặc biệt là phương pháp RSA, được sử dụng ngày càng nhiều trong các ứng dụng mã hóa trên thế giới và có thể xem như đây là phương pháp chuẩn được sử dụng phổ biến nhất trên mạng Internet, ứng dụng trong việc bảo mật thông tin liên lạc của cũng như trong lĩnh vực thương mại điện tử. GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA 1.6 Kết hợp mã hóa qui ước và mã hóa khóa công cộng Các phương pháp mã hóa qui ước có ưu điểm sử lý rất nhanh và khả năng bảo mật cao so với các phương pháp mã hóa khóa công cộng nhưng lại gặp phải vấn đề khó khăn trong việc trao đổi mã khóa. Ngược lại, các phương pháp mã hóa khóa công cộng tuy xử lý thông tin chậm hơn nhưng lại cho phếp người sử dụng trao đổi mã khóa dễ dàng hơn. Do đó, trong các ứng dụng thực tế, chúng ta cần phối hợp được ưu điểm của mỗi phương pháp mã hóa để xây dựng hệ thống mã hóa và bảo mật thông tin hiệu quả và an toàn. 1.7 Hệ bảo mật khóa công khai và hệ bảo mật RSA Một hệ f=<M, C, K> trong đó: M là một tập các không gian bản rõ. C là tập các không gian bản rõ. K là tập hợp các không gian khóa. Được gọi là một hệmật nếu thỏa mãn các tính chất sau: - Với mỗi kẻ K cho ta hai ánh xạ Ek: M → C (gọi là ánh xạ mã hóa với khóa k) và ánh xạ Dk: C → M được gọi là ánh xạ giải mã. - Hai cặp ánh xạ trên thỏa mãn tính chất Dk (Ek(M)) = M. Người ta chia các hệ mã làm hai loại chính là hệ mã cổ điển và hệ mã hiện đại (hay hệ mã khóa công khai). Các hệ mã cổ điển thực hiện việc bảo mật đều dựa trên cơ sở là có một khóa dùng chung cho cả việc lập mã và việc giải mã. Các hệ mã hóa công khai được nghiên cứu và phát triển từ những năm 1970. Ý tưởng cơ bản của các hệ mã này là xây dựng những hệ thống sao cho mỗi người tham gia vào quá trình truyền tin (người nhận tin và người gửi tin) sẽ có hai khóa khác nhau: Một khóa công khai dùng để lập mã và một khóa GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA bảo mật dùng để giải mã. Khóa công khai được công khai hóa cho mội người, còn khóa bảo mật của mỗi người thì được giữ bí mật. Thông tin trước khi được gửi đi được mã hóa bằng khóa công khai của người nhận. Chỉ có người nhận mới có khả năng giải mã bản mã bằng khóa bí mật của mình, bởi vì thời gian giải mã sẽ tốn hàng tỉ năm nếu chỉ biết khóa công khai. Độ bảo mật của các hệ mã công khai được bảo đảm bằng độ phức tạp tính toán rất cao của thao tác tìm số nguyên tố lớn nhất và phân tích một số nguyên tố lớn thành tích các thừa số. Ta giả sử trong hệmật khóa công khai, khóa mã hóa là E và khóa giải mã là D, thông điệp cần gửi là M. Để hệ thống mã hóa hoạt động được, các điều kiện sau đây phải được thõa mãn: - Dk(Ek(M)) = M đối với mọi thông điệp M - Tất cả các cặp (D,E) là phân biệt. - Việc phát sinh D từ E là khó ngang với việc đọc M. - Cả D và E đều được tính dễ dàng. Điều kiện đầu tiên là tính chất mật mã căn bản, hai điều kiện sau cung cấp tính an toàn và điều kiện cuối cùng làm cho hệ thống trở nên dễ dùng. Hệ bảo mật khóa công khai RSA được phát triển tại học viện kỹ thuật Massachusetts (MIT) vào năm 1977, đặt theo tên các tác giả Ronal Rivest, Adi Shamir và Leonard Adleman thỏa mãn được các điều kiện trên và đã được ứng dụng nhiều vào việc mã hóa và bảo mật dữ liệu do tính năng vượt trội của nó về mã hóa bảo mật dữ liệu so với nhiều thuật toán khác. Thực ra trước đó vài năm, Clifford Cox, chuyên gia mã hoá người Anh, đã phát triển riêng một biến thể RSA. Tuy nhiên, chính phủ Anh xem đây là vấn đề mật và đã không công bố. Thuật toán RSA gần như gặp chung số phận. Khi Rivest, Shamir và Adleman công bố RSA trong ấn phẩm Scientific American tháng 9/1977, họ GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA tự nguyện cung cấp toàn bộ thông tin cho bất kỳ ai gửi đến một phong bì có dán tem và ghi sẵn địa chỉ (người nhận). Cơ quan an ninh quốc gia Mỹ (NSA) đã không đồng ý về việc phổ biến rộng rãi RSA và ra lệnh cấm - tuy nhiên lệnh cấm này không có cơ sở pháp lý. Năm 1978, các tác giả đã công bố thuật toán trong ấn phẩm nổi tiếng Communications of the Association for Computing Machinery (ACM). Trong môi trường Internet hiện nay, các thuật toán bảo mật như RSA và các hậu duệ của nó có vai trò rất quan trọng. Các thuật toán này tạo nên cơ sở cho thương mại điện tử an toàn bằng cách cho phép thực hiện các giao dịch trực tuyến trong định dạng mã hoá.  2.1 Mô tả sơ lược: Thuật toán RSA có hai khóa: khóa công khai (hay khóa công cộng) và khoá bí mật (hay khóa cá nhân). Mỗi khóa là những số cố định sử dụng trong quá trình mã hóa và giải mã. Khóa công khai được công bố rộng rãi cho mọi người và được dùng để mã hóa. Những thông tin được mã hóa bằng khóa công khai chỉ có thể được giải mã bằng khóa bí mật tương ứng. Nói cách khác, mọi người đều có thể mã hóa nhưng chỉ có người biết khóa cá nhân (bí mật) mới có thể giải mã được. Ta có thể mô phỏng trực quan một hệ mật mã khoá công khai như sau : A muốn gửi cho B một thông tin mật mà A muốn duy nhất B có thể đọc được. Để làm được điều này, B gửi cho A một chiếc hộp có khóa đã mở sẵn và giữ lại chìa khóa. A nhận chiếc hộp, cho vào đó một tờ giấy viết thư bình thường và khóa lại (như loại khoá thông thường chỉ cần sập chốt lại, sau khi sập chốt khóa ngay cả A cũng không thể mở lại được - không đọc lại hay sửa thông tin trong thư được nữa). Sau đó A gửi chiếc hộp lại cho B. B mở hộp với chìa khóa của mình và GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA đọc thông tin trong thư. Trong ví dụ này, chiếc hộp với khóa mở đóng vai trò khóa công khai, chiếc chìa khóa chính là khóa bí mật. ## Thuật toán RSA: ##b Sinh khóa: Giả sử A và B cần trao đổi thông tin bí mật thông qua một kênh không an toàn (ví dụ như Internet). Với thuật toán RSA, B đầu tiên cần tạo ra cho mình cặp khóa gồm khóa công khai và khóa bí mật theo các bước sau: 1. Chọn 2 số nguyên tố lớn: và với , lựa chọn ngẫu nhiên và độc lập. 2. Tính: . 3. Tính giá trị hàm số Phi Ơle: . 4. Chọn một số tự nhiên e sao cho . 5. Tính: d sao cho . Khóa công khai: e Khóa bí mật: d Một dạng khác của khóa bí mật bao gồm: • p and q, hai số nguyên tố chọn ban đầu, • d mod (p-1) và d mod (q-1) (thường được gọi là dmp1 và dmq1), • (1/q) mod p (thường được gọi là iqmp) Dạng này cho phép thực hiện giải mã và ký nhanh hơn với việc sử dụng định lý số dư Trung Quốc(CRT). Ở dạng này, tất cả thành phần của khóa bí mật phải được giữ bí mật. GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành [...]... Chuyên Đề: Hệ Bảo Mật RSA CHƯƠNG V KẾT LUẬN Sau một thời gian tích cực làm việc, tìm hiểu trong việc “An toàn thông tin” thì tôi cũng đã hoàn thành bản báo cáo của mình với chủ đề là Hệ bảo mật RSA Nội dung Bản báo cáo đã đề cập tới một số vấn đề như sau: • Lược sử về RSA • Thuật toán về RSA • Phương pháp RSA • Các vấn đê đặt ra trong thực tế Trong quá trình tìm hiểu về cách thức bảo mật của hệ RSA Tôi... sẽ tính : C 1 = C e (mod n) = 3 17 ( mod 35) = 33 C 2 = C 1 e (mod n) = 33 17 ( mod 35) = 3 GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA Vì C 2 = C nên M = C 1 = 3 3.3 Sự che giấu thông tin trong hệ thống RSA Hệ thống RSA có đặc điểm là thông tin không phải luôn được che dấu Giả sử người gửi có e = 17 , n = 35 Nếu anh ta muốn gửi bất cứ dữ liệu nào thuộc tập sau: {1, 6,... biết khóa bí mật d B có thể tìm được m từ c theo công thức sau: Biết m, B tìm lại M theo phương pháp đã thỏa thuận trước Quá trình giải mã hoạt động vì ta có Do ed ≡ 1 (mod p-1) và ed ≡ 1 (mod q-1), (theo Định lý Fermat nhỏ) nên: và Do p và q là hai số nguyên tố cùng nhau, áp dụng định lý số dư Trung Quốc, ta có: GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA hay:  Ví... ∀ y ∈ A : ver(x,y)= { true nếu y = sig(x) { false nếu y ≠ sig(x) Phương pháp chữ kí điện tử RSA được xây dựng dựa trên phương pháp mã hóa công cộng RSA CHƯƠNG III PHƯƠNG PHÁP RSA 3.1 Phương pháp RSA Năm 1978 R.L.Rivest , A.Shamir và L Adleman đã đề xuất hệ thống mã hóa khóa công cộng RSA (hay còn được gọi là hệ thống MIT” ) Trong phương pháp này, tất cả các phép tính đều được thực hiên trên Z n với... cộng của B Mã Hóa bất đối xứng Khóa bí mật sẽ mã hóa Phát sinh ngẫu nhiên Dữ liệu cần mã hóa ` Thông điệp mã hóa gửi đến B Khóa Bí Mật Mã Khóa GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA Mã hóa đối xứng Dữ liệu cần mã hóa Nội dung thông điệp đã mã hóa Hình ảnh trên thể hiện qui trình mã hóa Giả sử A muốn gửi một thông điệp điện tử bí mật cho B và giả sử A đã có được khóa... chống lại tấn công dựa trên thời gian là đảm bảo quá trình giải mã luôn diễn ra trong thời gian không đổi bất kể văn bản mã Tuy nhiên, cách này có thể làm giảm hiệu suất tính toán Thay vào đó, hầu hết các ứng dụng RSA GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA sử dụng một kỹ thuật gọi là che mắt Kỹ thuật này dựa trên tính nhân của RSA: thay vì tính cd mod n, Alice đầu tiên... Khóa bí mật SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA Nội dụng thông điệp đã được mã hóa Hình ảnh trên minh họa quá trình giải mã  Giai đoạn 1: Giải khóa bí mật K: B sử dụng khóa riêng của mình để giải mã khóa bí mật K bằng phương pháp mã hóa bất đối xứng mà A đã dùng để mã hóa khóa K  Giai đoạn 2: Giải mã thông điệp A: B sử dụng khóa bí mật K để giải mã toàn bộ thông điệp của A bằng phương... Giá trị n và b được công bố, trong khi giá trị p, q, a được bí mật GVHD:Nguyễn Thị Loan SV:Nguyễn Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA Dựa trên định nghĩa phương pháp mã hóa RSA, việc áp ụng vào thực tế được tiến hành theo các bước sau: Thuật toán: Sử dụng phương pháp RSA Phát sinh hai số nguyên tố có giá trị p và q Tính φ (n) = (p-1)(q-1) và n=pq Chọn ngẫu nhiên một số nguyên b (1 . điểm của mỗi phương pháp mã hóa để xây dựng hệ thống mã hóa và bảo mật thông tin hiệu quả và an toàn. 1.7 Hệ bảo mật khóa công khai và hệ bảo mật RSA Một hệ f=<M, C, K> trong đó: M là một tập. Hữu Thành Thực Tập Chuyên Đề: Hệ Bảo Mật RSA bảo mật dùng để giải mã. Khóa công khai được công khai hóa cho mội người, còn khóa bảo mật của mỗi người thì được giữ bí mật. Thông tin trước khi được. 3 1.4 Hệ thống mã hóa qui ước…………………………… … ….…4 1.5 Hệ thống mã hóa khóa công cộng……………………… … 4 1.6 Kết hợp mã hóa qui ước và mã hóa khóa công cộng… …… 5 1.7 Hệ bảo mật khóa công khai và hệ bảo mật

Ngày đăng: 18/04/2014, 10:39

TỪ KHÓA LIÊN QUAN

w