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

Tìm hiểu về hệ mật mã one time pad b

50 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 50
Dung lượng 4,97 MB

Nội dung

Cũng có trường hợp sử dụng các bức xạ điều khiển từ bên ngoài để tác động gâynhiễu, gây lỗi nội dung truyền tin.1.1.7 Các mức bảo vệ của một hệ thống thông tin 1 Quyền truy nhập: Đây là

Trang 1

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM ĐÀ NẴNG

KHOA TIN HỌC

ĐỀ TÀITÌM HIỂU VỀ HỆ MẬT MÃ ONE TIME PAD BÁO CÁO CUỐI KÌ MÔN AN TOÀN THÔNG TIN

Giảng viên hướng dẫn: Đoàn Duy Bình

Đà Nẵng - Tháng 12-2020

Trang 2

MỤC LỤC

MỤC LỤC 1

DANH MỤC HÌNH 2

DANH MỤC BẢNG 3

LỜI NÓI ĐẦU 4

CHƯƠNG 1 TỔNG QUAN VỀ AN TOÀN VÀ BẢO MẬT THÔNG TIN 5

1.1 Thông tin và vai trò của thông tin 5

1.1.1 Thông tin là gì? 5

1.1.2 Vai trò của thông tin 5

1.1.2 An toàn thông tin của hệ thống 6

1.1.3 Các yêu cầu về an toàn thông tin 6

1.1.4 Ý nghĩa của an toàn thông tin 6

1.1.5 Phân loại các hành vi xâm phạm 7

1.1.6 Các vị trí có thể xâm phạm 7

1.1.7 Các mức bảo vệ của một hệ thống thông tin 8

1.2 Đảm bảo an toàn cho hệ thống thông tin 9

1.2.1 Các quan điểm bảo vệ an toàn 9

1.2.2 Quan điểm để đặt ra quy tắc an toàn 9

1.2.3 Chính sách an toàn thông tin 10

1.3 Bảo mật thông tin 11

1.3.1 Cơ sở kỹ thuật của việc bảo mật thông tin 12

1.3.2 Mật mã 12

1.3.3 Hệ mật mã 12

1.3.4 Định nghĩa một hệ mật mã 13

1.3.5 Phân loại các hệ thống mật mã 14

1.4 Các cách thức tấn công vào một hệ thống mật mã 15

1.5 Tiêu chuẩn đánh giá một hệ mã 15

1.6 An toàn của một hệ thống mã hoá 16

Trang | 1

Trang 3

1.6.1 Lý thuyết Shannon 16

CHƯƠNG 2 GIỚI THIỆU HỆ MÃ ONE TIME PAD(OTP) 19

2.1 Nguồn gốc của One-time pad 19

2.1.1 One-time pad là gì? 19

2.1.2 Lịch sử 20

2.1.3 Các biến thể OTP 22

2.2 Cách hoạt động 27

2.3 Cách sử dụng 28

2.4 Tính xác thực 30

2.5 Mã hóa và giải mã One-time pad 31

2.5.1 OTP Encryption (Mã hóa OTP) 31

2.5.2 OTP Decryption (Giải mã OTP) 32

2.6 Ví dụ One-time pad 32

2.7 Ứng dụng thực tiễn 33

CHƯƠNG 3 MÔ PHỎNG ONE TIME PAD(OTP) 34

3.1 Quy trình xây dựng mã nguồn 34

3.1.1 Sơ lược chương trình 34

3.2 Thiết kế thuật toán 34

3.2.1 Khởi tạo 34

3.2.2 Thuật toán 34

3.2.3 Thiết kế giao diện 35

3.3 Hướng dẫn mở chương trình 38

KẾT LUẬN 40

TÀI LIỆU THAM KHẢO 41

PHỤ LỤC 42

Phân chia nhiệm vụ 42

Mã nguồn 42

File Index.html 42

File Xuly.js 47

Trang | 2

Trang 4

DANH MỤC HÌNH

Hình 1: Mức bảo vệ của một hệ thống thông tin 8

Hình 2: Sơ đồ quá trình mã hoá và giải mã 13

Hình 3: Hình ảnh minh họa cho tập tài liệu OTP 22

Hình 4: Mô tả phép toán thao tác bit 24

Hình 5: Bộ dụng cụ bị tịch thu - 1 25

Hình 6: Bộ dụng cụ bị tịch thu - 2 25

Hình 7: Minh họa thay thế chữ cái với số tương ứng 28

Hình 8: Bảng chữ cái và số 28

Hình 9: Ví dụ cho quá trình mã hóa 29

Hình 10: Kết quả mã hóa 29

Hình 11: Quá trình giải mã 29

Hình 12: Kêt quả sau khi đối chiếu 30

Hình 13: Minh họa quá trình mã hóa 31

Hình 14: Minh họa quá trình giải mã 32

Hình 15: Giao diện bắt đầu trên điện thoại 36

Hình 16: Giao diện bắt đầu trên máy tính 36

Hình 17: Giao diện xuất kết quả trên máy tính 37

Hình 18: Giao diện lưu trữ trên máy tính 37

Hình 19: Giao diện kết quả trên điện thoại 38

Hình 20: Mã QR dẫn đến trang web 39

DANH MỤC BẢNG Bảng 1: Phân chia nhiệm vụ thực hiện 42

Trang | 3

Trang 5

LỜI NÓI ĐẦU

Trong hoạt động của xã hội loài người, thông tin là một vấn đề không thể thiếu trongcuộc sống, ngày nay thông tin càng trở thành một tài nguyên vô giá Xã hội phát triểnngày càng cao thì nhu cầu trao đổi thông tin giữa các thành phần trong xã hội ngày cànglớn Máy tính ra đời mang lại cho con người rất nhiều lợi ích trong việc trao đổi thông tin

và xử lý thông tin một cách chính xác và nhanh chóng

Với sự phát triển mạnh mẽ của Khoa học kỹ thuật, đặc biệt là lĩnh vực Công nghệthông tin với sự ra đời của mạng toàn cầu Internet đã giúp cho con người trên khắp thếgiới có thể liên lạc trao đổi thông tin với nhau một cách dễ dàng, chính xác trong thời gianngắn nhất

Trong môi trường trao đổi một lượng tin - một khối dữ liệu, khi được gửi đi từ ngườigửi đến người nhận phải qua nhiều nút, nhiều trạm với nhiều người sử dụng khác nhau.Không ai dám đảm bảo rằng thông tin không bị sao chép, không bị đánh cắp hay xuyêntạc Bạn cũng có thể nghe nhiều về máy tính và những mối đe doạ từ Internet đối với sựriêng tư của bạn Và ở đâu lại chẳng nghe những chuyện về mạo nhận danh tiếng hoặcnhững ông chủ muốn can thiệp vào mọi thông tin cá nhân của nhân viên, hay những kẻđánh cắp mật khẩu, những kẻ săn tin chuyên nghiệp, những kẻ quấy nhiễu… Chúng sẽkhông buông tha bạn, và ngay cả những cơ quan Chính phủ cũng không tránh khỏi việc bịxâm nhập, đánh cắp thông tin Nó giống như người ta đang theo dõi đến mọi hoạt độngriêng tư của bạn vậy Và đó là điều không ai mong muốn

Chính bởi lý do này mà vấn đề an toàn thông tin cá nhân nói riêng và an toàn dữ liệunói chung là một vấn đề đang được quan tâm hàng đầu khi nghiên cứu đến truyền dữ liệutrên mạng Đây là vấn đề mà hiện nay được ngành Công nghệ thông tin và những ngườilàm công tác tin học đặc biệt quan tâm An toàn dữ liệu trên mọi phương diện vừa mangtính thời sự, vừa mang tính thách thức đối với không chỉ các chuyên gia mà còn đối với

sự phát triển tồn vong của các hệ thống thông tin toàn cầu Bản đồ án “Nghiên cứu cácvấn đề an toàn bảo mật thông tin” cũng góp phần nghiên cứu tìm ra giải pháp để bảo vệ

an toàn dữ liệu

Trang | 4

Trang 6

CHƯƠNG 1 TỔNG QUAN VỀ AN TOÀN VÀ BẢO MẬT THÔNG TIN

1.1 Thông tin và vai trò của thông tin

1.1.1 Thông tin là gì?

Thông tin là cái được truyền từ đối tượng này đến đối tượng khác để báo một

“ điều” gì đó Thông tin chỉ có ý nghĩa khi “điều đó bên nhận chưa biết Như vậy nói ”

cách khác thông tin là tất cả những gì nhằm đem lại sự hiểu biết cho con người Thông tin xuất hiện dưới nhiều dạng âm thanh, hình ảnh, … Những dạng này chỉ

là “vỏ bọc” vật chất chứa thông tin “Vỏ bọc” là phần “xác”, thông tin là phần “hồn”.

Ngữ nghĩa của thông tin chỉ có thể hiểu được khi bên nhận hiểu được cách biểu diễn ngữnghĩa của bên phát

Có hai trạng thái của thông tin: truyền và lưu trữ Môi trường truyền/ lưu trữ được.

gọi chung là môi trường chứa tin hay kênh tin

Thông tin là một khái niệm trừu tượng, phi vật chất và rất khó được định nghĩachính xác Hai định nghĩa về thông tin:

 Thông tin là sự cảm hiểu của con người về thế giới xung quanh thông qua sự tiếpxúc trực tiếp với nó

 Thông tin là một hệ thống những tin báo và mệnh lệnh giúp loại trừ sự chắc chắntrong trạng thái của nơi nhận tin Nói ngắn gọn, thông tin là cái mà loại trừ sự chắcchắn

Định nghĩa đầu chưa nói lên được bản chất của thông tin Định nghĩa thứ hai nói rõhơn về bản chất của thông tin và được dùng để định lượng thông tin trong kỹ thuật.Thông tin là một đại lượng vật lý, nó thường tồn tại và được truyền đi dưới một dạngvật chất nào đó Những dạng vật chất mang thông tin được gọi là tín hiệu

 Một số ví dụ:

- Hai người nói chuyện với nhau, cái mà trao đổi giữa họ là thông tin

- Một người đang xem Tivi, nghe đài, đọc báongười đó đang nhận thông tin

- Các máy tính nối mạng và trao đổi dữ liệu với nhau

Trang | 5

Trang 7

1.1.2 Vai trò của thông tin

Thông tin có một vai trò vô cùng to lớn đối với sự tồn tại và phát triển Các đốitượng sống luôn có nhu cầu muốn tìm hiểu về thế giới xung quanh để thích nghi và tồntại

Khi Khoa học kỹ thuật và xã hội ngày càng phát triển, thông tin càng thể hiện đượcvai trò của nó đối với chúng ta Nó có thể chi phối mọi hành động của con người, vì hànhđộng của con người thì xuất phát từ suy nghĩ, mà suy nghĩ lại là hệ quả của quá trình tiếpnhận thông tin

1.1.2 An toàn thông tin của hệ thống

 Integrity

o An toàn thông tin (dữ liệu) là giữ cho thông tin dữ liệu được toàn vẹn(không bị đánh tráo, mất mát, sửa đổi …) dù là vô tình hay cố ý

 Security

o Là giữ cho thông tin được an toàn trong trường hợp những kẻ chống phá cố

ý tấn công (chúng thường tổ chức tấn công có kịch bản)

1.1.3 Các yêu cầu về an toàn thông tin

 Tính bí mật: Tính kín đáo riêng tư của thông tin

 Tính xác thực: Bao gồm xác thực người đối tác (danh tính và xác thực thông tinđược trao đổi

 Tính toàn vẹn: Bảo đảm thông tin không bị cắt xén hay xuyên tạc qua kênh trao đổi

 Tính trách nhiệm: Bảo đảm người gửi thông tin không thể thoái thác trách nhiệm vềthông tin mà mình gửi

 Tính kịp thời: Thông tin đến nơi nhận đúng thời gian

1.1.4 Ý nghĩa của an toàn thông tin

Bảo vệ an toàn thông tin dữ liệu là một đề tài rộng, có liên quan đến nhiều lĩnh vực

và trong thực tế có nhiều phương pháp được thực hiện để đảm bảo an toàn thông tin dữliệu Các phương pháp bảo vệ an toàn thông tin dữ liệu có thể quy về ba nhóm chính sauđây:

Trang | 6

Trang 8

 Bảo vệ an toàn thông tin dữ liệu bằng các biện pháp hành chính.

 Bảo vệ an toàn thông tin dữ liệu bằng các biện pháp kỹ thuật (phần cứng)

 Bảo vệ an toàn thông tin dữ liệu bằng các biện pháp thuật toán (phần mềm)

Ba nhóm biện pháp trên có thể ứng dụng riêng hoặc phối hợp Môi trường khó bảo

vệ an toàn thông tin dữ liệu nhất cũng là môi trường đối phương dễ xâm nhập nhất nhưmôi trường mạng và truyền thông Biện pháp bảp vệ an toàn thông tin hiệu quả nhất trênmôi trường mạng truyền tin là các biện pháp thuật toán

Để bảo vệ an toàn thông tin trên đường truyền tin và trên mạng có hiệu quả nhất thìviệc trước tiên phải dự đoán được hoặc lường trước được các khả năng xâm phạm, các sự

cố rủi ro có thể xảy ra với thông tin lưu trữ hay truyền trên mạng Xác định càng chínhxác các nguy cơ nói trên thì càng dễ tìm ra các giải pháp tốt để giảm thiểu thiệt hại

1.1.5 Phân loại các hành vi xâm phạm

Về bản chất có thể phân loại các hành vi xâm phạm trên đường truyền thành hai loại:

1.1.6 Các vị trí có thể xâm phạm

Trong thực tế, kẻ xâm phạm có thể xâm nhập vào hệ thống thông tin bất cứ thờiđiểm nào mà thông tin đi qua hoặc được lưu trữ Điểm đó có thể trên đường truyền, nútmạng, máy tính chủ có nhiều người sử dụng hoặc tại giao diện kết nối mạng (bridge,gateway, router…) Trong quan hệ tương tác người – máy thì các thiết bị ngoại vi, đặcbiệt các thiết bị đầu cuối (teminal) là cửa ngõ thuận tiện nhất cho việc xâm nhập

Trang | 7

Trang 9

Ngoài ra có thể tính đến các thiết bị điện từ có các phát xạ điện tử và các thiết bịmáy tính Bằng các thiết bị chuyên dụng có khả năng đón bắt các phát xạ này và xử lýchúng Cũng có trường hợp sử dụng các bức xạ điều khiển từ bên ngoài để tác động gâynhiễu, gây lỗi nội dung truyền tin.

1.1.7 Các mức bảo vệ của một hệ thống thông tin

1) Quyền truy nhập: Đây là lớp bảo vệ trong nhất, nhằm kiểm soát truy nhập tàinguyên mạng và quyền hạn sử dụng tài nguyên đó Cụ thể việc quản lí được tiếnhành ở mức truy nhập File (đọc, ghi, xoá, sửa…) do người quản lí mạng thiết lập.2) Đăng kí và mật khẩu: Phương pháp này không mấy hiệu quả đối với những ngườihiểu bíêt về hệ thống của ta nhưng ưu điểm của nó là đơn giản

3) Mã hoá dữ liệu: Biến đổi dữ liệu từ dạng nhận thức được sang dạng không nhậnthức được theo một quy cách nào đó

4) Bảo vệ vật lý: Nhằm ngăn chặn các truy cập vật lý bất hợp pháp vào hệ thống.5) Tường lửa: Để đảm bảo an toàn và ngăn chặn từ xa cho các mạng nội bộ, đây làphương thức bảo vệ cho mạng cục bộ (Intranet), ngăn chặn các xâm nhập trái phép,lọc bỏ các gói tin không muốn nhận (gửi) vì một lý do nào đó

Trang | 8

Hình 1: Mức bảo vệ của một hệ thống thông tin

Trang 10

1.2 Đảm bảo an toàn cho hệ thống thông tin

1.2.1 Các quan điểm bảo vệ an toàn.

Quyền hạn ít nhất (least privilege): Mỗi một đối tượng chỉ có quyền hạn nào đó, khi

đó nếu kẻ xâm nhập có vào được hệ thống cũng chỉ phá hoại được một phần nào đó của

Cơ chế tự động ngắt khi có sự cố: Hệ thống có thể tự ngắt tức là khi hệ thống cónguy cơ bị đe dọa thì nó có khả năng tự bảo vệ

Hợp nhất các thành phần tham gia: Tất cả các thành phần trong hệ thống từ các quychế an toàn, người sử dụng, thiết bị bảo vệ, phần mềm… phải được kết hợp thành một hệthống bảo vệ có hiệu quả và hỗ trợ bảo vệ lẫn nhau

Tính đa dạng của hệ thống phòng thủ: Sự bảo vệ của hệ thống sẽ tăng khi ta sử dụngnhiều modul phòng thủ khác nhau hoặc nhiều kiểu phòng thủ khác nhau Nếu các modulphòng thủ giống nhau thì kẻ tấn công sẽ dễ dàng vào được mọi nơi trong hệ thống.Tính đơn giản: Làm cho hệ thống trở nên dễ hiểu, nếu ta không hiểu một vấn đề, mộtphần nào đó trong hệ thống thì cũng không biết hệ thống có bí mật không Bảo vệ cả phầnnhỏ sẽ dễ dàng hơn bảo vệ cả một hệ thống lớn

1.2.2 Quan điểm để đặt ra quy tắc an toàn

Quan điểm mặc nhiên từ chối (Default deny stance) chỉ cho phép 1 số dịch vụ phục

vụ, các dịch vụ khác không đề cập đến coi như từ chối Quan điểm mặc nhiên cho phép(Default permit stance) tức là những gì không cấm thì được phép làm Tùy từng trườnghợp, tùy từng đặc thù riêng của hệ thống ta sẽ đi đến quyết định chọn quan điểm nào

Trang | 9

Trang 11

1.2.3 Chính sách an toàn thông tin

Trước khi một hệ thống thông tin có thể được đảm bảo an toàn nhất thiết phải xáclập một chính sách an toàn, nó là nền tảng tiêu chuẩn đúng đắn để xem xét Nếu không cóchính sách an toàn đúng đắn thì hiệu quả của mọi biện pháp khác sẽ bị giảm sút

1.2.3.1 Các thành phần của chính sách an toàn

Các chính sách thường khác nhau tuy vào thực tế tuy nhiên dưới đây là một số vấn

đề được xem như là tương đối thích ứng với tất cả các chính sách

Chính sách an toàn vật lý: Nói rõ các điều khiển phần cứng sẽ được bảo vệ, ai sẽđược gán quyền truy nhập hoặc bi ngăn cấm không cho đến các khu vực

Chính sách an toàn mạng: Bao gồm các tiêu chuẩn về quyền truy nhập, filewall, vấn

đề ghi kiểm toán theo dõi danh mục các dịch vụ bị cấm…

Chính sách về điều khiển truy nhập: Quyết định ai sẽ được truy nhập cái gì? Phải cóthủ tục đúng đắn để cho phép người truy nhập dịch vụ, chúng không nên qúa phức tạp.Chính sách về xác thực và mật mã: Xác thực là làm thế nào để người sử dụng có thểthông báo cho hệ thống họ là ai Mật mã là thuật toán mã hóa được sử dụng và vấn đềquản lý khóa

Kế hoặch đối phó với rủi ro và thảm họa

Chính sách đào tạo và kiểm tra sự tuân thủ

1.2.3.2 Các bước để phát triển một chính sách an toàn

Trang 12

 Đánh giá: Sau khi chính sách được phát triển, việc đánh giá lại chính sách là thực

sự cần thiết để xem mục đích của chính sách đa đạt được chưa? Ngoài ra các mối

đe doạ, các lỗ hổng bảo mật, yêu cầu nghiệp vụ luôn biến đổi, do đó phải định kỳ

và luôn xem xét lại hệ thống để có chính sách an toàn cho phù hợp

1.3 Bảo mật thông tin

Để bảo vệ thông tin trên đường truyền người ta thường biến đổi nó từ dạng nhậnthức được sang dạng không nhận thức được trước khi truyền đi trên mạng, quá trình nàyđược gọi là mã hoá thông tin Ở trạm nhận phải thực hiện quá trình ngược lại, tức là biếnđổi thông tin từ dạng không nhận thức được sang dạng nhận thức được (dạng gốc), quátrình này được gọi là quá trình giải mã Đây là một lớp bảo vệ thông tin rất quan trọng vàđược sử dụng rộng rãi trong quá trình truyền tin

Như vậy lý do mã hoá thông tin chính là để đảm bảo an toàn thông tin trong quátrình truyền - nhận

Để bảo vệ an toàn thông tin bằng mật mã, người ta tiếp cận theo hai hướng:

 Theo đường truyền (Link Oriented Sercurity)

 Từ nút đến nút (End to End)

Theo cách thứ nhất thông tin được mã hoá để bảo vệ trên đường truyền giữa hai nút

mà không quan tâm đến nguồn và đích của thông tin đó Ở đây ta lưu ý rằng thông tin chỉđược bảo vệ trên đường truyền, tức là ở mỗi nút phải có quá trình giải hoá sau đó mã hoá

để truyền đi tiếp, do đó các nút phải được bảo vệ tốt

Ngược lại theo cách thứ hai, thông tin trên mạng được bảo vệ trên toàn đường truyền

từ nguồn đến đích Thông tin sẽ được mã hoá ngay sau khi mới tạo ra và chỉ được giải mãsau khi đã về đến đích Cách này mắc phải nhược điểm là chỉ có dữ liệu của người sửdụng thì mới có thể mã hoá được còn dữ liệu điều khiển thì giữ nguyên để có thể xử lý tạicác nút

Trang | 11

Trang 13

1.3.1 Cơ sở kỹ thuật của việc bảo mật thông tin

Khoá mã là công nghệ quan trọng nhất cho sự an toàn của mạng Ngoài sự bảo vệ

an toàn thông tin truyền tải nó còn có những công dụng khác nữa Nhiều thuật toán khoá

có thể sử dụng với những thuật toán khác để đảm bảo sự toàn vẹn của nội dung thông tinđiện tử, đảm bảo không kẻ nào có thể biết được hoặc thay đổi nội dung của thông tin

Các hệ mật mã phải thực hiện được các vai trò sau:

- Hệ mật mã phải che dấu được nội dung của văn bản rõ (Plaintext) để đảm bảo saocho chỉ người chủ hợp pháp của thông tin mới có quyền truy cập thông tin, hay nói cáchkhác là chống truy nhập không đúng quyền hạn

- Tạo các yếu tố xác thực thông tin, đảm bảo thông tin lưu hành trong hệ thống đếnngười nhận hợp pháp là xác thực (Authenticity)

- Tổ chức các sơ đồ chữ ký điện tử, đảm bảo không có hiện tượng giả mạo chữ ký,mạo danh để gửi thông tin trên mạng

- Ưu điểm lớn nhất của bất kỳ hệ mật mã nào đó là có thể đánh giá được độ phứctạp tính toán mà “kẻ địch” phải giải quyết bài toán để có thể lấy được thông tin của dữliệu được mã hoá Tuy nhiên mỗi hệ mật mã có một số ưu và nhược điểm khác nhau,nhưng nhờ đánh giá được độ phức tạp tính toán mà ta có thể áp dụng được các thuật toán

mã hoá khác nhau cho từng ứng dụng cụ thể tuỳ theo yêu cầu về độ an toàn

Trang | 12

Trang 14

C: Tập hữu hạn các văn bản đã được mã hóa (bản mã).

K: Tập hữu hạn các khóa (không gian khoá) Đối với mỗi phần tử k K được gọi

Trang 15

D: Tập hữu hạn các luật (hàm) giải mã dK  D, mỗi e : P C có tương ứng hàmK 

dK: C P sao cho d K (eK (x))=x với mọi bản rõ x P.

Mục đích của mã hóa: Đảm bảo tính riêng tư, cung cấp khả năng ngăn cản ngườikhông có thẩm quyền đưa ra những thông tin giả hoặc sửa đổi thông tin trên kênh truyềncông cộng

Giả sử một bản tin nguyên thủy (bản tin gốc) M được mã hóa bởi E để tạo ra bản tin đãk được mã hóa C = Ek (M)

Bản mã hóa đó được truyền đi trên kênh công cộng (độ an toàn không cao) Khi ngườinhận hợp pháp có được bản tin C sẽ thực hiên việc giải mã bằng D với (D = E ) để nhậnk k k-1được bản tin gốc

Dk(Ek(M)) = Ek-1(Ek(M)) = M

Khóa k được phân phối tới người sử dụng hợp pháp bằng một kênh nào đó đảm bảo

độ an toàn cần thiết Nói chung khóa k được sử dụng n lần nào đó thì nên thay đổi.Việc dò tìm bản gốc mà không sử dụng khóa được gọi là thám mã hay bẻ khóa.Trước đây độ an toàn của hệ thống phụ thuộc vào bí mật của thuật toán mã hóa và giải

mã, hiện nay thì hầu như các thuật toán đều được công bố công khai, nên đối với hệthống mật mã hiện đại độ an toàn của hệ thống chỉ phụ thuộc vào độ mật của khóa k

1.3.5 Phân loại các hệ thống mật mã

Lịch sử phát triển của hệ mật mã trải qua 2 giai đoạn:

 Từ 1974 trở về trước sử dụng hệ mã cổ điển

 Từ 1974 trở về đây sử dụng hệ mật mã hiện đại

Ta cần phân biệt hai loại mã này

1.3.5.1 Phân loại theo cách tiến hành mã hóa

Mã hóa khối (Block) : Dữ liệu trước khi được mã hóa được chia thành từng khối

có độ dài nhất định sau đó mỗi khối được mã hóa độc lập (nếu cùng sử dụng một khóa thìcác bản gốc giống nhau có bản mã như nhau)

Mã hóa chuỗi (String) : Không chia nhỏ thành các khối mà mỗi bit của văn bản gốc

M được mã hóa với thành phần thứ i nào đó của một chuỗi ký hiệu mà chuỗi ký hiệu đó

Trang | 14

Trang 16

được hình thành từ khóa Quá trình mã hóa là tuần hoàn nếu dòng khóa được lặp lại chính

nó sau mỗi lần xác định p ký hiệu, ngược lại gọi là mã hóa không tuần hoàn

1.3.5.2 Phân loại theo quá trình mã hóa và giải mã

Mật mã đối xứng (bí mật) : Sử dụng một khóa duy nhất cho mã hóa và giải mã vìvậy khóa phải được giữ bí mật tuyết đối

Mật mã không đối xứng (công khai): Có 2 khóa, 1 khóa sử dụng cho mã hóa đượccông bố rộng rãi, khóa còn lại sử dụng để giải mã phải giữ bí mật tuyệt đối

1.3.5.3 Phân loại theo quá trình truyền tin

Bí mật trên đường truyền

Bí mật từ nút đến nút

1.4 Các cách thức tấn công vào một hệ thống mật mã

 Chỉ biết bản tin đã được mã hóa

 Biết đầy đủ hoặc một phần bản tin gốc và bản tin mật mã tương ứng với nó Thám

mã có thể tình cờ có được bản tin gốc hay dựa vào một số mẫu của văn bản phápquy, hợp đồng kinh tế để đoán được bản tin gốc

 Biết được bản tin mật mã hoặc bất cứ bản tin gốc nào đó nhưng chưa biết đượckhóa Trong một số trường hợp đặc biệt thám mã có thể thâm nhập được vào hệthống gửi và gửi được bản tin theo ý muốn

 Biết bản tin gốc của thuật toán nhưng không biết khóa Thám mã sẽ thử với một sốlượng lớn các khóa khác nhau và có thể tìm ra được khóa đúng

1.5 Tiêu chuẩn đánh giá một hệ mã

Một hệ mã được gọi là tốt thì nó phải đảm bảo các yêu cầu sau đây :

 Chúng phải có phương pháp bảo vệ mà chỉ dựa trên sự bí mật của các khoá

 Khi cho khóa công khai e và bản rõ P thì chúng ta dễ dàng thực hịên mã (nghĩa làKtính được e (P) = C) Ngược lại khi cho hàm giải mã d và bản mã C thì dễ dàngK Ktìm được bản rõ (tính được d (M) = P).K

Trang | 15

Trang 17

 Khi không biết d thì không có khả năng để tìm được M từ C, nghĩa là khi cho hàmf: X Y thì việc tính y = f(x) với mọi x X là dễ còn việc tìm x khi biết y lại là vấn đề khó và nó được gọi là hàm một chiều.

 Bản mã C không được có các đặc điểm gây chú ý nghi ngờ

1.6 An toàn của một hệ thống mã hoá

Mục đích của người phân tích là phát hịên ra khoá k, bản rõ P, hoặc cả hai thứ đó.Trong hầu hết các lần phân tích mã, người phân tích có một vài thông tin có khả năng vềbản rõ P trước khi bắt đầu phân tích Họ có thể biết ngôn ngữ đã được mã hoá, có thểđoán về nội dung bản mã Mục đích của việc thám mã là tập hợp những khả năng có thểcủa bản mã với mỗi khả năng có thể của bản rõ

Năm 1949, Claude Shannon đã phát triển lý thuyết đánh giá độ mật của một hệthống thông tin

1.6.1 Lý thuyết Shannon

1.6.1.1 Độ bí mật (dựa trên 2 quan điểm cơ bản về tính an toàn)

 Độ an toàn tính toán : Một hệ thống mật là an toàn về mặt tính toán nếu thuật toántốt nhất cần phá vỡ nó cần ít nhất n phép toán (n ∞) Nếu giải bằng các công cụhiện đại thì yêu cầu thời gian lớn đến mức không thể thực hiện được Một phươngpháp để chứng minh độ an toàn tính toán là quy độ an toàn tính toán của hệ mật vềviệc giải một bài toán đã được nhiều người nghiên cứu kỹ và công nhận là khó

 Độ an tòan không điều kiện (tuyệt đối): Một hệ thống mật mã được gọi là an toànkhông điều kiện nếu nó không thể bị phá vỡ dù kẻ phá họai có năng lực tính toánkhông hạn chế Theo Shannon thì 1 hệ thống là bí mật tuyệt đối nếu: |P|=|C|=|K|tức là không gian bản rõ bằng không gian bản mã và bằng số không gian bản khóađồng thời thỏa mãn hai điều kiện sau:

o Chỉ có một khóa duy nhất để chuyển bản gốc thành bản mã

o Tất cả các khóa là tương đương

1.6.1.2 Tỷ lệ của ngôn ngữ và độ dư

Mỗi một ngôn ngữ thì có một độ dư nhất định

Trang | 16

Trang 18

Khái niệm về khoảng cách đơn vị : Một bản tin mật mã cụ thể có thể mật không điều kiệnnếu nó đủ ngắn để thông tin nội dung không đủ để xác định 1 lời giải chung Shannonđịnh nghĩa chiều dài tối thiểu của bản tin cần thiết để dần đến 1 lời giải chung gọi làkhoảng cách đơn vị, hầu hết các hệ thống mật đều quá phức tạp để xác định các sắp xếpcần thiết nhằm tìm ra khoảng cách Tuy nhiên Shannon và Huffman chỉ ra rằng trong một

số trường hợp cụ thể có thể xác định được khoảng cách gần đúng này

Shannon chỉ ra rằng 1 hệ thống mật mã cần phải đạt được các đặc tính sau :

 Xáo trộn : Là thuật toán phải đạt được nhiều quan hệ phức tạp giữa 3 yếu tố : bảntin gốc, khóa và bản tin mật mã Để thám mã không thể biết được 1 sự biến đổi của

1 ký tự trong bản gốc sẽ gây ra hiệu quả như thế nào với bản mã

 Khuyếch tán : Là thuật toán phải trải thông tin từ bản gốc ra thành toàn bộ bản mãhay nói cách khác là 1 sự biến đổi nào đó của bản tin gốc cần làm biến đổi nhiềuphần của bản mật mã

1.6.1.4 Lý thuyết độ phức tạp

 Lý thuyết độ phức tạp cung cấp một phương pháp để phân tích độ phức tạp tínhtoán của thuật toán và các kỹ thuật mã hóa khác nhau Nó so sánh các thuật toán

mã hoá, kỹ thuật và phát hiện đô an toàn của các thuật toán đó

 Lý thuyết độ phức tạp phân loại bài toán theo thời gian và không gian tối thiểu cầnthiết để giải những trường hợp khó nhất của bài toán trên máy Turing hay một môhình trừu tượng nào đó

 Thuật toán có độ phức tạp thời gian f(n) đối với mọi n và độ dài đầu vào n, nghĩa là

sự thực hiện của thuật toán lớn hơn f(n) bước

Trang | 17

Trang 19

 Độ phức tạp thời gian thuật toán phụ thuộc vào mô hình của các thuật toán, số cácbước nhỏ hơn nếu các hoạt động được tập trung nhiều hơn trong một bước.

Trang | 18

Trang 20

CHƯƠNG 2 GIỚI THIỆU HỆ MÃ ONE TIME PAD(OTP)

2.1 Nguồn gốc của One-time pad

2.1.1 One-time pad là gì?

Trong mật mã, bảng điều khiển One-time pad (OTP) là một kỹ thuật mã hóa không thể bị bẻ khóa, nhưng yêu cầu sử dụng khóa chia sẻ trước một lần có cùng kích thước hoặc dài hơn thông điệp được gửi Trong kỹ thuật này, một bản rõ được ghép nối với một Khóa bí mật ngẫu nhiên (còn được gọi là One-time pad) Sau đó, mỗi bit hoặc ký tự của bản rõ được mã hóa bằng cách kết hợp nó với bit hoặc ký tự tương ứng từ vùng đệm bằng cách sử dụng phép cộng mô-đun

Bản mã thu được sẽ không thể giải mã hoặc phá vỡ nếu bốn điều kiện sau được đáp ứng:

 Chìa khóa phải thực sự ngẫu nhiên

 Khóa ít nhất phải dài bằng bản rõ

 Chìa khóa không bao giờ được sử dụng lại toàn bộ hoặc một phần

 Chìa khóa phải được giữ bí mật hoàn toàn

Nó cũng đã được chứng minh rằng bất kỳ mật mã nào có thuộc tính bảo mật hoàn hảo đềuphải sử dụng các khóa với các yêu cầu tương tự như khóa OTP Các phiên bản kỹ thuật sốcủa mật mã đệm dùng một lần đã được các quốc gia sử dụng để liên lạc ngoại giao

và quân sự quan trọng, nhưng các vấn đề về phân phối khóa an toàn khiến chúng không thực tế đối với hầu hết các ứng dụng

Được Frank Millermô tả lần đầu tiên vào năm 1882, the One-time pad được phát minh lại vào năm 1917 Vào ngày 22 tháng 7 năm 1919, Bằng sáng chế Hoa Kỳ 1.310.719 đã đượccấp cho Gilbert Vernamcho phép toán OXR được sử dụng để mã hóa một đệm một lần Bắt nguồn từ mật mã Vernam của ông, hệ thống này là một mật mã kết hợp một thông điệp với một khóa được đọc từ một cuộn băng đục lỗ Ở dạng ban đầu, hệ thống củaVernam rất dễ bị tấn công vì băng khóa là một vòng lặp, được sử dụng lại bất cứ khi nào vòng lặp thực hiện một chu kỳ đầy đủ Sử dụng một lần sau đó, khi Joseph Mauborgne

Trang | 19

Trang 21

nhận ra rằng nếu băng khóa hoàn toàn ngẫu nhiên, thì việc phân tích mật mã sẽ là không thể

Phần "pad" của tên xuất phát từ những triển khai ban đầu, trong đó vật liệu quan trọng được phân phối dưới dạng một miếng giấy, cho phép xé ra và phá hủy tờ trên cùng hiện tại sau khi sử dụng Để che giấu, miếng đệm đôi khi nhỏ đến mức cần phải có kính lúp mạnh để sử dụng Các KGB sử dụng miếng đệm kích thước như vậy mà họ có thể phùhợp trong lòng bàn tay, hoặc trong vỏ một quả óc chó Để tăng tính bảo mật, các miếng đệm dùng một lần đôi khi được in lên các tấm nitrocellulose rất dễ cháy , để có thể dễ dàng đốt chúng sau khi sử dụng

Có một số mơ hồ đối với thuật ngữ "Vernam cipher" vì một số nguồn sử dụng đồng nghĩa

"Vernam cipher" và "one-time pad", trong khi những nguồn khác đề cập đến bất kỳ mật

mã dòng phụ gia nào là "Vernam cipher", bao gồm cả những nguồn dựa trên mật mã an toàn bộ tạo số giả ngẫu nhiên (CSPRNG)

Hệ thống ome time pads tiếp theo là electrical Năm 1917, Gilbert Vernam (thuộc Tập đoàn AT&T) đã phát minh và sau đó được cấp bằng sáng chế vào năm 1919 (Bằng sáng chế Hoa Kỳ 1.310.719) một mật mã dựa trên công nghệ máy dịch chuyển xa Mỗi ký tự trong tin nhắn được kết hợp bằng điện với một ký tự trên khóa băng giấy đục lỗ Joseph Mauborgne (khi đó là đại úy trong Quân đội Hoa Kỳ và sau này là trưởng Quân đoàn Tín hiệu) nhận ra rằng chuỗi ký tự trên băng khóa có thể hoàn toàn ngẫu nhiên và nếu vậy,

Trang | 20

Trang 22

việc phá mã sẽ khó khăn hơn Họ cùng nhau phát minh ra hệ thống băng dùng một lần đầu tiên

Sự phát triển tiếp theo là hệ thống đệm giấy Các nhà ngoại giao từ lâu đã sử dụng mật mã

và mật mã để bảo mật và giảm thiểu chi phí điện báo Đối với các mã, các từ và cụm từ đãđược chuyển đổi thành các nhóm số (thường là 4 hoặc 5 chữ số) bằng cách sử dụng một cuốn mã giống như từ điển Để tăng cường bảo mật, các số bí mật có thể được kết hợp với(thường là bổ sung theo mô-đun) từng nhóm mã trước khi truyền, với các số bí mật được thay đổi định kỳ (điều này được gọi là siêu mã hóa) Vào đầu những năm 1920, ba nhà mật mã học người Đức (Werner Kunze, Rudolf Schauffler và Erich Langlotz), những người đã tham gia vào việc phá vỡ các hệ thống như vậy, nhận ra rằng chúng không bao giờ có thể bị phá vỡ nếu một số phụ gia được chọn ngẫu nhiên riêng biệt được sử dụng cho mọi nhóm mã Họ có những miếng giấy trùng lặp được in với các dòng của các nhóm

số ngẫu nhiên Mỗi trang có một số sê-ri và tám dòng Mỗi dòng có sáu số có 5 chữ số Một trang sẽ được sử dụng như một trang tính để mã hóa một thông báo và sau đó bị hủy

Số sê-ri của trang sẽ được gửi cùng với tin nhắn được mã hóa Người nhận sẽ đảo ngược quy trình và sau đó hủy bản sao của trang Văn phòng đối ngoại của Đức đã đưa hệ thống này vào hoạt động vào năm 1923

Một khái niệm riêng biệt là việc sử dụng một tập hợp các chữ cái one-time pad để mã hóa văn bản rõ ràng trực tiếp như trong ví dụ dưới đây Leo Marks mô tả việc phát minh ra một hệ thống như vậy cho Cơ quan điều hành hoạt động đặc biệt của Anh trong Thế chiếnthứ hai , mặc dù vào thời điểm đó, ông nghi ngờ rằng nó đã được biết đến trong thế giới mật mã được ngăn nắp cao, chẳng hạn như tại Bletchley Park

Khám phá cuối cùng được thực hiện bởi nhà lý thuyết thông tin Claude Shannon vào những năm 1940, người đã công nhận và chứng minh ý nghĩa lý thuyết của hệ thống one-time pad Shannon cung cấp kết quả của mình trong một báo cáo tuyệt mật vào năm 1945,

và công khai chúng vào năm 1949 Đồng thời, nhà lý luận thông tin Liên Xô Vladimir Kotelnikov đã độc lập chứng minh tính bảo mật tuyệt đối của the one-time pad; kết quả

Trang | 21

Trang 23

của ông đã được cung cấp vào năm 1941 trong một báo cáo dường như vẫn được phân loại.

2.1.3 Các biến thể OTP

Mã không thể phá vỡ

Mặc dù mọi mật mã, dựa trên một hệ thống hoán vị cơ học hoặc toán học, trên lý thuyết có thể bị phá vỡ, nhưng có một phương pháp mã hóa thực sự không thể phá vỡ Đó

là cái gọi là Chìa khóa một lần (OTK) Trước đây, nó thường được triển khai dưới dạng

một tập giấy ghi chú chứa đầy các số ngẫu nhiên và do đó thường được gọi là Bảng ghi

một lần (OTP) Nó cũng tồn tại dưới dạng One Time Tape (OTT)

Hình ảnh bên phải cho thấy một tập tài liệu OTP điển hình vì nó đã được sử dụng bởi các điệp viên của Liên Xô cũ (Nga) trong những năm 1960 Nó bao gồm một chồng các trang nhỏ rất mỏng, mỗi trang có một dãy số 5 chữ số ngẫu nhiên trên đó Mỗi trang đã bị phá hủy ngay sau khi sử dụng

Các OTP như thế này, thường được sử dụng kết hợp với các bộ vô tuyến do thám của Nga như R-353 , thường liên quan đến các trạm số trên dải sóng ngắn Chiếc được trưng

Trang | 22

Hình 3: Hình ảnh minh họa cho tập tài liệu OTP

Trang 24

bày ở đây là từ bộ sưu tập nội bộ của AIVD [1] và được trưng bày trong triển

lãm Tijdrekken vào năm 2011

định Ở đầu nhận, cùng một OTP được sử dụng để lấy ra bản rõ ban đầu Để điều này hoạtđộng, các quy tắc sau là bắt buộc:

Lý thuyết đằng sau OTP là khóa mã hóa có ít nhất cùng độ dài với thông điệp (bản rõ) và bao gồm các số thực sự ngẫu nhiên Mỗi chữ cái của bản rõ được 'trộn' với một phần tử từOTP Điều này dẫn đến một bản mã không có quan hệ với bản rõ khi khóa không xác

 OTP phải bao gồm các số thực sự ngẫu nhiên (nhiễu)

 Phải tồn tại chính xác hai bản sao của OTP

 OTP chỉ nên được sử dụng một lần

Cả hai bản sao của OTP đều bị hủy ngay sau khi sử dụng

Chỉ khi các quy tắc trên được tuân thủ nghiêm ngặt, OTP mới được an toàn tuyệt đối Thêm số vào bản rõ theo cách thủ công, là một công việc tốn nhiều thời gian Do đó, đôi khi người ta cho rằng OTP không còn được coi là thực tế nữa Tuy nhiên, với công nghệ máy tính hiện đại, toàn bộ nhiệm vụ trộn và bỏ trộn bản rõ với khóa, có thể dễ dàng được tự động hóa (xem bên dưới)

One-Time-Pad được xác định như sau:

 E(m, k) = m XOR k = c

 D(c, k) = c XOR k = (m XOR k) XOR k = m

Trang | 23

Trang 25

2.1.3.1 Phân phối OTP

OTP hiển thị ở trên, có từ những ngày của những năm 1960, khi Chiến tranh Lạnh đang ở đỉnh cao Các điệp viên của Khối phía Đông, và đặc biệt là các điệp viên từ Đông Đức, thường sử dụng OTP cho các tin nhắn của họ, vì nó an toàn tuyệt đối và không thể bị phá bởi các cơ quan tình báo phương Tây

Tuy nhiên, vấn đề chính với OTP là sự phân phối của chúng Một tập tài liệu OTP duy nhất cần được phát hành và phân phối cho từng điệp viên hoặc điệp viên ở nước ngoài VìOTP đã bị hủy ngay sau khi sử dụng, nên đảm bảo cung cấp đủ và kịp thời các OTP mới

Trang | 24

Hình 4: Mô tả phép toán thao tác bit

Ngày đăng: 09/12/2024, 17:50

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

TÀI LIỆU LIÊN QUAN

w