bài tập an toàn thông tin vegenere

32 0 0
Tài liệu đã được kiểm tra trùng lặp
bài tập an toàn thông tin vegenere

Đ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

Khóa này sẽ được lặp lại nhiều lần để có độ dài bằng hoặc lớn hơn độ dài của văn bản cần mã hóa.Mã hóa : Bm=y={x1 + k1modN, x2 + k2modN...,xn + knmodN}Giải mã: Br=x={y1 - k1modN, y2 - k2

Trang 2

1.5Ưu điểm và nhược điểm 8

2.Lưu đồ thuật toán 9

1.4Ưu điểm và nhược điểm 12

2.Lưu đồ thuật toán 13

a)Mã hóa 13

b)Giải mã 14

3.Ví dụ minh họa 14

IV.RAIL FANCE 15

1.Giới thiệu về thuật toán Rail Fance 15

1.1Mã hóa 15

1.2Giải mã 15

Trang 3

1.3Ưu điểm và nhược điểm 15

VI.MÃ HÓA RSA 24

1.Giới thiệu về mã hóa RSA 24

Trang 4

I VEGENERE1 Giới thiệu về thuật toán

Mã thế đa bảng đơn giản nhất là mã Vigenere Thực chất quá trình mã hoá Vigenere là việc tiếh hành đồng thời dùng nhiều mã Ceasar cùng một lúc trên bản rõ với nhiều khoá khác nhau.

1.1 Chọn Một Khóa (Key)

Chọn một từ khóa, thường là một từ hoặc câu có ý nghĩa Khóa này sẽ được lặp lại nhiều lần để có độ dài bằng hoặc lớn hơn độ dài của văn bản cần mã hóa.

Mã hóa : Bm=y={(x1 + k1)modN, (x2 + k2)modN ,(xn + kn)modN}Giải mã: Br=x={(y1 - k1)modN, (y2 - k2)modN, ,(yn - kn)modN}1.3 Ưu điểm và nhược điểm

 Ưu điểm:

- Sử dụng từ khóa dài, làm tăng độ khó của việc giải mã.- Mã hóa khá hiệu quả đối với văn bản dài và thay đổi đều đặn. Nhược điểm:

- Có thể bị tấn công bằng cách sử dụng phương pháp tần suất xuất hiện của các ký tự, đặc biệt là nếu khóa quá ngắn hoặc nếu khóa được sử dụng nhiều lần.

- Không cung cấp độ bảo mật mạnh đối với các phương pháp phân tích hiện đại.

1.4Kết luận

Mặc dù mật mã Vigenère đã được sử dụng rộng rãi trong quá khứ, nhưng hiện nay nó thường không được coi là đủ an toàn cho các ứng dụng mật mã hiện đại.

Trang 5

2 Lưu đồ thuật toán2.2 Lưu đồ mã hóa

Trang 6

2.1 Lưu đồ giải mã

Trang 7

3 Ví dụ minh họa

Ví dụ: Xét không gian mã hoá là bảng chữ cái tiếng anh, có n=26 Giả sử khoá K=”CIPHER”= 2 8 15 7 4 17 có độ dài m=6Bản rõ P = “MEETMEATSUNSET.

Yêu cầu : mã hóa và giải mã bản rõ trên Bản

Bản mã

II PLAYFAIR

1.Giới thiệu về mật mã PlayFair

Mật mã Playfair là một phương pháp mã hóa trong lĩnh vực mật mã học Nó được sử dụng để mã hóa thông điệp bằng cách thay thế các cặp ký tự trong văn bản gốc bằng các cặp ký tự trong một bảng 5x5 được tạo ra từ một khóa Dưới đây là một số lý thuyết về mật mã Playfair:

1.1Tạo bảng

Bảng Playfair là một ma trận 5x5 được tạo ra từ một khóa Các chữ cái trong khóa được sắp xếp không trùng lặp và sau đó được điền vào các ô của bảng Cácô trống còn lại được điền bởi các chữ còn lại, loại bỏ “J” thay thế nó bằng “I”.Ví dụ về bảng playfair: key =MINH

Trang 8

1.2 Xác định cặp kí tự

Văn bản cần mã hóa được chia thành các cặp kí tự nếu có 2 kí tự giống nhau trong cùng một cặp, thì thêm một kí tự “X” vào giữa chúng Nếu độ dài văn bản là số lẻ, thêm một kí tự “X” vào cuối bản rõ.

1.3 Mã hóa

- Trường hợp 1 (Cùng hàng) : nếu một cặp kí tự nằm trên cùng một hàng thì thay thế mỗi kí tự bằng kí tự bên phải nó Nếu nằm ở cột cuối cùng thì quay về ô đầu tiên của cột đó.

- Trường hợp 2( Cùng cột) : nếu cặp kí tự cùng nằm trên một cột, thì thay thế mỗi kí tự bằng kí tự bên dưới nó Nếu nằm ở hàng cuối cùng thì quay về ô đầu tiên của cột đó.

- Trường hợp 3 (Khác hàng và cột) : Tạo thành hình chữ nhật với hai kí tự và thay thế mỗi kí tự bằng góc đối diện của hình chữu nhật.

1.4 Giải mã

- Trường hợp 1 (Cùng Hàng) : nếu một cặp kí tự nằm trên cùng một hàng thì thay thế mỗi kí tự bằng kí tự bên trái nó Nếu nằm ở cột cuối cùng thì quay về ô đầu tiên của cột đó.

- Trường hợp 2( Cùng cột) : nếu cặp kí tự cùng nằm trên một cột, thì thay thế mỗi kí tự bằng kí tự bên trên nó Nếu nằm ở hàng cuối cùng thì quayvề ô đầu tiên của cột đó.

- Trường hợp 3 (Khác hàng và cột) : Tạo thành hình chữ nhật với hai kí tự và thay thế mỗi kí tự bằng góc đối diện của hình chữu nhật.

1.5 Ưu điểm và nhược điểm.

 Ưu Điểm: Mật mã Playfair thường được coi là mạnh mẽ trong thời kỳ nó được sử dụng, đặc biệt là so với một số phương pháp mật mã đơn giản khác.

 Nhược Điểm: Mặc dù mật mã Playfair có ưu điểm về độ an toàn so với mật mã Caesar và một số phương pháp khác, nhưng nó không được sử dụng nhiều trong thời đại hiện đại vì nó không đủmạnh mẽ đối với các kỹ thuật mã hóa hiện đại.

Mật mã Playfair thường được sử dụng trong quân sự và giao tiếp bí mật trong quá khứ, nhưng hiện nay nó đã được thay thế bởi các thuật toán mã hóa mạnh mẽ và hiện đại hơn.

Trang 9

2.Lưu đồ thuật toán2.1 Lưu đồ mã hóa

Trang 11

Bước 3 Áp dụng nguyên tắc 1,2,3 được nêu ở phần I để thực hiên mã hóa và giải mã.

1.Giới thiệu về mật mã Caeser

Trong mật mã học, mật mã Caesar (Xê da), còn gọi là mật mã dịch chuyển, là một trong những mật mã đơn giản và được biết đến nhiều nhất Hệ mã Caesar là một hệ mã hóa thay thế đơn âm, làm việc trên bẳng chữ cái tiếng Anh 26 ký tự Đó là một dạng của mật mã thay thế, trong đó mỗi ký tự trong văn bản được thaythế bằng một ký tự cách nó một đoạn trong bảng chữ cái để tạo thành bản mã.Cơbản, phương pháp mã hóa Caesar thực hiện việc dịch chuyển các ký tự trong văn bản gốc theo một số bước cố định trong bảng chữ cái.

1.1Chọn một khóa k

Chọn một số nguyên dương k, được gọi là khóa, thể hiện số bước mỗi ký tự sẽ được dịch chuyển.

1.2Mã hóa

Công thức mã hóa : y= (x + k) mod N;

y: kí tự nhận được sau mã hóa (bản mã)x: kí tự trong bản rõ

k : khóan : 26

1.3Giải mã

Công thức giải mã : x= (y - k) mod N;y: kí tự nhận được sau mã hóa (bản mã)x: kí tự trong bản rõ

Trang 12

k : khóan : 26

1.4 Ưu điểm và nhược điểm

Ưu điểm:

 Đơn giản và dễ thực hiện.

 Hiệu quả cho việc truyền tải thông điệp ngắn.

Nhược điểm:

 Dễ bị tấn công bằng phương pháp thử và sai (brute force) do số khả năng giả định của khóa không lớn (26 với bảng chữ cái tiếng Anh). Không an toàn nếu attacker có khả năng xem được nhiều bản mã khác

nhau được tạo ra từ cùng một khóa.

Mật mã Caesar được coi là một hình thức mã hóa rất đơn giản và đã bị thay thế bởi các thuật toán mã hóa mạnh mẽ và phức tạp hơn trong thời đại hiện đại.

Trang 13

2.Lưu đồ thuật toán

a) Mã hóa

Trang 15

IV RAIL FANCE

1 Giới thiệu về thuật toán Rail Fance

Mã hóa Rail Fence là một phương pháp đơn giản để mã hóa thông điệp bằng cách sắp xếp các ký tự của thông điệp theo hàng ngang của một "bảng" hình chữ Z hoặc đường ray Dưới đây là cách thực hiện mã hóa Rail Fence:

 Tốc độ mã hóa nhanh: Quá trình mã hóa Rail Fence thường rất nhanh chóng, đặc biệt là đối với thông điệp ngắn.

Nhược điểm:

 Không an toàn: Rail Fence không an toàn đối với các cuộc tấn công phân tích tần suất xuất hiện Với số hàng thấp, nó dễ bị giải mã bằng cách thử nghiệm.

 Không linh hoạt: Phương pháp này không cung cấp độ linh hoạt cao trong việc thay đổi cấu trúc mã hóa Số hàng cần được chọn trước và không thay đổi trong quá trình mã hóa.

 Không thích hợp cho dữ liệu lớn: Với các thông điệp lớn, số hàng nhiều có thể làm cho quá trình mã hóa trở nên phức tạp và không hiệu quả.

Trang 16

 Dễ phát hiện: Khi người giải mã biết số hàng, quá trình giải mã trở nên rất dễ dàng.

 Không bảo vệ được khóa: Rail Fence không sử dụng khóa, điều này làm giảm khả năng bảo mật và làm cho nó dễ bị tấn công hơn.

1.4Kết luận

Rail Fence là một phương pháp mã hóa đơn giản và thú vị, nhưng nó thường không được sử dụng trong các ứng dụng bảo mật nghiêm túc do nhược điểm nổi bật của nó Nếu bạn đang tìm kiếm một giải pháp bảo mật, bạn nên xem xét các thuật toán mã hóa mạnh mẽ hơn và được sử dụng rộng rãi trong thực tế.

Trang 17

2 Lưu đồ thuật toán2.1 Lưu đồ mã hóa

Trang 19

Đọc theo hàng ta được bản mã là :KNG HGGNT ONHOI AOEHN CT

Đọc theo cột ta được bản rõ là:KHOA CONG NGHE THONG TIN

V HỆ MÃ HÀNG

1 Giới thiệu về hệ mã hàng hóa

Mã hóa hàng hóa là một phương pháp mã hóa đơn giản trong đó bản rõ được viết theo các dòng trên một số cột xác định Thứ tự của các cột sau đó được thayđổi theo một dãy số khóa cho trước Bản mã được tạo ra bằng cách đọc lại các cột theo thứ tự mới.

1.1Mã hóa

- Xác định số cột trong để mã hóa thông điệp

- Cho thông điệp vào bảng mã hóa chúng ta cho từng ký tự vào các ô bắt đầu từ trái sang phải khi hết hàng này thì chúng ta xuống hàng khác đến khi cho hết thông điệp vào bảng.

- Chọn khóa K với khóa K sẽ là thứ tự đảo của vị trí các cột Vd K={3,1,2}- Sau khi có khóa K đảo lộn vị trí các cột theo vị trí của khóa K

- Lấy thông điệp mã hóa lấy từ trái sang phải sau khi lấy hết hàng này thì đến hàng khác.

1.2 Giải mã

- Xác định số cột trong bảng mã hóa để biết cần phải giải mã bao nhiêu cột.

Trang 20

- Cho thông điệp đã được mã hóa vào bảng giải mã theo cách tương tự như quá trình mã hóa: từ trái sang phải, khi hết hàng này thì xuống hàng khác.- Chọn khóa giải mã K' với K' là khóa ngược với khóa K đã sử dụng trong

quá trình mã hóa Ví dụ, nếu K={3,1,2} thì K' sẽ là {1,2,3}.

- Đảo lộn vị trí các cột của bảng giải mã theo thứ tự của khóa giải mã K'.- Lấy thông điệp giải mã từ trái sang phải, sau khi lấy hết hàng này thì

chuyển đến hàng khác.

Để giải mã, người nhận phải tính toán độ dài của các cột bằng cách chia độ dài thông điệp cho độ dài khóa Sau đó, viết thông điệp ra theo cột một lần nữa, sau đó sắp xếp lại các cột bằng cách tạo lại từ khóa.

1.3 Ưu điểm và nhược điểm

1.4 Kết luận

Mã hóa cột là một phương pháp mã hóa đơn giản nhưng hiệu quả Nó có thể được sử dụng để mã hóa một loạt các thông điệp khác nhau và có thể được thực hiện bằng tay hoặc bằng máy Tuy nhiên, như với mọi phương pháp mã hóa, độ an toàn của nó phụ thuộc vào việc giữ bí mật khóa và cách thức điền thông điệp vào lưới chuyển vị.

Trang 21

2 Lưu đồ thuật toán2.1 Lưu đồ mã hóa

Trang 22

2.2 Lưu đồ giải mã

Trang 23

3 Ví dụ minh họa

Cho bản rõ và khóa K sau, hãy thực hiện mã hóa và giải mã bằng hệ mã hàngP=KHOA CONG NGHE THONG TIN

K=6={3,6,2,1,5,4}- Mã hóa:

+) Lấy độ dài của chuỗi / K lấy phần dư.

+) ví dụ KHOA CONG NGHE THONG TIN có độ dài là 20, K=6 20/6 =3 dư 2.Vậy 2 số đầu sẽ có 4 hàng, 2 hàng đầu là 2 hàng có số đầu tiên của khóa( tức là cột 3 và 6 sẽ có 4 hàng )

Trang 24

Đổi stt theo khóa K ban đầu:

VI MÃ HÓA RSA

1.Giới thiệu về mã hóa RSA

RSA (Rivest–Shamir–Adleman) là một hệ thống mật mã công khai, một trong những hệ thống cũ nhất được sử dụng rộng rãi để truyền dữ liệu an toàn RSA được phát triển bởi Ron Rivest, Adi Shamir và Leonard Adleman, người đã công bố thuật toán vào năm 1977.

1.1 Cơ chế hoạt động

Trong một hệ thống mật mã công khai, khóa mã hóa là công khai và khác biệt sovới khóa giải mã, khóa này được giữ bí mật (riêng tư) Người dùng RSA tạo và công bố một khóa công khai dựa trên hai số nguyên tố lớn, cùng với một giá trị phụ Các số nguyên tố được giữ bí mật Tin nhắn có thể được mã hóa bởi bất kỳ ai, thông qua khóa công khai, nhưng chỉ có thể được giải mã bởi người biết các số nguyên tố.

– Chọn p và q là 2 số nguyên tố

Tính n = p.q (n dùng trong public key và private key)

– Cách tìm một số giả nguyên tố bằng phi hàm Carmichael: Ф (n) = (p − 1).( q − 1) Giữ bí mật cho giá trị này.

- Chọn một số tự nhiên trong (0<e< (n)) e cần thỏa mãn điều kiện ƯCLN(e, e ФФ (n)) = 1, hay chính là e và phi(n) nguyên tố cùng nhau.

-Tính số d Điều kiện là d ≡ (1/e ).(mod Ф (n)) (số d =nghịch đảo modulo của e (theo modulo mod (n)) Ф

Trang 25

-Khóa công khai sẽ là cặp số (n, e), khóa bí mật sẽ là cặp số (n, d) Chúng ta cầngiữ private key thật cẩn thận cũng như các số nguyên tố p và q vì từ đó có thể tính toán các khóa rất dễ dàng Nên chọn e tương đối nhỏ điều này giúp việc mã hóa và giải mã nhanh hơn.

Cho Bản rõ m=n(n là số nguyên dương )

1.2.Mã Hóa và Giải mã:Mã hóa

mod n.

Sau đó giá trị c sẽ được chuyển cho người nhận.

Ở phía người nhận, họ sẽ giải mã từ c để lấy được m như sau:

Giải Mã:m=cd

mod n.

1.3 An ninh

Sự an toàn của RSA dựa trên khó khăn thực tế của việc phân tích thành thừa số tích của hai số nguyên tố lớn, được gọi là “vấn đề phân tích thành thừa số” Phá mã hóa RSA được biết đến là vấn đề RSA Không có phương pháp công bố nào để đánh bại hệ thống nếu một khóa đủ lớn được sử dụng.

1.4 Ứng dụng

RSA là một thuật toán tương đối chậm Vì vậy, nó không thường được sử dụng để mã hóa trực tiếp dữ liệu người dùng., RSA được sử dụng để truyền các khóa chia sẻ cho mật mã hóa khóa đối xứng, sau đó được sử dụng để mã hóa - giải mãhàng loạt.

1.5 Kết luận

RSA là một thuật toán mã hóa mạnh mẽ và an toàn, được sử dụng rộng rãi trong nhiều ứng dụng bảo mật Mặc dù nó không phải là thuật toán nhanh nhất, nhưng sự an toàn và độ tin cậy của nó đã làm cho nó trở thành một tiêu chuẩn trong ngành công nghiệp bảo mật thông tin.

Trang 26

2 Lưu đồ thuật toán2.1 Lưu đồ mã hóa

Trang 27

2.2 Lưu đồ giải mã RSA

Giả sử chúng ta muốn mã hóa một thông điệp m = 2:

Tính c = m^e mod n Trong trường hợp này, c = 2^37 mod 143.

Trang 28

Để giải mã c, chúng ta sử dụng khóa riêng tư:

Tính m = c^d mod n Trong trường hợp này, m = c^13 mod 143.

Lưu ý rằng đây chỉ là một ví dụ đơn giản và trong thực tế, chúng ta sẽ sử dụng các số nguyên tố rất lớn để đảm bảo an toàn Ngoài ra, RSA thường được sử dụng để truyền các khóa chia sẻ cho mật mã hóa khóa đối xứng, sau đó được sử dụng để mã hóa - giải mã hàng loạt.

VII MÃ HÓA Hill

1.2 An ninh

Hai vấn đề phức tạp tồn tại trong việc chọn ma trận mã hóa:

Không phải tất cả các ma trận đều có nghịch đảo Ma trận sẽ có nghịch đảo nếu và chỉ nếu định thức của nó không phải là số không.

Định thức của ma trận mã hóa không được có bất kỳ yếu tố chung nào với cơ sở modulo Do đó, nếu chúng ta làm việc modulo 26 như trên, định thức phải khác không, và không được chia hết cho 2 hoặc 13.

1.3 Ứng dụng

Mã hóa Hill được sử dụng rộng rãi trong nhiều ứng dụng bảo mật Mặc dù nó không phải là thuật toán nhanh nhất, nhưng sự an toàn và độ tin cậy của nó đã làm cho nó trở thành một tiêu chuẩn trong ngành công nghiệp bảo mật thông tin.

1.4 Kết luận

Mã hóa Hill là một thuật toán mã hóa mạnh mẽ và an toàn, được sử dụng rộng rãi trong nhiều ứng dụng bảo mật Mặc dù nó không phải là thuật toán nhanh

Trang 29

nhất, nhưng sự an toàn và độ tin cậy của nó đã làm cho nó trở thành một tiêu chuẩn trong ngành công nghiệp bảo mật thông tin.

2 Lưu đồ thuật toán

2.1 Lưu đồ mã hóa

Trang 30

2.2 Lưu đồ giải mã

Trang 32

- The

Ngày đăng: 21/05/2024, 13:25

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

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

Tài liệu liên quan