1. Trang chủ
  2. » Luận Văn - Báo Cáo

vấn đề an toàn cảu các hệ mật mã khóa công khai

76 593 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

Định dạng
Số trang 76
Dung lượng 29,72 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Với mục đích giải quyết vấn đề trên, vào năm 1976, W.Diffie - M.E.Hellman [11] đã để xuất mô hình hệ mật mã phi đối xứng hay còn gọi là hệ mật mã khoá công khai, an toàn về mặt tính toán

Trang 1

Đặng Văn Cường

VẤN ĐỂ AN TOÀN CỦA CÁC HỆ MẬT MÃ KHOÁ CÔNG KHAI

Chuyên ngành: Công nghệ thông tin

Trang 2

MỤC LỤC

MỞ ĐẦU 4

C H U Ơ N G 1- T Ổ N G Q U A N V Ề M Ậ T M Ã 6

1.1 Giới thiệu 6

1.2 Hệ mật mã khoá đối xứng 11

1.3 Hộ mật mã khoá công khai 15

1.4 Thám mã các hệ mật mã 18

C H Ư Ơ N G 2- c ơ s ở T O Á N H Ọ C C Ủ A C Á C H Ệ M Ậ T M Ã K H O Á C Ô N G K H A I 2 0 2.1 Giới thiệu 20

2.2 Lý thuyết về độ phức tạp tính toán 20

2.3 Một số kết quả về đại số và số học 25

2.4 Một số thuật toán phục vụ cho tính toán số lớn 42

C H Ư Ơ N G 3 - T Í N H A N T O À N C Ủ A C Á C H Ệ M Ậ T M Ã K H O Á C Ô N G K H A I 4 6 3.1 Tính an toàn của hệ mật mã khoá công khai RSA 46

3.2 Tính an toàn của hệ mật mã khoá công khai ElGamal 54

C H Ư Ơ N G 4 - N H Ũ N G N H Â N T ố L À M S U Y G I Ả M T Í N H A N T O À N C Ủ A C Á C H Ệ M Ậ T M Ã 5 8 4.1 Những nhân tố làm suy giảm tính an toàn của hệ mật mã RSA 58

4.2 Nhũng nhân tố làm suy giảm tính an toàn của hệ mật mã ElGamal 62

C H Ư Ơ N G 5 - N H Ũ N G G I Ả I P H Á P Đ Ả M B Ả O T Í N H A N T O À N C H O C Á C H Ệ M Ậ T M Ã 6 8 5.1 Giải pháp đảm bảo tính an toàn cho hệ mật mã RSA 68

5.2 Giải pháp đảm bảo tính an toàn cho hệ mật mã ElGamal 67

Vấn đề an toàn của các hệ mật mã khoá công khai

Trang 3

5.3 Khả năng sinh số nguyên tố dùng cho hệ mật mã RSA và ElGamal 69

K Ế T L U Ậ N 73

T À I LIỆU TH AM K H Ả O 7 4

Vấn đề an toàn của các hệ mật mã khoá công khai

Trang 4

MỞ ĐẨU

Khoa học mật mã từ khi ra đời tới nay đã trải qua nhiều giai đoạn phát triển, từ một môn khoa học thực nghiệm đã nhanh chóng trở thành môn khoa học logic đỉnh cao và ngày càng hội tụ những kiến thức tinh tuý của loài người Sự phát triển của khoa học mật mã đã góp phần thúc đẩy xã hội loài người ngày càng tiến lên Đặc biệt trong thời đại ngày nay dưới tác động của cuộc cách mạng viễn thông - tin học hoá toàn cầu, khi các hoạt động kinh tế,

xã hội trong mô hình thế giới mở và biến động khôn lường thì khoa học mật

mã ngày càng chiếm vị trí quan trọng, và thực sự đã có những đóng góp không nhỏ trong việc bảo đảm an ninh cho các quốc gia, an toàn cho thông tin kinh

tế xã hội.

Như chúng ta đã biết, năm 1949, c Shannon đã đưa ra mô hình hệ mật

mã đối xứng an toàn vô điều kiện dựa trên cơ sở lý thuyết thông tin Trong thời đại ngày nay, nhiều bài toán mật mã trong thực tế được đặt ra là “chỉ cần giữ bí mật trong một thời gian nào đó cho một số thông tin nào đó mà thôi” Với mục đích giải quyết vấn đề trên, vào năm 1976, W.Diffie - M.E.Hellman [11] đã để xuất mô hình hệ mật mã phi đối xứng hay còn gọi là hệ mật mã khoá công khai, an toàn về mặt tính toán dựa trên cơ sở lý thuyết độ phức tạp tính toán Có thể nói rằng, đây là hai thành tựu vĩ đại nhất và là hai điểm mốc quan trọng nhất đánh dấu sự phát triển của khoa học mật mã Trên nền tảng của hai mô hình hệ mật mã này, các nghiên cứu và ứng dụng mật mã đã có những nền móng vững chắc để phát triển.

Trong một hệ mật mã, khoá là yếu tố cốt lõi, quyết định tính an toàn của hệ mật mã Trong mô hình hệ mật mã khoá đối xứng, khoá cần phải là một dãy ngẫu nhiên lý tưởng các phần tử khoá Còn trong mô hình hệ mật mã khoá công khai, khoá là một cặp gồm khoá bí mật và khoá công khai cỡ hàng

Vấn dề an toàn của các hệ mật mã khoả công khai

Trang 5

trăm chữ số thập phân không thể suy được ra nhau về mặt tính toán Như vậy,

ta thấy việc tạo khoá là vô cùng quan trong, nó quyết định sự sống còn của hệ mật mã, nếu khoá được tạo ra tốt - thoả mãn yêu cầu về khoá thì hệ mật mã được an toàn, còn ngược lại, khoá được tạo ra không tốt - khồng thoả mãn yêu cầu về khoá thì hệ mật mã sẽ mất an toàn Trong mô hình hệ mật mã khoá công khai để tạo được khoá thoả mãn yêu cầu nhằm đảm bảo độ mật thì việc chọn các tham số tạo khoá là vô cùng quan trọng, tức ta phải tìm được những tham số tạo khoá mà không gây mất an toàn cho hệ mật mã Để tìm được những tham số này, ta phải nghiên cứu tính an toàn của các hệ mật mã, sau đó tìm ra những nhân tố gây mất an toàn của các hệ mật mã, từ đó đưa ra các giải pháp để tìm được các tham số tạo khoá tốt - thoả mãn yêu cầu về khoá nhằm đảm bảo an toàn cho các hệ mật mã Chính vì lý do trên, để xây dựng được mô hình hệ mật mã khoá công khai an toàn nhằm ứng dụng trong thực tế thì việc nghiên cứu vấn đề an toàn của các hệ mật mã khoá công khai là hết sức cấp bách và cần thiết.

Trong bản luận văn này, chúng tôi nghiên cứu các nội dung sau: tính an toàn của các hệ mật mã khoá công khai và những nhân tố làm suy giảm tính

an toàn của các hệ mật mã khoá công khai Từ đó, chúng tôi đưa ra các giải pháp để xây dựng được các hệ mật mã khoá công khai an toàn nhằm đáp ứng thực tế đang đòi hỏi Do thời gian, khả năng của bản thân, chúng tôi không thể khảo sát hết được tất cả các hệ mật mã khoá công khai đã được biết, mà chỉ nghiên cứu một số hệ mật mã được thế giới sử dụng nhiều, rộng rãi nhất hiện nay, đó là hệ mật mã RSA do Ron Rivert, Adi Shamir và Len Adleman [17] sáng tạo và được công bố vào năm 1977 dựa vào bài toán phân tích số nguyên thành thừa số nguyên tố và hệ mật mã ElGamal do T El Gamal [21] sáng tạo

và công bố vào năm 1985 dựa vào bài toán logarithm rời rạc trong trường hữu hạn Trong đề tài này, chúng tồi đặt ra mục tiêu là xây dựng được mô hình hệ

Vấn dề an toàn của các hệ mật mã khoắ công khai

Trang 6

mật mã an toàn với hệ mật mã RSA và ElGamal và đưa ra hướng nghiên cứu tiếp.

Phần còn lại của luận văn có cấu trúc như sau: trong chương 1 trình bày

và làm rõ một số khái niệm cơ bản của khoa học mật mã; chương 2 trình bày

về cơ sở toán học của mật mã khoá công khai; chương 3 nghiên cứu tính an toàn của hai hệ mật mã RSA và ElGamal; chương 4 tìm những nhân tố làm suy giảm tính an toàn của hai hệ mật mã RSA, ElGamal; và trong chương 5 đưa ra các giải pháp khắc phục những điểm yếu để bảo đảm tính an toàn cho hai hệ mật mã RSA và ElGamal; trong phần kết luận, khái quát các kết quả đạt được của bản luận văn và đưa ra hướng nghiên cứu tiếp; cuối cùng là phần tài liệu tham khảo.

Vấn đề an toàn của các hệ mật mã khoá công khai

Trang 7

CHƯƠNG 1 TỔNG QUAN VỂ MẬT MÃ

1.1 Giới thiệu

Sự phát triển của khoa học mật mã trên thế giới trong những năm gần đây đã đạt được những thành tựu hết sức rực rỡ, nó đã thực sự mở đường cho những ứng dụng quan trọng trong các lĩnh vực bảo mật thông tin dưới mọi hình thức Như chúng ta đã biết, năm 1949, c Shannon đã đưa ra mô hình hệ mật mã đối xứng an toàn vô điều kiện dựa trên cơ sở lý thuyết thông tin Vào năm 1976, W.Diffie - M.E.Hellman [11] đã đề xuất mô hình hệ mật mã phi đối xứng an toàn về mặt tính toán dựa trên cơ sở lý thuyết độ phức tạp tính toán Có thể nói rằng, đây là hai thành tựu vĩ đại nhất và là hai điểm mốc quan trọng nhất đánh dấu sự phát triển của khoa học mật mã Trên nền tảng của hai

mô hình hệ mật mã này, các nghiên cứu và ứng dụng mật mã đã có những nền móng vững chắc để phát triển.

Trước tiên, có thể nói trong mô hình hệ mật mã, yếu tố quan trọng nhất

là khoá, nó quyết định đến độ mật của hệ mật mã Trong mô hình hệ mật mã của Shannon, khoá cần phải là một dãy ngẫu nhiên lý tưởng các phần tử khoá, còn trong mô hình hệ mật mã khoá công khai, khoá là một cặp gồm khoá bí mật và khoá công khai cỡ hàng trăm chữ số thập phân không thể suy được ra nhau về mặt tính toán Theo hướng tạo khoá, đã có rất nhiều công trình nghiên cứu của các nhà toán học, mật mã học và cả các nhà vật lý, cơ học lượng tử trên thế giới cống hiến nhiều đóng góp hết sức quí giá trong lĩnh vực này Để tạo khoá ngẫu nhiên cho các hệ mật mã cổ điển, có thể có giải pháp hoàn toàn thủ công và có các giải pháp hiện đại, tự động hoá như các phương pháp tạo khoá từ nguồn nhiễu vật lý, từ các photon ánh sáng và đặc biệt là các phương

Tổng quan về mật mã

Trang 8

pháp tạo khoá bằng thuật toán trên máy tính điện tử hoặc trên các thiết bị điện

tử chuyên dụng Nghiên cứu các phương pháp tạo khoá thuật toán là một mảng hết sức sôi nổi và có thể thấy rằng, thế giới có rất nhiều công trình về vấn đề này Thông qua các tài liệu, có thể chia các phương pháp đó thành hai kiểu Kiểu thứ nhất, tìm cách phức tạp hoá các m-dãy trong các mô hình tổ hợp tối ưu, vừa đảm bảo tính dãy ra có chu kỳ, độ phức tạp lớn đồng thời lại

có cấu trúc phân bố ngẫu nhiên với tương quan cực nhỏ Kiểu thứ hai, sử dụng các bài toán có độ phức tạp lớn để sinh ra lớp dãy giả ngẫu nhiên mạnh Mỗi kiểu trên đây có các ưu thế khác nhau và chúng sẽ bổ sung cho nhau trong nghiên cứu các phương pháp tạo khoá giả ngẫu nhiên Để tạo khoá mã dịch cho các hệ mật mã khoá công khai, các nhà mật mã học và toán học trên thế giới đã có rất nhiều công trình nghiên cứu, đưa bộ môn lý thuyết số và hình học đại số phát triển đến đỉnh cao mà thông qua đó đã giải quyết được những vấn đề hóc búa về mặt lý thuyết cũng như giải pháp thực tế cho việc tạo số nguyên tố lớn cỡ hành trăm chữ số thập phân, đặc biệt là vào đầu tháng 8 năm

2002, công trình nghiên cứu của nhóm nghiên cứu trẻ tại Học viện Cồng nghệ

Ấn Độ ở Kanpur đã giải được bài toán kiểm tra tính nguyên tố trong thời gian

đa thức, mà các bộ óc giỏi nhất đã không thực hiện được trong hàng thập niên qua Có thể nói, đây là mảng nghiên cứu thời sự bậc nhất trong những năm vừa qua Song song với nó là những vấn đề nghiên cứu các phương pháp phân tích số nguyên lớn, giải bài toán logarithm rời rạc trên trường hữu hạn, cũng

là lĩnh vực được thế giới đặc biệt quan tâm để có thể tạo và thiết kế được các

hệ mật mã khoá công khai trong thực tiễn Qua theo dõi tình hình nghiên cứu những năm qua, ta có thể thấy vấn đề nghiên cứu tạo khoá mật mã trên thế giới đã đạt được những đỉnh cao cần thiết, tuy nhiên nó vẫn luôn là lĩnh vực thời sự, cốt yếu trong thời đại ngày nay.

Năm 1976, mật mã khoá công khai ra đời đã đánh dấu một bước ngoặt trong lịch sử phát triển của khoa học mật mã, nó đã tạo ra một cuộc cách

Tổng quan về mật mã

Trang 9

mạng thực sự trong ngành mật mã học và ứng dụng Không những nó cung cấp một phương thức trao đổi an toàn mới mà còn tạo ra khả năng thúc đẩy nhanh quá trình xã hội hoá thông tin trên mạng mở toàn cầu nhưng vẫn bảo đảm những bí mật riêng tư của mỗi thực thể Mật mã khóa công khai đã giải quyết được căn bản vấn đề phân phối khoá tự động hiệu quả mà các hệ mật

mã cổ điển không giải quyết được, đồng thời nó cũng giải quyết vấn đề xác thực tự động mà trong mật mã cổ điển không đặt ra Như chúng ta đã biết, mật

mã khoá công khai ra đời trong điều kiện thế giới đang bước vào kỷ nguyên công nghệ thông tin - tự động hoá cao Sự phát triển của công nghệ viễn thông

- tin học vừa là tiền đề cho sự ra đời của các hệ mật mã khoá công khai đồng thời nó vừa là chỗ dựa vững chắc để mật mã khoá công khai có thể đưa vào ứng dụng phục vụ con người Do đó, tuy mới ra đời nhưng mật mã khoá công khai đã khảng định được vị trí quan trọng và không thể thiếu trong đời sống xã hội hiện đại Hai thập kỷ qua, chúng ta đã được chứng kiến sự phát triển như

vũ bão của lĩnh vực khoa học mới mẻ này Hàng năm, trên thế giới đều tổ chức các hội nghị quốc tế về mật mã Qua các tài liệu hội nghị có thể thấy hầu hết các báo cáo đều tập trung nghiên cứu lý thuyết và khai thác ứng đụng về

hệ mật mã khoá công khai Có rất nhiều khía cạnh có thể áp dụng các hệ mật

mã khoá công khai như quản lý và phân phối khoá qui ước, chữ ký số và xác thực văn bản, các thủ tục LOGIN vào một hệ thống tự động, phân chia bí mật thông tin, thanh toán chuyển trả tiền điện tử, các phương pháp chứng minh không tiết lộ thông tin, Để đưa mật mã khoá công khai vào ứng dụng thực

tế, thế giới đang rất quan tầm về các thủ tục tương tác an toàn trên các hệ tự động hoá Có thể nói đây là lĩnh vực nghiên cứu còn hứa hẹn rất nhiều kết quả bất ngờ.

Trong thời đại ngày nay, nhiều bài toán mật mã trong thực tế được đặt

ra là “chỉ cần giữ bí mật trong một thời gian nào đó cho một số thông tin nào

đó mà thôi” Với mục đích giải quyết vấn đề trên, một độ đo về tính an toàn

Tổng quan về mật mã

Trang 10

cho hệ mật mã được đưa ra liên quan đến những nổ lực tính toán cần thiết để phá hệ mật mã Một hệ mật mã được gọi là an toàn tính toán nếu một thuật toán tốt nhất để phá nó phải cần đến một số lượng rất lớn các bước tính toán Nhưng cho đến nay chưa có một hệ mật mã nào được biết là an toàn theo nghĩa trên đã được chứng minh, do vậy trong thực tế người ta thông thường coi một hệ mật mã là “an toàn tính toán” nếu có một phương pháp tốt nhất trong thời điểm đó để phá nó nhưng yêu cầu về thời gian lớn đến mức không thể chấp nhận được Việc chứng minh về tính an toàn tính toán cho một hệ mật

mã cho đến nay thường được tiến hành theo phương thức đó là quy độ an toàn của hệ mật mã đó về một bài toán đã được biết là khó theo góc độ độ phức tạp tính toán, tức là không thuộc lớp p.

Trong lý thuyết độ phức tạp tính toán có đề cập đến khái niệm hàm một phía, đó là những hàm f có đặc tính mặc dù đã biết chúng nhưng việc tìm được hàm ngược f'1 của nó lại vô cùng khó khăn Trong lớp các hàm một phía, có một số hàm có tính chất là nếu biết thêm một số thông tin nào đó thì việc tìm f"1 lại trở nên dễ dàng, và gọi những hàm đó là hàm một phía cửa sập Với nhũng hàm một phía cửa sập, vấn đề thoả thuận trước về khoá sẽ không cần nữa Mỗi thực thể trong một mạng liên lạc chọn cho mình một hàm một phía cửa sập f, công bố một cách công khai cho những người khác hàm này để ỉàm hàm mã hoá các thông tin muốn gửi cho anh ta, còn hàm f 1 được giữ bí mật

để làm khoá giải các bản mã gửi cho mình Hệ mật mã dùng các hàm và theo phương thức đã nói trên được gọi là các hộ mật mã khoá công khai.

Đối tượng cơ bản của mật mã là tạo ra khả nãng liên ỉạc trên một kênh không mật cho hai người sử dụng - giả sử Alice ỉà người gửi tin và Bob là người nhận tin, sao cho đối phương - giả sử Oscar là người thám mã, không thể hiểu được thông tin được truyền đi trên kênh Kênh này có thể là một đường dây điện thoại hoặc một mạng máy tính.

Tổng quan về mật mã

Trang 11

Trước khi Alice muốn truyền tin mật cho Bob thì họ phải nhận được khoá - đây là bài toán phân phối khoá, sau đó phải thống nhất với nhau dùng khoá nào để mã và dịch - đây là bài toán thoả thuận khoá Sau khi hai người

đã được phân phối khoá và thoả thuận với nhau về khoá dùng để mã-dịch thì Alice dùng khoá để mã, gọi là khoá mã và Bob dùng khoá để dịch, gọi là khoá dịch.

Thông tin mà Alice muốn gửi cho Bob khi chưa được mã hoá, gọi là bản rõ, có thể là một văn bản tiếng Anh, có thể là các dữ liệu bằng số hoặc bất

cứ tài liệu nào có cấu trúc tuỳ ý Alice sẽ mã hoá bản rõ bằng một khoá mã đã được xác định trước thành kết quả, gọi là bản mã, và gửi bản mã trên kênh cho Bob Oscar có thể thu trộm được bản mã trên kênh, song không thể xác định được nội dung của bản rõ vì không có khoá dịch, nhưng Bob - người đã biết khoá dịch, có thể giải mã và thu được bản rõ ban đầu.

Trong chương này, chúng ta sẽ đi nghiên cứu một số khái niệm hết sức

cơ bản về các hệ mật mã để làm tiền đề cho các nghiên cứu tiếp theo Các kết quả của chương này có thể tìm trong [9, 12, 13, 14, 15, 16, 18,20].

Trang 12

4 Đối với mỗi keK có một qui tắc mã EkeE, và một qui tắc giải mã DkeD Khoá k được dùng chung để mã và dịch, đồng thời phải giữ bí mật Mỗi Ek: P—>c và Dk: C—>p là những hàm mà: Dk(Ek(m))=m, với mọi bản rõ meP.

Nội dung của tính chất 4 là nếu một bản rõ m được mã hoá bằng Ek và bản mã nhận được sau đó được giải mã bằng Dk thì phải thu được bản rõ ban

đầu m

Một số hệ mật mã khoá đối xứng như: hệ mật mã Cezar, hệ mật mã Vigenere, hệ mật mã Hill,

1.2.2 Thủ tục truyền tin mật trong hệ mật mã khoá đối xứng

Gỉa sử Alice và Bob muốn truyền tin mật cho nhau, họ sẽ áp dụng thủ tục sau để truyền tin mật cho nhau bằng hệ mật mã khoá đối xứng Trước tiên,

họ phải giải quyết hai bài toán phân phối khoá và thoả thuận khoá để mã dịch bằng một kênh an toàn - thường vận chuyển và bảo quản bằng con đường vật

lý Sau đó, giả sử Alice muốn gửi một thông báo cho Bob trên một kênh không mật và ta xem thông báo này là một chuỗi:

m=m1m2 mn với số nguyên n > 1 nào đó Ở đây mỗi ký hiệu của bản rõ n^eP, 1 < i < n Mỗi rrij sẽ được mã hoá bằng qui tắc Efc với khoá k xác định trước đó Bởi vậy, Alice sẽ tính Cj=Ek(mj), 1 < i < n và được chuỗi bản mã là:

c=c1c2 cn

sẽ được gửi trên kênh Khi Bob nhận được c = C |C 2 e n, anh ta sẽ giải mã bằng hàm giải mã Dk và thu được bản rõ m=mim2 mn

Tổng quan về mật mã

Trang 13

Hình i 1 là một ví dụ về một kênh liên lạc trong hệ mật mã khoá đối xứng.

Hình 1.1

1.2.3 Độ an toàn của hệ mật mã khoá đối xứng - độ mật hoàn thiện

Năm 1949, c Shannon công bố công trình “Lý thuyết truyền thông của các hệ bí mật”, đưa ra nhiều quan niệm làm cơ sở cho việc đánh giá tính bí mật của các hệ mật mã Trong phần này chúng ta sẽ đưa ra quan điểm của ông

Trang 14

ứng là xác suất để bản rõ là m, bản mã là c, và khoá là k Xác suất của việc

bản rõ là m khi b iết bản m ã là c, được ký hiệu là Pp(mlc)

Định nghĩa 1.2: Hệ mật mã (P, c, K, E, D) được gọi là có độ mật hoàn thiện nếu Pp(mlc)=Pp(m), với mọi meP.ceC.

Công thức trên có nghĩa là trong điều kiện đã có bản mã là c thì xác suất để m là bản rõ của nó vẫn bằng xác suất xuất hiện m trong không gian rõ khi không có điều kiện trên.

Định lý 1.3: Gỉa sử (P, c, K, E, D) ỉà một hệ mật mã với IKI=IPI=ICI Khi đó hệ mật mã có độ mật hoàn thiện nếu và chỉ nếu mỗi khoá được sử dụng với xác suất bằng nhau 1/IKI, và với mọi meP và mọi ceC có một khoá duy nhất k sao cho Ek(m)=c.

1.2.4 Ưu nhược điểm của hệ mật mã khoá đối xứng

Ưu điểm nổi bật của các hệ mật mã khoá đối xứng là việc xây dựng một

hệ mật mã có độ bảo mật cao khá dễ dàng về mặt lý thuyết Nhưng nếu như không kể đến việc cần có một nguồn sinh khoá ngãu nhiên (giả định chúng ta

đã có) thì việc phân phối rồi lưu trữ bảo mật và thoả thuận các khoá là một vấn

đề không thể chấp nhận được trong lĩnh vực truyền thồng mạng ngày nay.

Để khắc phục hiện tượng không thể lưu trữ nổi một khối lượng khoá quá lớn đáp ứng được nhu cầu mã dịch, người ta xem xét đến việc sử dụng các

hệ mật mã khối với độ dài khối không lớn lắm như DES, hoặc các hệ mật

mã dòng mà khoá được sinh từ một nguổn giả ngẫu nhiên bằng thuật toán.

Mặc dù đã thực hiện việc mã hoá và giải mã bằng các hệ mật mã khối hay bằng thuật toán sinh khoá như đã nêu ở trên thì vấn đề phân phối và thoả thuận về khoá (mầm sinh khoá) vẫn phải được thực hiện Như vậy, vấn đé

Tổng quan về mật mã

Trang 15

phân phối và thoả thuận về khoá chưa thể giải quyết được trong các hệ mật mã khoá đối xứng.

1.3 Hệ mật mã khoá công khai

1.3.2 Thủ tục truyền tin mật trong hệ mật mã khoá công khai

Trong hệ mật mã khoá công khai, bài toán phân phối khoá và thoả thuận khoá được giải quyết tự động như sau: mỗi người dùng A tham gia vào mạng tạo cho mình một cặp khoá (ks, kp), sau đó công khai khoá mã kp trên mạng cùng với địa chỉ của mình và giữ bí mật khoá dịch ks để giải mã Khi đó trong mạng ai muốn gửi thông tin cho A, họ lấy khóa mã công khai kp của A

Tổng quan về mật mã

Trang 16

trên mạng và mã hoá bản tin của mình thành bản mã và gửi bản mã đến địa chỉ của A, sau khi nhận được bản mã, A sẽ dùng khoá bí mật ks của mình dịch bản mã thành bản rõ.

Alice và Bob sẽ áp dụng thủ tục sau để truyền tin mật cho nhau bằng hệ mật

mã khoá công khai Giả sử Alice muốn gửi một thông háo cho Bob trên một kênh không mật và ta xem thông báo này là một chuỗi:

m=m1m2 mn với số nguyên n > 1 nào đó Ở đây mỗi ký hiệu của bản rõ n^eP, 1 < i < n Alice lấy khoá công khai của Bob là kp trên mạng về và mã hoá Ek (m^Cị Bởi vậy, Alice sẽ tính Cj=Ek (îîij), 1 < i < n và được chuỗi bản mã là:

Trang 17

1.3.3 Độ an toàn của hệ mật mã khoá công khai - độ an toàn tính toán.

Quan điểm về tính hoàn thiện về độ mật đã trình bày ở phần trên còn được gọi là quan điểm về độ an toàn không điều kiện Diffie-Hellman [11] xem xét vấn đề bảo mật dưới một góc độ thấp hơn một chút nhưng vẫn đảm bảo tính mục đích của nó đó là việc quan tâm thêm tham số thời gian Nhiều bài toán trong thực tế được đặt ra là “chỉ cần giữ bí mật trong một thời gian nào đó cho một số thông tin nào đó mà thôi” Với mục đích giải quyết vấn đề trên, một độ đo về tính an toàn cho hệ mật mã được đưa ra liên quan đến những nỗ lực tính toán cần thiết để phá hệ mật mã Một hệ mật mã được gọi là

an toàn tính toán nếu một thuật toán tốt nhất để phá nó phải cần đến một số lượng rất lớn các bước tính toán Vấn đề nảy sinh là cho đến nay chưa có một

hệ mật mã nào được biết là an toàn theo nghĩa trên (được chứng minh), do vậy trong thực tế người ta thông thường coi một hệ mật mã là “an toàn tính toán” nếu có một phương pháp tốt nhất để phá nó nhưng yêu cầu về thời gian lớn đến mức không thể chấp nhận được Việc chứng minh về tính an toàn tính toán cho một hệ mật mã cho đến nay thường được tiến hành theo phương thức

đó là quy độ an toàn của hệ mật mã đó về một bài toán đã được biết là “khó” theo góc độ độ phức tạp tính toán.

1.3.4 Ưu nhược điểm của hệ mật mã khoá công khai

Vấn đẻ còn tồn đọng của các hệ mật mã khoá đối xứng được giải quyết

dễ dàng nhờ các hệ mật mã khoá công khai Chính ưu điểm nổi bật này là nguyên nhân thu hút nhiều trí tuệ vào việc đề xuất, đánh giá các hệ mật mã này Do bản thân các hệ mật mã khoá công khai đều dựa vào các giả thiết liên quan đến các bài toán khó cho nên một cách tự nhiên đa số các hệ mật mã loại này đều có tốc độ mã dịch không nhanh lắm Chính nhược điểm này làm cho các hệ mật mã khoá công khai khó được dùng một cách độc lập.

Tổng quan về mật mã

Trang 18

Một vấn để nữa nảy sinh khi sử dụng các hệ mật mã khoá công khai đó

là việc xác thực mà trong mô hình hệ mật mã khoá đối xứng không đặt ra Do các khoá mã công khai được công bố một cách công khai trên mạng cho nên việc bảo đảm rằng “khoá được công bố có đúng là của đối tượng cần liên lạc hay không?” là một kẽ hở có thể bị lợi dụng Việc nghiên cứu các thủ tục xác thực cũng được xúc tiến mạnh mẽ Hàng hoạt các thủ tục xác thực như Kerbross, X509, đã được nghiên cứu kỹ lưỡng và được sử dụng, một điều khá thú vị là việc giải quyết vấn đề xác thực cũng chỉ cần chính bằng các hệ mật mã khoá công khai Một ưu điểm có thể được kể ra đây về các hệ mật

mã khoá công khai là các ứng dụng của nó trong lĩnh vực chữ ký số, cùng với các kết quả về hàm Hash, thủ tục ký để bảo đảm tính toàn vẹn của một văn bản được giải quyết.

Cuối cùng vấn đề đe doạ có tính tiềm tàng khi sử dụng các hệ mật mã khoá công khai xuất phát ở chính cơ sở an toàn của các hệ mật mã này Như chúng ta đã biết, tất cả các hệ mật mã khoá cồng khai được biết, thậm chí đã được sử dụng cũng đều chỉ dựa vào các bài toán mà hiện nay được coi là khó, việc mạnh dạn đưa các hệ mật mã này vào sử dụng ngay cả trong tình huống các bài toán nó dựa vào để đảm bảo sự an toàn đã được coi là khó thật, thì chúng ta cũng phải lựa chọn một cách thận trọng các tham số để ít ra thì cũng không dùng phải những tham số mà bài toán được dựa vào không còn khó nữa.

1.4 Thám mã các hệ mật mă

1.4.1 Nguyên ỉý Kerekhoff

Chúng ta muốn xây dựng một hệ mật mã đạt được độ mật dưới giả thuyết là luôn coi đối phương Oscar đã biết sơ đổ hệ mật mã đang dùng (nhưng không biết khoá) Gỉa thuyết này gọi là nguyên lý Kerekhoff Dĩ

Tổng quan về mật mã

Trang 19

nhiên, nếu Oscar không biết sơ đồ hệ mật mã được dùng thì nhiệm vụ của anh

ta sẽ khó khăn hơn Tuy nhiên, ta không muốn độ mật của một hệ mậl mã lại dựa trên giả thuyết không chắc chắn là Oscar không biết sơ đồ hệ mật mã được sử dụng.

1.4.2 Các bài toán thám mã

Với nguyên lý Kerekhoff, người thám mã luôn biết trước sơ đồ hệ mật

mã được sử dụng thì việc thám mã có thể qui về việc phát hiện khóa Ngoài việc biết sơ đồ hệ mật mã được dùng, người thám mã còn cần có các thông tin khác để phát hiện khoá Tuỳ theo thông tin đó là gì mà D.R Stinson [20] phàn

ra các bài toán thám mã thành các loại:

1 Chỉ có bản mã: thám mã chỉ có xâu bản mã c.

2 Bản rõ đã biêt: thám mã có xâu bản rõ m và xâu bản mã tương ứng c.

3 Bản rõ được lựa chọn: thám mã đã nhận được quyền truy nhập vào

cơ chế mã hoá Bởi vậy, thám mã có thể chọn một xâu bản rõ m và tạo nên xâu bản mã c tương ứng.

4 Bản mã được lựa chọn: thám mã có được quyền truy nhập tạm thời vào cơ chế giải mã Bởi vậy, thám mã có thể chọn một xâu bản mã c

và tạo nên xâu bản rõ m tương ứng.

Tổng quan về mật mã

Trang 20

đó ỉà dành cho những người thám mã, còn những người trong cuộc thì cả việc lập mã và giải mã phải dễ dàng Cơ sở toán học cho phương thức trên là các hàm một phía và hàm một phía cửa sập được đề cập đến trong lý thuyết về độ phức tạp tính toán Độ an toàn của các hệ mật mã khoá công khai dựa vào các bài toán khó mà chúng đã được nghiên cứu trong đại số và lý thuyết số, hơn nữa việc tìm các tham số để xây dựng được một hệ mật mã an toàn cũng dẫn đến giải quyết hàng loạt các bài toán trong đại số và lý thuyết số Vì vậy, việc trình bày những kiến thức cơ bản về lý thuyết độ phức tạp tính toán, một số kết quả về đại số và lý thuyết số, một số thuật toán phục vụ cho tính toán các

số lớn là hết sức cần thiết Trong chương này chúng ta sẽ trình bày sơ lược những kiến thức toán học làm cơ sở cho nghiên cứu sau này Các kết quả của chương này có thể tìm trong [2, 3, 4, 5, 6, 7, 8, 14, 20].

2.2 Lý thuyết về độ phức tạp tính toán

2.2.1 Độ phức tạp tính toán

Cơ sở toán học của các hệ mật mã khoẩ công khai

Trang 21

Trong hoạt động thực tiễn, chúng ta gặp phải những bài toán quyết định

như sau: Cho một tập dữ kiện D, và một câu hỏi Q trên các dữ kiện thuộc tập

đó Bài toán bao gồm việc quyết định xem, với mỗi dữ kiện cụ thể IeD, thì

câu hỏi Q được trả lời là “đúng” hay “sai”?

Ví dụ:

Bài toán hợp số:

Dữ liệu: số nguyên dương N.

Câu hỏi: có hay không hai số m, n>l sao cho N=m.n?

Bài toán logarithm rời rạc:

Dữ liệu: các số nguyên a, p, số nguyên tố p Câu hỏi: có hay không số a sao cho a=logap mod p Bài toán đổng dư bậc hai:

Dữ liệu: các số nguyên dương a, b, c Câu hỏi: có hay không số x<c sao cho X2 = a mod b?

Như chúng ta đã biết, các bài toán quyết định được chia làm hai lớp, đó

là lớp các bài toán quyết định giải được và lớp các bài toán quyết định không

giải được Lớp các bài toán không giải được là những bài toán không có lời

giải, tức là không có thuật toán để xác định xem bài toán cho câu trả lời đúng

hay sai Còn lớp các bài toán quyết định giải được là những bài toán có thuật toán để xác định xem bài toán cho câu trả lời là đúng hay sai Nhưng với mỗi

bài toán giải được lại có độ phức tạp tính toán khác nhau, có bài toán giải

được có độ phức tạp tính toán chấp nhận được trong thực tế, đồng thời có

những bài toán giải được lại có độ phức tạp tính toán vô cùng lớn, không thể

chấp nhận được trong thực tế Vì vậy, từ cái giải được một cách trừu tượng,

Cơ sở toán học của các hệ mật mã khoẩ công khai

Trang 22

tiềm năng đến việc giải được trong thực tế của khoa học tính toán bằng máy tính điện tử là một khoảng cách rất lớn Song có những bài toán giải được trong trường hợp tổng quát thì nó có độ phức tạp tính toán lớn, nhưng với bài toán con của nó, tức với một dữ liệu đầu vào đặc biệt nào đó thì nó lại trở thành bài toán giải được có độ phức tạp tính toán chấp nhận được trong thực tế.

Độ phức tạp tính toán của một quá trình tính toán được định nghĩa là số

ồ nhớ hay số các phép toán được thực hiện trong quá trình tính toán đó Độ phức tạp tính toán của một thuật toán được hiểu là một hàm số f, sao cho với mỗi n, f(n) là số ô nhớ hay số các phép toán tối đa mà thuật toán thực hiện quá trình tính toán của mình trên các dữ liệu vào có độ lớn n Độ phức tạp tính toán của một bài toán hay một hàm f được định nghĩa là độ phức tạp của một thuật toán tốt nhất có thể tìm được để giải bài toán hay hàm f đó.

2.2.2 Các lớp phức tạp

Ta định nghĩa p là lớp các bài toán có độ phức tạp thời gian là đa thức, tức lớp các bài toán mà đối với chúng có thuật toán giải bài toán đó trong thời gian đa thức Các bài toán thuộc lớp p là các bài toán có thể giải được trong thực tế của khoa học tính toán bằng máy tính điện tử.

Định nghĩa NP là lớp các bài toán mà đối với chúng có thuật toán không đơn định giải chúng trong thời gian đa thức Thuật toán không đơn định

là một mô hình tính toán trừu tượng, được giả định là sau mỗi bước có thể có một số hữu hạn bước được lựa chọn đồng thời tiếp sau Trong thực tế có nhiều bài toán thuộc lớp NP, nhưng chưa có ai chứng minh được là chúng có thuộc lớp p hay không Như vậy, bài toán NP=P? đến nay vẫn còn mở, chưa có lời giải.

Cơ sở toán học của các hệ mật mã khoá công khai

Trang 23

Gỉa sử NP^P, thì trong NP có một lớp con các bài toán được gọi là NPC, đó là những bài toán mà bản thân thuộc lớp NP, và mọi bài toán bất kỳ thuộc NP đều có thể qui dẫn về bài toán đó bằng một hàm tính được trong thời gian đa thức Chúng ta đã chứng minh được rất nhiều bài toán thuộc lớp NPC, đây là lớp các bài toán khó nhất trong NP, còn lớp p là lớp các bài toán dễ nhất trong NP.

Liệu lớp các bài toán NP - (NPC u P) = <Ị> ?, ta gọi lớp các bài toán đó

là NPI, chúng ta đã biết rằng lớp các bài toán NPI* (Ị), và như vậy lớp các bài toán NPI có độ khó thuộc loại trung gian giữa NPC và p, tức là NPI có độ phức tạp tính toán lớn hon lớp p và nhỏ hơn lớp NPC.

Từ trên ta thấy NP có cấu trúc như sau: NP=P u NPI u NPC, được minh hoạ ở hình 2.1

Như vậy, hai lớp NPI và NPC là hai lớp khó nhất của NP, các bài toán thuộc hai lớp này không thể giải được trong thực tế của khoa học tính toán bằng máy tính điện tử trong trường hợp tổng quát Trong thực tế gặp phải những bài toán này, chúng ta sẽ đi tìm các bài toán con của nó, tức là tìm các tập dữ liệu D’çzD đủ rộng, sao cho bài toán con tương ứng thuộc lớp p để giải.

Trong mật mã khoá công khai có ứng dụng rất nhiều bài toán thuộc lớp NPC hoặc lớp NPI, người ta tìm được một dữ liệu D’ mà khi đó bài toán con tương ứng Q(D’) thuộc lớp p để làm hàm giải mã, sau đó người ta dùng hàm

Cơ sở toán học của các hệ mật m ẵkhoá công khai

Trang 24

một phía cửa sập fzđể biến đổi dữ liệu D’ thành D rồi công khai làm hàm mã hoá, khi đó người thám mã muốn giải mã họ phải đương đầu với bài toán thuộc lớp NPC, hoặc lớp NPI, còn người nhận tin hợp pháp, do họ có cửa sập z nên họ đưa được dữ liệu D thành D’ và giải được dễ dàng Như vậy, hàm một phía và hàm một phía cửa sập có vai trò vị trí đặc biệt trong mật mã khoá công khai, nó là cơ sở để xây dựng các hệ mật mã khoá công khai.

2.2.3 Hàm một phía và hàm một phía cửa sập

2.2.3.1 Hàm một phía

Hàm f(x) được gọi là hàm một phía, nếu cho X tính y=f(x) là dễ, nhưng việc tính ngược, tức cho y tính x=f' *(y) là rất khó Dễ là tính được trong thời gian đa thức, còn khó là không tính được trong thời gian đa thức.

Trang 25

khó, nhưng nếu biết cửa sập, chẳng hạn biết hai thừa số của n thì tính được x=f'(y) dễ.

2.3 Một sô kết quả về đại sô và sô học

2.3.1 Cấu trúc đại số

Trước tiên giới thiệu khái niệm cơ bản nhất là tập hợp Tập hợp là một tập các phần tử có cùng một thuộc tính nào đó Một tập hợp có thể là hữu hạn,

vô hạn không đếm được hay vô hạn đếm được Lực lượng của một tập hợp là

số ỉượng các phần tử chứa trong tập hợp Người ta định nghĩa các phép toán trên các phần tử của tập hợp Việc định nghĩa các phép toán trên tập hợp dẫn đến một số khái niệm toán học như nhóm, vành, trường,

2.3.1.1 Nhóm

Định nghĩa 2.1: Ta gọi phép toán hai ngôi trong một tập hợp X là một ánh xạ f từ XxX đến X Gía trị f(x,y) của f tại (x,y) gọi là cái hợp thành của X

và y.

Cái hợp thành của X và y thường được ký hiệu bằng cách viết X và y

theo một thứ tự nhất định với m ột dấu đặc trưng cho phép toán đặt giữa X và y

Người ta dùng ký hiệu x+y để chỉ phép cộng, dùng ký hiệu x.y để chỉ phép

nhân, trong trường hợp tổng quát dùng ký hiệu x*y để chỉ cái hợp thành của X

và y Sau đây, trong các lý luận tổng quát, ta sẽ viết cái hợp thành của X và y

là xy, nếu không có lý do nào khiến ta phải viết khác

Định nghĩa 2.2: Một bộ phận A của X gọi là ổn định đối đối với phép toán trong X nếu và chỉ nếu xyeA với mọi X , yeA.

Cơ sở toán học của các hệ mật mã khoá công khai

Trang 26

Phép toán * xác định trong bộ phận ổn định A bởi quan hệ x*y với mọi

X, y e A gọi là cái thu hẹp vào A của phép toán trong X Người ta nói rằng * là

phép toán cảm sinh trên A bởi phép toán của X.

Định nghĩa 2.3: Một phép toán trong một tập hợp X gọi là kết hợp nếu

và chỉ nếu ta có (xy)z=x(yz) với mọi X , y, z c X Một phép toán trong một tập hợp X gọi là giao hoán nếu và chỉ nếu ta có xy=yx với mọi X, y e X.

Định nghĩa 2.4: Gỉa sử đã cho một phép toán trong một tập hợp X Một phần tử e của X gọi là một đơn vị (hoặc một phần tử trung lập) của phép toán nếu và chỉ nếu ex=xe=x với mọi X€X.

Định lý 2.5: Một phép toán có nhiều nhất một phần tử trung lập.

Định nghĩa 2.6: Ta gọi là nửa nhóm một tập hợp X cùng với một phép toán kết hợp đã cho trong X Một nửa nhóm có phần tử trung lập gọi là một vị nhóm.

Định nghĩa 2.7: Ta gọi là nhóm một nửa nhóm X có các tính chất sau:

có phần tử trung lập; với mọi xeX có một x'‘eX sao cho x'lx=xx'1=e Phần tử

X'1 gọi là phần tử đối xứng hay nghịch đảo của X

Nếu tập hợp X là hữu hạn thì ta bảo ta có một nhóm hữu hạn và số phần

tử của X gọi là cấp của nhóm Nếu phép toán trong X giao hoán thì X là một nhóm giao hoán hay Aben.

Định lý 2.8: Mỗi phần tử của một nhóm chỉ có một phần tử đối xứng Định lý 2.9: Trong một nhóm, đẳng thức xy=xz kéo theo đẳng thức y=z Định lý 2.10: Trong một nhóm phương trình ax=b có nghiệm duy nhất x=a'b.

Định lý 2.11: Trong một nhóm ta có (xy) ;=y''x"' với mọi X, y là hai phần tử bất kỳ của nhóm.

Cơ sở toán học của các hệ m ật mã khoá công khai

Trang 27

Định nghĩa 2.12: Một bộ phận ổn định A của một nhóm X là một nhóm con của X nếu A cùng với phép toán cảm sinh là một nhóm.

Định lý 2.13: Giao của một họ bất kỳ những nhóm con của một nhóm X

là một nhóm con của X.

Định nghĩa 2.14: Gỉa sử ư là một bộ phận của một nhóm X Nhóm con

A bé nhất của X chứa ư gọi là nhóm con sinh ra bởi u và ư là một hệ sinh của A Trong trường hợp A=x, thì X được sinh ra bởi u và u là một hệ sinh của X.

Định nghĩa 2.15: Một nhóm X gọi là cyclic nếu và chỉ nếu X được sinh

ra bởi một phần tử aeX Phần tử a gọi là một phần tử sinh của X.

Định nghĩa 2.16: Gỉa sử a là một phần tử của một nhóm X và A là nhóm con sinh ra bởi a Phần tử a gọi là có cấp vô hạn nếu A là nhóm vô hạn, khi đó không có số nguyên dương n sao cho an=e Phần tử a gọi là có cấp m nếu A là nhóm hữu hạn và có cấp m, khi đó có m là số nguyên dương bé nhất sao cho am=e.

Định lý 2.17: Trong nhóm cyclic X hữu hạn cấp n, một phần tử ak (0<k<n) cũng là phần tử sinh của X, nếu và chỉ nếu ƯCLN(k,n)=l.

Định lý 2.18: Mọi nhóm con của một nhóm cyclic đều là cyclic.

Định lý 2.19 (Định lý Lagrange): Cấp của một nhóm X hữu hạn là bội của cấp mọi nhóm con của nó.

Hệ quả 2.20: Cấp của một phần tử tuỳ ý của nhóm hữu hạn X là ước của cấp của nhóm X.

Hệ quả 2.21 : Mọi nhóm hữu hạn có cấp nguyên tố đều là cyclic và được sinh ra bởi một phần tử bất kỳ, khác phần tử trung lập của nhóm.

Hệ quả 2.22: Trong một nhóm hữu hạn X cấp n, mọi aeX, ta có an=e.

Cơ sở toán học của các hệ mật mã khoắ công khai

Trang 28

2.3.I.2 Vành

Đ ịnh n g h ĩa 2.23: T a gọi là vành của m ột tập hợp X cùng với hai phép toán hai ngôi đã cho trong X ký hiệu theo thứ tự bằng các dấu + và và gọi là phép cộng và phép nhân sao cho các điều kiện sau thoả mãn:

1 X c ù n g với phép cộng là m ột nhóm A ben

2 T ập X với phép nhân là m ột nửa nhóm

3 Phép nhân là phân phối đối với phép cộng: Vx, y, z e X ta có

X là giao hoán N ếu phép nhân có phần tử trung lập thì phần tử đó gọi là phần

tử đơn vị của X và ký hiệu là 1 Phần tử nghịch đảo đối với phép nhân của m ột

p h ầ n t ử X k ý h iệ u là X '1.

Đ ịnh n g h ĩa 2.24: G ỉa sử X là m ột vành giao hoán T a bảo m ột phần tử

a e X là bội củ a m ột phần tử b e X , hay a chia hết cho b, ký hiệu là a:b; hay b là ước củ a a, hay b chia hết a, ký hiệu là bla, nếu có c e X sao cho a=bc

Đ ịnh n g h ĩa 2.25: M ột phần tử a* 0 của m ột vành X gọi là m ột ước của không, nếu và chỉ nếu tồn tại m ột phần tử b * 0 của X sao cho ab=0

Đ ịnh n g h ĩa 2.26: M ột m iền nguyên là m ột vành có nhiều hơn m ột phần

tử, giao hoán, có đơn vị và không có ước của không

Đ ịnh n g h ĩa 2.27: G ỉa sử X là m ột vành, A là m ột bộ phận của X ổn định đối với hai phép toán trong X Gọi A là m ột vành con của vành X nếu A cùng với hai phép to án cảm sinh trên A là m ột vành

Cơ sở toán học của các hệ mật mã khoá công khai

Trang 29

Đ ịnh lý 2.28: G iao của m ột họ bất kỳ những vành con của m ột vành X

A cù n g với hai phép toán cảm sinh trên A là m ột trường

T ừ định n g h ĩa cho thấy m ột trường bao gồm tối thiểu hai phần tử là phần tử đơn vị củ a phép cộng và phần tử đơn vị của phép nhân Số phần tử trong m ột trường được gọi là bậc của trường M ột trường với số phần tử vô hạn được gọi là trường vô hạn Ngược lại, m ột trường với số phần tử hữu hạn gọi là trường hữu hạn

2.3.2 Sô học

2.3.2.1 Lý thuyết chia hết trong vành số nguyên z

Đ ịnh nghĩa 2.31: G ỉa sử a và b là hai số nguyên với b * 0 T a nói b chia hết a, hoặc b ià m ột ước củ a a, hoặc a chia hết cho b, hoặc a là m ột bội của b, nếu và chỉ nếu tồn tại m ột số nguyên q sao cho a=bq

Số nguyên q thoả m ãn điều kiện a=bq là duy nhất

Đ ể chỉ rằng a chia hết cho b ta viết a:b Đ ể chỉ rằng b chia h ết a ta viếtbla

Cơ sở toán học của cắc hệ mật mã khoá công khai

Trang 30

Đ ịnh lý 2.32: G ỉa sử a và b là hai số nguyên bất kỳ với b*0 Khi đó tồn

Đ ịnh lý 2.34: G ỉa sử a „ a2, ,an là những số nguyên đã cho không đồng thời bằng không K hi đó ƯCLN của chúng tồn tại

Đ ịnh nghĩa 2.35: M ột số nguyên d gọi là m ột tổ hợp tuyến tính nguyên

c ủ a n h ữ n g s ố n g u y ê n a „ a 2, ,a n, n ế u v à c h ỉ nếu tồn tại những s ố n g u y ê n X ),

x2, ,xn sao cho: d = a , X j+ a2x 2+ + anxn

H ệ q u ả 2.36: Ư CLN của nhiều số nguyên là m ột tổ hợp tuyến tính nguyên của các số đó

H ệ quả 2.37: N ếu d>0 là m ột ước chung của các số nguyên a ,, a2, ,an

và là m ột tổ hợp tuyên tính nguyên của các số đó thì d= U C L N (aj, a2v , a

n)-M ệnh đề 2.38: Ư C LN (a,, a2, ,an)=U C L N (U C L N (aj, a2, ,aivl), an)

Đ ịnh lý về sự tồn tại Ư CLN của nhiều số nguyên chưa chỉ ra m ột phương pháp

cụ thể nào để thực sự tìm được U CLN của chúng Song m ệnh đề 2.38 cho phép đưa việc tìm U CLN của nhiều số về việc tìm U CLN của hai số Đối với trường hợp này có m ột phương pháp có hiệu lực để tìm U CLN Đ ó là thuật toán Euclide

Đ ịnh nghĩa 2.39: G ỉa sử a lf a2, ,an là những số nguyên đã cho, chúng gọi là nguyên tố cùng nhau, nếu và chỉ nếu U C L N (a,, a2, ,an) = l C húng gọi

là nguyên tố sánh đổi, nếu và chỉ nếu U C L N (ai( a j)= l, i*j với i, j= l, ,n

Cơ sở toán học của các hệ mật mã khoấ công khai

Trang 31

Đ ịnh lý 2.40: C ác số a l5 a2, ,an là nguyên tố cù n g nhau, nếu và chỉ nếu

ỉ là m ột tổ hợp tu y ến tính ng u y ên củ a chúng

M ệnh đề 2.41: N ếu m ột số nguyên a ch ia hết tích bc củ a hai số nguyên

b và c và nếu nó là n g u y ên tố với m ột tro n g hai số đó thì nó ch ia hết số kia

M ệnh đề 2.42: N ếu U C L N (a ,c)= l và U C L N (b ,c )= l thì Ư C L N (ab ,c)= l

Đ ịnh n g h ĩa 2.43: G ỉa sử a lt a2V -A , là nhữ ng số n g u y ên k h ác không

M ột bội ch u n g củ a ch ú n g là m ột số n g u y ên , c h ia hết cho m ỗi số đã cho Bội chung nhỏ nhất c ủ a nhữ ng số k h ác k h ô n g a l5 a2, ,an là m ột bội chung m của chúng, sao cho m ọi bội ch u n g củ a các số đ ã ch o đ ểu là bội củ a m K ý hiệu bội chung nhỏ nhất củ a a,, a2, ,an là B C N N (a|, a2, ,an)

M ệnh đề 2.44: N ếu a và b là hai số n g u y ên k h ác k h ô n g thì:

a.b= U C L N (a,b).B C N N (a,b)

M ệnh đề 2.45: G ỉa sử a ,, a2, ,an là những số ng u y ên k h ác k h ông Khi

Cơ sở toán học của các hệ mật mã khoá công khai

Trang 32

Khi phân lích m ột số a > l thành m ột tích những thừa số nguyên tố, ta có thể g ặp cùng m ột thừa số nhiều lần Nếu gặp P i , p2, M Pn xuất hiện theo thứ tự

(1)

+

Q n

T rong đó q 0 là m ột số nguyên, q,, q 2, M qn là những số nguyên dương và q n> l

Số n gọi là độ dài củ a liên phân số Đ ể cho gọn ta thường ký hiệu liên phân số (1) dưới dạng:

Trang 33

Đ ịnh nghĩa 2.54: G ỉa sử g là m ột số tự nhiên lớn hơn 1 và M ={0, 1, ,

g - 1} Ta nói rằng số tự nhiên a được viết trong hệ thống ghi cơ số g hay gọi tắt

là hệ thống g - phân nếu và chỉ nếu:

a=angn+ an.,gn l+ + a 1g+a0 (2)trong đó n là m ột số nguyên không âm , a0, a,, ,an e M và an * 0 N ếu m ỗi số của tập M được cho bởi m ột ký hiệu đặc biệt thì các ký hiệu đó gọi là các chữ

số Khi đó biểu diễn (2) được viết tắt là a= (an an,l a0)g

Đ ịnh lý 2.55: G ỉa sử g là m ột số tự nhiên đã cho, lớn hơn 1 và M ={0,1, , g - 1 } Khi đó m ọi số tự nhiên a>0 đều viết được m ột cách duy nhất dưới dạng

a=ang n+ an.1gn l+ + a,g + a0 trong đó ao, a,, ,an e M và a„ * 0

T rong tính toán nhiều khi ta gặp phải vấn đề đổi cơ số của m ột số như sau: Cho m ột số tự nhiên viết trong hệ thống g - phân a= (an an., a0)g, hãy viết

nó trong hệ thống h - phân a= (b m b m., b0)h

ân-b

a0-Đ ể g iả i q u y ế t v ấ n đ ề n à y ta th ự c h iệ n liê n t iế p c á c p h é p c h ia s ố a v à c á c

thương k ế tiếp cho h Các số dư sẽ là các ch ữ số trong biểu diễn của a theo cơ

Trang 34

Nếu a đ ồ n g dư với b theo m odul m thì ta viết:

a = b m o d m

và gọi đó là m ột đồng dư thức

M ệnh đề 2.57: Q uan hệ đồng d ư theo m odul m là m ột quan hệ tương đương trong tập hợp các số nguyên z

Đ ịnh nghĩa 2.58: Các lớp tương đương theo quan hệ đồng dư theo

m odul m gọi là các lớp thặng dư theo m odul m

Ta ký hiệu lớp thặng dư chứa số a là a

M ệnh đề 2.59: Số các lớp thặng dư theo m odul m bằng m

Đ ịnh nghĩa 2.60: N ếu từ m ỗi lớp thặng dư theo m odul m ta lấy ra m ột đại diện, thì tập hợp các đại diện đó gọi là m ột hệ thặng d ư đầy đủ theo m odul m

Đ ịnh lý 2.61: N ếu U CLN (a, m )= l và X chạy kh ắp m ột hệ thặng dư đầy

đ ủ th e o m o d u l m , t h ì a x + b , t r o n g đ ó b là m ộ t s ố n g u y ê n b ấ t k ỳ , c ũ n g c h ạ y

khắp m ột hệ thặng dư đầy đủ theo m odul m

Các tính chất củ a đổn g d ư thức:

1 T a có thể cộng từng v ế nhiều đồng dư thức theo cùng m ột m odul

2 Ta có thể chuyển v ế m ột số hạng của m ột đồng d ư thức, với điều kiện đổi dấu của nó

3 Ta có thể công vào m ột vế của m ột đồng d ư thức m ột bội của m odul

4 Ta có thể nhân từng vế nhiều đồng dư thức theo cùng m ột m odul

5 Ta có thể nâng hai v ế của m ột đổng dư thức lên cùng m ột luỹ thừa

6 Ta có thể nhân hai v ế củ a m ột đồng dư thức với cùng m ột số nguyên

7 N ếu ta có:

Cơ sở toán học của các hệ mật mã khoá công khai

Trang 35

9 Ta có thể n h ân hai vế và m ođul của m ột đồng d ư thức với cùng m ột số.

10 Ta có thể ch ia hai vế và m odul của m ột đồng dư thức cho cùng m ột ước số chung

11 N ếu a=b th eo n hiều m odul, thì ta cũng có a=b theo m odul bằng bội chung nhỏ nhất của các m odul đó

12 Nếu a=b m od m và nếu dim thì ta cũng có a=b m od d

13 Nếu m ột v ế và m odul của m ột đồng dư thức chia hết cho m ột số nào đó, thì v ế kia cũ n g c h ia h ết cho cùng số ấy

14 Nếu a=b m od m thì ƯCLN(a, m )=Ư C LN (b, m)

T heo tính c h ất 14 trên đây, các số của cùng m ột lớp theo m ođul m có cùng m ột ước c h u n g lớn nhất với m odul Do tính chất này, ta có thể nói tới UCLN củ a m ột lớp a e Z m với m odul m, và ký hiệu là U CLN ( a , m) Với mọi a ’e a ta có: U C L N ( a , m )=Ư C LN ( a ’ , m)

Đ ặc biệt q u a n trong là lớp a sao cho U CLN ( a , m )= l Ta gọi các lớp này là các lớp n g u y ên tố với m odul

N ếu ta lấy ra từ m ỗi lớp nguyên tố với m odul m ột thặng dư thì ta được

m ột hệ thặng d ư gọi là hệ thặng dư thu gọn theo m odul m T ừ m ỗi hệ thặng dư

đ ầ y đ ủ th e o m o đ u l m n ế u ta lấ y ra các th ặ n g d ư n g u y ê n t ố v ớ i m t h ì d ĩ n h iê n

Cơ sở toán học của các hệ mật mã khoả công khai

Trang 36

ta được m ột hệ thặng dư thu gọn theo m odul m T hông thường người ta rút ra

m ột hệ thặng dư thu gọn theo m odul m từ hệ thặng d ư đầy đủ không âm bé nhất 0, 1, 2 , , m -1

N ếu gọi (p(m) là số các số của dãy 0, 1, 2, , m -1, nguyên tố với m , thì

số các phần tử của m ột hệ thặng dư thu gọn theo m odul m là (p(m) Đ ó cũng

là số các lớp thặng dư theo m odul m, nguyên tố với m

M ệnh đề 2.62: Phép cộng các lớp thặng dư trang bị cho Z m m ột cấu trúc nhóm A bel

M ệnh đề 2.63: (Z m, + ,.) có m ột cấu trúc vành giao hoán

M ệnh đ ề 2.64: L ớp thặng dư a theo m odul m là khả nghịch trong vành

Trang 37

+N ếu fị và f9 là nhữ ng h àm nh ân thì tích f củ a ch ú n g , đ ịnh n g h ĩa bởi:

Va € N * , f(a )= f|(a )f2(a) cũ n g là m ột hàm nhân

Hàm số (p: m l-»(p(m ) gọi là h àm số E uler, tro n g đó (p(m) là số các số

Trang 38

Giải phương trình là tìm tất cả các giá trị nguyên của X thoả m ã phương trình đó.

Nếu m ột số n g u y ên x = x 0 th o ả m ãn phương trình thì tất cả các số đồng

dư với x0 th eo m odul m là x s x 0 m od m đều thoả m ãn phương trình đã cho Toàn bộ lớp số đó được xem là m ột nghiệm

Số n g h iệm củ a phương trìn h trên là số các phần tử tro n g m ột hệ thặng

dư đầy đủ th eo m o d u l m th o ả m ãn nó

Hai phư ơng trìn h đ ồ n g d ư gọi là tương đương nếu và chỉ nếu chúng có cùng những n g h iệm

Bây giờ ta xét phương trìn h đồn g d ư bậc nhất Phương trình đ ồ n g d ư bậc nhất

có thể đưa về d ạ n g tồ n g q uát sau:

trong đó Ư C L N (a|, m ,) = l Phư ơng trình (3) có m ột n g h iệm du y n h ất theo

m odul m , G ọi X| là th ặn g d ư k h ô n g âm bé n hất th eo m odul niị củ a nghiệm

đó Khi đó n g h iệm c ủ a (3) là lớp:

x=x, m od mị (4)

Cơ sở toán học của các hệ mật mã khoá công khai

Ngày đăng: 25/03/2015, 10:27

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Đ ặng Văn Cường, N guyễn Hữu Q uỳnh (2003), Vấn đ ề an to à n của h ệ m ậ t k h o á m ã c ô n g k h a i R S A , Báo cáo tại Hội thảo Q uốc gia lần thứ 6: M ột số vấn đề chọn lọc của Công nghệ thông tin và truyền thông, T hái Nguyên Sách, tạp chí
Tiêu đề: Vấn đ ề an to à n của h ệ m ậ t k h o á m ã c ô n g k h a i R S A
Tác giả: Đ ặng Văn Cường, N guyễn Hữu Q uỳnh
Năm: 2003
2. Phan Đình Diệu (1999), L ý th u y ế t m ậ t m ã và an to à n th ô n g tin , Đại học Q uốc gia H à N ội, H à Nội Sách, tạp chí
Tiêu đề: L ý th u y ế t m ậ t m ã và an to à n th ô n g tin
Tác giả: Phan Đình Diệu
Năm: 1999
3. Phan Đ ình Diệu (1999), L ý th u y ế t đ ộ p h ứ c tạ p tín h to ấ n , Đ ại học Quốc gia Hà N ội, H à Nội Sách, tạp chí
Tiêu đề: L ý th u y ế t đ ộ p h ứ c tạ p tín h to ấ n
Tác giả: Phan Đ ình Diệu
Năm: 1999
4. Phan Đ ình Diệu (1962), S ố h ọ c , N hà xuất bản G iáo dục, H à Nội Sách, tạp chí
Tiêu đề: S ố h ọ c
Tác giả: Phan Đ ình Diệu
Năm: 1962
5. Hà Huy K hoái (1997), N h ậ p m ô n s ố h ọ c th u ậ t to á n , N h à xuất bản Khoa học, H à Nội Sách, tạp chí
Tiêu đề: N h ậ p m ô n s ố h ọ c th u ậ t to á n
Tác giả: Hà Huy K hoái
Năm: 1997
6. Ngô Thúc Lanh (1986), Đ ạ i s ố và s ố h ọ c, Tập m ột, N hà xuất bản G iáo dục, Hà Nội Sách, tạp chí
Tiêu đề: Đ ạ i s ố và s ố h ọ c
Tác giả: Ngô Thúc Lanh
Năm: 1986
7. Ngô Thúc Lanh (1986), Đ ạ i s ố và s ố h ọ c , T ập hai, N h à xuất bản G iáo dục, Hà Nội Sách, tạp chí
Tiêu đề: Đ ạ i s ố và s ố h ọ c
Tác giả: Ngô Thúc Lanh
Năm: 1986
8. Ngô Thúc Lanh (1987), Đ ạ i s ố và s ố h ọ c, T ập ba, N hà xuất bản G iáo dục, Hà Nội.Tiếng Anh Sách, tạp chí
Tiêu đề: Đ ạ i s ố và s ố h ọ c
Tác giả: Ngô Thúc Lanh
Năm: 1987
9. Th. Beth, M. F rish, G .J.Sim m ons (1992), P u b lic -K e y C ryp to g ra p h y: S ta te o f th e A r t a n d F u tu re D ire c tio n s , Sptinger-V erlag, G erm any Sách, tạp chí
Tiêu đề: P u b lic -K e y C ryp to g ra p h y: S ta te o f th e A r t a n d F u tu re D ire c tio n s
Tác giả: Th. Beth, M. F rish, G .J.Sim m ons
Năm: 1992
10.Dan Boneh (1999), “Tw enty Y ears o f A ttacks on the RSA C ryptosystem ” , N o tic e s o f th e A M S ' V ol.46, pages 202-213 Sách, tạp chí
Tiêu đề: Tw enty Y ears o f A ttacks on the RSA C ryptosystem ” , "N o tic e s o f th e A M S
Tác giả: Dan Boneh
Năm: 1999
11. w . D iffie and M. H eilm an (1976), “N ew D irections in C ryptography” , IE E E T ra n sa ctio n s o n In fo rm a tio n T h eo ry , V ol.22, pages 644-654 Sách, tạp chí
Tiêu đề: N ew D irections in C ryptography” , "IE E E T ra n sa ctio n s o n In fo rm a tio n T h eo ry
Tác giả: w . D iffie and M. H eilm an
Năm: 1976
12.Shafi G oldw asser and M ihir Bellare (2001), L e c tu re N o te on C ryp to g ra p h y , U niversity o f C alifornia, San D iego Sách, tạp chí
Tiêu đề: L e c tu re N o te on C ryp to g ra p h y
Tác giả: Shafi G oldw asser and M ihir Bellare
Năm: 2001
13.M ichael R A H uth (2001), S ecu re C o m m u n ica tin g S y ste m s: D esig n , A n a ly s is, a n d Im p le m e n ta tio n , C am bridge U niversity Press Sách, tạp chí
Tiêu đề: S ecu re C o m m u n ica tin g S y ste m s: D esig n , A n a ly s is, a n d Im p le m e n ta tio n
Tác giả: M ichael R A H uth
Năm: 2001
14.N eal K oblitz (1987), A C ourse in N u m b e r T h eo ry a n d C ryp to g ra p h y ; Springer-V erlag, USA Sách, tạp chí
Tiêu đề: A C ourse in N u m b e r T h eo ry a n d C ryp to g ra p h y
Tác giả: N eal K oblitz
Năm: 1987
15.A. M enezes, p. V an O orschot and s. V anstone (1996), H a n d B o o k o f A p p lie d C ryp to g ra p h y , C R C Press Sách, tạp chí
Tiêu đề: H a n d B o o k o f A p p lie d C ryp to g ra p h y
Tác giả: A. M enezes, p. V an O orschot and s. V anstone
Năm: 1996
16. W ayne P atterson (1987), M a th e m a tic a l C ry p to lo g y fo r C o m p u ter S c ie n tists a n d M a th e m a tic ia n s , R ow m an &amp; L ittlefield, USA Sách, tạp chí
Tiêu đề: M a th e m a tic a l C ry p to lo g y fo r C o m p u ter S c ie n tists a n d M a th e m a tic ia n s
Tác giả: W ayne P atterson
Năm: 1987
17.R. L. R ivest, A. Sham ir, and L. A dlem an (1978), “ A m ethod for obtaining digital signatures and public key cryptosystem s” , C o m m u n o f A C M , V ol.21, pages 120-126 Sách, tạp chí
Tiêu đề: A m ethod for obtaining digital signatures and public key cryptosystem s” , "C o m m u n o f A C M
Tác giả: R. L. R ivest, A. Sham ir, and L. A dlem an
Năm: 1978
18.Arto Salom aa (1990), P u b lic -K e y C ryp to g ra p h y, Sptinger-V erlag, USA Sách, tạp chí
Tiêu đề: P u b lic -K e y C ryp to g ra p h y
Tác giả: Arto Salom aa
Năm: 1990
19. Bruce S chneier (1994), A p p lie d C ryp to g ra p h y: P ro to co ls, A lg o rith m s, a n d S o u rce C o d e in c , John W iley &amp; Sons, USA Sách, tạp chí
Tiêu đề: A p p lie d C ryp to g ra p h y: P ro to co ls, A lg o rith m s, a n dS o u rce C o d e in c
Tác giả: Bruce S chneier
Năm: 1994
20.D .R. Stinson (1995), C ryp to g ra p h y: T h eo ry a n d P ra ctice, C R C Press Sách, tạp chí
Tiêu đề: C ryp to g ra p h y: T h eo ry a n d P ra ctice
Tác giả: D .R. Stinson
Năm: 1995

HÌNH ẢNH LIÊN QUAN

Hình  i. 1  là  một  ví dụ  về  một kênh  liên  lạc  trong hệ  mật  mã khoá  đối xứng. - vấn đề an toàn cảu các hệ mật mã khóa công khai
nh i. 1 là một ví dụ về một kênh liên lạc trong hệ mật mã khoá đối xứng (Trang 13)
Hình  1.2 là một ví dụ về một kênh liên lạc trong hệ mật mã khoá công khai. - vấn đề an toàn cảu các hệ mật mã khóa công khai
nh 1.2 là một ví dụ về một kênh liên lạc trong hệ mật mã khoá công khai (Trang 16)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w