Tải bản đầy đủ (.doc) (110 trang)

đồ án: Bảo mật nhóm trong IP Multicast

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (795.76 KB, 110 trang )

Đồ án tốt nghiệp đại học Mục lục
MỤC LỤC
MỤC LỤC i
DANH SÁCH HÌNH VẼ iv
THUẬT NGỮ VIẾT TẮT v
LỜI NÓI ĐẦU viii
CHƯƠNG 1 MULTICAST VÀ NHỮNG THÁCH THỨC VỀ BẢO MẬT NHÓM 1
1.2 Các phương pháp chuyển tiếp Multicast 2
1.2.1 Các cây nguồn 3
1.2.2 Các cây dùng chung 4
1.3 Định tuyến trong IP Multicast 5
1.3.1 IGMP 5
1.3.2 IGMPv1 6
1.3.3 IGMPv2 6
1.3.4 IGMPv3 7
1.3.5 Định tuyến Multicast 7
1.4 Multicast và những thách thức trong vấn đề bảo mật nhóm 9
1.5 Bảo vệ nội dung Multicast 12
1.5.1 Vấn đề điều khiển dữ liệu Multicast bảo mật 12
1.5.2 Vấn đề quản lý nguyên liệu tạo khóa 14
1.5.3 Vấn đề chính sách bảo mật Multicast 18
1.6 Bảo vệ kiến trúc hạ tầng 19
1.7 Kết luận chương 1 19
CHƯƠNG 2 NHẬN THỰC DỮ LIỆU MULTICAST 21
2.1 Các vấn đề trong nhận thực dữ liệu Multicast 21
2.1.1 Cung cấp nhận thực nhóm 23
2.1.2 Cung cấp nhận thực nguồn 23
2.2 Chữ ký số cho nhận thực nguồn 24
2.3 Chuỗi hàm băm cho nhận thực dữ liệu kiểu luồng 28
2.4 Nhận thực nguồn dựa trên MAC của các luồng không tin cậy 30
Vũ Bá Dũng D04VT2 i


Đồ án tốt nghiệp đại học Mục lục
2.4.1 Quá trình khởi tạo TESLA 32
2.4.2 Nhận thực các gói ở bên gửi dựa trên MAC 33
2.4.3 Xử lý gói tại các bên nhận trong TESLA 33
2.4.4 TESLA mở rộng 35
2.5 Kết luận chương 2 35
CHƯƠNG 3: QUẢN LÝ KHÓA NHÓM TRONG BẢO MẬT NHÓM 37
3.1 Mô hình quản lý khóa nhóm 38
3.2 Các yêu cầu trong quản lý khóa nhóm 39
3.2.1 Các yêu cầu bảo mật cho quản lý khóa Unicast 40
3.2.2 Các yêu cầu bảo mật cho quản lý khóa nhóm 41
3.3 Quản lý GSA 43
3.3.1 Mô hình GSA 44
3.3.2 Định nghĩa GSA 45
3.4 Phân loại các vấn đề quản lý khóa nhóm 47
3.5 Kiến trúc và giao thức quản lý khóa nhóm 47
3.5.1 Vấn đề kiến trúc 49
3.5.1.1 IKAM 50
3.5.1.2 IOLUS 58
3.5.2 Các giao thức phân phối khóa 63
3.5.2.1 GKMP 63
3.5.2.2 GSAKMP 66
3.5.2.3 GDOI 70
3.6 Các thuật toán quản lý khóa nhóm 78
3.6.1 Chuyển khóa theo chu kỳ và theo đợt 80
3.6.2 Cân bằng trong chuyển khóa theo đợt 81
3.6.3 MARKS 82
3.6.4 LKH 84
3.7 Kết luận chương 3 89
CHƯƠNG 4 CHÍNH SÁCH BẢO MẬT NHÓM 90

4.1 Khung chính sách bảo mật nhóm 91
4.2 Phân loại chính sách bảo mật nhóm 94
Vũ Bá Dũng D04VT2 ii
Đồ án tốt nghiệp đại học Mục lục
4.2.1 Chính sách thông báo 94
4.2.2 Chính sách thành viên 95
4.2.3 Chính sách ủy quyền hay điều khiển truy nhập 95
4.2.4 Chính sách bảo vệ dữ liệu 96
4.2.5 Chính sách ủy quyền quản lý nhóm 96
4.2.6 Chính sách phân phối khóa 97
4.2.7 Chính sách khôi phục tổn hại 98
4.3 Thực thi chính sách bảo mật nhóm 98
4.4 Kết luận chương 4 99
KẾT LUẬN 100
TÀI LIỆU THAM KHẢO 102
Vũ Bá Dũng D04VT2 iii
Đồ án tốt nghiệp đại học Thuật ngữ viết tắt
DANH SÁCH HÌNH VẼ
Hình 1.1 Truyền dẫn Multicast 2
Hình 1.2 Cây nguồn 3
Hình 1.3 Cây phân phối dùng chung 4
Hình 2.1 hàm băm kiểu sao 26
Hình 2.2 Hàm băm kiểu cây 27
Hình 2.3 Chuỗi hàm băm 28
Hình 2.4 Giản đồ chuỗi hàm băm 29
Hình 2.5 Chuỗi khóa và dẫn xuất khóa MAC 31
Hình 2.6 Thông tin nhận thực cùng gói dữ liệu trong TESLA 33
Hình 2.7 Các khoảng thời gian trong TESLA 34
Hình 3.1 Các đối tượng trong quản lý khóa nhóm 38
Hình 3.2 Định nghĩa GSA 45

Hình 3.3 Phân chia vùng miền 51
Hình 3.4 Ví dụ về kiến trúc IKAM 52
Hình 3.5 bố trí IKAM các khóa cho các nhóm dữ liệu và điều khiển 54
Hình 3.6 Các nhóm con trong kiến trúc Iolus 60
Hình 3.7 Chuyển tiếp khóa / dữ liệu trong Iolus 62
Hình 3.8 Tiến trình GSAKMP 68
Hình 3.9 Trao đổi bước 2 GDOI 76
Hình 3.10 Bản tin ấn định GDOI 77
Hình 3. 11 Sơ đồ khối chức năng của GDOI 78
Hình 3.12 Các loại hình chuyển khóa 81
Hình 3.13 Chuyển khóa theo đợt và điều khiển truy nhập chuyển tiếp 82
Hình 3.14 Phân phối khóa trong MARKS 83
Hình 3.15 Ví dụ về phân cấp khóa trong LKH 85
Hình 3.16 Minh họa khởi tạo cây khóa LKH 86
Hình 3.17 Chuyển khóa gia nhập trong LKH 87
Hình 3.18 Chuyển khóa rời nhóm trong LKH 89
Hình 4.1 Khung phân phối chính sách bảo mật nhóm 93
Vũ Bá Dũng D04VT2 iv
Đồ án tốt nghiệp đại học Thuật ngữ viết tắt
THUẬT NGỮ VIẾT TẮT
ACL Access Control List Danh sách điều khiển truy nhập
AGK Area- Group- Key Khóa nhóm vùng
AKD Area Key Distributor Bộ phân phối khóa vùng
AMAAE Area Multicast address allocation
entity
Đối tượng cấp phát địa chỉ Mutlicast
vùng
AMESP Application Mutlicast
Encapsulating Security Payload
Ứng dụng Multicast đóng gói bảo

mật tải tin
CRL Compromise Recovery List Danh sách khôi phục tổn hại
DKD Domain Key Distributor Bộ phân phối khóa miền
DMAAE Domain Multicasst address
allocation entity
Đối tượng cấp phát địa chỉ Multicast
miền
DVMRP Distance Vector Multicasst
Routing Protocol
Giao thức định tuyến Multicast
Vectơ khoảng cách
ESP Encapsulating Security Payload Đóng gói bảo mật tải tin
FEC Forward error correction Sửa lỗi trước
GC Group Controller Bộ điều khiển nhóm
GCKS Group Controller/ Key Server Bộ điều khiển nhóm/ Server khóa
GDOI Group Domain Of Interpretation Miền biên dịch nhóm
GID Group Identificaion Nhận dạng nhóm
GKD Group Key Distributor Bộ phân phối khóa nhóm
GKMP Group Key Management
Protocol
Giao thức quản lý khóa nhóm
GKP Group Key Packet Gói khóa nhóm
GM Group Member Thành viên nhóm
Vũ Bá Dũng D04VT2 v
Đồ án tốt nghiệp đại học Thuật ngữ viết tắt
GOC Group Owner/ Creator Chủ/ Bộ tạo nhóm
GSA Group Security Association Liên kết bảo mật nhóm
GSAKMP Group Security Association Key
Management Protocol
Giao thức quản lý khóa liên kết bảo

mật nhóm
GSC Group Key Controller Bộ điều khiển khóa nhóm
GSI Group Security Intermediarie Trung gian bảo mật nhóm
GSPT Group Security Policy Token Thẻ bài chính sách bảo mật nhóm
GT Group Token Thẻ bài nhóm
IGMP Internet Group Management
Protocol
Giao thức quản lý khóa Internet
IKAM Internet Key Architecture for
Mutlicast
Kiến trúc khóa Internet cho
Multicast
IKE Internet Key Exchange Trao đổi khóa Internet
ISA Internet Security Association Liên kết bảo mật Internet
ISAKMP Internet Security Association
Key Management Protocol
Giao thức quản lý khóa liên kết bảo
mật Internet
KEK Key Encryption Key Khóa mã hóa khóa
KD Key Distributor Bộ phân phối khóa
LKH Logical Key Hierarchical Phân cấp khóa logic
MAAS Multicast Address Allocation
Server
Server cấp phát địa chỉ Multicast
MAC Message Authentication Code Mã hóa nhận thực bản tin
MOSPF Multicast Open Shortest Path
First
Ưu tiên đường ngắn nhất mở rộng
cho multicast
PIM-DM Protocol Independent Multicast-

Dense Mode
Giao thức multicast độc lập-Chế độ
tập trung
Vũ Bá Dũng D04VT2 vi
Đồ án tốt nghiệp đại học Thuật ngữ viết tắt
PIM-SM Protocol Independent Multicast-
Spare Mode
Giao thức multicast độc lập -Chế độ
phân tán
PKI Public Key Infrastructure Cấu trúc hạ tầng khóa công khai
RTJ Request To Join Truy vấn gia nhập
SGM Subgroup Manage Quản lý nhóm con
SPI Security Parameter Index Chỉ số tham số bảo mật
SPT Shortest Path Tree Cây đường ngắn nhất
TEK Traffic Encryption Key Khóa mã hóa lưu lượng
TESLA The Timed Efficien Stream Loss
Tolerant Authentication
Giao thức nhận thực cho phép- tổn
thất luồng hiệu quả về mặt thời gian
Vũ Bá Dũng D04VT2 vii
Đồ án tốt nghiệp đại học Lời nói đầu
LỜI NÓI ĐẦU
Sự phát triển không ngừng của Internet đã thúc đẩy các ứng dụng mạng và các
dịch vụ mới. Do đó số lượng khách hàng muốn đồng thời truy cập tăng lên rất lớn trong
mạng Internet. Nó đặt ra yêu cầu cung cấp truy nhập dữ liệu trong khi tối ưu hóa băng
thông. Multicast được phát triển như một phương pháp phân phối dữ liệu từ một máy
phát tới nhiều máy thu một cách hiệu quả, đảm bảo tối ưu hóa băng thông, giảm tải
mạng. Mặc dù với những ưu thế vượt trội về băng thông như thế nhưng khi nhìn vào
thực tế chúng ta thấy rằng sau rất nhiều các công trình nghiên cứu và phát triển các giao
thức Multicast trong thập kỷ trước, việc triển khai các ứng dụng của Multicast vẫn rất

chậm chạp. Nguyên nhân chính là do các dịch vụ Multicast thiếu hỗ trợ về quản lý lưu
lượng, độ tin cậy và bảo mật.
Bảo mật nhóm trong Multicast là một trong những vấn đề quan trọng nhất để giải
quyết việc triển khai các ứng dụng thông tin nhóm. Ví dụ, nhà đầu tư muốn một sự đảm
bảo rằng các báo giá chứng khoán phân phát qua Multicast được nhận thực. Tương tự
như vậy, các nhà cung cấp dịch vụ muốn giới hạn nội dung phân phối tới các thuê bao
đã trả tiền cho dịch vụ. Ở một khía cạnh khác, bảo mật là một yêu cầu của các ứng dụng
hội thảo quan trọng. Tóm lại là các ứng dụng phổ biến của Multicast rất có nhu cầu về
tính toàn vẹn dữ liệu, điều khiển truy nhập và tính riêng tư.
Đồ án tốt nghiệp với đề tài “Bảo mật nhóm trong IP Multicast” cung cấp những
kiến thức cơ bản và sau đó đi sâu vào một số khía cạnh quan trọng liên quan đến vấn
đề bảo mật nhóm trong Multicast. Đồ án được thực hiện với mong muốn tìm hiểu quá
trình bảo mật nhóm trong Multicast.
Đồ án được chia làm bốn chương như sau:
Chương 1: Multicast và những thách thức về bảo mật nhóm
Chương 2: Nhận thực dữ liệu Multicast
Chương 3: Quản lý khóa nhóm trong bảo mật nhóm
Chương 4: Chính sách bảo mật nhóm
Do tính chất dàn trải và luôn thay đổi của vấn đề bảo mật cùng những hạn chế về
hiểu biết của bản thân nên đồ án không tránh khỏi những thiếu sót. Vì vậy, em rất mong
nhận được sự góp ý của các thầy cô để hoàn thiện hơn đồ án của mình trong tương lai.
Sinh viên
Vũ Bá Dũng
Vũ Bá Dũng D04VT2 viii
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
CHƯƠNG 1 MULTICAST VÀ NHỮNG THÁCH THỨC VỀ BẢO
MẬT NHÓM
Cùng với sự phát triển của các mạng tốc độ cao và sự bùng nổ về kỹ thuật nén, các
ứng dụng đa phương tiện trở thành nhu cầu tất yếu. Tuy nhiên các ứng dụng này không
phù hợp với kiểu truyền Unicast truyền thống. Trong khi đó Multicast truyền luồng dữ

liệu tới nhiều điểm đích có nhu cầu nhận. Cơ chế này giúp giảm tải cho mạng đến mức
nhỏ nhất do bản tin chỉ thực hiện nhân gói tại những điểm rẽ nhánh tại một bộ định
tuyến.
1.1 Giới thiệu chung về IP Multicast
IP Multicast là một chuẩn mở của IETF dùng để truyền dẫn các gói dữ liệu IP từ
một nguồn đến nhiều đích trong một mạng LAN hay WAN. Các máy thu tham gia vào
một nhóm Multicast. Với IP Multicast, các ứng dụng chỉ gửi một bản sao của thông tin
cho một địa chỉ nhóm. Thông tin này chỉ gửi đến những điểm muốn nhận được lưu
lượng đó. Các nút có khả năng Multicast chạy bộ giao thức TCP/IP có thể nhận được
bản tin Multicast. Việc gửi bản tin Unicast và Broadcast là các trường hợp đặc biệt của
phương pháp Multicast. Truyền Multicast cải thiện đáng kể về hiệu suất, thường sử
dụng băng thông nhỏ hơn truyền điểm- điểm trên mạng, và cho phép xây dựng các ứng
dụng phân tán hợp lý.
Việc truyền IP Multicast sử dụng phương pháp đa hướng bao gồm ba hoạt động
riêng biệt: quyết định địa chỉ nhóm cho các nhóm, đăng kí thành viên nhóm, định tuyến
các bản tin.
Một địa chỉ Multicast cho phép phân phát một luồng dữ liệu đơn tới một tập hợp
các máy trạm đã được cấu hình như những thành viên của một nhóm Multicast trong
các mạng con phân tán khác nhau. Đây là phương pháp truyền dẫn đa điểm. Các nút
nhận ra các gói Multicast tại mức phần cứng. Các nhóm Multicast linh động với các
điểm thu có thể được tạo ra và loại bỏ nhanh chóng.
Một khái niệm quan trọng của IP Multicast là nhóm Multicast.Việc xây dựng một
nhóm Multicast bắt đầu với một server đang chạy một ứng dụng Multicast như audio,
video Khi một server được xây dựng, một địa chỉ Multicast Lớp D được gán cho ứng
dụng đó và tất cả các thành viên của nó. Một nhóm Multicast được cấp phát cho một
địa chỉ lớp D đại diện cho nhóm đó. Số lượng thành viên của nhóm có thể là 0, 1 hay
nhiều thành viên. Các thành viên có thể nằm tại các mạng con khác nhau. Một máy
Vũ Bá Dũng D04VT2 1
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
trạm bất kì có thể trở thành nguồn Multicast khi nó muốn truyền lưu lượng cho các máy

trạm khác trong mạng.
Hình 1.1 Truyền dẫn Multicast
Khi một máy thu muốn gia nhập một nhóm, nó gửi một bản tin IGMP chứa địa chỉ
lớp D của nhóm mong muốn tới Bộ định tuyến Multicast cục bộ của nó. Từ điểm đó,
các bản tin nhóm gửi trực tiếp tới mạng của thiết bị thu. Các máy thu có thể gia nhập
nhóm hoặc rời bỏ khỏi nhóm bất cứ lúc nào.
Một Bộ định tuyến Multicast phải có mặt trong mỗi mạng con có chứa máy thu
Multicast. Một trong những chức năng của bộ định tuyến này là giúp các máy thu trên
các mạng gắn liền với nó truy nhập hệ thống phân phát Multicast. Sau khi bộ định
tuyến nhận bản tin IGMP từ phía thu, nó chuyển tiếp tất cả lưu lượng Multicast cho
nhóm - mạng của thiết bị thu.
1.2 Các phương pháp chuyển tiếp Multicast
Có một vài phương pháp để chuyển tiếp lưu lượng IP Multicast từ các máy trạm
nguồn đến các máy thu. Đầu tiên ta sắp xếp một nhóm bao gồm các máy trạm thu với
một địa chỉ lớp D chung để đạt được sự phân phối lưu lượng Multicast hiệu quả. Bước
Vũ Bá Dũng D04VT2 2
Server
Các gói tin cho nhóm Multicast
Máy trạm A
Máy trạm B
Máy trạm C
Máy trạm D
Máy trạm E
Bên nhận
Bên nhận
Bên nhận
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
tiếp theo là tạo ra một tập hợp các đường phân phối Multicast cho các bộ định tuyến sử
dụng. Các giao thức được xây dựng trong các bộ định tuyến giúp xây dựng cây phân
phối Multicast để chuyển tiếp các gói. Giao thức chuyển tiếp Multicast chủ yếu sử dụng

một trong hai kỹ thuật sau:
1.2.1 Các cây nguồn
Dạng đơn giản nhất của cây phân phối Multicast là cây nguồn có gốc là nguồn
Multicast và các nhánh của nó có dạng cây mở rộng dọc theo mạng đến các điểm thu.
Nó là một cây đường ngắn nhất (Shortest path tree- SPT).
Hình dưới đây là ví dụ về một SPT cho nhóm 224.1.1.1 có gốc đặt tại nguồn A và
2 máy thu được nối đến máy trạm B và máy trạm C. Kí hiệu (S,G) cho một SPT ở đó S
là địa chỉ IP nguồn và G là địa chỉ nhóm Multicast. Ở ví dụ dưới đây SPT có kí hiệu là
(192.1.1.1, 224.1.1.1).
Hình 1.2 Cây nguồn
Kí hiệu (S,G) chỉ ra sự tồn tại của một SPT cho mỗi nguồn riêng biệt gửi đến một
nhóm. Ví dụ nếu máy trạm B cũng đang gửi lưu lượng đến nhóm 224.1.1.1 và máy trạm
A và C đang nhận, thì khi đó cũng tồn tại một SPT riêng với kí hiệu là (192.2.2.2,
224.1.1.1).
Vũ Bá Dũng D04VT2 3
Nguồn A
192.1.1.1
192.2.2.2 192.3.3.3
Máy thu B Máy thu C
Lưu lượng 224.1.1.1
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
1.2.2 Các cây dùng chung
Phương pháp chuyển tiếp cây dùng chung có nhiều ưu thế nhất trong phân phối
Multicast. Tuy nhiên, phương pháp chuyển tiếp cây dùng chung là một sự lựa chọn tốt
hơn so với phương pháp cây chung gốc khi môi trường Multicast bao gồm các nhóm
Multicast phân bố rải rác với những kết nối bậc thấp.
Hình 1.3 Cây phân phối dùng chung
Phương pháp cây - dùng chung sử dụng một bộ định tuyến Multicast trung tâm,
đôi khi được coi như một bộ định tuyến lõi. Các máy trạm nguồn Multicast gửi các gói
Multicast của chúng tới bộ định tuyến lõi này, và lần lượt chuyển tiếp các gói này qua

cây dùng chung đến các thành viên của nhóm. Một cây- dùng chung sử dụng một cây
đơn giữa các nguồn và các thành viên nhóm.
Trên đây là một ví dụ về cây dùng chung cho nhóm 224.2.2.2 với gốc đặt tại bộ
định tuyến D. Khi sử dụng cây dùng chung này, các nguồn phải gửi lưu lượng của
chúng đến gốc và sau đó lưu lượng được chuyển tiếp xuống cây dùng chung đến tất cả
các máy thu.
Trong ví dụ trên, lưu lượng Multicast từ các máy trạm nguồn A và D chuyển đến
gốc (Bộ định tuyến D) và sau đó được chuyển xuống 2 điểm nhận theo cây dùng chung
là bộ định tuyến B và C. Do tất cả các nguồn Multicast đều sử dụng cây dùng chung
Vũ Bá Dũng D04VT2 4
Nguồn 1
Nguồn 2
192.1.1.1
192.2.2.2 192.3.3.3
Máy thu 1 Máy thu 2
192.4.4.4
Lưu lượng 224.2.2.2
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
nên kí hiệu wild-card (*,G) được sử dụng đại diện cho cây. Ở đó, * là tất cả các nguồn,
G là địa chỉ nhóm Multicast, như ví dụ kí hiệu là (*, 224.2.2.2).
Cả SPT và shared-tree đều là loop-free. Các bản tin chỉ được nhân lên tại các điểm
có nhánh cây.
Các thành viên của các nhóm Multicast có thể gia nhập hoặc rời nhóm bất cứ thời
điểm nào do đó cây phân phối Multicast phải luôn cập nhật một cách linh hoạt. Khi tất
cả các máy thu của một nhánh Multicast nào đó ngừng yêu cầu nhận lưu lượng đối với
nhóm Multicast nào đó, các bộ định tuyến phải xóa nhánh đó ra khỏi cây phân phối
Multicast, và ngừng chuyển lưu lượng xuống nhánh đó. Nếu một máy thu trên nhánh đó
hoạt động trở lại và yêu cầu lưu lượng Multicast thì bộ định tuyến phải linh động thay
đổi cây phân phối và chuyển lưu lượng cho nhánh đó trở lại.
Các SPT có ưu điểm trong việc tạo ra đường dẫn tối ưu nguồn và các máy thu.

Điều này đảm bảo trễ chuyển tiếp lưu lượng Multicast thấp nhất cho mạng. Sự tối ưu
này có giá của nó đó là các bộ định tuyến phải duy trì thông tin đường dẫn từ nó đến
nguồn. Trong một mạng có hàng nghìn nguồn và hàng nghìn điểm nhận thì điều này
nhanh chóng trở thành vấn đề về tài nguyên trên các bộ định tuyến. Sự tiêu thụ bộ nhớ
của bảng định tuyến Multicast là một vấn đề đáng quan tâm của người thiết kế.
Các cây dùng chung có ưu điểm trong việc hạn chế số trạng thái của mỗi bộ định
tuyến. Do đó bộ nhớ yêu cầu cho toàn mạng khi sử dụng cây dùng chung cũng ít hơn.
Tuy nhiên, hạn chế của cây dùng chung là đường dẫn giữa nguồn và máy thu không
phải là đường dẫn tối ưu và do đó có thể tạo ra trễ trong phân phối các gói. Các nhà
thiết kế mạng phải quan tâm đúng mức đến vị trí đặt các RP (rendezvous point) trong
môi trường chỉ có các cây dùng chung.
1.3 Định tuyến trong IP Multicast
1.3.1 IGMP
IGMP được các Bộ định tuyến Multicast sử dụng để thông báo trạng thái thành
viên của các máy trạm trên các đường kết nối trực tiếp. Điều này được thực hiện thông
qua một loạt các truy vấn IGMP liên tục và các thông báo máy trạm thành viên.
IGMP sử dụng một địa chỉ lớp D dành riêng là 224.0.0.1. Đây là một nhóm cố
định cho tất cả các hệ thống IP Multicast. Nó đảm bảo tính có sẵn của 1 địa chỉ
Multicast thông qua subnet có thể liên kết với Bộ định tuyến Multicast của nó. Một máy
trạm hỗ trợ Multicast phải gia nhập tất cả các hệ thống nhóm cho mỗi giao diện mạng
mà nó
Vũ Bá Dũng D04VT2 5
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
IGMP v1 được đưa ra trong RFC 1112 (tháng 8/1989) và v2 được chỉ ra trong
RFC 2236 (tháng 8/1997). IGMP v3 được chỉ ra ra trong RFC 3376 (tháng 8/2002) là
sự kết hợp của v1 và v2.
1.3.2 IGMPv1
Để tham gia vào một nhóm Multicast, một máy trạm sẽ gửi một thông điệp đăng
ký nhóm đến bộ định tuyến cục bộ của nó. Thông điệp này có tên là Membership
Report IGMP chứa địa chỉ nhóm Multicast, thông báo cho bộ định tuyến về địa chỉ

Multicast mà máy trạm muốn tham gia vào. Địa chỉ Multicast 224.0.0.1 all-hosts được
dùng như địa chỉ đích. Cứ 60 giây, một bộ định tuyến trên mỗi phân đoạn mạng sẽ gửi
truy vấn đến tất cả các máy trạm để kiểm tra xem các máy trạm này có còn quan tâm
nhận lưu lượng Multicast nữa không? Bộ định tuyến này gọi là IGMPv1 Querier và
chức năng của nó là mời các máy trạm tham gia vào nhóm. Nếu một máy trạm muốn
tham gia vào một nhóm, hoặc nó muốn tiếp tục nhận từ một nhóm mà nó đã tham gia,
nó phải trả lời lại bằng thông điệp membership-report.
Các máy trạm có thể tham gia vào các nhóm Multicast ở bất kỳ thời điểm nào.
Tuy nhiên IGMPv1 không có cơ chế để cho phép một máy trạm rời khỏi một nhóm nếu
máy trạm đó không còn quan tâm đến nội dung của nhóm Multicast đó. Thay vào đó,
bộ định tuyến sẽ kết luận là một cổng giao tiếp đó không còn thuộc về một nhóm
Multicast nào nếu bộ định tuyến không nhận được membership-report trong ba chu kỳ
truy vấn liên tiếp. Điều này có nghĩa là, ở chế độ mặc định, các lưu lượng Multicast vẫn
gửi vào một phân đoạn mạng trong ba chu kỳ truy vấn liên tiếp sau khi tất cả các thành
viên của nhóm không còn lắng nghe lưu lượng Multicast nữa.
Ngoài ra, bộ định tuyến không giữ một danh sách đầy đủ các máy trạm thành viên
cho từng nhóm Multicast. Thay vào đó, nó cần phải lưu những nhóm Multicast nào là
đang tồn tại trên những cổng nào của nó.
1.3.3 IGMPv2
Phiên bản IGMPv2 giới thiệu một vài khác biệt so với phiên bản đầu tiên. Các gói
tin truy vấn bây giờ được gọi là General Queries. Các gói này có thể gửi tới địa chỉ all-
máy trạms hoặc tới từng nhóm cụ thể. Một cải tiến khác nữa là các máy trạm được phép
rời khỏi nhóm. Khi một máy trạm quyết định rời khỏi một nhóm nó đã tham gia, nó sẽ
gửi thông điệp LeaveGroup đến địa chỉ all-router 224.0.0.2. Tất cả các bộ định tuyến
trên một phân đoạn mạng nội bộ sẽ lưu ý thông điệp này và bộ định tuyến truy vấn sẽ
tiếp tục quá trình. Bộ định tuyến sẽ hỏi rằng có còn máy trạm nào muốn nhận lưu lượng
cho nhóm đó nữa không bằng thông điệp truy cập gửi theo nhóm. Bất cứ máy trạm nào
Vũ Bá Dũng D04VT2 6
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
cũng phải trả lời lại bằng thông điệp membership report. Nếu khác đi, bộ định tuyến sẽ

kết luận một cách an toàn là không cần thiết chuyển lưu lượng cho nhóm đó trên phân
đoạn mạng đó.
1.3.4 IGMPv3
IGMP v3 là một dự thảo sơ bộ. Nó giới thiệu bổ sung bản tin Group- Source
Report cho phép một máy trạm có thể quyết định nhận lưu lượng từ các nguồn riêng
biệt của một nhóm Multicast. Một bản tin Group- Source Report cho phép một máy
trạm chỉ ra địa chỉ IP của các nguồn riêng biệt mà nó muốn nhận. Một bản tin
Exclusion Group- Source Report cho phép một máy trạm nhận dạng chính xác các
nguồn mà nó không muốn nhận. Cuối cùng, bản tin Leave Group đã giới thiệu trong
IGMPv2 đã nâng cao thành bản tin Group-Source Leave. Đặc điểm này cho phép một
máy trạm dời khỏi toàn bộ nhóm hay chỉ ra các địa chỉ IP riêng biệt của cặp (nguồn,
nhóm) mà nó muốn rời khỏi.
1.3.5 Định tuyến Multicast
Định tuyến lưu lượng Multicast phức tạp hơn định tuyến lưu lượng Unicast. Số
các máy thu trong một phiên Multicast có thể khá lớn. Các bộ định tuyến mạng phải có
khả năng chuyển địa chỉ Multicast sang địa chỉ máy trạm. Trong định tuyến Multicast,
các bộ định tuyến tương tác để trao đổi thông tin về các bộ định tuyến hàng xóm. Giao
thức quản lý nhóm sẽ chọn một bộ định tuyến đơn như bộ định tuyến bổ nhiệm
(Designated router- DR) cho mỗi mạng vật lý. DR thường là bộ định tuyến gần nhất với
gốc.
Bằng việc sử dụng các giao thức định tuyến Muticast, các bộ định tuyến Multicast
thiết lập linh hoạt các cây đường đa điểm sử dụng thông tin thành viên nhóm có được từ
việc truyền thông IGMP. Các cây đường đa điểm đó chỉ ra các đường từ một máy phát
tới tất cả máy thu. Để hỗ trợ Multicasting, một bộ định tuyến cần phải hỗ trợ ít nhất một
trong các giao thức định tuyến Multicast.
Các giao thức định tuyến IP Multicast thường theo một trong hai dạng sau: dạng
tập trung hoặc dạng phân tán
• Định tuyến Multicast dạng tập trung
Dạng tập trung: các thành viên nhóm Multicast được phân bố tập trung trong toàn
mạng với nhiều mạng con chứa ít nhất một thành viên nhóm, có đặc trưng là chiếm

băng tần lớn. Các giao thức định tuyến dạng tập trung gồm: DVMRP, MOSPF và PIM-
Vũ Bá Dũng D04VT2 7
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
DM. Các giao thức này dựa vào kỹ thuật phát tán thông tin tới tất cả các bộ định tuyến
mạng.
• Định tuyến Multicast dạng phân tán
Dạng phân tán: thành viên nhóm nằm phân tán tại nhiều vùng của mạng và không
yêu cầu băng tần lớn. Nó dựa vào kỹ thuật lựa chọn để thiết lập và duy trì cây
Multicast, sử dụng một quá trình khởi tạo máy thu (receiver-initiated process). Có nghĩa
là một bộ định tuyến chỉ xây dựng cây phân phối Multicast khi một trong các máy trạm
thuộc mạng con của nó là thành viên của một nhóm muticast nào đó. Các giao thức
định tuyến dạng sparse gồm: cây dựa vào lõi (Core based tree- CBT) và PIM-SM.
PIM
Các bộ định tuyến Multicast sử dụng PIM để xác định các bộ định tuyến Multicast
khác cần nhận được gói Multicast. PIM có hai phương thức làm việc đồng thời thích
hợp: Kiểu Dense (tập trung) và Sparse (phân tán). Hỗ trợ PIM hiện có trong một số sản
phẩm bộ định tuyến. Mục đích của việc nỗ lực phát triển PIM là để mở rộng định tuyến
Multicast liên miền qua Internet. Định tuyến dựa vào giao thức PIM độc lập với các cơ
chế của các giao thức định tuyến Unicast. Bất kỳ sự triển khai nào hỗ trợ PIM đều yêu
cầu sự có mặt của một giao thức định tuyến Unicast để cung cấp thông tin bảng định
tuyến và để làm thích nghi với những thay đổi về cấu hình.
Các bộ định tuyến hỗ trợ giao thức PIM được biết đến như các bộ định tuyến PIM.
Các bộ định tuyến chạy giao thức PIM chọn một bộ định tuyến PIM liền kề vào một hệ
thống máy trạm như một máy trạm chỉ định. Thông thường là bộ định tuyến có địa chỉ
IP cao nhất. Định tuyến PIM sử dụng một cây giải thuật đường ngắn nhất. Một bộ định
tuyến PIM tồn tại ở gốc của mỗi cây đường dẫn ngắn nhất trong khi các bộ định tuyến
PIM liên kết trực tiếp hệ thống máy trạm được coi là các bộ định tuyến lá. Các giao
thức PIM không định nghĩa các bản tin cập nhật định tuyến, chúng cũng sử dụng giao
thức định tuyến Unicast truyền thống trên mạng IP. Sự hỗ trợ này giúp bảo trì thông tin
trạng thái bổ sung cho bảng định tuyến Unicast không hỗ trợ Multicast.

Cả PIM- DM lẫn PIM- SM sử dụng chuyển tiếp đường dẫn đảo ngược. Một bộ
định tuyến nhận một gói Multicast dựa vào bảng định tuyến Unicast của nó để tìm
nguồn và đường dẫn tốt nhất tới nguồn. Khi bộ định tuyến nhận được một gói Multicast
trên giao diện, bằng đường dẫn tốt nhất trở lại nguồn, bộ định tuyến chuyển tiếp một
bản sao của gói dữ liệu trên tất cả các giao diện khác. Các gói dữ liệu đến tại đầu vào
giao diện được xem xét như đường lên của bộ định tuyến. Các gói dữ liệu được chuyển
tiếp tới đầu ra của giao diện được xem như đường xuống của bộ định tuyến.
Vũ Bá Dũng D04VT2 8
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
DVMRP & MOSPF
DVRMP bắt nguồn từ giao thức thông tin định tuyến (RIP) và sử dụng thuật toán
TRPB( Truncated Reverse Path Broadcasting). Để tìm đường tốt nhất tới đích, nó sử
dụng hop back trước tới nguồn như đơn vị đo. DVMRP thiết lập cây nguồn sử dụng
khái niệm cây broadcast rút gọn (TBT). Đó là cây mở rộng đường đi ngắn nhất từ mạng
nguồn tới tất cả các bộ định tuyến trong mạng.
Khi thiết lập cây, DVMRP cho phép bộ định tuyến gửi tràn datagram tới tất cả các
giao diện trừ đường dẫn ngược về nguồn datagram. Các bộ định tuyến DVMRP phải
chạy các quá trình định tuyến riêng cho các gói muticast và Unicast.
TBT được xây dựng cho tất các mạng con nhờ việc cập nhật thông tin định tuyến
DVMRP định kỳ giữa các bộ định tuyến trong mạng. Giống như RIPv2, thông tin cập
nhật DVMRP chứa mặt nạ/tiền tố mạng cùng độ dài đường đi (theo hop count) cho biết
giá để tới một mạng con cụ thể trong mạng. Tuy nhiên, khác với RIPv2 bộ định tuyến
DVMRP cấp dưới sử dụng quảng bá Poison- Reverse (PR) để thông báo cho một bộ
định tuyến cấp trên liên kết này thuộc TBT của mạng nguồn S1. PR này được tạo ra
bằng việc thêm 32 vào metric được quảng bá và gửi lại về bộ định tuyến cấp trên.
MOSPF là mở rộng của giao thức định tuyến Unicast OSPF và do vậy đòi hỏi
OSPF như giao thức định tuyến cơ sở. Nó sử dụng một loại LSA OSPF gọi là LSA
thành viên nhóm để thông báo sự tồn tại của thành viên nhóm trong các mạng. LSAs
thành viên nhóm được phát flood định kỳ trong cả vùng giống như LSA OSPF. Nó sử
dụng thuật toán Dijkstra để tính toán cây đường đi ngắn nhất cho tất cả các cặp nhóm

mạng- nguồn.
1.4 Multicast và những thách thức trong vấn đề bảo mật nhóm
Với ưu điểm về tiết kiệm băng thông như Multicast, nó là nền tảng để triển khai
các dịch vụ đa phương tiện như phân phối dữ liệu, các chương trình truyền hình theo
yêu cầu, hội thảo đa phương tiện Tuy nhiên, khi nhìn vào thực tế chúng ta thấy rằng
sau rất nhiều các công trình nghiên cứu và phát triển các giao thức Multicast trong thập
kỷ trước, việc triển khai các ứng dụng của Multicast vẫn rất chậm chạp. Nguyên nhân
chính là do các dịch vụ Multicast thiếu hỗ trợ về quản lý lưu lượng, độ tin cậy và bảo
mật.
Bảo mật trong Multicast đưa ra cho ta những thách thức kỹ thuật mang tính chất
đặc thù. Các nhà thiết kế Multicast đưa ra cách sử dụng của nó để phân phối nội dung
dữ liệu một cách đồng thời tới số lượng lớn các bên nhận. Nếu chỉ các bên nhận đó
được cho phép nhìn thấy nội dung, nội dung dữ liệu phải được mã hóa. Nhưng một
Vũ Bá Dũng D04VT2 9
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
khóa mã hóa có thể làm thế nào để được phân phối hiệu quả tới nhiều bên nhận? Hơn
nữa, một khóa cho dữ liệu mã hóa nên được thay đổi theo chu kỳ, vì chúng ta không
chấp nhận mã hóa nhiều dữ liệu với chỉ cùng một khóa. Và nó có lẽ nên được thay đổi
khi các thành viên của nhóm thay đổi. Giả thiết rằng các thành viên nhóm trả tiền để
nhận nội dung như các kênh truyền hình đặc biệt, khi một thành viên rời khỏi nhóm,
nhóm không thể bắt thành viên quên khóa. Thêm nữa là nó muốn thay đổi khóa khi một
thành viên mới gia nhập nhóm (để chúng không thể ghi lại nội dung mã hóa mà chúng
không được quyền hoặc gia nhập trong một thời gian ngắn để tìm hiểu khóa sau đó
chúng sẽ giải mã nội dung mà không được cho phép).
Vấn đề khác trong bảo mật thông tin là bảo vệ tính sự toàn vẹn và nhận thực dữ
liệu. Với một mẫu khóa bí mật, ai đó đang kiểm tra dữ liệu phải biết cùng một bí mật đã
được sử dụng để tạo trường kiểm tra tính toàn vẹn. Với thông tin hai bên thì điều đó
không phải là vấn đề. Nếu Alice đang gửi cái gì đó cho Bob, với một trường kiểm tra
tính toàn vẹn đã được tạo ra từ một khóa mà chỉ hai bên chia sẻ, nếu trường kiểm tra
tính toàn vẹn hợp lệ, BoB biết được rằng chỉ có Alice hay Bob có thể đã tạo ra bản tin.

Nếu Bob biết nó không phải của anh ấy thì nó phải là của Alice.
Tuy nhiên, nếu cùng một kiểu đó được sử dụng trong thông tin nhóm, nơi mà
Alice đang gửi nội dung tới hàng nghìn bên nhận, mỗi bên trong số hàng nghìn bên
nhận đó sẽ phải biết cùng một bí mật mà Alice sử dụng để tạo trường kiểm tra bí mật.
Điều này có nghĩa là nội dung có thể đã bắt nguồn từ bất kỳ thành viên nào của nhóm.
Do vậy, Alice phải tin tưởng tất cả thành viên nhóm đọc dữ liệu.
Có ba vấn đề cần lưu tâm trong việc cung cấp các dịch vụ bảo mật Multicast. Đầu
tiên, các bên gửi cần phải mã hóa và nhận thực dữ liệu Multicast. Đối với việc mã hóa,
các thành viên nhóm yêu cầu một khóa chung giữa chúng. Thêm nữa, điều khiển truy
nhập có thể được tiến hành bằng sự phân phối một khóa chung tới các thành viên nhóm,
mà không cần tới sự thay đổi mô hình IPMulticast. Khi các thành viên nhóm thay đổi,
khóa chung có thể cần thiết phải thay đổi và phân phối lại tới nhóm mới của các thành
viên đã được nhận thực. Do đó sự phân phối khóa nhóm khả định cỡ và các kiểu
chuyển khóa là một phần quan trọng của giải pháp bảo mật Multicast. Tiếp theo, các
thành viên phải có khả năng kiểm tra dữ liệu được nhận đã thực sự được gửi bởi một
thành viên đã được nhận thực hay không. Bởi vậy nhận thực nguồn gốc dữ liệu và mã
hóa dữ liệu là một trong những vấn đề cần lưu tâm.
Thêm nữa, những ứng dụng Multicast khác nhau- trong phạm vi từ việc thông tin
đa người dùng tới phân phối dữ liệu từ một tới nhiều người dùng có những yêu cầu biến
đổi đối với các hệ thống đầu cuối, truyền thông và bảo mật. Chính sách nhóm cho phép
Vũ Bá Dũng D04VT2 10
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
chủ nhóm hay nhà cung cấp nội dung chỉ rõ các yêu cầu cũng như trạng thái nhóm
mong muốn được thay đổi trong môi trường hoạt động.
Cùng với bảo mật nội dung dữ liệu trong Multicast, chúng ta nhận ra bảo mật cơ
sở hạ tầng Multicast là một yêu cầu quan trọng khác, bao gồm sự tác động của tấn công
từ chối dịch vụ DoS trên mô hình dịch vụ phân phối số đông của Multicast. Đặc biệt,
các giao thức định tuyến Multicast, các giao thức Multicast tin cậy và giao thức quản lý
nhóm internet IGMP cần thiết sự bảo vệ tính toàn vẹn của các bản tin điều khiển cho
hoạt động hiệu chỉnh. Nếu không có bảo vệ tính toàn vẹn, các thành viên không được

nhận thực có thể tràn lụt cây Multicast hay lôi kéo bất hợp pháp các lưu lượng không
được cho phép. Do đó chúng ta cần phải thêm nhận thực bản tin điều khiển cũng như là
nhận thực máy trạm hay bộ định tuyến, ta có thể coi đó là cách điều khiển truy nhập các
thành viên gia nhập hoặc rời nhóm.
Điều khiển truy nhập chỉ là một trong những nhân tố góp phần cho việc bảo mật
truyền thông Multicast, các ứng dụng thường cần tính riêng tư, nhận thực, toàn vẹn, và
không từ chối của dữ liệu Multicast. Tuy nhiên, những yêu cầu này có thể khác nhau về
cấp độ và tầm quan trọng cho những ứng dụng khác nhau. Ví dụ có những ứng dụng
chỉ cần thiết nhận thực bản tin nguồn (phân phối báo cáo chứng khoán ), trong khi
những ứng dụng khác có thể cần tính riêng tư cũng như nhận thực. Nói cách khác,
chúng ta phải có khả năng cung cấp một cấp độ tùy chọn của bảo mật trong truyền
thông Multicast.
Qua những cách tiếp cận vấn đề như đã trình bày ở trên, có thể xem như bảo mật
Multicast được thực hiện bằng việc kết hợp sử dụng điều khiển truy nhập nhóm, tính
bảo mật và nhận thực của truyền dẫn dữ liệu, và bảo mật của cơ cở hạ tầng mạng.
Ngoại trừ điều khiển truy nhập nhóm, những yêu cầu này đã được đưa vào trong truyền
thông Unicast. Thật không may, các giải pháp thiết kế cho truyền thông điểm-điểm
không thể sử dụng trực tiếp cho truyền thông nhóm. Đặc biệt là các đàm phán chính
sách bảo mật đa bên không thể hội tụ, và các giao thức thỏa thuận khóa nhóm được
phân phối lại không phù hợp cho các nhóm lớn. Thêm một điều nữa đối với khả năng
định cỡ Multicast, các ứng dụng khác nhau có những yêu cầu bảo mật khác nhau, và
các giải pháp một- kích cỡ- khớp- tất cả sẽ không làm việc đối với nhiều ứng dụng
Multicast.
Số lượng các bên gửi trong một nhóm là một nhân tố quan trọng trong thiết kế một
giao thức truyền thông nhóm bảo mật. Trong nhiều ứng dụng chỉ có một bên gửi. SSM
(Source- specific Multicast) là một mô hình định tuyến được thiết kế đặc biệt để hỗ trợ
Vũ Bá Dũng D04VT2 11
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
Multicast một bên gửi. Ví dụ cho các ứng dụng một bên gửi là phân phối báo giá chứng
khoán qua Multicast.

Multicast truyền thống, đôi khi được coi như là Multicast tiêu chuẩn Internet hay
Multicast nhiều bên gửi, hỗ trợ truyền thông đa bên gửi. Sự có mặt của đa bên gửi đưa
ra một vài vấn đề mới trong việc cung cấp bảo mật cho các dịch vụ Multicast. Đầu tiên,
các bên gửi khác nhau có thể có những yêu cầu chính sách khác nhau, mà có thể xung
đột với nhau do đó khó mà hội tụ chính sách. Thứ hai, các cơ chế bảo vệ phát lại khó
thiết kế hơn trong các trường hợp đa bên gửi. Do đó, đồ án chỉ giới hạn trong trường
hợp Multicast một bên gửi. Tuy nhiên các ứng dụng công cộng như hội thảo đa phương
tiện bao gồm nhiều bên gửi có thể cũng cần tính riêng tư hay toàn vẹn bản tin. Do các
ứng dụng này thường chỉ có một vài bên gửi, một cách khả thi nhất là sử dụng nhiều
phiên bảo mật Multicast một bên gửi- nhiều bên nhận.
1.5 Bảo vệ nội dung Multicast
Nhóm nghiên cứu SMuG IRTF và nhóm làm việc MSec IETF đã nêu rõ ba vấn đề
trong việc cung cấp bảo mật truyền thông nhóm: điều khiển dữ liệu Multicast bảo mật,
quản lý nguyên liệu tạo khóa, và các chính sách bảo mật Multicast.
1.5.1 Vấn đề điều khiển dữ liệu Multicast bảo mật
Phần này trình bày vấn đề bảo mật truyền dẫn dữ liệu Multicast. Chính xác hơn là
sự biến đổi dữ liệu cho bảo mật dữ liệu Multicast và bảo vệ tính toàn vẹn. Đối với bảo
mật dữ liệu, bên gửi cần thiết phải mã hóa dữ liệu với một khóa bí mật mà các thành
viên nhóm đều biết: nghĩa là các thành viên được nhận thực để nhận dữ liệu Multicast.
Trong đó phân phối khả định cỡ và chuyển khóa của khóa nhóm là một vấn đề phức
tạp.
Ta đã biết được rằng tính bảo mật của IPsec ESP thích hợp cho truyền thông
Unicast. ESP cũng hỗ trợ bảo vệ tính toàn vẹn được dựa trên mã hóa nhận thực bản tin
MAC-cho truyền thông Unicast. Trong truyền thông hai bên, nhận thực dựa trên MAC
đủ cho một bên nhận xác định một gói được bắt nguồn tại bên gửi hay không. Thật
không may là trường hợp nhận thực này lại không thích hợp trong truyền thông đa bên.
Chú ý rằng trong truyền thông ngang hàng hai bên, Alice và Bob, mỗi người giữ
một khóa bí mật cho nhận thực bản tin. Alice sử dụng khóa để tính một mã nhận thực
bản tin (chuỗi khối cipher hay hàm băm) của bản tin, và gửi bản tin cùng với MAC tới
bên nhận. Bob lặp lại thủ tục đó để tính MAC, và so sánh nó với MAC đã nhận. Nếu

các MAC đồng nhất, Bob biết được rằng bản tin không bị biến đổi trên đường đến đích.
Vũ Bá Dũng D04VT2 12
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
Anh ta cũng biết được rằng nếu anh ta không gửi bản tin, Alice phải gửi nó, giả thiết
rằng khóa nhận thực không bị xâm phạm.
Chúng ta có thể sử dụng MAC cho các phiên truyền thông nhóm nhận thực theo
cách tương tự như trên, nhưng với một cấp độ giảm hơn về bảo vệ tính toàn vẹn. Chú ý
rằng một nhóm, bao gồm Alice, Bob và Cindy, đang giữ một khóa nhận thực. Alice có
thể sử dụng một MAC để nhận thực bản tin giử tới Bob và Cindy, tuy nhiên, Bob (hay
Cindy) không biết có hay không bản tin đã gửi hay chỉnh sửa lần cuối bởi Alice hay
Cindy (hay Bob). Thông thường, các thành viên của một nhóm chỉ có thể kiểm tra các
bất thành viên, điều này có nghĩa là một người nào đó không giữ khóa nhận thực nhóm
đã không thay đổi dữ liệu trong quá trình chuyển tiếp.
Nhận thực nhóm là tính chất quan trọng đảm bảo chỉ một bản tin được gửi (sửa
đổi lần cuối) bởi một thành viên của nhóm. Đối với nhận thực nhóm, bên gửi cần thiết
lập một khóa chung với các thành viên nhóm. Vấn đề phân phối khóa được bàn tới ở
phần sau, IPsec ESP có thể được sử dụng để mang dữ liệu Multicast được nhận thực
nhóm.
Trong đa số các ứng dụng, các bên nhận phải có khả năng thiết lập nguồn dữ liệu,
ít nhất là cho chính chúng. Nói cách khác, chúng ta cần thiết nhận thực nguồn dữ liệu.
Một phiên bản mạnh hơn các tính chất trên, được gọi là không- từ chối, cho phép bên
nhận xác nhận nguồn gốc dữ liệu tới bất kỳ bên thứ ba nào.
Tuy nhiên, nhận thực nguồn của dữ liệu Multicast lại là một vấn đề khó. Giải pháp
đơn giản nhất là đánh dấu số mỗi gói tin. Nhưng vấn đề đánh dấu mỗi gói tin lại dẫn
đến sự tính toán tốn kém và làm tăng tiêu đề mỗi gói tin. Một vài giải pháp đã đưa ra
làm giảm giá của các chữ ký số đối với nhiều gói. Chương 2 sẽ cung cấp mô tả chi tiết
các kỹ thuật nhận thực nguồn.
Thật không may là ESP không thể sử dụng được để mang dữ liệu Multicast đã
được nhận thực nguồn. Một cặp biến thể của ESP được gọi là MESP và MESP lớp ứng
dụng (Application MESP- AMESP) đã được đề xuất tại IETF để thích nghi với các thiết

kế nhận thực nguồn cho Multicast. MESP, tương tự IPsec ESP, hoạt động tại lớp mạng,
trong khi AMESP làm việc tại lớp ứng dụng. Việc thực hiện IPsec ESP hay MESP yêu
cầu sự thay đổi tại cấp độ- lõi mạng. Điều đó là không thể trong một số trường hợp và
có thể dẫn đến bị trễ việc triển khai. AMESP là sự biến đổi để sử dụng trong những
trường hợp như vậy.
Các yêu cầu ứng dụng ảnh hưởng lớn tới các giải pháp cho nhận thực nguồn gốc
dữ liệu. Đầu tiên, một ứng dụng có thể yêu cầu không- từ chối hay nhận thực nguồn hay
Vũ Bá Dũng D04VT2 13
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
chỉ nhận thực nhóm. Tiếp theo, truyền dẫn dữ liệu có thể là tin cậy hay tổn thất. Thêm
nữa, bên gửi hay các bên nhận có thể có không gian bộ đệm bị giới hạn hay phải tính
toán công suất (các thiết bị di động) hoặc là có dung lượng không đồng nhất. Các bên
nhận cũng có thể ở khoảng cách rộng lớn khác nhau so với bên gửi. Cuối cùng, ứng
dụng có thể bao gồm truyền dẫn dữ liệu lớn hay theo kiểu luồng.
1.5.2 Vấn đề quản lý nguyên liệu tạo khóa
Thuật ngữ “nguyên liệu tạo khóa” (keying material) ám chỉ khóa dùng để mã hóa
đang thuộc về một nhóm, trạng thái liên kết với các khóa và các tham số bảo mật khác
liên quan tới khóa. Do đó, quản lý các khóa mã hóa thuộc về một nhóm cần các yêu cầu
quản lý trạng thái liên kết và các tham số của nhóm đó.
Điều khiển truy nhập nhóm, tính riêng tư, và nhận thực nhóm của dữ liệu
Multicast yêu cầu một khóa chung được phân phối tới các thành viên hiện tại của nhóm
bảo mật. Chúng ta sử dụng một đối tượng logic được gọi là bộ điều khiển nhóm và
server khóa ( Group controller and key server- GCKS) để cung cấp điều khiển truy
nhập và các dịch vụ phân phối khóa. Một GCKS đại diện cho cả đối tượng và các chức
năng liên quan tới sự phát hành và quản lý của các khóa mã hóa được sử dụng bởi một
nhóm Multicast, quản lý nhận thực người sử dụng và các trường kiểm tra nhận thực trên
mỗi ứng viên của nhóm Multicast.
Các giao thức đàm phán bảo mật Unicast như là IKE dẫn đến kết quả là mỗi khóa
riêng biệt cho mỗi phiên, và không thể trực tiếp được sử dụng cho truyền thông nhóm.
Thay vào đó, một đối tượng trung tâm như là GCKS cần thiết để tải các khóa nhóm

riêng biệt tới mỗi thành viên thông qua một kênh bảo mật.
Đăng ký thành viên
Mỗi thành viên liên lạc với GCKS để đăng ký và gia nhập nhóm. Sau khi nhận
thực lẫn nhau, GCKS kiểm tra tư cách thành viên của máy trạm, thiết lập một kênh bảo
mật, và tải các khóa nhóm và chính sách tới thành viên. Quá trình đăng ký là trao đổi
một-một giữa GCKS (hay một trong những đại diện đã nhận thực của nó) với mỗi thành
viên. Trao đổi bảo mật một- một yêu cầu các biện pháp bảo mật tương tự như trong IKE
hay SSL, như là bảo vệ phát lại và tấn công từ chối dịch vụ…
Đăng ký khả định cỡ/ khởi tạo của các nhóm lớn. Do đăng ký là một trao đổi một-
một, việc triển khai từng phiên liên lạc đơn lẻ cho tất cả các thành viên là không hiệu
quả. May mắn là có một vài cách để xúc tiến quá trình xử lý này. Đầu tiên, chức năng
của đăng ký GCKS có thể được thực hiện qua nhiều đối tượng. Thứ hai, các thành viên
Vũ Bá Dũng D04VT2 14
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
có thể đăng ký tại thời điểm thích hợp với chúng, bằng cách ấy có thể tránh được một
số lượng lớn các yêu cầu đăng ký tại cùng một thời điểm.
Chuyển khóa nhóm
Do các khóa mật mã có thời gian sống, GCKS phải chuyển khóa khóa nhóm trước
khi nó hết hiệu lực. Nói cách khác, đa phần nếu không muốn nói là tất cả các thành viên
có thể gửi một yêu cầu tới GCKS để đồng bộ khóa mới, dẫn đến sự bùng nổ yêu cầu
chuyển khóa trong các nhóm lớn. Thêm nữa, lưu ý tới vấn đề điều khiển truy nhập thực
thi trong một nhóm linh động, có nghĩa là, một nhóm mà các thành viên thay đổi
thường xuyên, GCKS có thể cần thiết chuyển khóa nhóm và phân phối khóa nhóm mới
tới các thành viên hiện thời tại mỗi thời điểm thay đổi thành viên.
Điều khiển truy nhập chuyển tiếp và chuyển ngược. Lưu ý tới việc phân phối khóa
nhóm tới một nhóm linh động và rộng lớn. Trong phần lớn các ứng dụng, trong khi
nhiều thành viên gia nhập tại thời điểm bắt đầu của phiên và rời bỏ nhóm tại thời điểm
kết thúc, các thành viên khác có thể gia nhập và rời bỏ tại bất kỳ thời điểm nào trong
phiên. Nói cách khác, nhiều thành viên có thể được chấp nhận tham gia một nhóm bảo
mật chỉ trong một thời gian giới hạn. Cũng hãy chú ý rằng một máy trạm có thể được

ghi lại dữ liệu Multicast đã gửi trước khi nó được ủy quyền gia nhập nhóm. Bởi vậy,
GCKS cần thiết phải thay đổi khóa nhóm và phân phối khóa mới tới tất cả các thành
viên. Nói cách khác, các máy trạm đang gia nhập có thể giải mã dữ liệu đã gửi trước khi
nó trở thành một thành viên của nhóm. Chúng ta coi tính chất này như là điều khiển
truy nhập chuyển ngược. Tương tự, GCKS cần thay đổi khóa nhóm khi một thành viên
rời bỏ để không cho phép các thành viên đang rời bỏ giải mã các truyền thông nhóm
trong tương lai. Tính chất này được biết đến như là điều khiển truy nhập chuyển tiếp.
Tóm lại, để chắc chắn rằng chỉ các thành viên được ủy quyền hiện thời mới có thể giải
mã dữ liệu nhóm, điều khiển truy nhập chuyển ngược và chuyển tiếp phải là bắt buộc.
Các bản tin chuyển khóa có thể được gửi qua Unicast hay Multicast để phân phối
hiệu quả. Tương tự như các bản tin đăng ký, các bản tin chuyển khóa cũng phải được
bảo vệ khỏi tấn công phát lại, và phải được đánh dấu bởi GCKS cho việc nhận thực.
Sự tác động của tính linh động các thành viên nhóm. Kích thước và tính linh động
của nhóm có một ý nghĩa quan trọng tác động tới việc thực thi điều khiển truy nhập
chuyển tiếp và chuyển ngược. Lưu ý tới một phương pháp tiếp cận đơn giản quản lý
khóa nhóm. Bên gửi hay GCKS chia sẻ một khóa bí mật riêng biệt với mỗi thành viên.
Khi một thành viên rời nhóm, người quản lý phải gửi khóa nhóm mới đã mã hóa riêng
biệt với mỗi khóa bí mật của các thành viên còn lại. Do việc tính toán tiêu đề tại bên
Vũ Bá Dũng D04VT2 15
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
gửi và truyền tải tiêu đề của kiểu này tăng lên cùng với kích thước nhóm, nên nó không
hiệu quả cho các nhóm lớn và tính linh động cao.
Liên kết bảo mật nhóm
Đối với bảo mật Unicast, hai bên truyền thông ngang hàng đàm phán các tham số
bảo mật để thiết lập một liên kết bảo mật Internet (Internet security association- ISA) và
giao thức quản lý khóa bảo mật Internet (Internet security association key management
protocol- ISAKMP), là giao thức bảo vệ đàm phán của một IPsec SA cho bảo mật
truyền dẫn dữ liệu. Một mô hình tương tự là liên kết bảo mật nhóm (Group security
association- GSA) đã được tiêu chuẩn hóa tại IETF, và có ba phần. Phần đầu là việc
đăng ký SA bảo vệ quá trình tải khóa trong giao thức đăng ký. Quá trình tải khóa bao

gồm một SA chuyển khóa và một SA bảo mật dữ liệu. SA chuyển khóa bảo vệ các cập
nhật SA chuyển khóa hiện thời hay SA bảo mật dữ liệu. SA bảo mật dữ liệu chính nó
bảo vệ quá trình truyền dẫn Multicast. Ví dụ về một SA bảo mật dữ liệu bao gồm IPsec
ESP, MESP và AMESP.
Các giao thức, kiến trúc và thuật toán phân phối khóa nhóm
Ta phân loại việc phân phối khóa nhóm thành các kiến trúc, các giao thức và các
thuật toán cho quản lý khóa nhóm. Các kiến trúc phân phối khóa nhóm như Iolus và
kiến trúc tạo khóa Internet cho Multicast (Internet keying architecture for Multicast-
IKAM) sử dụng nhóm con phân cấp để quản lý nhóm một cách hiệu quả. Chúng chia
các thành viên vào trong các nhóm con, chỉ định các thành viên hay đại lý bên thứ ba
như những người quản lý nhóm con (Subgroup manager- SGM) và ủy quyền tác vụ
quản lý khóa nhóm cho các SGM.
Thuật ngữ giao thức được sử dụng để mô tả một tập hợp các thủ tục, các trao đổi
bản tin, và bản tin điều khiển trạng thái của các đối tượng trong việc hỗ trợ một nhóm
bảo mật và sự tham gia đó trong một nhóm. Miền biên dịch nhóm (Group domain of
interpretation- GDOI) và giao thức quản lý khóa liên kết bảo mật nhóm (Group security
association key management protocol- GSAKMP) là các giải pháp trong loại này.
Các giao thức và các kiến trúc đều có những lợi ích riêng của nó. Ví dụ, Iolus hay
IKAM có thể sử dụng GDOI cho việc đăng ký và chuyển khóa trong một nhóm con.
Tương tự, GSAKMP cho phép nhiều thành viên được chỉ định như các quản lý nhóm
con khả định cỡ. Cả các giao thức và kiến trúc đều có thể lợi dụng các thuật toán quản
lý khóa nhóm, được mô tả dưới đây, hiệu quả cho việc chuyển khóa nhóm.
Thuật toán quản lý khóa nhóm thường sử dụng nhóm con logic để chuyển khóa và
phân phối khóa một cách hiệu quả. Mỗi nhóm con logic có một khóa mã hóa khóa (Key
Vũ Bá Dũng D04VT2 16
Đồ án tốt nghiệp đại học Chương1 Multicast và những thách thức
encryption key- KEK) đã liên kết được sử dụng để mã hóa các KEK khác hay khóa
nhóm. Hai lớp của thuật toán quản lý khóa nhóm dựa trên sự phụ thuộc lẫn nhau của
các bản tin chuyển khóa. Đầu tiên, dựa trên các phân cấp khóa logic (Logical key
hierarchies- LKH) hay các cây khóa, mỗi thành viên giữ một tập con các KEK, GCKS

trao đổi các KEK đó và khóa nhóm khi thành viên gia nhập hay rời đi. Hầu hết các
KEK phải được mã hóa với số khóa bằng với cấp độ của cây khóa. Do vậy các phân cấp
khóa logic sử dụng chuyển khóa yêu cầu ít hơn các bản tin, và ít hơn việc tính khóa tại
GCKS. Tại lớp thứ hai của thuật toán, GCKS chia các thành viên đã được ủy quyền
thành các nhóm con logic được xác định trước, và gửi khóa nhóm được mã hóa với tập
con các khóa như đã nêu trên. Điều này sẽ tăng hiệu quả quản lý khóa nhóm và được
trình bày rõ ở chương sau.
Truyền tải tin cậy các bản tin chuyển khóa. Các bản tin chuyển khóa thường được
gửi thông qua Multicast để tăng hiệu quả. Trách nhiệm của GCKS là đảm bảo cho tất cả
các thành viên đều có bảo mật dữ liệu hiện thời và các SA chuyển khóa. Nói cách khác,
các thành viên đã được ủy quyền có thể tình cờ bị mất khả năng giải mã các truyền
thông nhóm. Do vậy, GCKS phải sử dụng một cơ chế truyền tải tin cậy để gửi các bản
tin chuyển khóa.
Các bản tin chuyển khóa thường ngắn (thông thường là cho trao đổi thành viên
đơn lẻ trong các nhóm lớn và các nhóm con), đó là cách dễ dàng để thiết kế một giao
thức phân phối tin cậy. Cũng có một vài trường hợp đặc biệt mà các trao đổi thành viên
được xử lý trong một đợt, làm tăng kích cỡ của chúng. Cuối cùng trong tất cả các KEK
đã gửi trong một bản tin chuyển khóa, tầm một nửa các thành viên chỉ cần một KEK
đơn lẻ. Chúng ta cần phải tận dụng ưu điểm của các tính chất này vào thiết kế bản tin
chuyển khóa và giao thức cho phân phối tin cậy. Ba loại giải pháp được đưa ra là:
1. Bởi vì trong nhiều trường hợp các bản tin chuyển khóa thường nhỏ (cố định
trong một hay hai gói IP), GCKS có thể truyền lặp lại các bản tin chuyển khóa.
2. GCKS có thể sử dụng một giao thức Multicast tin cậy hiện hành hay hạ tầng cơ
sở mạng.
3. Chúng ta có thể sử dụng sửa lỗi trước FEC để mã hóa các gói chuyển khóa, sử
dụng các bản tin ACK đàm phán phản hồi từ các thành viên để xây dựng các lượt tiếp
theo của bản tin chuyển khóa. Tuy nhiên chú ý rằng phân phối tin cậy dựa trên các phản
hồi có thể dẫn đến sự bùng nổ của các bản tin phản hồi tại GCKS.
Yêu cầu ứng dụng
Vũ Bá Dũng D04VT2 17

×