Phương phỏp sử dụng khúa cụng khai (Public key)

Một phần của tài liệu Giáo trình mạng máy tính (Network) (Trang 89)

Đối với cỏc hệ mó hoỏ cổđiển thỡ nếu biết khoỏ mó Ek thỡ cũng biết được khoỏ giải Dk. Núi một cỏch cụ thể thỡ khoỏ giải cú thể suy ra trực tiếp từ khoỏ mó hoặc cú thể tớnh toỏn từ khoỏ mó khụng mấy khú khăn, và ngược lại.

Khoỏ 28 bớt 28 bớt Dịch 28 bớt 28 bớtDịch 56 bớt Hoỏn vị Lựa chọn 48 bớt Ri-1 32 bớt Mở rộng Hoỏn vị 48 bớt Hộp S Thay thế Lựa chọn 32 bit Hộp P Hoỏn vị Ri Li Li-1 32 bớt Hỡnh 4.8. Một vũng lặp DES

Trong cỏc lĩnh vực ứng dụng thương mại như chuyển ngõn điện tử và thưđiện tử thỡ bài toỏn phõn phối khoỏ là một vấn đề lớn đối với cỏc hệ mó hoỏ cổđiển. Khuynh hướng cung cấp cỏc khoỏ dài mà nú phải được thay đổi thường xuyờn, trong khi vẫn tiếp tục duy trỡ cả tớnh an toàn lẫn hiệu quả chi phớ sẽ cản trở rất nhiều đến việc phỏt triển cỏc hệ thống như vậy. Tuy nhiờn cỏc phương phỏp gần đõy được phỏt triển sẽ hứa hẹn việc loại bỏ hoàn toàn bài toỏn phõn phối khoỏ. Những hệ thống mó hoỏ như vậy được gọi là cỏc hệ mó hoỏ cụng khai.

í tưởng về mó hoỏ cụng khai (mó hoỏ phi đối xứng - đối lập với cỏc hệ mó hoỏ cổ điển) thuộc về Whitfield Diffie và Martin Hellman. Diffie và Hellman lần đầu tiờn đưa ra ý tưởng này vào năm 1976.

Thuật toỏn mó hoỏ cụng khai sử dụng khoỏ để mó húa và khoỏ để giải mó là khỏc nhau. Cỏc khoỏ này tạo thành một cặp chuyển đổi ngược nhau. Việc biết khoỏ mó Ek khụng nhất thiết làm lộ Dk. Cụ thể hơn người thỏm mó cú thể biết Ek và do đú cú thể tớnh được Dk, tuy nhiờn việc tớnh Dk từ Ek là khụng khả thi với hầu hết cỏc khoỏ k, bởi vỡ việc đú phải mất đến hàng tỷ năm. Do vậy trờn thực tế bản mó C vẫn được giữa an toàn mặc dự khoỏ mó Ek được cụng bố rộng dói. Khoỏ mó cú thể cụng khai nhưng khoỏ giải phải được giữ bớ mật. DK2 EK1 P (Bản rừ) Người gửi A Kờnh khụng an toàn Người nhận B C (Bản mó) (BảP n rừ) Mỏy sinh khoỏ Điều kiện khởi đầu Thỏm mó K1 (Khoỏ cụng khai) K2 (Khoỏ bớ mật) Hỡnh 4.9. Mó hoỏ cụng khai

Mặc dự khoỏ mó (khoỏ cụng khai) và khoỏ giải (khoỏ bớ mật) thực hiện cỏc thao tỏc ngược nhau và do đú cú liờn quan đến nhau nhưng phải làm sao để khụng thể suy ra khoỏ riờng từ khoỏ cụng khai. Yờu cầu đú cú thểđạt được nhờ cỏc hàm toỏn học đặc biệt gọi là cỏc hàm sập bẫy một chiều (trapdoor one-way function). Cỏc hàm này cú đặc điểm là khụng thể chỉ dựa vào mụ tả cả hàm mà cũn phải biết được cỏch xõy dựng hàm thỡ mới cú thể suy ra được nghịch đảo của nú.

Một số hệ mó hoỏ cụng khai: 1. Hệ Merkle-Hellman Knapsack 2. Hệ Rivest-Shamir-Adleman (RSA)

3. Hệ EL Gamal và Digital Signature Algrithms

Cỏc hệ mó hoỏ cụng khai này đều dựa trờn cơ sở những vấn đề phức tạp thuộc lĩnh vực lý thuyết số, đú là cỏc thuật toỏn số học được thực hiện trờn cỏc số nguyờn tố rất lớn.

Thut toỏn mó hoỏ RSA

RSA là tờn viết tắt từ tờn cỏc tỏc giả của nú Ron Rivest, Adi Shamir, Leonard Adleman - những người đầu tiờn giới thiệu thuật toỏn này năm 1978.

Bớ mật của mó RSA là ở việc rất khú khăn khi phõn tớch ra thừa số nguyờn tố của cỏc số lớn. Khoỏ cụng cộng và khoỏ riờng là cỏc hàm số của một cặp số nguyờn tố rất lớn nào đú (cú từ 100 đến 200 chữ số, thậm chớ cú thể lớn hơn). Việc giải mó từ một khoỏ và thụng điệp đó mó hoỏ là tương đương với việc phõn tớch một số rất lớn ra thừa số nguyờn tố.

Để tổng hợp hai khoỏ, ta phải chọn hai số nguyờn tố lớn p và q. Sau đú tớnh: n = p*q (p, q được giữ bớ mật).

Chọn ngẫu nhiờn một khoỏ mó, e, sao cho e và (p-1)(q-1) là nguyờn tố cựng nhau. Sau đú dựng thuật toỏn Euclid để tớnh khoỏ giải mó d thoả món:

e*d = 1 (mod (p-1)(q-1)) hay núi cỏch khỏc d = e-1 (mod (p-1)(q-1))

Ta cần chỳ ý rằng d và n cũng nguyờn tố cựng nhau. Số e và n chớnh là khoỏ cụng cộng cũn d là khoỏ bớ mật. Số p và q khụng cũn cần thiết nữa, chỳng cú thể bỏ đi nhưng khụng bao giờđược lộ ra.

Để mó hoỏ một bản rừ m, trước tiờn ta phải chuyển cỏc chữ cỏi thành cỏc số tương ứng và chia nhỏ m thành cỏc khối với độ dài của mỗi khối đều nhỏ hơn n. Với dữ liệu nhị phõn, chọn luỹ thừa của 2 số lớn nhất mà vẫn nhỏ hơn n. Như vậy nếu p và q là số nguyờn tố 100 chữ số thỡ n cú khoảng 200 chữ số, và mỗi khối bản rừ, mi, phải nhỏ hơn 200 chữ số.

Thụng điệp đó mó hoỏ c sẽ được tạo ra từ cỏc khối đó mó hoỏ ci cú kớch cỡ hay độ dài tương tự.

Cụng thức mó hoỏ đơn giản là:

Quỏ trỡnh giải mó làm ngược lại. Để giải mó một thụng điệp, ta lấy mỗi khối đó mó hoỏ ci và tớnh: mi = cid (mod n) Thật vậy: cid = (mie)d = mied = mik(p-1)(q-1)+1 = mi.mik(p-1)(q-1) = mi.1 = mi (tất cả lấy theo mod n). Ta cú thể tổng kết theo bảng sau: KHOÁ MÃ HOÁ (PUBLIC KEY):

n: là tớch của 2 số nguyờn tố, p và q (p và q là bớ mật chớnh)

e: là số nguyờn tố cựng nhau với (p-1)(q-1) KHOÁ GIẢI MÃ (PRIVATE KEY):

d: e-1 (mod (p-1)(q-1)) MÃ HOÁ (ENCRYTING):

c = me (mod n)

GIẢI MÃ (DECRYPTING)

m = cd(mod n)

Sau đõy là một vớ dụ ngắn để minh hoạ rừ thuật toỏn mó hoỏ RSA. Giả sử ta chọn p = 47 và q = 71 thỡ:

n = p.q = 3337

Số e phải nguyờn tố cựng nhau với giỏ trị: (p-1)(q-1) = 46.70 = 3220

Chọn e (một cỏch ngẫu nhiờn) là 79. Từđú ta suy ra d: d = 79-1 (mod 3220) = 1019

Số này tớnh được nhờ thuật toỏn Euclid mở rộng. e và n là khoỏ cụng cộng và d là khoỏ riờng, p và q được bỏđi. (adsbygoogle = window.adsbygoogle || []).push({});

Để mó hoỏ một bản rừ nào đú, vớ dụ:

m = 6882326879666683

Đầu tiờn ta chia bản rừ đú thành cỏc khối nhỏ. Ta chọn cỏch chia thành cỏc khối nhỏ cú 3 chữ số là tốt nhất. Như vậy ta cú tất cả 6 khối bản rừ: m1 = 688 m2 = 232 m3 = 687 m4 = 966 m5 = 668

m6 = 3

Khối đầu tiờn được mó hoỏ thành: 68879 (mod 3337) = 1570 = c1

Tương tự thực hiện trờn cỏc khối khỏc, sau đú tổng hợp lại ta sẽ được bản rừ hoàn chỉnh: c = 1570 2756 2714 2276 2423 158 Việc giải mó tiến hành tương tự với khoỏ giải mó d =1019. Vớ dụ: 15701019 (mod 3337) = 688 = m1 4.3.3.5. So sỏnh cỏc phương phỏp mt mó

Để đỏnh giỏ một giải thuật mó hoỏ cần dựa vào cỏc yếu tố như độ phức tạp, thời gian mó hoỏ và vấn đề phõn phối khoỏ trong mụi trường nhiều người sử dụng.

Cỏc phương phỏp mó hoỏ cổđiển như phương phỏp đổi chỗ và thay thế là đơn giản và được sử dụng sớm nhất. Nhược điểm của chỳng là độ an toàn khụng cao do thường khụng đạt được độ phức tạp cần thiết đồng thời rất dễ bị lộ khoỏ do cả người gửi lẫn người nhận đều phải biết khoỏ.

Cũn cỏc phương phỏp mó hoỏ sử dụng khoỏ cụng khai (như RSA) mặc dự khắc phục được vấn đề phõn phối khoỏ song lại cú chi phớ cao và khỏ chậm chạp. Trong khi thời gian mó hoỏ của phương phỏp DES chỉđũi hỏi vài micro giõy thỡ phương phỏp RSA lại đũi hỏi tới vài mili giõy, do đú hạn chế thụng lượng ở mức 50 Kb/s.

Hiện nay nhỡn chung phương phỏp mó hoỏ DES được sử dụng rộng rói nhất, tuy người ta vẫn cũn bàn cói xem độ dài của khoỏ 48 bớt đó đủ chưa và cỏc phộp thay thế đó đủ phức tạp chưa đểđạt được độ an toàn thụng tin mong muốn.

Một số bài tập

1. Cho xõu ký tự: “KINH TE THI TRUONG”, hóy dựng phương phỏp đổi chỗ theo mẫu hỡnh học để mó hoỏ với ma trận cú kớch thước 3x5, và hoỏn vị cột là 1,3,5,4,2.

2. Cho xõu ký tự: “HOI NHAP VAO WTO DE PHAT TRIEN”, hóy dựng phương phỏp đổi chỗ cột để mó hoỏ với ma trận cú kớch thước 4x6, và hoỏn vị cột là 3,1,2,5,4,6.

3. Cho xõu ký tự: “KINH TE NUOC TA DANG TANG TRUONG MANH”, hóy dựng phương phỏp hoỏn vị theo chu kỳ cốđịnh để mó hoỏ, cho chu kỳ d = 6, hoỏn vị trong mỗi chu kỳ là 1,5,2,4,6,3.

4.5. Đỏnh giỏ hiệu năng mạng

4.5.1. Khỏi niệm hiệu năng và cỏc độ đo hiệu năng mạng

Khỏi nim hiu năng mng

Theo nghĩa chung, hiệu năng là một độ đo cụng việc mà một hệ thống thực hiện được. Hiệu năng chủ yếu được xỏc định bởi sự kết hợp của cỏc nhõn tố: tớnh sẵn sàng để dựng (availability), thụng lượng (throughput) và thời gian đỏp ứng (response time). Đối với mạng mỏy tớnh, hiệu năng cũng cũn được xỏc định dựa trờn cỏc nhõn tố khỏc nữa, thớ dụ: thời gian trễ (delay), độ tin cậy (reliability), tỉ suất lỗi (error rate), hiệu năng của ứng dụng v.v.

Tuỳ theo mục đớch nghiờn cứu cụ thể, hiệu năng cú thể chỉ bao gồm một nhõn tố nào đú hoặc là sự kết hợp một số trong cỏc nhõn tố nờu trờn.

Cỏc độđo hiu năng mng

Cú thể phõn cỏc độđo hiệu năng thành hai loại: cỏc độđo hướng tới người sử dụng và cỏc độđo hướng tới hệ thống. Trong cỏc độđo hướng tới người sử dụng, thời gian đỏp ứng (response time) thường được sử dụng trong cỏc hệ thời gian thực hoặc cỏc mụi trường hệ thống tương tỏc. Đú là khoảng thời gian từ khi cú một yờu cầu (request) đến hệ thống cho đến khi nú được hệ thống thực hiện xong. Trong cỏc hệ thống tương tỏc, đụi khi người ta sử dụng độ đo thời gian phản ứng của hệ thống (system reaction time) thay cho thời gian đỏp ứng. Đú là khoảng thời gian tớnh từ khi input đến hệ thống cho đến khi yờu cầu chứa trong input đú nhận được khe thời gian (slice time) phục vụđầu tiờn. Độđo này đo mức độ hiệu dụng của bộ lập lịch của hệ thống trong việc nhanh chúng cung cấp dịch vụ cho một yờu cầu mới đến. Trong cỏc hệ thống mạng mỏy tớnh, cỏc đại lượng thời gian đỏp ứng, thời gian phản ứng của hệ thống đều được xem là cỏc biến ngẫu nhiờn, vỡ vậy người ta thường núi về phõn bố, kỳ vọng, phương sai... của chỳng.

Cỏc độ đo hướng tới hệ thống điển hỡnh là thụng lượng(throughput) và thời gian trễ

(delay time, delay). Thụng lượng được định nghĩa là số đơn vị thụng tin tớnh trung bỡnh được vận chuyển qua mạng trong một đơn vị thời gian. Đơn vị thụng tin ởđõy cú thể là bit, byte hay gúi số liệu... Nếu cỏc đơn vị thụng tin đi vào mạng theo một cơ chếđộc lập với trạng thỏi của mạng, thỡ thụng lượng cũng chớnh bằng tốc độ đến trung bỡnh nếu mạng vẫn cũn cú khả năng vận chuyển, khụng dẫn đến trạng thỏi bị tắc nghẽn. Một số trường hợp người ta sử dụng đại lượng khụng thứ nguyờn Hệ số sử dụng đường truyền

(Line Utilization) hay cũn gọi thụng lượng chuẩn hoỏ, đú là tỉ số của thụng lượng trờn năng lực vận chuyển của đường truyền (line capacity). Thời gian trễ là thời gian trung bỡnh để vận chuyển một gúi số liệu qua mạng, từ nguồn tới đớch. Cũng cú trường hợp người ta sử dụng đại lượng thời gian trễ chuẩn hoỏ, đú là tỉ số của thời gian trễ trờn một tham số thời gian nào đú, thớ dụ thời gian cần thiết để truyền một gúi tin (packet transmition time).

4.5.2. Tầm quan trọng của việc đỏnh giỏ hiệu năng mạng mỏy tớnh

Trong suốt lịch sử tiến hoỏ của mạng mỏy tớnh, vấn đề đỏnh giỏ và dự đoỏn hiệu năng mạng luụn thu hỳt sự quan tõm của những người nghiờn cứu và thiết kế mạng; mục đớch chớnh là để nm được và ci thin đặc trưng giỏ - hiu năng (cost-performance). Yờu cầu đỏnh giỏ và dự đoỏn hiệu năng mạng đặt ra ngay từ khi người ta thiết kế kiến trỳc của hệ thống cho đến khi mạng đó được lắp đặt và đưa vào hoạt động. Trong giai đoạn đầu của quỏ trỡnh thiết kế, người ta thường phải dựđoỏn hai điều. Thứ nhất là bản chất của cỏc ứng dụng sẽ chạy trờn mạng và cỏc yờu cầu dịch vụ mà cỏc ứng dụng này đũi hỏi hệ thống mạng phải đỏp ứng. Điều dự đoỏn thứ hai liờn quan tới việc lựa chọn một trong cỏc thiết kế kiến trỳc, dựa trờn cỏc cụng nghệ phần cứng và phần mềm sẽđược phỏt triển và đưa ra thị trường trong tương lai, khi hệ thống mạng bước vào giai đoạn triển khai thực hiện.

Sau khi đó lựa chọn kiến trỳc và bắt đầu thiết kế, triển khai hệ thống mạng, việc dự đoỏn và đỏnh giỏ hiệu năng sẽ trở nờn cụ thể hơn. Thớ dụ sẽ chọn đường truyền vật lý như thế nào, cỏc đặc tớnh của đường truyền được chọn sẽ ảnh hưởng thế nào đến hiệu năng của mạng. Cỏc kỹ thuật được dựng để dự đoỏn và đỏnh giỏ hiệu năng mạng trong giai đoạn thiết kế và triển khai thực hiện cú khi chỉ là cỏc tớnh toỏn bằng tay, nhưng cũng cú khi là cỏc mụ phỏng rất tinh vi. Việc so sỏnh hiệu năng dựđoỏn với hiệu năng thực tếđạt được thường giỳp cho nhà nghiờn cứu thấy được cỏc khiếm khuyết chớnh trong thiết kế hoặc cỏc lỗi trong việc lập trỡnh hệ thống. Ngày nay, việc dựđoỏn và đỏnh giỏ hiệu năng thường được người ta coi là một phần khụng thể thiếu được của cụng việc thiết kế và triển khai thực hiện hệ thống.

Định cu hỡnh mng: Sau khi mạng đó được triển khai thực hiện, việc dự đoỏn và đỏnh giỏ hiệu năng mạng đối với cỏc ứng dụng cụ thể cũng cú ý nghĩa quan trọng. Nhằm đạt được sự tối ưu hoỏ, nhà sản xuất phải chỉ ra được cỏc cỏch kết hợp và tổ chức phần cứng và phần mềm mạng để đem lại một giải phỏp tốt nhất cho cỏc yờu cầu của khỏch hàng, việc này thường được gọi là định cấu hỡnh mạng. Mặc dự cú thể vẫn sử dụng cỏc cụng cụ và phương phỏp đó được sử dụng trong giai đoạn phỏt triển hệ thống, nhưng cần phải bổ sung thờm một số yếu tố nữa. Đặc điểm mụi trường của người sử dụng sản phẩm mạng cần được biểu diễn bằng cỏc tham số định lượng và đưa vào mụ hỡnh mụ phỏng hiệu năng.

Tinh chnh h thng: Sau khi hệ thống sản phẩm đó được lắp đặt tại địa điểm của khỏch hàng, nhà cung cấp sản phẩm cần phải làm sao cho hệ thống mà họ bỏn cho khỏch hàng đạt được hiệu năng hoạt động như họđó hứa hẹn khi chào hàng, việc này được gọi là tinh chỉnh hệ thống. Đối với cỏc hệ thống mạng, việc tỡm ra được điểm làm việc tối ưu và ổn định trờn toàn mạng là rất khú.

4.5.3. Cỏc phương phỏp đỏnh giỏ hiệu năng mạng (adsbygoogle = window.adsbygoogle || []).push({});

Cú nhiều phương phỏp đỏnh giỏ hiệu năng mạng mỏy tớnh, cú thể chia chỳng làm ba loại: mụ hỡnh Giải tớch (Analytic Models), mụ hỡnh Mụ phỏng (Simulation Models) và Đo hiệu năng (Measurement).

Mụ hỡnh Gii tớch

Trong cỏc mạng chuyển mạch gúi, gúi số liệu là cỏc khối dữ liệu cú chiều dài thay đổi được, được truyền qua mạng từ nguồn tới đớch theo một con đường nào đú do hệ thống mạng quyết định. Cỏc tài nguyờn mạng sẽ được chia sẻ giữa cỏc gúi số liệu khi chỳng đi qua mạng. Số lượng và chiều dài cỏc gúi số liệu đi vào hoặc đi qua mạng tại mọi thời điểm, thời gian kộo dài cỏc cuộc kết nối v.v., tất cả cỏc tham số này núi chung, thay đổi một cỏch thống kờ. Vỡ vậy, để nờu ra cỏc tiờu chuẩn đo lường định lượng về hiệu năng, cần phải sử dụng cỏc khỏi niệm về xỏc suất để nghiờn cứu sự tương tỏc của chỳng với mạng. Lý thuyết Hàng đợi đúng vai trũ mấu chốt trong việc phõn tớch mạng, bởi vỡ đú là cụng cụ Toỏn học thớch hợp nhất để phỏt biểu và giải cỏc bài toỏn về hiệu năng. Theo phương phỏp này, chỳng ta viết ra cỏc mối quan hệ hàm giữa cỏc tiờu chuẩn hiệu năng cần quan tõm và cỏc tham số của hệ thống mạng bằng cỏc phương trỡnh cú thể giải được bằng giải tớch.

Mụ phng

Một phần của tài liệu Giáo trình mạng máy tính (Network) (Trang 89)