Hệ mó húa đối xứng – cổ điển

Một phần của tài liệu MỘT số bài TOÁN về AN TOÀN THÔNG TIN TRONG GIAI đoạn KIỂM PHIẾU điện tử (Trang 31)

Khỏi niệm

- Hệ mó húa đối xứng đó đƣợc dựng từ rất sớm, nờn cũn đƣợc gọi là Hệ mó húa đối xứng – cổ điển. Bản mó hay bản rừ là dóy cỏc ký tự Lantin.

- Lập mó: thực hiện theo cỏc bƣớc sau: Bƣớc 1: nhập bản rừ ký tự: Rế_CHỮ. Bƣớc 2: chuyển Rế_CHỮ ==> Rế_SỐ. Bƣớc 3: chuyển Rế_SỐ ==> MÃ_SỐ. Bƣớc 4: chuyển MÃ _SỐ ==> MÃ_CHỮ - Giải mó: thực hiện theo cỏc bƣớc sau. Bƣớc 1: nhập bản mó ký tự: MÃ_CHỮ. Bƣớc 2: chuyển MÃ_CHỮ ==> MÃ_SỐ Bƣớc 3: chuyển MÃ_SỐ ==> Rế_SỐ. Bƣớc 4: chuyển Rế_SỐ ==> Rế_CHỮ

Cỏc hệ mó húa cổ điển

- Hệ mó húa dịch chuyển: khúa cú 1 chỡa. - Hệ mó húa Affine: khúa cú 2 chỡa. - Hệ mó húa thay thế: khúa cú 26 chỡa. - Hệ mó húa VIGENERE: khúa cú m chỡa - Hệ mó húa HILL: khúa cú ma trận chỡa

1/. Hệ mó húa dịch chuyển Sơ đồ

Đặt P = C = K = Z26. Bản mó y và bản rừ x Z26. Với khúa k K, ta định nghĩa:

Hàm mó húa: y=ek(x) = (x+k)mod 26 Hàm giải mó: x=dk(y) = (y-k)mod 26

Độ an toàn

Độ an toàn của mó dịch chuyển là rất thấp

Tập khúa K chỉ cú 26 khúa, nờn việc phỏ khúa cú thể thực hiện dễ dàng bằng cỏch thử kiểm tra từng khúa: k=1,2,3, …,26.

2/. Hệ mó húa thay thế (Hoỏn vị toàn cục) Sơ đồ

Đặt P = C = Z26. Bản mó y và bản rừ x Z26. Tập khúa K là tập mọi hoỏn vị trờn Z26.

Với khúa k = K, tức là 1 hoỏn vị trờn Z26, ta định nghĩa: Mó húa: y=e (x)= (x)

Giải mó: x=d (y)= -1(y)

Độ an toàn

Độ an toàn của mó thay thế thuộc loại cao

- Tập khúa K cú 26! Khúa (>4.1026), nờn việc phỏ khúa cố thể thực hiện bằng cỏch duyệt tuần tự 26! Hoỏn vị của 26 chữ cỏi.

- Để kiểm tra tất cả 26! Khúa, tốn rất nhiều thời gian.

3/. Hệ mó húa AFFINE Sơ đồ

- Đặt P = C = Z26. Bản mó y và bản rừ x Z26.

- Tập khúa K = {(a,b), với a,b Z26, UCLN(a,26)=1} - Với khúa k=(a,b) K, ta định nghĩa:

Phộp mó húa y=ek(x)= (ax + b) mod 26 Phộp giải mó x=dk(y)= a-1(y-b) mod 26

Độ an toàn:

Độ an toàn của Hệ mó húa Affine: Rất thấp

- Điều kiện UCLN(a,26)=1 để bảo đảm a cú phần tử nghịch đảo a-1 mod 26, tức là thuật toỏn giải mó dk luụn thực hiện đƣợc.

- Số lƣợng a Z26 nguyờn tố với 26 là (26)=12, đú là 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25 - Cỏc số nghịch đảo theo (mod 26) tƣơng ứng là: 1, 9, 21, 15, 3, 19, 7, 23, 11, 5, 17, 25 - Số lƣợng b Z26 là 26

- Số khúa (a,b) cú thể là 12*26 = 312. Rất ớt - Nhƣ vậy việc dũ tỡm khúa mật khỏ dễ dàng.

4/. Hệ mó húa VIGENRE

Sơ đồ:

- Đặt P =C=K=(Z26)m , m là số nguyờn dƣơng, cỏc phộp toỏn thực hiện trong (Z26)m. (adsbygoogle = window.adsbygoogle || []).push({});

- Bản mó Y và bản rừ X (Z26)m. Khúa k = (k1, k2, …,km) gồm m phầm tử. Mó húa Y = (y1, y2, …,ym) = ek(x1, x2, …, xm)

= (x1 + k1, x2 + k2, …, xm + km) mod 26

Độ an toàn:

Độ an toàn của mó VIGENERE là tƣơng đối cao

Nếu khúa gồm m ký tự khỏc nhau, mỗi ký tự cú thể đƣợc ỏnh xạ vào trong m ký tự cú thể, do đú hệ mật này đƣợc gọi là thay thế đa biểu. Nhƣ vậy số khúa cú thể cú trong mật Vigenere là 26m. Nếu dựng phƣơng phỏp “tấn cụng vột cạn”, thỏm mó phải kiểm tra 26m khúa. Hiện nay với hệ mó này, ngƣời ta cú phƣơng phỏp thỏm mó khỏc nhanh hơn.

5/. Hệ mó húa hoỏn vị cục bộ Sơ đồ

Đặt P = C = K = (Z26)m , m là số nguyờn dƣơng. Bản mó Y và bản rừ X Z26. - Tập khúa K là tập tất cả cỏc hoỏn vị của {1, 2, …, m}

- Với mỗi khúa k = K, k = (k1, k2, …,km) gồm m phần tử, ta định nghĩa: Mó húa Y = (y1, y2, …,ym) = ek(x1, x2, …, xm) = (xk(1), xk(2), …, xk(m)) Giải mó X = (x1, x2, …, xm) = dk(y1, y2, …,ym) =(yk(1)-1, yk(2)-1, …, yk(m)-1) - Trong đú k-1 = -1 là hoỏn vị ngƣợc của .

Độ an toàn

- Nếu dựng phƣơng phỏp “tấn cụng vột cạn”, thỏm mó phải kiểm tra số khúa cú thể là: 1! + 2! + 3! + …+ m! trong đú m ≤ 26.

6/. Hệ mó húa HILL Sơ đồ

- Đặt P = C = (Z26)m ,m là số nguyờn dƣơng. Bản mó Y và bản rừ X (Z26)m. - Tập khúa K={ k (Z26)m*n/det(k,26)=1}. (k phải cú k-1)

- Mỗi khúa K là một chựm chỡa khúa - Với mỗi k K, định nghĩa:

Hàm lập mó: Y = (y1, y2, …,ym) = ek(x1, x2, …, xm) = (x1, x2, …, xm) * k Hàm giải mó: X = (x1, x2, …, xm) = dk(y1, y2, …,ym) = (y1, y2, …,ym) * k-1

Độ an toàn

Nếu dựng phƣơng phỏp “tấn cụng vột cạn”, thỏm mó phải kiểm tra số khúa cú thể với m lần lƣợt là 2, 3, 4, …, trong đú m lớn nhất là bằng độ dài bản rừ.

1.4.4. Hệ mó húa đối xứng DES

1/. Hệ mó húa đối xứng DES

a/. Giới thiệu

- 15/05/1973, Ủy ban tiờu chuẩn quốc gia Mỹ đó cụng bố một khuyến nghị về hệ mó húa chuẩn.

Hệ mó húa phải cú độ an toàn cao.

Hệ mó húa phải đƣợc định nghĩa đầy đủ và dễ hiểu.

Độ an toàn của hệ mó húa phải nằm ở khúa, khụng nằm ở thuật toỏn. Hệ mó húa phải sẵn sàng cho mọi ngƣời dựng ở cỏc lĩnh vực khỏc nhau. Hệ mó húa phải xuất khẩu đƣợc.

- DES đƣợc IBM phỏt triển, là một cải biờn của hệ mật LUCIPHER DES, nú đƣợc cụng bố lần đầu tiờn vào ngày 17/03/1975. Sau nhiều cuộc tranh luận cụng khai, cuối cựng DES đƣợc cụng nhận nhƣ một chuẩn liờn bang vào ngày 23/11/1976 và đƣợc cụng bố vào ngày15/01/1977.

- Năm 1980, “cỏch dựng DES” đƣợc cụng bố. Từ đú chu kỳ 5 năm DES đƣợc xem xột lại một lần bởi Ủy ban tiờu chuẩn quốc gia Mỹ.

b/. Quy trỡnh mó húa theo DES

Giai đoạn 1: Bản rừ chữ ===== Bản rừ số (Dạng nhị phõn) Chia thành

Giai doạn 2: Bản rừ số ===== Cỏc đoạn 64 bit rừ số Giai đoạn 3: 64 bit rừ số ===== 64 bit mó số

Kết nối

Giai đoạn 4: Cỏc đoạn 64 bit mó số ===== Bản mó số (Dạng nhị phõn) Giai đoạn 5: Bản mó số ===== Bản mó chữ (adsbygoogle = window.adsbygoogle || []).push({});

2/. Lập mó và giải mó

a/. Lập mó

 Bản rừ là xõu x, bản mó là xõu y, khúa là xõu K, đều cố đọ dài 64 bit

 Thuật toỏn mó húa DES thực hiện qua 3 bƣớc chớnh nhƣ sau:

Bước 1: Bản rừ x đƣợc hoỏn vị theo phộp hoỏn vị IP, thành IP (x).

IP(x) = L0 R0, trong đú L0 là 32 bit đầu (Left), R0 là 32 bit cuối (Right). (IP(x) tỏch thành L0 R0).

Bước 2 : Thực hiện 16 vũng mó húa với những phộp toỏn giống nhau

Dữ liệu đƣợc kết hợp với khúa thụng qua hàm f: Ll = Rl-1, Rl = Ll-1 f(Rl-1,k1) trong đú:

là phộp toỏn hoặc loại trừ của hai xõu bit (cộng theo modulo 26) k1, k2, …,k16 là cỏc khúa con (48 bit) đƣợc tớnh từ khúa gốc K.

Bước 3: Thực hiện phộp hoỏn vị ngƣợc IP-1

cho xõu L16R16, thu dƣợc bản mó y. y = IP-1 ( L16,R16)

b/. Quy trỡnh giải mó

- Quy trỡnh giải mó của DES tƣơng tự nhƣ quy trỡnh lập mó, nhƣng theo dựng cỏc khúa thứ tự ngƣợc lại: k16, k15, …, k1.

3/. Độ an toàn của hệ mó húa DES

- Độ an toàn của hệ mó húa DES cú liờn quan đến cỏc bảng Sj:

Ngoại trừ cỏc bảng S, mọi tớnh toỏn trong DES đều tuyến tớnh, tức là việc tớnh phộp hoặc loại trừ của hai đầu ra cũng giống nhƣ phộp hoặc loại trừ của hai đầu vào, rồi tớnh toỏn đầu ra.

Cỏc bảng S chứa đựng nhiều thành phần phi tuyến của hệ mật, là yếu tố quan trọng nhất đối với độ mật của hệ thống.

Khi mới xõy dựng hệ mật DES, thỡ tiờu chuẩn xõy dựng cỏc hộp S khụng

đƣợc biết đầy đủ. Và cú thể cỏc hộp S này cú thể chứa cỏc “cửa sập” đƣợc giấu kớn. Và đú cũng là một điểm đảm bảo tớnh bảo mật của hệ DES

- Hạn chế của DES chớnh là kớch thƣớc khụng gian khúa:

Số khúa cú thể là 256, khụng gian này là nhỏ để đảm bảo an toàn thực sự. Nhiều thiết bị chuyờn dụng đó đƣợc đề xuất nhằm phục vụ cho phộp tấn cụng với bản rừ đó biết. Phộp tấn cụng này chủ yếu thực hiện theo phƣơng phỏp “vột cạn”. Tức là với bản rừ x và bản mó y tƣơng ứng (64 bit), mỗi khúa cú thể đều đƣợc kiểm tra cho tới khi tỡm đƣợc một khúa K thỏa món eK(x) = y.

1.5. CHỮ Kí SỐ

Trong cỏc giao dịch truyền thống, chỳng ta vẫn sử dụng giấy tờ, cụng văn cựng với chữ ký và con dấu. Việc giao dịch, trao đổi thụng tin trờn mụi trƣờng internet cũng cần cú một cơ chế tƣơng tự và chữ ký số đƣợc sử dụng để phục vụ cho mụi trƣờng này. Khỏc với chữ ký thƣờng cú thể phải mất nhiều thời gian để giỏm định khi cần thiết, chữ ký số cú thể đƣợc giỏm định, xỏc nhận nhanh với cỏc cụng cụ điện tử. Cũng thế, chứng thực số là một dịch vụ trờn internet tƣơng tự nhƣ việc cụng chứng trờn giấy tờ, văn bản thụng thƣờng. Cụ thể, chữ ký số là một giải phỏp cụng nghệ đảm bảo tớnh duy nhất cho một ngƣời khi giao dịch thụng tin trờn mạng đảm bảo cỏc thụng tin cung cấp là của ngƣời đú.

Chữ ký số do ngƣời sử dụng tạo ra sau khi đƣợc nhà cung cấp dịch vụ cung cấp chứng thƣ số. Chứng thực số đƣợc sử dụng để cỏc đối tỏc của ngƣời sử dụng biết và xỏc định đƣợc chữ ký, chứng thƣ của mỡnh là đỳng.

1.5.1. Định nghĩa

Chữ ký số (một dạng chữ ký điện tử) là thụng tin đƣợc mó húa bằng khúa riờng (tƣơng ứng với một khúa cụng khai) của ngƣời gửi, đƣợc đớnh kốm theo văn bản nhằm đảm bảo cho ngƣời nhận định danh và xỏc thực đỳng nguồn gốc, tớnh toàn vẹn của dữ liệu nhận đƣợc.

Chữ ký số ra đời để khắc phục cỏc thiếu sút của những hệ thống xỏc thực ra đời trƣớc đú. Cựng với sự phỏt triển của thƣơng mại điện tử, ngoài nhu cầu xỏc thực, cỏc nhu cầu khỏc về bảo mật nhƣ toàn vẹn dữ liệu và chống từ chối cũng đều hết sức cấp thiết.

Chữ ký số đúng một vai trũ rất quan trọng trong trƣờng hợp xảy ra tranh chấp vỡ chữ ký số đƣợc cung cấp bởi hệ thống CA cụng cộng nhƣ FPT cú giỏ trị phỏp lý tƣơng đƣơng nhƣ chữ ký tay trong cỏc giao dịch phi điện tử.

Chữ kớ số là một tập con của chữ kớ điện tử. Khỏi niệm chữ kớ điện tử- mặc dự thƣờng đƣợc sử dụng cựng nghĩa với chữ ký số nhƣng thực sự cú nghĩa rộng hơn. Chữ ký điện tử chỉ đến bất kỳ phƣơng phỏp nào (khụng nhất thiết là mật mó) để xỏc định ngƣời chủ của văn bản điện tử. Chữ ký điện tử bao gồm cả địa chỉ telex và chữ ký trờn giấy đƣợc truyền bằng fax. (adsbygoogle = window.adsbygoogle || []).push({});

Chữ ký số đƣợc phỏt triển dựa trờn lý thuyết mật mó, cụ thể là kỹ thuật mật mó hoỏ cụng khai. Trong mụ hỡnh này, một hệ mó khoỏ cụng khai sẽ cú hai chỡa khoỏ: Một chỡa khoỏ cụng khai (public key) và một chỡa khoỏ bớ mật (private key), mỗi chỡa khoỏ là một số cố định đƣợc sử dụng trong quỏ trỡnh mó hoỏ và giải mó; trong đú, khoỏ cụng khai đƣợc cụng bố rộng rói cho mọi ngƣời và đƣợc sử dụng để mó hoỏ, cũn khoỏ bớ mật thỡ đƣợc giữ kớn và đƣợc sử dụng để giải mó.

Chữ ký số, tương tự như chữ ký bằng tay, nú phải cú một số tớnh chất sau:

- Cú khả năng xỏc thực tỏc giả và thời gian ký.

- Cú khả năng xỏc thực nội dung tại thời điểm ký.

- Cỏc thành viờn thứ ba cú thể kiểm tra để xỏc thực khi xảy ra tranh chấp.

Vỡ chức năng ký số bao hàm cả chức năng xỏc thực, dựa vào tớnh chất cơ bản này ta đƣa một số yờu cầu sau cho chữ ký số:

- Chữ ký số phải là một mẫu bit phụ thuộc vào thụng bỏo đƣợc ký.

- Chữ ký phải dựng thụng tin duy nhất nào đú từ ngƣời gửi, nhằm ngăn chặn tỡnh trạng giả mạo và chối bỏ.

- Tạo ra chữ ký số dễ dàng.

- Khú làm giả chữ ký số bằng cỏch tạo ra một thụng bỏo mới cho một chữ ký số hiện cú, hoặc tạo ra một chữ ký giả cho một thụng bỏo cú trƣớc.

- Trong thực tế cần phải sao lƣu bản sao của chữ ký số.

Bảng so sỏnh chữ ký thụng thƣờng và chữ ký số:

Chữ ký thụng thƣờng Chữ ký số

Vấn đề ký 1 tài liệu Chữ ký chỉ là một phần Chữ ký số khụng gắn kiểu vật lý của tài liệu vật lý vào bức thụng điệp nờn

thuật toỏn đƣợc dựng phải “khụng nhỡn thấy” theo một cỏch nào đú trờn bức thụng điệp.

Vấn đề kiểm tra Chữ ký đƣợc kiểm tra Chữ ký số cú thể kiểm tra nhờ bằng cỏch sú sỏnh nú dựng một thuật toỏn kiểm tra với chữ ký xỏc thực cụng khai. Nhƣ vậy, bất kỳ ai khỏc. Tuy nhiờn, đõy cũng cú thể kiểm tra đƣợc chữ khụng phải là một ký số. Việc dựng chữ ký số an phƣơng phỏp an toàn toàn cú thể chặn đƣợc giả mạo. vỡ nú dễ bị giả mạo.

Một điểm khỏc biệt cơ bản nữa giữa chữ ký thụng thƣờng và chữ ký số, đú là việc sử dụng lại. Bản copy thụng điệp đƣợc ký bằng chữ ký số thỡ đồng nhất với bản gốc, cũn bản copy thụng điệp đƣợc ký bằng chữ ký thụng thƣờng lại cú thể khỏc với bản gốc. Điều này cú nghĩa là cần phải ngăn chặn một bức thụng điệp ký số khụng bị dựng lại.

Vớ dụ: A ký một bức thụng điệp xỏc nhận B rỳt 1000$ trong tài khoản của A, A chỉ

muốn B làm điều đú một lần, do đú bản thõn bức điện cần chứa thụng tin thờm để ngăn nú bị dựng lại.

Đối với cỏc hoạt động trờn mụi trƣờng mạng ngày càng phỏt triển nhƣ hiện nay, chữ ký số là một hỡnh thức đảm bảo tớnh phỏp lý của cỏc cam kết. Nú phải đỏp ứng đƣợc cỏc yờu cầu:

- Ngƣời nhận cú thể xỏc thực đƣợc đặc điểm nhận dạng của ngƣời gửi. - Ngƣời gửi sau này khụng thẻ chối bỏ nội dung của bản tin đó gửi. - Ngƣời gửi khụng thể bịa đặt thay đổi bản tin sau khi đó gửi.

Sơ đồ chữ ký số

Một sơ đồ chữ ký số thƣờng bao gồm hai thành phần chủ chốt là thuật toỏn ký và thuật toỏn xỏc minh.

Một sơ đồ chữ ký số là một bộ 5 (P, A, K, S, V) thỏa món cỏc điều kiện sau : P là một tập hợp cỏc bản rừ cú thể

A là tập hữu hạn cỏc chữ ký cú thể K là tập hữu hạn cỏc khúa cú thể S là tập cỏc thuật toỏn ký

V là tập cỏc thuật toỏn xỏc minh

Với mỗi k thuộc K, tồn tại một thuật toỏn ký sigk thuộc S và một thuật toỏn xỏc minh verk thuộc V, trong đú sigk và verk là cỏc ỏnh xạ :

sigk là một ỏnh xạ từ P sang A và Verk là một ỏnh xạ từ A sang tập biểu diễn {True, False} thỏa món với mọi x thuộc P, y thuộc A, ver (x,y)= true nếu y=sig(x) và ver(x,y) = false nếu y khỏc sig(x).

Chỳ ý: (adsbygoogle = window.adsbygoogle || []).push({});

Ngƣời ta thƣờng dựng hệ mó húa khúa cụng khai để lập: “Sơ đồ chữ ký số”. Ở đõy khúa bớ mật a dựng làm khúa “”, khúa cụng khai b dựng làm khúa kiểm

Ngƣợc lại với việc mó húa, dựng khúa cụng khai b để lập mó, dựng khúa bớ mật a để giải mó.

Điều này là hoàn toàn tự nhiờn, vỡ “” cần giữ bớ mật nờn phải dựng khúa bớ mật a để “”. Cũn “chữ ký” là cụng khai cho mọi ngƣời biết, nờn họ dựng khúa cụng khai b để kiểm tra.

1.5.2. Phõn loại “Chữ ký số”

Cỏch 1: Phõn loại chữ ký theo đặc trưng kiểm tra chữ ký

1). Chữ ký khụi phục thụng điệp:

Là loại chữ ký, trong đú ngƣời gửi chỉ cần gửi “chữ ký”, ngƣời nhận cú thể khụi

Một phần của tài liệu MỘT số bài TOÁN về AN TOÀN THÔNG TIN TRONG GIAI đoạn KIỂM PHIẾU điện tử (Trang 31)