Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.35 MB, 19 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á
BỘ GIÁO DỤC VÀ ĐÀO TẠO
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">Mục lục
Chương 1. Tổng quan về an tồn thơng tin...6
1.1 Tại sao cần bào đảm an tồn thơng tin...6
1.2 Khái niệm hệ thống và tài sản hệ thống...6
1.3 Các mối đe dọa đối với hệ thống và các biện pháp ngăn chặn...7
1.4 Mục tiêu chung của an tồn bảo mật thơng tin...8
1.5 Các chiến lước an toàn hệ thống...8
1.6 Các mức bảo vệ trên mạng...9
Chương 2. Phương pháp mã hóa cổ điển Affine...11
2.1 Khái niệm về mã hóa dữ liệu...11
2.2 Hệ mã hóa: Affine...11
Chương 3. Chương trình thử nghiệm hệ mã Affine trên c#...16
3.1 Giao diện chương trình...16
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">Mục lục hình ảnh
Hình 1.1 Mục tiêu chính an tồn bảo mật...7 Hình 1.2 Sơ đồ mức bảo vệ trên mạng...8 Hình 3.1 Giao diện chương trình...15 Hình 3.2 Hình ảnh chạy kiểm thử chương trình 1
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">Mở đầu
Ngày nay việc ứng dụng công nghệ thông tin vào các nghành nghề đã mang lại rất nhiều lợi ích cho mọi mặt của cuộc sống. Bên cạnh đó cũng đưa ra những thách thức khi hịa nhập tồn cầu về mặt đảm ảo an tồn thơng tin dữ liệu là một chủ đề rộng, có liên quan đến nhiều lĩnh vực và trong thực tế có rất nhiều phương pháp được thực hiện để bảo vệ an toàn thơng tin dữ liệu. Trong đó có bảo vệ an tồn thơng tin bằng mật mã
Mật mã là một nghành khoa học chuyên nghiên cứu các phương pháp truyền tin bí mật. Mật mã bao gồm: Lập mã và phá mã. Lập mã bao gồm hai q trình: mã hóa và giải mã.
Hiện nay có rất nhiều hệ mật mã. Nếu dựa vào cách truyền khóa có thể phân các hệ mật mã thành hai loại: hệ mật mã đối xứng và hệ mật mã bất đối xứng. Ngoài ra nếu dựa vào cách thức tiến hành mã thì hệ mật mã còn được chia làm hai loại là mã dòng và mã khối. Còn nếu dự vào thời gian đưa ra hệ mật mã ta cịn có thể phân làm hai loại: Mật mã cổ điển (là hệ mật mã ra đời trước năm 1970) và mật mã hiện đại ( ra đời sau năm 1970).
Trong bài tiểu luận này, em xin trình bày vê một loại hệ mã hóa cổ điển là Affine.
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">Chương 1. Tổng quan về an tồn thơng tin 1.1 Tại sao cần bào đảm an tồn thơng tin
Ngày nay, sự xuất hiện Internet và mạng máy tính _đã gi`p cho việc trao đổi thông tin tra nên nhanh gọn, db dàng. E-mail cho phep người ta nhân _ hay gửi thư ngay trên máy tính của mình, E-business cho phep thưc _ hiên _ các giao dic _h buôn bán trên man _g, ...Tuy nhiên laf phát sinh những vấn đề mới. Thông tin quan tron _g nằm a kho dữ liêụ hay đang trên đường truyền có thể bi trộm cgp, có thể bi làm sai lệch, có thể bi giả mạo. Điều đó có thể ảnh hưang tới các tổ chức, các công ty hay cả môt quốc gia. Những bí mật kinh doanh, tài chính là mục tiêu của các đối thủ cạnh tranh. Những tin tức về an ninh quốc gia là mục tiêu của các tổ chức tinih báo trong và ngoài nước. Để giải quyết tình hình trên, vấn đề bảo đảm an tồn thông tin (ATTT) đã được đặt ra trong lý luận cũng như trong thực tibn.
Thông tin là một bộ phần quan trọng và là tài sản thuộc quyền sa hữu của các tổ chức.
Sự thiệt hại và lạm dụng thông tin không chỉ ảnh hưang đến người sử dụng hoặc các ứng dụng mà nó cịn gây ra các hậu quả tai hại cho tồn bộ tổ chức đó.
Thêm vào đó sự ra đời của Internet đã gi`p cho việc truy cập thông tin ngày càng tra nên db dàng hơn.
1.2 Khái niệm hệ thống và tài sản hệ thống
Khái niệm hệ thống: Hệ thống là một tập hợp các máy tính bao gồm các thành phần, phần cứng, phần mềm và dữ liệu làm việc được tích luỹ qua thời
- Các truyền thơng giữa các máy tính của hệ thống. - Môi trường làm việc.
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">- Con người.
1.3 Các mối đe dọa đối với hệ thống và các biện pháp ngăn chặn Có 3 hình thức chủ yếu đe dọa đối với hệ thống:
Phá hoại: kẻ thù phá hỏng thiết bf phần cứng hoặc phần mềm hoạt động trên hệ thống.
Sửa đổi: Tài sản của hệ thống bf sửa đổi trái phep. Điều này thường làm cho hệ thống không làm đ`ng chức năng của nó. Chẳng hạn như thay đổi mật khẩu, quyền người dùng trong hệ thống làm họ không thể truy cập vào hệ thống để làm việc.
Can thiệp: Tài sản bf truy cập bai những người khơng có thẩm quyền. Các truyền thông thực hiện trên hệ thống bf ngăn chặn, sửa đổi.
Các đe dọa đối với một hệ thống thông tin có thể đến từ ba loại đối tượng như sau:
Các đối tượng từ ngay bên trong hệ thống (insider), đây là những người có quyền truy cập hợp pháp đối với hệ thống.
Những đối tượng bên ngoài hệ thống (hacker, cracker), thường các đối tượng này tấn công qua những đường kết nối với hệ thống như Internet chẳng hạn.
Các phần mềm (chẳng hạn như spyware, adware ...) chạy trên hệ thống. Các biện pháp ngăn chặn:
Điều khiển thông qua phần mềm: dựa vào các cơ chế an toàn bảo mật của hệ thống nền (hệ điều hành), các thuật tốn mật mã học.
Điều khiển thơng qua phần cứng: các cơ chế bảo mật, các thuật toán mật mã học được cứng hóa để sử dụng.
Điều khiển thơng qua các chính sách của tổ chức: ban hành các qui đfnh của tổ chức nhằm đảm bảo tính an tồn bảo mật của hệ thống.
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">1.4 Mục tiêu chung của an tồn bảo mật thơng tin Có 3 mục tiêu chính bao gồm
Hình 1.1 Mục tiêu chính an tồn bảo mật
Tính bí mật (Confidentiality): Đảm bảo rằng thông tin không bf truy cập bất hợp pháp.
Thuật ngữ privacy thường được sử dụng khi dữ liệu được bảo vệ có liên quan tới các thơng tin mang tính cá nhân.
Tính tồn vẹn (Integrity): Đảm bảo rằng thơng tin khơng bf sửa đổi bất hợp pháp.
Tính sẵn sàng (availability): Tài sản luôn sẵn sàng được sử dụng bai nhưng người có thẩm quyền.
1.5 Các chiến lước an tồn hệ thống
Điểm nối yếu nhất (Weakest Link):Chiến lược này dựa trên nguyên tgc: “ Một dây xích chỉ chgc tại mgt duy nhất, một bức tường chỉ cứng tại điểm yếu nhất”.
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">Tính tồn cục: Các hệ thống an tồn địi hỏi phải có tính tồn cục của các hệ thống cục bộ.
Tính đa dạng bảo vệ: Cần phải sử dụng nhiều biện pháp bảo vệ khác nhau cho hệ thống khác nhau, nếu khơng có kẻ tấn cơng vào được một hệ thống thì ch`ng cũng db dàng tấn công vào các hệ thống khác.
1.6 Các mức bảo vệ trên mạng
Quyền truy nhập: Là lớp bảo vệ trong cùng nhằm kiểm soát các tài nguyên của mạng và quyền hạn trên tài nguyên đó.
Đăng ký tên /mật khẩu: Thực ra đây cũng là kiểm soát quyền truy nhập, nhưng không phải truy nhập a mức thông tin mà a mức hệ thống.
Mã hoá dữ liệu: Dữ liệu bf biến đổi từ dạng nhận thức được sang dạng khơng nhận thức được theo một thuật tốn nào đó và sẽ được biến đổi ngược lại a trạm nhận (giải mã).
Bảo vệ vật lý: Ngăn cản các truy nhập vật lý vào hệ thống.
Tường lửa: Ngăn chặn thâm nhập trái phep và lọc bỏ các gói tin khơng muốn gửi hoặc nhận vì các lý do nào đó để bảo vệ một máy tính hoặc cả mạng nội bộ (intranet).
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">Hình 1.2 Sơ đồ mức bảo vệ trên mạng
Quản trị mạng: Công tác quản trf mạng máy tính phải được thực hiện một cách khoa học đảm bảo các yêu cầu sau :
- Toàn bộ hệ thống hoạt động bình thường trong giờ làm việc.
- Có hệ thống dự phịng khi có sự cố về phần cứng hoặc phần mềm xảy ra.
- Backup dữ liệu quan trọng theo đfnh kỳ. - Bảo dưỡng mạng theo đfnh kỳ.
- Bảo mật dữ liệu, phân quyền truy cập, tổ chức nhóm làm việc trên mạng.
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">Chương 2. Phương pháp mã hóa cổ điển Affine 2.1 Khái niệm về mã hóa dữ liệu
Mã hóa dữ liệu (Data Encryption) là một phương pháp bảo vệ thông tin một cách hiệu quả và an tồn. Hình thức này thông qua việc chuyển đổi thông tin từ các dạng có thể hiểu và đọc được theo cách thơng thường sang dạng không thể hiểu hay đọc được theo cách thơng thường như thế.
Mã hóa (Encryption): là hành động xáo trộn bản rõ để chuyển thành bản mã. Giải mã (Decryption): là hành động giải xáo trộn bản mã để chuyển thành bản rõ.
Vai trị của mã hóa. Mã hố thơng tin có thể được sử dụng để đảm bảo an tồn thơng tin trên đường truyền với các thuộc tính: Bí mật (confidentiality). Tồn vẹn (integrity). Xác thực (authentication). Không thể chối bỏ (non-repudiation). 2.2 Hệ mã hóa: Affine
Mật mã affine là một dạng mật mã thay thế dùng một bảng chữ cái, trong đó mỗi chữ cái được ánh xạ tới một số sau đó mã hóa qua một hàm số tốn học đơn giản. Mã Affine là một trường hợp đặc biệt của mã Caesar, trong đó các chữ cái được mã hóa với hàm.
MDV là một trường hợp đặc biệt của MTT chỉ gồm 26 trong số 26! các hốn vf có thể của 26 phần tử. Một trường hợp đặc biệt khác của MTT là mã Affine được mô tả dưới đây. trong mã Affine, ta giới hạn chỉ xet các hàm mã có dạng:
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">Vì y thay đổi trên Z nên y-b cũng thay đổi trên Z . Bai vậy, ta chỉ cần<small>2626</small>
nghiên cứu phương trình đồng dư:
ax y (mod 26) (y Z<small>26 </small>).
Ta biết rằng, phương tfình này có một nghiệm duy nhất đối với mỗi y khi và chỉ khi UCLN(a,26) = 1 (a đây hàm UCLN là ước chung lớn nhất của các biến của nó). Trước tiên ta giả sử rằng, UCLN(a,26) = d 1. Khi đó, đồng dư thức ax 0 (mod 26) sẽ có ít nhất hai nghiệm phân biệt trong Z là x = 0 và x = 26/d. Trong<small>26</small>
trường hợp này, e(x) = ax + b mod 26 không phải là một hàm đơn ánh và bai vậy nó khơng thể là hàm mã hố hợp lệ
Ví dụ, do UCLN(4,26) = 2 nên 4x +7 khơng là hàm mã hố hợp lệ: x và x+13 sẽ mã hoá thành cùng một giá trf đối với bất kì x Z .<small>26</small>
Ta giả thiết UCLN(a,26) = 1. Giả sử với x và x nào đó thảo mãn:<small>12</small>
Bây giờ ta sẽ sử dụng một tính chất của phep chia sau: Nếu USLN(a,b)=1 và a bc thì a c. Vì 26 a(x - x ) và USLN(a,26) = 1 nên ta có:<small>12</small>
26 (x<small>1</small>- x )<small>2</small>
Tức là
x<small>1</small> x (mod 26)<small>2</small>
Tới đây ta chứng tỏ rằng, nếu UCLN(a,26) = 1 thì một đồng dư thức dạng ax y (mod 26) chỉ có (nhiều nhất) một nghiệm trong Z . Do đó , nếu ta cho x thay đổi<small>26</small>
trên Z thì ax mod 26 sẽ nhận được 26 giá trf khác nhau theo modulo 26 và đồng dư<small>26 </small>
thức ax y (mod 26) chỉ có một nghiệm y duy nhất
Khơng có gì đặc biệt đối vơí số 26 trong khẳng đfnh này. Bai vậy, bằng cách tương tự ta có thể chứng minh được kết quả sau:
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">Định lí:
Đồng dư thức ax b mod m chỉ có một nghiệm duy nhất x Z với mọi b <small>m</small>
Z<small>m</small> khi và chỉ khi UCLN(a,m) = 1.
Vì 26 = 2 13 nên các giá trf a Z thoả mãn UCLN(a,26) = 1 là a = 1, 3, 5,<small>26</small>
Giả sử a 1 và m 2 là các số ngun. UCLN(a,m) = 1 thì ta nói rằng a và m là nguyên tố cùng nhau. Số các số nguyên trong Z nguyên tố cùng nhau với m<small>m</small>
thường được ký hiệu là (m) ( hàm này được gọi là hàm Euler).
Một kết quả quan trọng trong lý thuyết số cho ta giá trf của (m) theo các thừa số trong phep phân tích theo luỹ thừa các số nguyên tố của m. ( Một số nguyên p 1 là số nguyên tố nếu nó khơng có ước dương nào khác ngồi 1 và p. Mọi số nguyên m 1 có thể phân tích được thành tích của các luỹ thừa các số nguyên tố theo cách duy nhất. Ví dụ 60 = 2 3 5 và 98 = 2 7 <small>32 </small>).
Định lí:
Giả sử m = p<small>i</small>
Trong đó các số nguyên tố p khác nhau và >0 ,1<small>i </small> e<small>i </small>
Đfnh lý này cho thấy rằng, số khoá trong mã Affine trên Z bằng m (m), trong<small>m</small>
đó (m) được cho theo cơng thức trên. ( Số các phep chọn của b là m và số các phep
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">(mod 26) theo x. Từ thảo luận trên thấy rằng, phương trình này có một nghiệm duy nhất trong Z . Tuy nhiên ta vẫn chưa biết một phương pháp hữu hiệu để tìm<small>26</small>
nghiệm. Điều cần thiết a đây là có một thuật tốn hữu hiệu để làm việc đó. Rất may là một số kết quả tiếp sau về số học modulo sẽ cung cấp một thuật toán giải mã hữu hiệu cần tìm.
Định nghĩa:
Giả sử a Z . Phần tử nghfch đảo (theo phep nhân) của a là phần tử a<small>m</small> <sup>-1</sup> Z<small>m</small>
sao cho aa a a 1 (mod m).<small>-1-1</small>
Bằng các lý luận tương tự như trên, có thể chứng tỏ rằng a có nghfch đảo theo modulo m khi và chỉ khi UCLN(a,m) =1, và nếu nghfch đảo này tồn tại thì nó phải là duy nhất. Ta cũng thấy rằng, nếu b = a thì a = b . Nếu p là số nguyên tố thì mọi<small>-1-1</small>
phần tử khác khơng của Z đều có nghfch đảo. Một vành trong đó mọi phần tử đều<small>P </small>
có nghfch đảo được gọi là một trường.
Trong phần sau sẽ mô tả một thuật tốn hữu hiệu để tính các nghfch đảo của Z<small>m</small>
với m tuỳ ý. Tuy nhiên, trong Z , chỉ bằng phương pháp thử và sai cũng có thể tìm<small>26</small>
được các nghfch đảo của các phần tử nguyên tố cùng nhau với 26: 1 = 1, 3 = 9, 5<small>-1-1-1</small> = 21, 7<small>-1</small> = 15, 11 = 19, 17 =23, 25 = 25. (Có thể db dàng kiểm chứng lại điều<small>-1-1-1</small>
này, ví dụ: 7 5 = 105 1 mod 26, bai vậy 7 = 15).<small>-1</small>
Xet phương trình đồng dư y ax+b (mod 26). Phương trình này tương đương với
ax y-b ( mod 26)
Vì UCLN(a,26) =1 nên a có nghfch đảo theo modulo 26. Nhân cả hai vế của đồng dư thức với a ta có: <small>-1</small>
a<small>-1</small>(ax) a (y-b) (mod 26) <small>-1</small>
Áp dụng tính kết hợp của phep nhân modulo:
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">Sơ đồ
Đặt . Bản mã y và bản rõ .
Tập khóa K= {(a,b), với , UCLN(a, 26) = 1}. Với khóa , ta đfnh nghĩa:
Phep mã hóa mod 26. Phep giải mã mod 26. Giải mã theo công thức x= (y) = (y-b) mod26
= (y-6) mod26 = 9*(y-6) mod26. Độ an toàn: Độ an tồn của hệ mã hóa Affine: rất thấp
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">Chương 3. Chương trình thử nghiệm hệ mã Affine trên c# 3.1 Giao diện chương trình
Hình 3.1 Giao diện chương trình
Giao diện chương trình được chia làm 2 phần:
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">3.2 Kiểm thử
Hình 3.2 Hình ảnh chạy kiểm thử chương trình Thực hiện kiểm thử mã hóa:
Bước 1: Nhập bản rõ: CHIEUNAYOVUONHOA Bước 2: Nhập khóa a = 3, khóa b = 6
Bước 3: Ta thực hiện nhấn n`t mã hóa: chương trình trả về cho ta 1 bản mã
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">Chương 4. Kết luận 4.1 Kết quả đạt được
- Dự án đã thực hiện được phương thức mã hóa và giải mã Affine. - Qua việc thực hiện dự án, các thành viên trong dự án r`t ra được nhiều kinh nghiệm hơn cho bản thân như kinh nghiệm làm việc nhóm, nhiều kiến thức hữu ích, khả năng tự học hỏi.
- Bài tiểu luận tiến hành nghiên cứu giải quyết bài toán về mã hóa, giải mã trên hẹ mã cổ điển Affine.
4.2 Hạn chế
- Nghiên cứu hệ mã Affine chỉ sử dụng các ký tự là bảng chữ cái, bảng chữ cái không lớn nên bf giới hạn nên bf giới hạn bai các bảng chữ cái.
- Db bf tấn cơng bằng cách phân tích tần số và khó phịng ngừa. Khơng có khả năng phục hồi văn bản gốc.
4.3 Hướng phát triển
- Thay thế Affine bằng hệ mã đối xứng khác an toàn hơn như (AES, DES).
</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">Tài liệu tham khảo
</div>