Sơ đồ thuật toỏn DES

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu xây dựng giải pháp bảo mật mạng riêng ảo VPN dựa trên công nghệ mở Luận văn ThS. Công nghệ thông tin 60 48 15 (Trang 50)

DES là sự kết hợp của hai kỹ thuật cơ bản trong mật mó là xỏo trộn (confusion) và xếp lại (defusion). Hai kỹ thuật này được thực hiện trong một vũng (round) với đầu vào là khối dữ liệu plaintext và khoỏ. DES cú 16 vũng, và hai kỹ thuật trờn được thực hiện trờn khối plaintext 16 lần. Mỗi vũng của thuật toỏn DES đều cú một khoỏ 48 bit riờng bằng cỏch liờn tục dịch và hoỏn vị khoỏ 56 bit trong từng vũng một.

Độ dài khoỏ là 56 bit nhưng thực chất là 64 bit, trong đú cú 8 bit kiểm tra chẵn lẻ và cỏc bit này bị loại bỏ khi khoỏ được đưa vào thuật toỏn DES.

Trước khi thực hiện thuật toỏn DES, khối plaintext 64 bit đi qua bước hoỏn vị khởi tạo IP (Initial Permutation), khụng phụ thuộc vào khoỏ. Sau khi thực hiện 16 vũng lặp, dữ liệu đi qua bước hoỏn vị đảo RP (Reversed Permutation) và tạo thành một khối bản tin mó hoỏ (ciphertext). Thực chất cỏc bước hoỏn vị này khụng làm tăng tớnh an toàn cho DES.

Trung tõm của vũng xử lý DES là mạng Fiestel (tờn của nhà khoa học tại IBM). Sơ đồ mạng Fiestel như hỡnh vẽ:

Li-1 Ri-1 Khoỏi-1 Li Ri Khoỏi S-Box (Thay thế) Hoỏn vị mở rộng Hoỏn vị nộn Dịch Dịch P-Box (Hoỏn vị) 32 56 48 48 56 32 32 32 32 Mạng Fiestel Hỡnh 2. 14: Mạng Fiesel

Khối 64 bit plaintext đầu vào được chia thành hai khối 32 bit: khối phải (Ri-1) và khối trỏi (Li-1). Khối phải đầu vào thành khối trỏi đầu ra (Li). Khối phải cũng đi vào một mạch xử lý: Đầu tiờn, nú được chuyển thành 48 bit bởi hoỏn vị mở rộng EP (Expansion Permutation); sau đú thực hiện phộp toỏn logic XOR với một khoỏ 48 bit; 48 bit sau khi đó XOR với khoỏ được đưa tới 8 khối thay thế S-Box (Box substitution), mỗi khối cú 6 đầu vào, 4 đầu ra; 32 bit sau khi đi ra khỏi cỏc khối thay thế S được đưa tới khối hoỏn vị P-Box (P_ Box permutation). Đầu ra của mạch xử lý được XOR với khối trỏi (Li-1) và trở thành khối phải của dữ liệu đầu ra (Ri).

Mỗi vũng trong thuật toỏn DES đều cú một khoỏ 48 bằng cỏch liờn tục dịch và hoỏn vị khoỏ 56 bit trong từng vũng một.

Một phiờn bản của DES là 3 DES được gọi như thế bởi vỡ thuật toỏn thực hiện ba hoạt động mó hoỏ dữ liệu. Nú thực hiện một quỏ trỡnh mó hoỏ, một quỏ trỡnh giải mó và sau đú là quỏ trỡnh mó hoỏ khỏc, mỗi quỏ trỡnh thực hiện với một khoỏ 56 bit khỏc nhau. Qỳa trỡnh này tạo ra một khoỏ kết hợp 168 bit, cung cấp phương thức mó hoỏ mạnh. Tất cả cỏc sản phẩm và phần mềm Cisco VPN đều hỗ trợ thuật toỏn mó hoỏ 3DES với khoỏ 168 bit và thuật toỏn DES 56 bit.

2.2.3.2 Mó húa bất đối xứng

Thuật toỏn mó hoỏ khoỏ cụng cộng được định nghĩa là một thuật toỏn sử dụng một cặp khoỏ để mó hoỏ và giải mó bảo mật một bản tin. Theo thuật toỏn này thỡ sử dụng một khoỏ để mó hoỏ và một khoỏ khỏc để giải mó nhưng hai khoỏ này cú liờn quan với nhau

tạo thành một cặp khoỏ duy nhất của một bản tin, chỉ cú hai khoỏ này mới cú thể mó hoỏ và giải mó cho nhau.

Encrypt

Encrypt EncryptedMessage DecryptDecrypt Messageclear

clear Message

Public Key Private

Key

Hỡnh 2. 15: Thuật toỏn mó hoỏ khoỏ cụng cộng

Ưu điểm của thuật toỏn mó hoỏ khoỏ cụng cộng:

+Khoỏ cụng cộng của khoỏ đụi cú thể được phõn phỏt một cỏc sẵn sang mà khụng sợ rằng điều này làm ảnh hưởng đến việc sử dụng cỏc khoỏ riờng. Khụng cần phải gửi một bản sao chộp khoỏ cụng cộng cho tất cả cỏc đỏp ứng mà chỳng ta cú thể lấy nú từ một mỏy chủ được duy trỡ bởi một cụng ty hay là nhà cung cấp dịch vụ.

+ Cho phộp xỏc thực nguồn phỏt của bản tin.

Nhươc điểm của mó hoỏ khoỏ cụng cộng là quỏ trỡnh mó hoỏ và giải mó rất chõm, chậm hơn nhiều so với mó hoỏ khoỏ bớ mật. Do đú nú thường được sử dụng để mó hoỏ cỏc khoỏ phiờn, một lượng dữ liệu nhỏ. Một số thuật toỏn sử dụng mó hoỏ khoỏ cụng cộng như RSA, Diffie-Hellman.

a. Thuật toỏn RSA

Kỹ thuật mó hoỏ khoỏ cụng cộng RSA được phỏt triển năm 1977, và cỏi tờn RSA bắt nguồn từ tờn của ba nhà phỏt triển là: Ron Rivest, Adir Shamir và Leonard Adleman.

Cơ sở của thuật toỏn dựa trờn tớnh phức tạp của phộp phõn tớch một số tự nhiờn lớn thành cỏc ước số nguyờn tố, được hiểu là cú thể dễ dàng nhõn A và B được kết quả là C nhưng khụng dễ dàng suy ra A và B khi biết C, với A, B là những số tương đối lớn.

Hàm một chiều trong thuật toỏn RSA cú dạng y= f(x)= Xe Cỏc bước thực hiện thuật toỏn RSA:

Bước 1: Tạo khoỏ

- Tạo hai số nguyờn lớn p,q - Tớnh n = p.q; 0(n)=(p-1)(q-1)

- Chọn ngẫu nhiờn 1<e<0(n) thoả gcd (0(n), e)=1 - Tớnh d=e-1mod 0(n)

- Khoỏ cụng khai Ku=[e,n] - Khoỏ bớ mật Kr=[d,n] Bước 2: Mật mó

- Đoạn tin x<n

- Mật mó y=Xemod n Bước 3 Giải mó - Khối tin mó:y

- Giải mó y=Xemod n.

Khoỏ RSA bao gồm ba giỏ trị số đặc biệt được sử dụng trong cỏc cặp để mó hoỏ và giải mó dữ liệu. Khoỏ cụng cộng RSA gồm một giỏ trị khoỏ cụng cộng (thường là 317 hay 65.537) và một mạch toỏn modulus để lấy giỏ trị tuyệt đối. Modulus là sản phẩm của hai số lớn chớnh được chọn một cỏch ngẫu nhiờn, được liờn kết một cỏch toỏn học đến khoỏ cụng cụng được chọn. Khoỏ riờng được tớnh toỏn từ hai số chớnh phỏt ra từ modulus và giỏ trị khoỏ cụng cộng.

Thực tế, để thực hiện thuật toỏn mật mó khoỏ cụng khai RSA cũn phải liờn quan đến một loạt cỏc vấn đề lý thuyết số phức tạp, như thuật toỏn Euclide để tỡm ƯSCLN của hai số nguyờn, thuật toỏn Miller-Rabin để kiểm tra tớnh nguyờn tố của cỏc số tự nhiờn lớn.

Kỹ thuật này tạo ra cỏc khoỏ cụng cộng phự hợp với cỏc khoỏ riờng đặc biệt. Điều này tạo cho RSA những ưu điểm là cho phộp người giữa một khoỏ riờng mó hoỏ dữ liệu với khoỏ đú, vỡ thế bất kỳ người nào cú một bản sao của khoỏ cụng cộng đều cú thể giải mó nú sau đú.

b. Thuật toỏn Diffie-Hellman

Kỹ thuật Diffie-Hellman là thuật toỏn mó hoỏ khoỏ cụng cộng thực tế đầu tiờn và trong thực tế kỹ thuật này được ỳng dụng rất nhiều cho việc quản lý khoỏ. Thuật toỏn DH cho phộp tự động bảo mật trao đổi khoỏ qua một mạng khụng an toàn.

Với DH, mỗi đối tượng ngang hàng tạo ra một cặp khoỏ chung và riờng. Khoỏ riờng được tạo ra bởi mỗi đối tượng ngang hàng và được giữ bớ mật, khụng bao giờ chia sẻ. Khoỏ chung được tớnh toỏn từ khoỏ riờng bởi mỗi đối tượng ngang hàng và được truyền trờn kờnh khụng an toàn. Mỗi đối tượng tổ hợp khoỏ chung của đối tượng ngang hàng khỏc với khoỏ riờng của chỳng, và tớnh toỏn để tao ra cựng một số mật mó chia sẻ. Số mật

mó chia sẻ đựoc biến đổi thành một khoỏ chia sẻ. Khoỏ mật mó chia sẻ luụn truyền trờn một kờnh khụng an toàn.

Trao đổi khoỏ DH là một phương thức trao đổi khoỏ chung cung cấp cho hai đối tượng ngang hàng IPSec thiết lập một mật mó chia sẻ mà chỉ chỳng biết.

Quỏ trỡnh DH cú thể chia thành 5 bước:

1.Quỏ trỡnh DH bắt đầu với mỗi đối tượng ngang hàng tạo ra một số nguyờn lớn p và q. Mỗi đối tượng ngang hàng gửi cho đối tượng khỏc số nguyờn này của chỳng. Vớ dụ, A gửi p tới B. Mỗi đối tượng ngang hàng sau đú sẽ sử dụng giỏ trị p, q để tạo ra g, p là primitive root.

2. Mỗi đối tượng tạo ra một khoỏ DH riờng A là Xa, B là Xb.

3. Mỗi đối tượng ngang hàng tạo ra một khoỏ DH chung. Khoỏ riờng của mỗi đối tượng là sự kết hợp của số Prime p và primitive root g. Đối với A là Ya = g^Xa mod p, với B là Yb=g^Xb mod p.

4. Cỏc khoỏ chung Ya và Yb được trao đổi trong cụng cộng.

5. Mỗi đối tượng ngang hàng tạo ra một số mật mó chia sẻ ZZ bằng cỏch tổ hợp khoỏ chung nhận được từ đối tượng ngang hàng tương ứng với khoỏ riờng của nú. Đối với A là ZZ= YbXa mod p, đối với B là ZZ= YaXb mod p. Số mật mó chia sẻ ZZ được sử dụng trong việc tỡm ra cỏc khoỏ mật mó và xỏc thực.

Vớ dụ mụ tả hoạt động của thuật toỏn trao đổi khoỏ DH

1. Tạo ra một số nguyên là p rất lớ n gửi p đến B

Nhận q Tạo ra g

2. Tạo ra khoá cục bộ Xa 3. Tạo ra khoá chung Ya=g^Xa mod p 4. Gửi khoá chung Ya

5. Tạo ra số mật mã chia sẻ ZZ=Yb^Xa mod p 6. Tạo ra khoá mật mã chia sẻ từ ZZ

(DES,3DES, hoặc AES)

1. Tạo ra một số nguyên là q rất lớ n gửi p đến A

Nhận p Tạo ra g

2. Tạo ra khoá cục bộ Xb 3. Tạo ra khoá chung Yb=g^Xb mod p 4. Gửi khoá chung Yb

5. Tạo ra số mật mã chia sẻ ZZ=Ya^Xb mod p 6. Tạo ra khoá mật mã chia sẻ từ ZZ

2.2.4 Hạ tầng PKI

2.2.4.1 Tổng quan về PKI

Public Key Infrastructure (PKI) là một cơ chế để cho một bờn thứ ba (thường là nhà cung cấp chứng thực số ) cung cấp và xỏc thực định danh cỏc bờn tham gia vào quỏ trỡnh trao đổi thụng tin. Cơ chế này cũng cho phộp gỏn cho mỗi người sử dụng trong hệ thống một cặp public/private. Cỏc quỏ trỡnh này thường được thực hiện bởi một phần mềm đặt tại trung tõm và cỏc phần mềm khỏc tại cỏc địa điểm của người dựng. Khoỏ cụng khai thường được phõn phối trong chứng thực khúa cụng khai – hay Public Key Infrastructure.

Khỏi niệm hạ tầng cụng khai (PKI) thường được dựng để chỉ toàn bộ hệ thống bao gồm cả nhà cung cấp chứng thực (CA) cựng cỏc cơ chế liờn quan đồng thời với toàn bộ việc sử dụng cỏc thuật toàn mó húa cụng khai trong trao đổi thụng tin.

2.2.4.2 Cỏc thành phần PKI

Một hệ thống PKI gồm 4 thành phần sau :

+ Certification Authorities (CA) : Cấp và thu hồi chứng chỉ.

+ Registration Authorities (RA) : Gằn kết giữa khỏo cụng khai và định danh của người giữ chứng chỉ.

+ Clients : Người sử dụng chứng chỉ PKI hay theo cỏch khỏc được xỏc định như những thực thể cuối. Người sử dụng cuối hoặc hệ thống là chủ thể của chứng chỉ PKI.

+ Repository : Hệ thống ( cú thể phõn tỏn ) lưu trữ chứng chỉ và danh sỏch cỏc chứng chỉ bị thu hồi. Cung cấp cơ chế phõn phối chứng chỉ và CRLs đến cỏc thực thể cuối . Cỏc thành phần PKI và cỏc mối quan hệ giữa chứng chỉ được chỉ ra như trong hỡnh. Đõy là mụ hỡnh kiến trỳc do PKIX đưa ra.

Hỡnh 2. 16: Cỏc thành phần PKITổ chức chứng thực ( Certification Authority) Tổ chức chứng thực ( Certification Authority)

Trong hạ tằng cơ sở cụng khai, chứng chỉ cú vai trũ gắn kết giữa định danh với khúa cụng. Sự gắn kết này thể hiện trong dạng cấu trỳc dữ liệu được ký số, được đề cập đến như chứng chỉ đó được thảo luận ở phần trước . Một Certificate Authority (CA) là một thục thể PKI cú trỏch nhiệm cấp chứng chỉ cho cỏc thực thể trong hệ thống.

Tổ chức chứng thực - CA cũng được gọi là bờn thứ ba được tin tưởng vỡ người sử dụng cuối tin tưởng vào chữ ký số CA trờn chứng chỉ trong khi thực hiện những hoạt động mó húa cụng khai cần thiết . Tổ chức cung cấp dịch vụ chứng thực -Certification Service Provider (CSP) là một thuật ngữ khỏc nhắc đền CA được sử dụng trong bài bỏo cỏo.

Thụng thường CA thực hiện chức năng xỏc thực bằng cỏch cấp chứng chỉ cho cỏc CA khỏc và cho thực thể cuối ( người giữ chứng chỉ ) trong hệ thống. Nếu CA nằm ở đỉnh của mụ hỡnh phõn cấp PKI và chi cấp chứng chỉ cho những CA ở mức thấp hơn thỡ chứng chỉ này được gọi là chứng chỉ gốc “root certificate”.

Trung tõm đăng ký ( Registration Authorities)

Mặc dự CA cú thể thực hiện những chức năng đăng ký cần thiết, nhưng đụi khi cần cú thực thể độc lập thực hiện chức năng này. Thực thể này được gọi là “registration authority” – trung tõm đăng ký. Vớ dụ khi số lượng thực thể cuồi trong miền PKI tăng lờn và số thực thể cuối này được phõn tỏn khắp nơi về mặt địa lý thỡ việc đăng ký tại một CA

trung tõm trở thành vấn đề khú giải quyết. Để giải quyết vấn đề này cần thiết phải cú một hoặc nhiều RAs ( trung tõm đăng ký địa phương ).

Mục đớch chớnh của RA là để giảm tải cụng việc của CA. Chức năng thực hiện của một RA cụ thể sẽ khỏc nhau tựy theo nhu cầu truển khai PKI nhưng chu yếu bao gồm những chức năng sau :

+ Xỏc thực cỏ nhõn chủ thể đăng ký chứng chỉ.

+ Kiểm tra tớnh hợp lệ của thụng in do chủ thể cung cấp.

+ Xỏc nhận quyền của chủ thể đối với những thuộc tớnh chứng chỉ được yờu cầu. + Kiểm tra xem chủ thể cú thực sự sở hữu khúa riờng đang được đăng ký hay khụng - điều này thường được đề cập đến như sự chứng minh sở hữu (proof of possession - POP).

+ Tạo cặp khỏo bớ mật / cụng khai.

+ Phõn phối bớ mật được chỉa sẻ đền thực thể cuối khởi tạo quỏ trỡnh đăng ký với CA.

+ Lưu trữ khúa riờng.

+ Khởi sinh quỏ trỡnh khụi phục khúa.

+ Phõn phối thẻ bài vật lý (vớ dụ như thẻ thụng minh) chứa khúa riờng.

Thực thể cuối (Người giữ chứng chỉ và Clients)

Thực thể cuối trong PKI cú thể là con người, thiết bị, và thậm chớ là một chương trỡnh phần mềm nhưng thường là người sử dụng hệ thống. Thực thể cuối sẽ thực hiện những chức năng mật mó (mó húa, giải mó và ký số).

Hệ thống lưu trữ (Repositories)

Chứng chỉ (khúa cụng) và thụng tin thu hồi chứng chỉ phải được phõn phối sao cho những người cần đến chứng chỉ đều cú thể truy cập và lấy được.

Cú 2 phương phỏp phõn phối chứng chỉ : - Phõn phối cỏ nhõn :

Là cỏch phõn phối cở bản nhất. Trong phương phỏp này sẽ trực tiếp đưa chứng chi của họ cho người dng2 khỏc nhau. Chuyển giao bằng tay chứng chỉ được lưu trong đĩa cứng hoặc trong một số cỏc mụi trường lưu trữ khỏc. Cũng cú thể phõn phối bằng cỏch gằn chứng chỉ trong email để gửi cho người khỏc.

Cỏch này thực hiện tốt trong mụi nột nhúm ớt người dựng nhưng khi số lượng tăng người tăng lờn thỡ cú thể xảy ra vấn đề quan lý.

- Phõn phối cụng khai

Một phương phỏp khỏc phổ biến hơn để phõn phối chứng chỉ (và thụng tin thu hồi chứng chỉ) là cụng bố cỏc chứng chỉ rộng rói, cỏc chứng chỉ này cú thể sử dụng một cỏch cụng khai và được đặt ở vị trớ cú thể truy cập dễ dàng. Những vị trớ này được gọi là cơ sở dữ liệu.

Dưới đõy là vớ dụ về một số hệ thống lưu trữ: + X.500 Directory Access Protocol (DSAs).

+ Lightweight Directory Access Protocol (LDAP) Server. + Domain name System (DNS) và Web Servers.

+ File Transfer Protocol (FTP) Servers và Corporate Databases.

2.2.4.3 Chức năng cơ bản của PKI

Những hệ thống cho phộp PKI cú những chức năng khỏc nhau. Nhưng nhỡn chung cú hai chức năng chỡnh là: chứng thực và kiểm tra.

Chứng thực ( Certification) : là chức năng quan trong nhất của hệ thống PKI. Đõy là quỏ trỡnh ràng buộc khúa cụng khai với định danh của thực thể. CA là thực thể PKI thực hiện chứng năng, chứng thực. Cú hai phương phỏp chứng thực:

+ Tồ chức chứng thực (CA) tạo ra cặp khúa cụng khai / khúa bớ mật và tạo ra chứng chỉ cho phần cụng khúa cụng của cặp khúa.

+ Người sử dụng tư tạo cặp khúa và đưa khúa cụng cho CA để CA tạo chứng chỉ khúa cụng đú. Chứng chi đảm bảo tớnh toan vẹn của khúa cụng khai và cỏc thụng tin gắn cựng.

Thẩm tra ( validation) : quỏ trỡnh cỏc định liệu chứng chỉ đó đưa ra cú thể được sử dụng đỳng mục đớch thớch hợp hay khụng được xem như là quỏ trỡnh kiểm tra tớnh hiệu lực của chứng chỉ. Úa trỡnh này bao gồm một sau bước sau:

+ Kiểm tra xem liệu cú đỳng là CA được tin tưởng đó ký số lện chứng chỉ hay khụng

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu xây dựng giải pháp bảo mật mạng riêng ảo VPN dựa trên công nghệ mở Luận văn ThS. Công nghệ thông tin 60 48 15 (Trang 50)

Tải bản đầy đủ (PDF)

(107 trang)