Giao thức TCP/IP đóng một vai trò rất quan trọng trong các hệthống mạng hiện nay.
Vềnguyên tắc, có nhiều tùy chọn khác nhau vềgiao thức đểtriển khai các hệthống mạng như
TCP/IP, IPX/SPX, NetBEUI, Apple talk, Tuy nhiên, TCP/IP là lựa chọn gần nhưbắt buộc
do giao thức này được sửdụng làm giao thức nền tảng của mạng Internet.
Vào thời điểm thiết kếgiao thức này, vấn đềbảo mật thông tin chưa thật sự được quan
tâm, do đó, các giao thức trong bộTCP/IP hầu nhưkhông được trang bịbất kỳmột cơchế
bảo mật nào. Cấu trúc gói dữliệu (IP, TCP, UDP và cảcác giao thức ứng dụng) được mô tả
công khai, bắt được một gói IP trên mạng, ai cũng có thểphân tích gói để đọc phần dữliệu
chứa bên trong, đó là chưa kểhiện nay, các công cụbắt và phân tích gói (Packet capture)
được xây dựng với các tính năng mạnh và phát hành rộng rãi.
Việc bổsung các cơchếbảo mật vào mô hình TCP/IP, bắt đầu từgiao thức IP là một
nhu cầu cấp bách. IP security (IPSec) là một giao thức được chuNn hóa bới IETF từnăm 1998
nhằm mục đích cung cấp các cơchếmã hóa và xác thực thông tin cho chuỗi thông tin truyền
đi trên mạng bằng giao thức IP. IPSec được thiết kếnhưphần mởrộng của giao thức IP, được
thực hiện thống nhất trong cảhai phiên bản của IP và IPv4 và IPv6. Đối với IPv4, việc áp
dụng IPSec là một tùy chọn nhưng đối với IPv6, giao thức bảo mật này được triển khai bắt
buộc.
15 trang |
Chia sẻ: lvbuiluyen | Lượt xem: 3350 | Lượt tải: 1
Bạn đang xem nội dung tài liệu An toàn và an ninh mạng - Chương 5: Bảo mật mạng với ip security, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1
CHƯƠNG 5
BẢO MẬT MẠNG VỚI IP SECURITY
I- TỔNG QUAN VỀ IPSec
I.1- Giới thiệu
Giao thức TCP/IP đóng một vai trò rất quan trọng trong các hệ thống mạng hiện nay.
Về nguyên tắc, có nhiều tùy chọn khác nhau về giao thức để triển khai các hệ thống mạng như
TCP/IP, IPX/SPX, NetBEUI, Apple talk, …Tuy nhiên, TCP/IP là lựa chọn gần như bắt buộc
do giao thức này được sử dụng làm giao thức nền tảng của mạng Internet.
Vào thời điểm thiết kế giao thức này, vấn đề bảo mật thông tin chưa thật sự được quan
tâm, do đó, các giao thức trong bộ TCP/IP hầu như không được trang bị bất kỳ một cơ chế
bảo mật nào. Cấu trúc gói dữ liệu (IP, TCP, UDP và cả các giao thức ứng dụng) được mô tả
công khai, bắt được một gói IP trên mạng, ai cũng có thể phân tích gói để đọc phần dữ liệu
chứa bên trong, đó là chưa kể hiện nay, các công cụ bắt và phân tích gói (Packet capture)
được xây dựng với các tính năng mạnh và phát hành rộng rãi.
Việc bổ sung các cơ chế bảo mật vào mô hình TCP/IP, bắt đầu từ giao thức IP là một
nhu cầu cấp bách. IP security (IPSec) là một giao thức được chuNn hóa bới IETF từ năm 1998
nhằm mục đích cung cấp các cơ chế mã hóa và xác thực thông tin cho chuỗi thông tin truyền
đi trên mạng bằng giao thức IP. IPSec được thiết kế như phần mở rộng của giao thức IP, được
thực hiện thống nhất trong cả hai phiên bản của IP và IPv4 và IPv6. Đối với IPv4, việc áp
dụng IPSec là một tùy chọn nhưng đối với IPv6, giao thức bảo mật này được triển khai bắt
buộc.
Các ứng dụng điển hình của IPSec bao gồm:
• Kết nối giữa các chi nhánh của một tổ chức thông qua mạng Internet: bằng
cách xây dựng các mạng riêng ảo VPN (Virtual Private Network) trên nền của
mạng WAN công cộng hoặc mạng Internet. Các tổ chức có thể kết nối các
mạng con ở các chi nhánh của mình lại thành một mạng riêng với chi phí thấp
nhưng vẫn đảm bảo được độ an tòan. Mô hình này còn được gọi là mô hình
site-to-site VPN.
• Truy xuất từ xa thông qua mạng Internet: Thực chất đây là một dạng khác của
VPN (remote access VPN). Với IPSec, người dùng có thể kết nối đến hệ thống
mạng nội bộ của mình từ một điểm bất kỳ nào đó trên Interent, đảm bảo truy
xuất được các tài nguyên nội bộ một cách an toàn.
• Nâng cao tính an tòan của các giao dịch thương mại trên mạng Internet, áp
dụng cho các website bán hàng qua mạng hoặc các dịch vụ thanh tóan qua
Internet. Người dùng thiết lập kết nối đến các hệ thống này thông qua các kết
nối có hỗ trợ IPSec, do đó mặc dù thông tin vẫn truyền đi qua mạng Internet
công cộng nhưng tính bảo mật vẫn được đảm bảo.
Như vậy, ứng dụng rộng rãi nhất của IPSec chính là làm công nghệ nền tảng để triển
khai các mạng VPN. Tuy nhiên, IPSec là một giao thức phức tạp, đồng thời còn Nn chứa một
số vấn đề về tính an toàn, trong khi thực tế hiện nay còn nhiều giải pháp thiết lập VPN khác
(L2TP, MPLS, SSL, …), cho nên việc ứng dụng IPSec cũng còn hạn chế.
2
Các ưu điểm của IPSec:
-Khi IPSec được triển khai trên bức tường lửa hoặc bộ định tuyến của một mạng riêng,
thì tính năng an tòan của IPSec có thể áp dụng cho tòan bộ lưu lượng vào ra mạng riêng đó
mà các thành phần khác không cần phải xử lý thêm các công việc liên quan đến bảo mật.
-IPSec được thực hiện bên dưới của lớp TCP và UDP, đồng thời nó họat động một
cách trong suốt với các lớp này. Do vậy, không cần phải thay đổi phần mềm hay cấu hình lại
các dịch vụ khi IPSec được triển khai.
-IPSec có thể được cấu hình để họat động một cách trong suốt đối với các ứng dụng
đầu cuối, điều này giúp che giấu những chi tiết cấu hình phức tạp mà người dùng phải thực
hiện khi kết nối đến mạng nội bộ từ xa thông qua mạng Internet.
I.2- Kiến trúc IPSec
Thiết bị mạng
có hỗ trợ IPSec
Thiết bị mạng
có hỗ trợ IPSec
Thiết bị đầu cuối
có hỗ trợ IPSec
Mạng WAN /
Internet
Mạng LAN / intranet Mạng LAN / intranet
Tiêu đề IP
(IP header)
Tiêu đề IPSec
(IPSec header)
Dữ liệu của gói IP
(IP Payload)
Các thành phần của gói dữ liệu:
Hình 3.5: Ứng dụng của IPSec
3
IPSec là một giao thức phức tạp, dựa trên nền của nhiều kỹ thuật cơ sở khác nhau như mật
mã, xác thực, trao đổi khóa, …Xét về mặt kiến trúc, IPSec được xây dựng dựa trên các thành
phần bảo mật cơ bản sau đây, mỗi thành phần được định nghĩa trong một tài liệu riêng tương
ứng (hình 3.6):
-Kiến trúc IPSec (RFC 2401): Quy định cấu trúc, các khái niệm và yêu cầu của IPSec.
-Giao thức ESP (RFC 2406): Mô tả giao thức ESP, là một giao thức mật mã và xác
thực thông tin trong IPSec.
-Giao thức AH (RFC 2402): Định nghĩa một giao thức khác với chức năng gần giống
ESP. Nhưng vậy, khi triển khai IPSec, người sử dụng có thể chọn dùng ESP hoặc AH. Mỗi
giao thức có ưu và nhược điểm riêng, sẽ được trình bày trong phần này.
-Thuật tóan mật mã: Định nghĩa các thuật tóan mã hóa và giải mã sử dụng trong
IPSec. IPSec dựa chủ yếu vào các giải thuật mã hóa đối xứng.
-Thuật tóan xác thực: Định nghĩa các thuật tóan xác thực thông tin sử dụng trong AH
và ESP.
-Quản lý khóa (RFC 2408): Mô tả các cơ chế quản lý và trao đổi khóa trong IPSec.
-Miền thực thi (Domain of Interpretation_DOI): Định nghĩa môi trường thực thi
IPSec. Như đã trình bày, IPSec không phải là một công nghệ riêng biệt mà sự tổ hợp của
nhiều cơ chế, giao thức và kỹ thuật khác nhau, trong đó mỗi cơ chế, giao thức đều có nhiều
Kiến trúc IPSec
Giao thức ESP Giao thức AH
Thuật tóan mật mã Thuật tóan xác thực
DOI
Quản lý khóa
Hình 3.6: Kiến trúc IPSec
4
chế độ họat động khác nhau. Việc xác định một tập các chế độ cần thiết để triển khai IPSec
trong một tình huống cụ thể là chức năng của miền thực thi.
Xét về mặt ứng dụng, IPSec thực chất là một giao thức họat động song song với IP
nhằm cung cấp hai chức năng cơ bản mà IP nguyên thủy chưa có, đó là mã hóa và xác thực
gói dữ liệu. Một cách khái quát, có thể xem IPSec là một tổ hợp gồm 2 thành phần:
-Giao thức đóng gói, bao gồm AH và ESP.
-Giao thức trao đổi khóa IKE (Internet Key Exchange).
I.3- Các dịch vụ của IPSec
Các dịch vụ được cung cấp bởi IPSec bao gồm:
• Quản lý truy xuất (access control)
• Tòan vẹn dữ liệu ở chế độ không kết nối (connectionless integrity)
• Xác thực nguồn gốc dữ liệu (data origin authentication)
• Chống phát lại (anti-replay)
• Mã hóa dữ liệu (encryption)
• Bảo mật dòng lưu lượng (traffic flow confidentiality)
Việc cung cấp các dịch vụ này trong từng tình huống cụ thể phụ thuộc vào giao thức
đóng gói được chọn dùng là AH hay ESP. Theo đó, nếu giao thức được chọn là AH thì các
dịch vụ mã hóa và bảo mật dòng dữ liệu sẽ không được cung cấp.
I.4- Hai chế độ họat động của IPSec
IPSec (cả AH và ESP) cung cấp hai chế độ làm việc khác nhau:
-Chế độ vận chuyển (transport mode): cung cấp cơ chế bảo vệ cho dữ liệu của các lớp
cao hơn (TCP, UDP hoặc ICMP). Ở cơ chế này, phần dữ liệu (payload) của gói IP được áp
dụng các cơ chế bảo vệ (mật mã hoặc xác thực). Chế độ này thường dùng cho các kết nối từ
đầu cuối đến đầu cuối, ví dụ từ trạm làm việc đến máy chủ hoặc giữa hai trạm làm việc với
nhau.
-Chế độ đường hầm (tunnel mode): cung cấp cơ chế bảo vệ ở lớp IP, nghĩa là gói IP
cùng với các tiêu đề của AH hoặc ESP được gói thêm một lần nữa bằng các tiêu đề mới. Khi
đó, các gói IP gốc được xem như di chuyển trong một đường hầm (tunnel) từ đầu này đến đầu
kia của mạng mà các nút trung gian không xen vào được. Chế độ này thường được dùng trong
các SA nối giữa hai gateway của hai mạng.
Chế độ vận chuyển và chế độ đường hầm sẽ được trình bày riêng trong từng giao thức
AH và ESP.
I.5- Liên kết bảo mật
Mục tiêu của IPSec là cung cấp một cơ chế truyền an tòan đảm bảo tính tòan vẹn và
xác thực của các gói dữ liệu IP. Bản chất IP là một giao thức không có kết nối, và theo
5
nguyên tắc này, các gói IP sẽ được xử lý một cách độc lập nhau. Tuy nhiên, khi triển khai
IPSec với các dịch vụ như mã hóa, xác thực, điều khiển truy xuất, chống phát lại, … thì các
gói IP này cần phải nằm trong một mối liên quan nào đó, để hai đầu truyền nhận có thể áp
dụng các cơ chế bảo mật lên tòan bộ dòng dữ liệu một cách thống nhất (cần chú ý rằng IPSec
hòan tòan trong suốt đối với tất cả các giao thức phía trên IP).
IPSec định nghĩa một khái niệm để mô tả các quan hệ này, được gọi liên kết bảo mật
SA (Security association). Mỗi SA được xem như một quan hệ một chiều (đơn công) giữa hai
đầu truyền nhận dữ liệu, nhằm mục đích xác định các thông số bảo mật áp dụng cho luồng dữ
liệu theo chiều đó. Như vậy, một kết nối hai chiều thường thấy giữa hai hệ thống đầu cuối sẽ
bao gồm 2 SA. Mỗi SA chỉ sử dụng một giao thức đóng gói nhất định (AH hoặc ESP) chứ
không thể sử dụng đồng thời cả hai.
Mỗi SA được nhận dạng bởi 3 thông số sau đây:
• Security Parameters Index (SPI): là một chuỗi bit được gán cho SA có tác
dụng phân biệt giữa SA này với SA khác. SPI được đặt trong tiêu đề của AH
và ESP. Phía nhận sẽ chọn đúng SA tương ứng để xử lý các gói dữ liệu nhận
được.
• IP Destination Address: Đây là địa chỉ đầu cuối của SA, địa chỉ này là địa chỉ
của thiết bị mà SA kết thúc tại đó, có thể là địa chỉ của một thiết bị đầu cuối
hoặc của một thiết bị mạng (router, firewall, gateway).
• Security Protocol Identifier: Xác định các thông số bảo mật áp dụng trên SA,
cho biết SA sử dụng giao thức xác thực nào (AH hay ESP).
Như vậy, trong mỗi gói IP của IPSec, SA được nhận dạng bằng tổ hợp gồm địa chỉ
đích (destination address) và SPI IPSec (cả AH và ESP).
Ngòai ra, mỗi SA còn chứa nhiều thông số, tùy thuộc vào từng hệ thống đầu cuối khác
nhau. Các thông số này có thể là:
• Sequence number counter: một giá trị 32 bit dùng để tạo ra các số thứ tự của
các gói IP.
• Sequence Counter Overflow: Xác định các thức xử lý khi số thứ tự gói bị tràn
(dùng đến giá trị lớn nhất của 32 bit). Hai cách xử lý thường dùng là tạo ra một
sự kiện giám sát hệ thống (auditable event) và kết thúc truyền dữ liệu trên SA
hiện hành, đồng nghĩa với việc thiết lập một SA mới.
• Anti-Replay Window: thông số dùng trong dịch vụ chống phát lại, có chức
năng xác định gói IP nhận được là gói nguyên thủy hay gói phát lại.
• AH Information: thông số họat động cho giao thức đóng gói AH, bao gồm
thuật tóan xác thực, khóa, thời gian sống của khóa và các tham số khác.
• ESP Information: thông số họat động cho giao thức đóng gói ESP, bao gồm
thuật tóan mã hóa, thuật tóan xác thực, khóa, thờio gian sống của khóa, các giá
trị khởi tạo ban đầu cho ESP và các thông số khác.
• Lifetime of This Security Association: Thời gian tồn tại tối đa của SA, được xác
định bằng thời gian họac số bte dữ liệu đã truyền đi trên SA. Hết giới hạn này,
SA cần được giải tỏan và thiết lập SA mới.
6
• IPSec Protocol Mode: cho biết chế độ họat động của IPSec (vận chuyển hay
đường hầm).
• Path MTU: Xác định MTU trên SA (kích thuớc gói dữ liệu lớn nhất).
IPSec là một giao thức tùy chọn ở lớp IP, trong suốt với các giao thức lớp trên. Việc
thực hiện IPSec tại thiết bị đầu cuối làm tăng lưu lượng đối với bộ xử lý và làm chậm quá
trình trao đổi dữ liệu của người dùng. Do đó, IPSec cho phép người dùng tùy chọn việc có
dùng IPSec hay không và dùng IPSec cho lọai dữ liệu nào. Vídụ, trên một máy tính cá nhân,
người dùng chỉ cần thực hiện IPSec khi họ kết nối đến hệ thống mạng riêng của họ, còn khi
truy xuất đến các website công cộng thì dữ liệu được truyền đi dưới dạng các gói IP bình
thường vì các giao dịch này không cần có nhu cầu bảo mật. Việc phân biệt các gói IP để quyết
định áp dụng các dịch vụ bảo mật tương ứng trên IPSec được thực hiện thông qua một tập các
chính sách được định nghĩa sẵn trên thiết bị đầu cuối gọi là Security Policy Database (SPD).
SPD là một bảng danh sách các tiêu chuNn lọc gói cùng với nhận dạng các SA tương
ứng. Việc xử lý các gói IP xuất phát tại một thiết bị đầu cuối theo quy trình như sau:
1-Đọc các giá trị trong các trường tiêu đề của gói IP để xác định SA tương ứng với gói
này. Nếu không có SA nào được xác định, nghĩa là gói IP có thể được chuyển đi ngay mà
không cần áp dụng bất kỳ thao tác xử lý bảo mật nào.
2-Xác định SPI của SA tương ứng
3-Xử lý gói theo định nghĩa trong SA.
Các thông số trong tiêu đề gói IP thường được dùng để chọn lựa một SA trong SPD
thường dùng
-Địa chỉ nguồn của gói IP (Source IP address)
-Địa chỉ đích của gói IP (Destination IP address)
-Nhận dạng người dùng đầu cuối (UserID)
-Giao thức lớp trên (TCP, UDP, ICMP, …)
-Port nguồn và port đích
Các chính sách IPSec trên hệ điều hành Windows thực thi theo đúng quy trình này,
nhưng với các tên gọi khác nhau. SPD được gọi là IPSec policy, tiêu chuNn lọc gói gọi là filter
rule và SA tương ứng gọi là filter action.
II- GIAO THỨC XÁC THỰC AH
AH là một trong hai giao thức đóng gói dùng trong IPSec. Mục tiêu chính của AH là
đảm bảo tính tòan vẹn của dữ liệu chuyển đi trên mạng IP. AH cho phép xác thực người dùng,
xác thực ứng dụng và thực hiện các cơ chế lọc gói tương ứng. Ngòai ra, AH còn có khả năng
hạn chế các tấn công giả danh (spoofing) và tấn công phát lại (replay).
Cơ chế xác thực của AH dựa trên mã xác thực MAC (Message Authetication Code),
do đó, để thực thi AH thì hai đầu cuối của SA phải dùng chung một khóa bí mật, mặc dù
không dùng một thuật tóan mật mã nào.
II.1- Cấu trúc gói AH
7
Cấu trúc tiêu đề của gói AH (hình 3.7) bao gồm các phần sau:
-Next Header (8 bits): Nhận dạng kiểu tiêu đề đi liền sau tiêu đề của AH, dùng các số
nhận dạng IP theo quy định của Internet Assigned Number Authority (IANA).
-Payload Length (8 bits): Chiều dài của gói AH, tính bằng đơn vị 32 bit trừ đi 2. Ví
dụ, chiều dài phần dữ liệu xác thực là 96 bit (= 3 * 32 bit), cộng với chiều dài phần tiêu đề
AH (cố định) là 3 * 32 bit nữa thành 6 * 32 bit, khi đó giá trị của trường kích thước dữ liệu là
4.
-Reserved (16 bits): Phần dành riêng, chưa dùng.
-Security Parameters Index (SPI - 32 bits): Nhận dạng SA như đã trình bày ở trên.
-Sequence Number (32 bits): Số thứ tự gói.
-Authentication Data: Mã xác thực, có chiều dài thay đổi nhưng phải là bội số của 32
bit. Trường này chứa giá trị kiểm tra ICV (Integrity Check Value) hoặc MAC (Message
Authentication Code) cho tòan bộ gói
II.2- Cơ chế chống phát lại
Cơ chế này cho phép ngăn chặn các tấn công dạng phát lại (replay), tức là bắt gói, lưu
trữ rồi phát lại. Trường số thứ tự (Sequence number) trong tiêu đề AH được dùng để đánh dấu
thứ tự các gói được gởi đi trên một SA. Ban đầu, giá trị này được khởi tạo bằng 0 và tăng dần
sau mỗi gói được gởi. Để đảm bảo không có gói lặp lại, khi số thứ tự đạt giá trị cực đại (232-
1), nó sẽ không được quay lại giá trị 0 mà thay vào đó, một SA cùng với khóa mới được thiết
lập để tiếp tục việc truyền dữ liệu. Điều này đảm bảo trên cùng một SA, không bao giờ có hai
gói dữ liệu có số thứ tự trùng nhau.
Ở phía nhận, quá trình xử lý các gói nhận được thực hiện phức tạp hơn nhằm phát hiện
các gói lặp nhau. Do IP không thiết lập kết nối và không đảm bảo truyền tin cậy, do đó việc
sai thứ tự, lặp hoặc mất gói là điều có thể xảy ra. Việc phát hiện các sự cố này thực hiện theo
cơ chế dịch cửa sổ như mô tả ở hình 3.8. Cửa sổ là một bộ nhớ đệm được thiết kế theo cơ chế
Next header
Hình 3.7: Cấu trúc gói AH
Payload length Reserved
Security Parameters Index (SPI)
Sequence number
Authentication data
(Kích thước thay đổi)
Bit 0 8 16 31
8
hàng đợi, có kích thước là W (mặc định W = 64). Số thứ tự gói trong hàng đợi được xếp tăng
dần từ trái qua phải, như vậy, cạnh phải của cửa sổ là gói có số thứ tự là N thì cạnh trái của
cửa sổ sẽ là gói có số thứ tự N – W. Mỗi khi nhận được một gói dữ liệu đúng (kiểm tra bằng
mã xác thực) và số thứ tự của gói nằm trong khỏang từ N – W + 1 đến N, vị trí tương ứng với
số thứ tự trong cửa sổ được đánh dấu. Cơ chế thực hiện như sau:
• Nếu gói nhận được nằm trong vùng hợp lệ của cửa sổ (có số thứ tự từ N – W +
1 đến N) và là một gói mới thì giá trị MAC của gói đó sẽ được kiểm tra. Nếu
chính xác (tức gói đã được xác thực) thì khe tương ứng trong cửa sổ được đánh
dấu.
• Nếu gói nhận được nằm bên phải của cửa sổ (có số thứ tự lớn hơn N) và là gói
mới, giá trị MAC của gói được kiểm tra. Nếu đúng thì cửa sổ được dịch một
khe sang bên phải, đồng thời khe tương ứng trong cửa sổ được đánh dấu.
• Nếu gói nhận được nằm bên trái cửa sổ hoặc giá trị MAC không hợp hệ thì bị
hủy bỏ, đồng thời hệ thống tạo ra cảnh báo tương ứng với sự kiện này.
II.3- Xác thực thông tin
Mã xác thực (trường Authentication Data) được tạo ra dùng một trong 2 cách:
-HMAC-MD5-96: dùng phương pháp HMAC, hàm băm là MD5, cắt lấy 96 bit đầu
tiên.
-HMAC-SHA-1-96: dùng phương pháp HMAC, hàm băm là SHA-1, cắt lấy 96 bit đầu
tiên.
Thuật toán MAC được áp dụng trên các phần thông tin sau đây:
• Các trường không bị thay đổi trong tiêu đề gói IP khi được chuyển tiếp trên
mạng hoặc có thể dự đóan được tại đầu cuối của SA. Những trường còn lại
trong tiêu đề gói IP được thay bằng các bit 0 khi tính tóan.
Dịch cửa sổ qua bên
phải nếu nhận được
một gói hợp lệ.
Cửa sổ với kích thước
cố định W
N - W
Ô được đánh dấu
biểu thị một gói hợp
lệ vừa được nhận
Ô không đánh dấu cho biết
gói dữ liệu ở vị trí đó chưa
được nhận
N + 1
Hình 3.8: Cơ chế dịch cửa sổ trong AH
9
• Các trường trong tiêu đề AH ngọai trừ trường Authentication Data. Trường
này được thay bằng các bit 0 khi tính.
• Tòan bộ gói dữ liệu của lớp trên (tức phần payload của gói IP).
Cơ chế tạo mã xác thực MAC được thực hiện như sau:
HMAC = H[(K ⊕ opad) | | H[(K ⊕ ipad) | | M]]
Trong đó:
ipad = 00110110(0x36) lặp lại 64 lần để tạo thành 512 bits
opad = 01011100(0x5c) lặp lại 64 lần để tạo thành 512 bits
K là khóa đã thống nhất giữa hai bên khi thiết lập SA và M là tòan bộ các phần thông
tin cần xác thực như đã mô tả ở trên.
II.4- Chế độ vận chuyển và chế độ đường hầm
Hình 3.9 mô tả hai trường hợp xác thực khác nhau:
-Xác thực từ đầu cuối đến đầu cuối (End-to-End Authentication): là trường hợp xác
thực trực tiếp giữa hai hệ thống đầu cuối (giữa máy chủ với trạm làm việc hoặc giữa hai trạm
làm việc), việc xác thực này có thể diễn ra trên cùng mạng nội bộ hoặc giữa hai mạng khác
nhau, chỉ cần 2 đầu cuối biết được khóa bí mật của nhau. Trường hợp này sử dụng chế độ vận
chuyển của AH.
-Xác thực từ đầu cuối đến trung gian (End-to-Intermediate Authentication): là trường
hợp xác thực giữa một hệ thống đầu cuối với một thiết bị trung gian (router hoặc firewall).
Trường hợp này sử dụng chế độ đường hầm của AH.
Hình 3.10 mô tả phạm vi áp dụng cơ chế bảo vệ của AH lên gói dữ liệu trong hai chế
độ khác nhau.
Server
Xác thực đầu cuối
đến đầu cuối
Xác thực đầu
cuối đến đầu cuối
Xác thực đầu cuối đến
trung gian
Router/Firewall
Mạng nội bộ
Mạng công
cộng
Hình 3.9: Hai chế độ xác thực của AH
10
III- GIAO THỨC ĐÓNG GÓI ESP
ESP (Encapsulating Security Payload) là một lựa chọn khác để thực thi IPsec bên
cạnh giao thức xác thực thông tin AH. Chức năng chính của ESP là cung cấp tính bảo mật cho
dữ liệu truyền trên mạng IP bằng các kỹ thuật mật mã. Tuy nhiên, ESP cũng còn có một tùy
chọn khác là cung cấp cả dịch vụ bảo đảm tính tòan vẹn của dữ liệu thông qua cơ chế xác
thực. Như vậy, khi dùng ESP, người dùng có thể chọn hoặc không chọn chức năng xác thực,
còn chức năng mã hóa là chức năng mặc định của ESP.
III.1- Cấu trúc gói ESP
Gói dữ liệu ESP gồm các thành phần sau (hình 3.11):
-Security Parameters Index (SPI - 32 bits): Nhận dạng SA như trong giao thức AH.
-Sequence Number (32 bits): Số thứ tự gói, có chức năng như số thứ tự trong AH.
-Payload Data: Đây là phần dữ liệu được bảo vệ bằng mật mã. Trường này có độ dài
thay đổi. Trong chế độ vận chuyển, đây là tòan bộ gói dữ liệu của lớp 4 (TCP hoặc UDP).
Còn trong chế độ đường hầm, đây là tòan bộ gói IP. ESP chuNn sử dụng thuật toán mật mã đối
xứng DES, tuy nhiên, có thể dùn