1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Kỹ thuật viễn thông: Bảo mật cho lớp liên kết dữ liệu trong mạng cảm biến không dây

90 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Cấu trúc

  • CHƯƠNG 1: GIỚI THIỆU (0)
    • 1.1 LÝ DO CHỌN ĐỀ TÀI (14)
    • 1.2 TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU (15)
    • 1.3 MỤC TIÊU VÀ NHIỆM VỤ ĐỀ TÀI (15)
      • 1.3.1 Mục tiêu (15)
      • 1.3.2 Nhiệm vụ (16)
    • 1.4 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU (16)
      • 1.4.1 Đối tượng nghiên cứu (16)
      • 1.4.2 Phạm vi nghiên cứu (17)
    • 1.5 PHƯƠNG PHÁP NGHIÊN CỨU (17)
    • 1.6 KẾT QUẢ DỰ KIẾN (17)
      • 1.6.1 Lý thuyết (17)
      • 1.6.2 Thực tiễn (18)
  • CHƯƠNG 2: MẠNG CẢM BIẾN KHÔNG DÂY (0)
    • 2.1 MẠNG CẢM BIẾN KHÔNG DÂY (19)
    • 2.2 ỨNG DỤNG CƠ BẢN CỦA MẠNG CẢM BIẾN KHÔNG DÂY (20)
    • 2.3 ĐẶC TRƯNG CỦA MẠNG CẢM BIẾN KHÔNG DÂY (21)
      • 2.3.1 Hoạt động tin cậy (21)
      • 2.3.2 Kích thước nút cảm biến nhỏ gọn (21)
      • 2.3.3 Hoạt động đồng thời (21)
      • 2.3.4 Môi trường hoạt động rộng (22)
      • 2.3.5 Tính đa dạng trong thiết kế và sử dụng (22)
    • 2.4 CẤU TRÚC MẠNG CẢM BIẾN KHÔNG DÂY (22)
      • 2.4.1 Cấu trúc cơ bản của mạng cảm biến không dây (22)
      • 2.4.2 Cấu trúc một nút mạng (23)
    • 2.5 KIẾN TRÚC GIAO THỨC MẠNG WSN (24)
    • 2.6 CÁC THÁCH THỨC TRONG MẠNG CẢM BIẾN KHÔNG DÂY (26)
    • 2.7 KẾT LUẬN CHƯƠNG (28)
  • CHƯƠNG 3: TIÊU CHUẨN 802.15.4 VÀ LỚP LIÊN KẾT DỮ LIỆU (0)
    • 3.2 LỚP LIÊN KẾT DỮ LIỆU (DATA LINK LAYER) (30)
      • 3.2.1 MAC - Medium Access Control (30)
      • 3.2.2 RDC - Radio Duty Cycle (31)
    • 3.3 BẢO MẬT TRÊN LỚP LIÊN KẾT DỮ LIỆU - LLSEC (36)
      • 3.3.1 Lớp bảo mật LLSEC (36)
      • 3.3.2 Adaptive Security Layer (39)
    • 3.4 SECURE RADIO DUTY CYCLING - CONTIKI MAC (41)
      • 3.4.1 POTR: Practical On-the-fly Rejection of Injected and Replayed (41)
      • 3.4.2 Countering Three Denial-of-Sleep Attacks on ContikiMAC (45)
    • 3.5 KẾT LUẬN CHƯƠNG (51)
  • CHƯƠNG 4: BẢO MẬT TRONG MẠNG CẢM BIẾN KHÔNG DÂY (0)
    • 4.1 YÊU CẦU BẢO MẬT TRONG MẠNG CẢM BIẾN KHÔNG DÂY (53)
      • 4.1.1 Bảo mật dữ liệu (53)
      • 4.1.2 Tính xác thực và tính toàn vẹn (53)
      • 4.1.3 Tính khả dụng (54)
    • 4.2 CÁC CUỘC TẤN CÔNG TẠI LỚP LIÊN KẾT DỮ LIỆU (54)
    • 4.3 PHÂN LOẠI TẤN CÔNG LỚP LIÊN KẾT DỮ LIỆU (57)
      • 4.3.1 Dựa trên mức độ thiệt hại / truy cập (57)
      • 4.3.2 Dựa trên vị trí của kẻ tấn công (57)
      • 4.3.3 Dựa trên thiết bị tấn công (58)
      • 4.3.4 Dựa trên chức năng (58)
    • 4.4 BẢO MẬT LỚP LIÊN KẾT DỮ LIỆU MẠNG CẢM BIẾN KHÔNG DÂY 45 (58)
      • 4.4.1 Tính bảo mật (60)
      • 4.4.2 Tính xác thực và tính toàn vẹn (64)
      • 4.4.3 Chế độ bảo mật và xác thực (66)
    • 4.5 KẾT LUẬN CHƯƠNG (67)
  • CHƯƠNG 5: MÔ HÌNH THỰC NGHIỆM (0)
    • 5.1 MÔI TRƯỜNG THỰC NGHIỆM (68)
      • 5.1.2 Bộ giả lập Cooja (70)
    • 5.2 THIẾT KẾ MÔ PHỎNG (70)
    • 5.3 MÔ TẢ QUÁ TRÌNH THỰC NGHIỆM (72)
    • 5.4 KẾT QUẢ VÀ PHÂN TÍCH THỰC NGHIỆM (73)
      • 5.4.1 Đánh giá mức độ chiếm dụng bộ nhớ (74)
      • 5.4.2 Đánh giá tỷ lệ tổn hao năng lượng (75)
      • 5.4.3 Radio Duty Cycle - RDC (78)
      • 5.4.4 Đánh giá tỷ lệ nhận gói (Packet Receive Ratio - PRR) (80)
      • 5.4.5 Đánh giá độ trễ gói tin (82)
    • 5.5 KẾT LUẬN CHƯƠNG (83)
  • CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (0)
    • 6.1 ĐÁNH GIÁ (84)
    • 6.2 HẠN CHẾ (86)
    • 6.3 HƯỚNG PHÁT TRIỂN (86)

Nội dung

Tìm hiểu về mạng cảm biến không dây và tiêu chuẩn 802.15.4; nghiên cứu các thuật toán, giao thức bảo mật lớp liên kết dữ liệu trong mạng cảm biến không dây; cài đặt hệ thống bảo mật có k

GIỚI THIỆU

LÝ DO CHỌN ĐỀ TÀI

Một thành tựu vượt bậc của công nghệ chế tạo và công nghệ thông tin là mạng mạng cảm biến không dây Mạng cảm biến không dây (Wireless Sensor Network - WSN) kết hợp việc cảm biến, tính toán và truyền thông dựa vào các thiết bị rất nhỏ

Thông qua các mô hình mạng, những thiết bị này tạo ra một sự kết nối rộng lớn trong thế giới vật lý

Mạng cảm biến không dây là một trong những công nghệ thông tin mới được ứng dụng đầu tiên trong quân đội với tính năng ứng dụng cao, giá thành thấp, khả năng hoạt động mạnh, linh động và tính chính xác cao Vì thế, mạng cảm biến không dây đã được phát triển nhanh chóng và ứng dụng rộng rãi trên nhiều quốc gia phát triển trên thế giới như Mỹ, Nhật, các nước Châu Âu, … Hiện nay, mạng cảm biến không dây được ứng dụng trong nhiều lĩnh vực đời sống xã hội như điều khiển quá trình công nghiệp, điều khiển giao thông, giám sát môi trường, công nghệ cảm biến môi trường, xử lý tín hiệu, kiểm tra sức khỏe, … [1]

Ngoài những ưu điểm vượt trội, mạng cảm biến không dây cũng có nhiều thách thức cần được giải quyết như nguồn năng lượng bị giới hạn, các nút cảm biến có bộ nhớ và bộ vi xử lý thấp, đặc biệt là các cơ chế bảo mật Do tính chất phân bố, giao tiếp “multi-hop”, nên mạng cảm biến không dây rất dễ bị tấn công và đe dọa về an ninh mạng, những cuộc tấn công này có thể gây ảnh hưởng xấu đến hiệu suất của hệ thống Thêm vào đó, xuất phát từ những hạn chế về bộ nhớ, nguồn năng lượng và tốc độ xử lý nên các kỹ thuật đảm bảo an toàn trong mạng không dây truyền thống không thể áp dụng hiệu quả trên mạng cảm biến không dây [2, 3] Vì vậy, việc bảo mật trong mạng cảm biến không dây là vấn đề đầy thách thức, được nhiều nhà khoa học tập trung nghiên cứu trong thời gian gần đây

Trên cơ sở đó, tôi thực hiện nghiên cứu đề tài “Bảo mật cho lớp liên kết dữ liệu trong mạng cảm biến không dây” nhằm lý giải những vấn đề bảo mật vẫn còn nhiều thách thức trong mạng cảm biến không dây Từ đó, luận văn sẽ trình bày các thuật toán mã hóa và xác thực trên lớp liên kết dữ liệu (Data Link) để có thể áp dụng nâng cao tính bảo mật dữ liệu trong mạng cảm biến không dây.

TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU

Trên thế giới đã có các nghiên cứu về vấn đề bảo mật trên lớp liên kết dữ liệu trong mạng cảm biến không dây, các nghiên cứu chủ yếu tập trung vào tìm hiểu lý thuyết các cuộc tấn công vào mạng cảm biến không dây trên lớp liên kết Trong bài báo [4] đã giới thiệu mạng cảm biến không dây và các đặc trưng của nó Đồng thời, tác giả cũng nghiên cứu các phương pháp bảo mật để đảm bảo tính toàn vẹn, bảo mật và xác thực trong mạng cảm biến không dây

Tương tự như vậy, trong nghiên cứu [5] đã trình bày về những hạn chế về tài nguyên trong mạng cảm biến không dây dẫn đến những vấn đề khó khăn về việc tích hợp bảo mật vào trong mạng cảm biến không dây, ngoài ra tác giả còn đưa ra các tiêu chuẩn bảo mật cần thiết phải có trong mạng WSN

Nghiên cứu [6] đã thực hiện nghiên cứu về các thuật toán bảo mật, xác thực để đảm bảo an toàn mạng cảm biến không dây được sử dụng trong công nghiệp Đây là hướng nghiên cứu cho các cảm biến làm việc trong môi trường công nghiệp, chịu ảnh hưởng bởi nhiễu công nghiệp và các đặc trưng khác trong công nghiệp

Tại Việt Nam vấn đề nghiên cứu về hướng bảo mật trong mạng cảm biến không dây còn gặp nhiều khó khăn vì những đặc thù của một nước đang phát triển, do vậy vấn đề này còn nhiều thách thức và cần quan tâm nghiên cứu nhiều hơn Một nghiên cứu của Lê Hoàng Anh, và Đinh Đức Anh Vũ [7] cũng đã có hướng nghiên cứu về bảo mật trên lớp liên kết dữ liệu Tác giả sử dụng bộ giả lập TOSSIM trên hệ điều hành TinyOS để chạy thực nghiệm các mô phỏng của mình.

MỤC TIÊU VÀ NHIỆM VỤ ĐỀ TÀI

Mục tiêu của đề tài là nghiên cứu, tìm hiểu các thuật toán nhằm đảm bảo an ninh cho hệ thống mạng cảm biến không dây, đặc biệt là các thuật toán mã hóa và xác thực dữ liệu tại lớp liên kết dữ liệu trong mạng cảm biến không dây

- Hệ thống bảo mật có khả năng xác thực các nút mạng và bảo mật dữ liệu trên các liên kết không dây cho độ bảo mật cao hơn

- Đánh giá các kết quả mô phỏng về bộ nhớ chiếm dụng, mức tiêu hao năng lượng, radio duty cycle và tỷ lệ nhận gói tin

1.3.2 Nhiệm vụ Để có thể đạt được mục tiêu đã nêu trên, tôi xây dựng nhiệm vụ cần thực hiện gồm 2 công việc chính đó là nghiên cứu, tìm hiểu về cơ sở lý thuyết và nghiên cứu bằng thực nghiệm thực tế Cụ thể hai công việc nghiên cứu này như sau:

- Nghiên cứu tổng quan mạng cảm biến không dây

- Nghiên cứu tìm hiểu các ứng dụng, đặc điểm, cấu trúc của mạng cảm biến không dây

- Tìm hiểu về mạng cảm biến không dây và tiêu chuẩn 802.15.4 - Nghiên cứu các thuật toán, giao thức bảo mật lớp liên kết dữ liệu LLSEC

- Nghiên cứu tổng quan về cơ chế bảo mật mạng, đặc biệt là cơ chế tấn công và cơ chế bảo mật trong mạng cảm biến không dây

- Nghiên cứu thuật toán đảm bảo an toàn các lớp trong mạng cảm biến không dây Đặc biệt là các thuật toán đảm bảo an toàn tại lớp liên kết dữ liệu

- Nghiên cứu hệ điều hành nguồn mở ContikiOS

- Nghiên cứu bộ giả lập Cooja sử dụng trên nền hệ điều hành Contiki OS

- Cài đặt hệ điều hành Contiki OS, sử dụng bộ giả lập thực nghiệm Cooja để cài đặt các thuật toán mã hóa và xác thực cho lớp liên kết dữ liệu trong mạng cảm biến không dây

- Mô phỏng 1 hệ thống gồm 20 nút mạng bao gồm các kịch bản có bảo mật và không có bảo mật.

ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU

Luận văn tập trung nghiên cứu các thuật toán nhằm đảm bảo an toàn cho mạng cảm biến không dây Vì vậy đối tượng nghiên cứu của luận văn là mạng cảm biến không dây, đặc biệt là lớp liên kết dữ liệu của mạng cảm biến không dây

Nghiên cứu quá trình bảo mật dữ liệu trên lớp liên kết dữ liệu trong mạng cảm biến không dây.

PHƯƠNG PHÁP NGHIÊN CỨU

Để hoàn thành tốt các mục tiêu và nhiệm vụ đã đề ra, tôi lựa chọn phương pháp nghiên cứu lý thuyết và nghiên cứu trên cơ sở thực nghiệm, cụ thể như sau:

- Tham khảo, tổng hợp các tài liệu, các công trình nghiên cứu về mạng cảm biến không dây

- Tham khảo, tổng hợp các tài liệu, các công trình nghiên cứu về cơ chế tấn công và bảo mật mạng

- Tham khảo, tổng hợp các tài liệu, các công trình nghiên cứu về cơ chế tấn công và bảo mật mạng cảm biến không dây

- Tham khảo, tổng hợp các tài liệu, các công trình nghiên cứu về cơ chế bảo mật lớp liên kết trong mạng cảm biến không dây

- Tham khảo, tổng hợp các tài liệu, các công trình nghiên cứu về môi trường được sử dụng tiến hành thực nghiệm là hệ điều hành Contiki OS và bộ giả lập Cooja

- Tham khảo các công trình nghiên cứu về cách thức tiến hành thực nghiệm thuật toán đảm bảo an toàn tại lớp liên kết dữ liệu trong mạng cảm biến không dây

- Quan sát, tổng hợp số liệu thu được từ thực nghiệm, từ đó tiến hành so sánh, đánh giá và đưa ra những nhận xét về quá trình thực nghiệm.

KẾT QUẢ DỰ KIẾN

- Luận văn trình bày được tổng quan mạng cảm biến không dây, các thách thức trong mạng cảm biến không dây

- Trình bày được các ứng dụng của mạng cảm biến không dây, các đặc điểm, cấu trúc của mạng cảm biến không dây

- Luận văn trình bày được tổng quan về cơ chế tấn công và bảo mật mạng

- Luận văn trình bày chi tiết các cơ chế tấn công và cơ chế bảo mật trong mạng cảm biến không dây

- Luận văn trình bày được khái quát các phương pháp đảm bảo an toàn các lớp trong mạng cảm biến không dây Đặc biệt là các thuật toán đảm bảo an toàn tại lớp liên kết dữ liệu

- Luận văn trình bày được tổng quan về hệ điều hành ContikiOS được sử dụng để tiến hành xây dựng mô hình thực nghiệm nhằm kiểm tra mức độ an toàn trong mạng cảm biến không dây

1.6.2 Thực tiễn - Hệ thống bảo mật có khả năng xác thực các nút mạng và bảo mật dữ liệu trên các liên kết không dây cho độ bảo mật cao hơn

- Đánh giá các kết quả mô phỏng về bộ nhớ chiếm dụng, tỷ lệ nhận gói tin, Radio Duty Cycle, mức tiêu hao năng lượng khi so sánh trường hợp có và không có thực hiện bảo mật trên lớp liên kết dữ liệu

- Cài đặt, mô phỏng được các thuật toán mã hóa, xác thực trên mạng cảm biến không dây với bộ giả lập Cooja trong hệ điều hành Conitiki OS để bảo mật dữ liệu lớp liên kết dữ liệu trong mạng cảm biến không dây nhằm đạt được tính bảo mật, tính xác thực và tính toàn vẹn dữ liệu trên lớp liên kết dữ liệu

- Phân tích đánh giá mức độ bảo mật của các thuật toán sử dụng để đảm bảo bảo mật dữ liệu trong mạng cảm biến không dây.

MẠNG CẢM BIẾN KHÔNG DÂY

MẠNG CẢM BIẾN KHÔNG DÂY

Mạng cảm biến không dây (Wireless Sensor Network - WSN) [8, 7] là một mạng cảm biến, bao gồm một tập hợp các nút mạng, các thiết bị cảm biến sử dụng các liên kết không dây (vô tuyến, hồng ngoại hoặc quang học) để phối hợp thực hiện nhiệm vụ thu thập thông tin, thu thập dữ liệu phân tán với quy mô lớn trong bất kỳ điều kiện và ở bất kỳ vùng địa lý nào để đưa ra các thông số về môi trường, hiện tượng và sự vật mà mạng quan sát

Mạng cảm biến không dây có thể liên kết trực tiếp với một nút giám sát thông qua một điểm thu phát “Sink” và môi trường mạng toàn cầu như môi trường mạng Internet hoặc vệ tinh Các thiết bị cảm biến trong hệ thống WSN có đầu đo với bộ vi xử lý và thiết bị vô tuyến rất nhỏ, vì vậy tạo nên một thiết bị cảm biến có kích thước rất nhỏ, giúp chúng có thể hoạt động trong môi trường dày đặc có thể lên đến hàng trăm hay hàng nghìn thiết bị, đôi khi có thể lên tới hàng triệu thiết bị

Các thiết bị cảm biến có thể trao đổi thông tin với các thiết bị xung quanh trong cùng một hệ thống WSN Bên cạnh đó, thiết bị này còn có thể xử lý dữ liệu thu được trước khi gửi đến các thiết bị cảm biến khác Các thiết bị cảm biến được nối mạng có khuynh hướng được thiết kế dành riêng cho một ứng dụng cụ thể Ngày nay, mạng WSN được ứng dụng trong nhiều lĩnh vực của đời sống xã hội như điều khiển giám sát an ninh, kiểm tra môi trường, … Nhưng lợi thế chính của mạng cảm biến không dây đó là khả năng có thể triển khai hầu hết trong bất kỳ loại hình địa lý nào.

ỨNG DỤNG CƠ BẢN CỦA MẠNG CẢM BIẾN KHÔNG DÂY

Trong những năm gần đây, các nghiên cứu về mạng cảm biến không dây đã đạt được những bước phát triển mạnh mẽ, đây là nền tảng cho mạng cảm biến không dây ứng dụng rộng rãi trong các lĩnh vực an ninh, chăm sóc sức khỏe, môi trường, … Mạng cảm ứng không dây được ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau của cuộc sống như [1]:

- Giám sát và điều khiển công nghiệp: Đặc thù của giám sát và điều khiển công nghiệp là môi trường nhiễu lớn, không đòi hỏi lượng dữ liệu truyền tải lớn, nhưng yêu cầu cao về độ tin cậy và đáp ứng thời gian thực Mạng WSN được ứng dụng trong lĩnh vực này chủ yếu phục vụ việc thu thập thông tin, giám sát trạng thái hoạt động của hệ thống như trạng thái các thiết bị, nhiệt độ, áp suất của nguyên liệu, …

- Các ứng dụng về môi trường: Các mạng cảm biến không dây được dùng để theo dõi sự chuyển động của chim muông, động vật, côn trùng; theo dõi các điều kiện môi trường như nhiệt độ, độ ẩm; theo dõi và cảnh báo sớm các hiện tượng thiên tai như động đất, núi lửa phun trào, cháy rừng, lũ lụt, phát hiện sớm những thảm họa như cháy rừng, …

- Các ứng dụng trong y học: Giám sát trong y tế và chẩn đoán từ xa

- Ứng dụng trong gia đình: Các nút cảm ứng được đặt ở các phòng để đo nhiệt độ Không những thế, chúng còn được dùng để phát hiện những sự dịch chuyển trong phòng và thông báo lại thông tin này đến thiết bị báo động trong trường hợp không có ai ở nhà

+ Quản lý kinh doanh, theo dõi bảo quản và lưu giữ hàng hóa

+ Những nút cảm ứng này cũng có thể ứng dụng trong việc quản lý các thùng hàng ở cảng

+ Quản lý dây chuyền sản xuất, theo dõi sản phẩm

- Trong nông nghiệp: Các cảm biến được dùng để đo nhiệt độ, độ ẩm, ánh sáng ở nhiều điểm trên thửa ruộng và truyền dữ liệu mà chúng thu được về trung tâm để người nông dân có thể giám sát và chăm sóc, điều chỉnh cho phù hợp

- Ứng dụng trong chăn nuôi: Trong chăn nuôi gia súc, gia cầm cũng trang bị các cảm biến để dễ dàng theo dõi và giám sát

- Trong quân sự: Các ứng dụng của mạng cảm biến trong quân sự như là giám sát quân đội, giám sát trang thiết bị, vũ khí, khảo sát chiến trường, quân địch, dò tấn công bằng vũ khí hạt nhân, sinh học, hóa học của quân địch

- Trong giao thông: Các cảm biến được đặt trong các ô tô để người dùng có thể điều khiển, hoặc được gắn ở vỏ của ô tô, các phương tiện giao thông để chúng tương tác với nhau và tương tác với đường và các biển báo để giúp các phương tiện đi được an toàn, tránh tai nạn giao thông và giúp việc điều khiển luồng tốt hơn.

ĐẶC TRƯNG CỦA MẠNG CẢM BIẾN KHÔNG DÂY

Một số các đặc trưng của mạng cảm biến không dây thường thấy như sau [4]:

Trong quá trình hoạt động của WSN, một vài nút cảm biến có thể ngừng hoạt động do cạn kiệt nguồn năng lượng pin, hoặc do một lý do nào đó Việc ngừng hoạt động của một hoặc một vài nút sẽ không làm ảnh hưởng đến hoạt động chung của toàn bộ hệ thống mạng, đảm bảo các chức năng của mạng hoạt động bình thường

2.3.2 Kích thước nút cảm biến nhỏ gọn

Mạng cảm biến không dây bao gồm nhiều thiết bị cảm biến được thiết kế với kích thước rất nhỏ với công suất tiêu thụ thấp Tuy nhiên, kích thước và công suất tiêu thụ luôn chi phối khả năng xử lý, khả năng lưu trữ và khả năng tương tác Vì vậy, các thiết bị cảm biến ngoài việc được chú trọng giảm kích thước và công suất tiêu thụ, nó còn phải được thiết kế phù hợp với yêu cầu nhất định về khả năng hoạt động

Các nút cảm biến trong mạng cảm biến không dây được thiết kế nhỏ gọn, công suất tiêu thụ thấp, nó có chức năng chính đó là đo lường và trao đổi các dòng thông tin với khối lượng xử lý thấp, bao gồm các hoạt động nhận lệnh, phân tích, đáp ứng và dừng lệnh Với kích thước các nút cảm biến được thiết kế nhỏ, nên dung lượng bộ nhớ trong hạn chế, do đó việc xử lý các hoạt động với tính toán phức tạp, khối lượng xử lý cao sẽ mất khá nhiều thời gian và khó đáp được do các nút sẽ bị cạn kiệt nguồn năng lượng Vì vậy, các nút cảm biến được thiết kế có thể thực hiện nhiều công việc đồng thời, đan xen xử lý giữa các hoạt động

2.3.4 Môi trường hoạt động rộng

Các nút cảm biến trong mạng cảm biến không dây có thể được triển khai dày đặc rất gần hoặc ngay bên trong đối tượng quan sát Thêm vào đó, chúng cũng phải làm việc trong các khu vực mà con người không thể trực tiếp quản lý, kiểm soát và vận hành như bên trong các máy móc, thiết bị lớn, bên duới đáy biển, trong đối tượng sinh học hoặc vùng bị ô nhiễm hóa học, trong khu vực chiến sự bị kiểm soát bởi đối phương và trong tòa nhà lớn

2.3.5 Tính đa dạng trong thiết kế và sử dụng

Các thiết bị cảm biến được nối mạng có khuynh hướng được thiết kế dành riêng cho một ứng dụng cụ thể, đáp ứng yêu cầu đa dạng trong xử lý Vị trí các nút cảm biến không cần định trước vì vậy nó cho phép triển khai ngẫu nhiên trong các vùng cần thu thập dữ liệu Khả năng tự tổ chức mạng và cộng tác làm việc của các nút cảm biến là đặc trưng cơ bản của mạng WSN Vì vậy, mạng cảm biến không dây khá đa dạng và phong phú trong thiết kế và sử dụng.

CẤU TRÚC MẠNG CẢM BIẾN KHÔNG DÂY

Một mạng cảm biến không dây [Hình 2.1] [9] bao gồm số lượng lớn các nút cảm biến (Sensor Node) được triển khai dày đặc, nằm gần nhau bên trong môi trường cảm biến (Sensor Field) để thu thập thông tin Vị trí của các nút cảm biến không cần định trước nhờ vào khả năng tự tổ chức và khả năng cộng tác giữa các nút Thêm vào đó, các nút cảm biến trong mạng WSN được bố trí nằm gần nhau, cho nên phương thức truyền thông đa liên kết được sử dụng để công suất tiêu thụ của các nút cảm biến đạt ở mức thấp nhất, hiệu quả truyền tín hiệu cao

Mỗi nút cảm biến được phát tán trong mạng có khả năng thu thập thu thập số liệu, định tuyến số liệu về bộ thu nhận (Sink node) để chuyển tới người dùng (User) và định tuyến các bản tin mang theo yêu cầu từ nút bộ thu nhận đến các nút cảm biến

“Sink” là một thực thể mà tại đó thông tin được yêu cầu, nó có thể là thực thể bên trong mạng hoặc ngoài mạng Thực thể ngoài mạng có thể là một thiết bị thực sự như máy tính, điện thoại di động, tương tác với mạng cảm biến hoặc cũng đơn thuần chỉ là một “Gateway” nối với mạng khác [1] lớn hơn như Internet

 Số liệu được định tuyến về bộ thu nhận theo cấu trúc đa liên kết không có cơ sở hạ tầng nền tảng, tức là không có các trạm thu phát gốc hay các trung tâm điều khiển

 Bộ thu nhận có thể liên lạc trực tiếp với trạm điều hành (Task Manager Node) của người dùng hoặc gián tiếp thông qua Internet hay vệ tinh

Hình 2.1: Mô hình mạng cảm biến không dây

2.4.2 Cấu trúc một nút mạng Một mạng cảm biến không dây bao gồm một số lượng lớn các nút cảm biến dùng để thu thập thông tin Mỗi nút cảm biến bao gồm bốn thành phần cơ bản đó là: bộ cảm biến, bộ xử lý, bộ thu phát không dây và nguồn điện [Hình 2.2]

- Bộ cảm biến (Sensor unit): Thường gồm hai đơn vị thành phần là đầu đo cảm biến (Sensor) và bộ chuyển đổi tương tự/số ADC (Analog to Digital Converter) Các tín hiệu tương tự được thu nhận từ đầu đo, sau đó được chuyển sang tín hiệu số bằng bộ chuyển đổi ADC, rồi mới được đưa tới bộ xử lý

- Bộ xử lý (Processing unit): Thường kết hợp với một bộ nhớ (Storage) nhỏ, phân tích thông tin cảm biến và quản lý các thủ tục cộng tác với các nút khác để phối hợp thực hiện nhiệm vụ

- Bộ thu phát (Transceiver): Đảm bảo thông tin giữa nút cảm biến và mạng bằng kết nối không dây sử dụng sóng vô tuyến, tia hồng ngoại hoặc bằng tín hiệu quang

- Bộ nguồn (Power unit): có thể là pin hoặc ắc-quy, cung cấp năng lượng cho nút cảm biến và không thay thế được nên nguồn năng lượng của nút thường là giới hạn Bộ nguồn có thể được hỗ trợ bởi các thiết bị sinh điện, ví dụ như các tấm pin mặt trời nhỏ

Hình 2.2: Các thành phần của nút cảm biến

Tuy nhiên, các thiết bị cảm biến có khuynh hướng được thiết kế dành riêng cho một ứng dụng cụ thể Vì vậy, tùy vào ứng dụng cụ thể, nút cảm biến còn có thể được bổ sung thêm các thành phần như hệ thống tìm vị trí (Location finding system), bộ sinh năng lượng (Power generator) và thiết bị di động (Mobilizer) Hầu hết các công nghệ định tuyến trong mạng cảm biến và các nhiệm vụ cảm biến yêu cầu phải có sự nhận biết về vị trí với độ chính xác cao Do đó, các nút cảm biến thường có thêm hệ thống tìm vị trí Thêm vào đó, các thiết bị di động đôi khi cũng rất cần thiết trong hệ thống WSN, nó có chức năng để di chuyển các nút cảm biến theo yêu cầu để đảm bảo các nhiệm vụ được phân công.

KIẾN TRÚC GIAO THỨC MẠNG WSN

Kiến trúc giao thức trong mạng WSN có chức năng phối hợp tính toán về định tuyến, về năng lượng, kết hợp số liệu với giao thức mạng, truyền tin thông qua môi trường không dây và tăng cường sự hợp tác giữa các nút cảm biến [4] Kiến trúc giao thức được sử dụng tại bộ thu nhận và tại tất cả các nút cảm biến

Kiến trúc giao thức mạng cảm biến không dây được xây dựng với 5 lớp [1] cơ bản như mô hình OSI, cụ thể như hình 2.3:

Hình 2.3: Kiến trúc giao thức của mạng cảm biến

 Lớp vật lý (Physical Layer): Lớp này chịu trách nhiệm truyền và nhận dữ liệu thực tế, lựa chọn tần số, tạo tần số sóng mang, chức năng báo hiệu và mã hóa dữ liệu Lớp này sử dụng các kỹ thuật điều chế, truyền và nhận

 Lớp liên kết dữ liệu (Data-Link Layer): Lớp này có nhiệm vụ ghép các luồng dữ liệu, phát hiện các khung dữ liệu, cách truy cập đường truyền và điều khiển lỗi Vì môi trường WSN có tạp âm, dễ bị nhiễu và các nút cảm biến có thể di động, do đó giao thức điều khiển truy cập môi trường (Media Access Control - MAC) phải được xét đến vấn đề công suất, khả năng tối thiểu hóa việc va chạm với thông tin quảng bá của các nút lân cận

 Lớp mạng (Network Layer): Lớp này tập trung vào việc định tuyến số liệu được cung cấp bởi lớp giao vận

 Lớp giao vận (Transport Layer): Lớp này dùng để duy trì dòng số liệu khi các chương trình phần mềm ứng dụng của mạng cảm biến yêu cầu

 Lớp ứng dụng (Application Layer): Phục vụ các ứng dụng trong mạng, bao gồm việc xử lý ứng dụng, kết hợp dữ liệu, xử lý các yêu cầu từ bên ngoài Các nút cảm biến trong hệ thống mạng cảm biến không dây được thiết kế theo từng ứng dụng cụ thể Vì vậy, tùy vào từng nhiệm vụ cụ thể, các chương trình phần mềm khác nhau sẽ được xây dựng và sử dụng

Ngoài 5 lớp cơ bản như luận văn đã trình bày, kiến trúc giao thức trong mạng WSN còn có thêm các phần quản lý Các phần quản lý này giúp nâng cao hiệu quả định tuyến dữ liệu và chia sẻ tài nguyên giữa các nút mạng, giúp các nút cảm biến trong hệ thống mạng có thể làm việc cùng nhau một cách có hiệu quả nhất Nếu không, mỗi nút cảm biến sẽ chỉ là những nút đơn lẻ, làm việc một cách độc lập Kiến trúc giao thức mạng cảm biến không dây có các phần quản lý như sau:

 Phần quản lý năng lượng (Power Management Plane): Điều khiển việc sử dụng năng lượng của nút cảm biến Ví dụ như khi mức năng lượng của nút cảm biến đang ở mức thấp, nút cảm biến sẽ thông báo tới tất cả các nút lân cận để báo rằng mức năng lượng của nó đã thấp nên không thể tham gia vào việc định tuyến cho bản tin

 Phần quản lý di động (Mobility Management Plane): Sẽ dò tìm và ghi lại sự chuyển động của các nút cảm biến để duy trì tuyến tới người sử dụng và các nút cảm biến có thể theo dõi được các nút cảm biến lân cận Nhờ vào việc nhận biết được các nút cảm biến lân cận, nút cảm biến có thể cân bằng giữa nhiệm vụ được giao và năng lượng sử dụng

 Phần quản lý nhiệm vụ (Task Management Plane): Dùng để cân bằng và lên kế hoạch cho các nhiệm vụ cảm biến trong một vùng xác định Vì vậy, không phải tất cả các nút cảm biến trong vùng đó điều được yêu cầu thực hiện nhiệm vụ cảm biến tại cùng một thời điểm, sẽ có một số nút cảm biến thực hiện nhiệm vụ nhiều hơn các nút khác tuỳ theo mức năng lượng hiện có của nó.

CÁC THÁCH THỨC TRONG MẠNG CẢM BIẾN KHÔNG DÂY

Mạng cảm biến không dây được ứng dụng trong nhiều lĩnh vực của đời sống và mạng lại hiệu quả ứng dụng cao Tuy nhiên, để triển khai mạng WSN trong thực tế và tận dụng hết những điểm thuận lợi của nó, thì chúng ta cần phải có những giải pháp để giải quyết, khắc phục những hạn chế về mặt kỹ thuật, cũng như những thách thức phát sinh trong quá trình sử dụng [1]

 Nguồn năng lượng bị giới hạn

Như chúng ta đã tìm hiểu ở các mục trên, mạng WSN bao gồm một tập các thiết bị cảm biến, các thiết bị cảm biến này được thiết kế với kích thước rất nhỏ Do đó các thiết bị phần cứng được thiết kế bên trong nó cũng gặp rất nhiều hạn chế, cụ thể như bộ nhớ trong có dung lượng nhỏ, nguồn năng lượng pin hạn chế, từ đó ảnh hưởng đến khả năng tính toán, xử lý dữ liệu phức tạp

Mặc khác, các nút cảm biến có thể tạo ra một lượng lớn các dữ liệu dư thừa

Nhiều dữ liệu giống nhau được tạo ra từ nhiều nút cảm biến hay cùng một cảm biến nhưng tại các thời điểm lấy mẫu khác nhau Vì vậy, các nút cảm biến sẽ tự xử lý dữ liệu trước khi truyền đi để giảm thiểu lượng dữ liệu dư thừa Tuy nhiên, điều này sẽ dẫn đến tình trạng trễ và tiêu hao thêm năng lượng của nút Trong khi đó, năng lượng tiêu thụ hay hiệu suất mạng lại là mối quan tâm lớn trong mạng

 Mô hình mạng thay đổi và điều kiện môi trường không thuận lợi

Mạng cảm biến không dây bao gồm một số lượng lớn các nút cảm biến được lắp đặt ngẫu nhiên trên một vùng bao phủ rộng theo kiểu mạng Ad-Hoc Vì vậy, trong quá trình sử dụng, mô hình kết nối mạng có thể thay đổi do mất liên kết hay mất nút

Thêm vào đó, mạng cảm biến không dây sử dụng các liên kết không dây như vô tuyến, hồng ngoại hoặc quang học để thu thập thông tin, thu thập dữ liệu phân tán với quy mô lớn trong bất kỳ điều kiện và ở bất kỳ vùng địa lý nào Các nút cảm biến có thể bị nhiễu khi làm việc trong môi trường tạp âm cao, độ ăn mòn lớn, độ ẩm cao, có rung chấn, nhiều rác, bụi, … Do đó, nó ảnh hưởng lớn đến hiệu suất mạng Từ những điều kiện không thuận lợi này kết hợp với mô hình mạng thay đổi có thể khiến một phần mạng hay một số nút cảm biến bị hỏng

Mạng cảm biến không dây hoạt động bình thường cần phải thỏa mãn các yêu cầu về chất lượng dịch vụ như dữ liệu nhận được phải đảm bảo về độ tin cậy và thời gian thực Để truyền được dữ liệu tin cậy, khó khăn lớn nhất đến từ chất lượng đường truyền vô tuyến Đường truyền vô tuyến thường không đảm bảo do độ nhiễu cao, tín hiệu yếu do sụt nguồn và đường truyền dài Điều này có thể ngăn cản hoặc thậm chí làm mất dữ liệu Thêm vào đó, điều kiện đường truyền vô tuyến thay đổi sẽ dẫn đến việc mất gói và trễ truyền dẫn

Mạng cảm biến không dây giao tiếp với người dùng thông qua một hệ thống trung gian đó là mạng Internet hay vệ tinh Do đó, mạng cảm biến không dây được tích hợp kiến trúc IP và có khả năng truy cập mạng từ xa Vấn đề bảo mật trong WSN được xem là một vấn đề quan trọng

Việc tấn công vào mạng cảm biến không dây khá đa dạng, từ việc nghe lén đường truyền để phân tích lưu lượng hay đọc thay đổi nội dung bản tin đến; ngụy tạo hay ngăn cản truyền dẫn bằng cách bắt nút; tấn công định tuyến

KẾT LUẬN CHƯƠNG

Mạng cảm biến không dây là một mạng cảm biến, bao gồm một tập hợp các nút cảm biến có kích thước nhỏ và tiêu thụ năng lượng thấp, các thiết bị cảm biến sử dụng các liên kết không dây (vô tuyến, hồng ngoại hoặc quang học) để phối hợp thực hiện nhiệm vụ thu thập thông tin, thu thập dữ liệu phân tán với quy mô lớn trong bất kỳ điều kiện và ở bất kỳ vùng địa lý nào để đưa ra các thông số về môi trường, hiện tượng và sự vật mà mạng quan sát

Mạng cảm biến không dây được ứng dụng trong nhiều lĩnh vực của đời sống và mạng lại hiệu quả ứng dụng cao Tuy nhiên, để triển khai mạng WSN trong thực tế và tận dụng hết những điểm thuận lợi của nó, thì chúng ta cần phải có những giải pháp để giải quyết, khắc phục những hạn chế về nguồn năng lượng bị giới hạn, điều kiện môi trường hoạt động không thuận lợi, đặc biệt vấn đề bảo mật được xem là một vấn đề quan trọng

Như vậy trong chương 2, luận văn đã trình bày được tổng quan về mạng cảm biến không dây Bên cạnh đó, luận văn đã phân tích được những mối đe dọa và những thách thức trong mạng cảm biến không dây, đây là cơ sở lý luận cho chúng ta tìm hiểu các cơ chế tấn công và cơ chế bảo mật trong mạng cảm biến không dây sẽ được trình bày trong chương 3

3 CHƯƠNG 3: TIÊU CHUẨN 802.15.4 VÀ LỚP LIÊN KẾT DỮ LIỆU

Trong mạng cảm biến không dây, quá trình truyền thông điệp từ nút đầu cuối đến nút cuối (end-to-end), cơ chế bảo mật end-to-end rất dễ bị tấn công Nếu tính toàn vẹn thông điệp chỉ được kiểm tra tại nút cuối cùng, mạng có thể định tuyến chuyển các gói tin đã bị tấn công qua nhiều “hop” trước khi chúng được phát hiện Loại tấn công này sẽ làm lãng phí năng lượng và băng thông của các nút cảm biến, mà đây lại được xem là nguồn tài nguyên quý giá trong mạng Cơ chế bảo mật trên lớp liên kết dữ liệu đảm bảo tính xác thực, tính toàn vẹn và tính bảo mật các thông điệp ngay khi gói tin được truyền đến mà không qua các bước định tuyến [10]

Vì vậy, trong chương 3 luận văn sẽ trình bày tổng quan tiêu chuẩn 802.15.4 được sử dụng cho các mạng đòi hỏi nút cảm biến có mức tiêu thụ năng lượng thấp, nguồn tài nguyên hạn chế Các đặc trưng trên lớp liên kết dữ liệu được lựa chọn để thực hiện bảo mật cho mạng cảm biến không dây

802.15.4 là tiêu chuẩn cho truyền thông không dây do Viện Kỹ sư Điện và Điện tử (IEEE) cấp IEEE 802.15.4 là một tiêu chuẩn chỉ định lớp Vật lý (PHY) và điều khiển truy cập phương tiện (Media Access Control - MAC) cho mạng khu vực cá nhân không dây tốc độ thấp (Low-rate Wireless Personal Area Network LR- WPAN) [11] Được sử dụng trong những ứng dụng chỉ đòi hỏi mức tiêu thụ năng lượng thấp, không yêu cầu cao về tốc độ truyền tin và chất lượng dịch vụ (Quality of Service - QoS) Do đó, chính tốc độ truyền tin thấp cho phép chuẩn này tiêu hao ít năng lượng hơn

802.15.4 là giao thức cốt lõi cho nhiều giao thức không dây như ZigBee, International Society of Automation 100.11a, WirelessHART và Microchip Wireless (MiWi) IEEE 802.15.4 là giao thức quan trọng trong những ứng dụng tự động điều khiển và xây dựng mạng trong nhà và trong công nghiệp, có thể hỗ trợ những gói tin có kích thước tải từ 80 đến 100 bytes [4] Lớp này quản lý bộ thu phát RF vật lý và thực hiện chức năng lựa chọn kênh và các chức năng quản lý năng lượng và tín hiệu

Nó chuyển đổi các bit dữ liệu thành các tín hiệu được truyền và nhận qua không gian.

TIÊU CHUẨN 802.15.4 VÀ LỚP LIÊN KẾT DỮ LIỆU

LỚP LIÊN KẾT DỮ LIỆU (DATA LINK LAYER)

Khác với thông thường, ở lớp Link của Contiki được chia làm 3 lớp [Hình 3.1]: Framer, RDC (Radio Duty Cycle) và MAC (Media Access Control) [12]

Hình 3.1: Các lớp trong Contiki

3.2.1 MAC - Medium Access Control Ở lớp MAC (Media Access Control), 802.15.4 sử dụng một vài kỹ thuật để tránh va chạm khi các nút bắt đầu phát ra cùng một lúc trên môi trường không dây

Giao thức MAC mô tả lượng truy cập trung bình được thực hiện trong mạng, bằng cách thiết lập các quy tắc xác định khi nào nút cho phép truyền các gói dữ liệu Các giao thức được chia theo sự kiện hoặc dựa trên sự đặt chỗ

Như với nhiều công nghệ không dây, MAC được thực hiện với giao thức CSMA/CA (Carrier Sense Multiple Access với Collision Avoidance) [13] để tránh va chạm giữa các thiết bị khi có nhiều nút hoạt động Phương pháp này được mô tả như sau: mỗi nút lắng nghe phương tiện trước khi truyền, sau đó nếu phương tiện không có sẵn hoặc không có khả năng truyền, thì trình thu phát chờ một thời gian ngẫu nhiên và sau đó thử lại

Tiêu chuẩn 802.15.4 có tính năng được gọi là sự phù hợp trong thời gian thực ảnh hưởng đến việc đặt chỗ của Thời gian bảo hành (Guaranteed Time Slot - GTS)

Kỹ thuật này sử dụng một nút tập trung cung cấp khe thời gian cho mỗi nút, do đó các nút biết khi nào chúng được phép truyền trong môi trường CSMA/CA là giao thức 802.15.4 phổ biến nhất trong lớp MAC

NullMAC là giao thức truyền nhận đơn giản, không lắng nghe kênh truyền nên thường xảy ra tình trạng xung đột gói tin và mất gói

Chu kỳ nhiệm vụ (RDC) kiểm soát thời gian ngủ của các nút Lớp này quyết định khi nào các gói tin sẽ được truyền đi và đảm bảo rằng các nút sẽ được thức khi nhận được gói dữ liệu Phổ biến nhất là NullRDC hoạt động liên tục và ContikiMAC: giao thức có khả năng thức và ngủ hợp lý để lắng nghe truyền tải gói tin từ các nút hàng xóm Nếu gói tin được phát hiện trong quá trình thức dậy, nó được giữ thức giấc để có thể nhận được gói tin Đến khi nhận được gói tin thành công, bên nhận gửi gói tin xác nhận (Acknowledgement - ACK) Nhờ vậy mà ContikiMAC có khả năng tiết kiệm năng lượng tốt và không ảnh hưởng nhiều đến tỉ lệ mất gói

Các thiết bị trong mạng không dây công suất thấp cần phải đảm bảo quá trình thu phát hợp lý để đạt được công suất thấp tiêu thụ hiệu quả, nhưng để thực hiện được việc nhận các gói tin hiệu quả và đầy đủ thì yêu cầu các nút cảm biến phải thức dậy thường xuyên để có thể nhận thông tin liên lạc từ hàng xóm xung quanh Quá trình hoạt động ContikiMAC Radio Duty Cycle sử dụng một cơ chế đánh thức năng lượng hiệu quả với các ràng buộc thời gian để cho phép thiết bị thực hiện thu phát hợp lý

Với ContikiMAC, các nút có thể tham gia trong giao tiếp mạng nhưng vẫn giữ cho radio bật tắt khoảng 99% thời gian cho hiệu suất rất cao.

ContikiMAC là một giao thức có cơ chế hoạt động theo định kỳ (Radio Duty Cycling), thức dậy (wake-up) để lắng nghe tín hiệu truyền tải gói tin từ các hàng xóm xung quanh nó Nếu một gói tin được phát hiện trong quá trình thức dậy, nó sẽ giữ quá trình thức giấc này để có thể tiếp tục nhận được gói tin Cho đến khi quá trình nhận gói tin thành công, bên nhận sẽ gửi bản tin xác nhận (ACK) từ lớp Link-layer

Như vậy, để truyền tải một gói tin đến bên nhận thì bên gửi liên tục gửi lặp đi lặp lại gói tin cho đến khi nó nhận được ACK ở lớp Link-layer từ bên nhận [14].

Hình 3.2: Hoạt động của ContikiMAC gửi gói unicast

Hình 3.2 mô tả hoạt động của ContikiMAC, các nút cảm biến ngủ hầu hết thời gian và định kỳ thức dậy để kiểm tra hoạt động radio Nếu một gói tin truyền được phát hiện, nút nhận vẫn tiếp tục thức để nhận gói tiếp theo và gửi xác nhận ACK từ lớp Link-layer Để gửi một gói, bên gửi liên tục gửi gói này cho đến khi nhận được xác nhận ACK từ lớp Link-layer.

Các gói tin được gửi dưới dạng một gói quảng bá (broadcast) không cần xác nhận ACK ở lớp Link-layer [Hình 3.3] Thay vào đó, bên gửi liên tục gửi gói tin lặp đi lặp lại trong suốt khoảng thời gian thức giấc đầy đủ để đảm bảo rằng tất cả các nút hàng xóm xung quanh nó đã nhận được.

Hình 3.3: Hoạt động của ContikiMAC gửi gói broadcast ContikiMAC Timing

Giao thức ContikiMAC có cơ chế đánh thức hiệu quả năng lượng dựa vào thời gian chính xác giữa các thời điểm truyền Các cơ chế đánh thức (wake-up) của ContikiMAC sử dụng CCA (Clear Channel Assessment) và kết hợp sử dụng RSSI (Received Signal Strength Indicator) của bộ thu phát vô tuyến để cho biết hiện tại đang có một hoạt động vô tuyến radio trên kênh [14].

Hình 3.4: ContikiMAC và CCA Timing

- Nếu RSSI nằm dưới ngưỡng cho trước, CCA trả về giá trị dương, cho biết rằng các kênh rõ ràng (clear)

- Nếu RSSI vượt quá ngưỡng, CCA trả về giá trị âm, cho biết rằng kênh đang được sử dụng (in use)

- Các giá trị trong hình 3.4:

+ ti : khoảng giữa mỗi gói tin truyền

+ tr: thời gian cần thiết cho một RSSI ổn định, cần thiết để ổn định chỉ thị CCA

+ tc: khoảng giữa mỗi CCA

+ ta: thời gian giữa nhận một gói và gửi gói tin xác nhận

+ td: thời gian cần thiết để phát hiện thành công ACK từ bên nhận Để làm việc hiệu quả, ContikiMAC phải đáp ứng một số các ràng buộc về mặt thời gian Đối với ti, khoảng giữa mỗi lần gói truyền tải, phải là nhỏ hơn tc, khoảng cách giữa mỗi CCA (ti < tc) Điều này đảm bảo rằng CCA đầu tiên hay thứ hai có thể thấy gói tin Nếu tc nhỏ hơn ti (tc < ti), hai CCA sẽ không có khả năng phát hiện truyền tải

Yêu cầu về ti và tc cũng đặt yêu cầu về kích thước gói tin ngắn nhất mà ContikiMAC có thể hỗ trợ, như thể hiện trong hình 3.5 Đối với ContikiMAC, hai CCA để có thể phát hiện được gói tin, việc truyền gói tin không thể quá ngắn đến nỗi nó rơi giữa các CCA Đặc biệt, ts thời gian truyền của gói tin ngắn nhất, phải lớn hơn tr + tc + tr

Hình 3.5: Gói tin không thể quá ngắn hơn đoạn CCA

Một khi CCA phát hiện ra một gói tin truyền tải, ContikiMAC giữ radio để có thể nhận được đầy đủ gói tin Khi nhận được một gói tin đầy đủ, một bản tin xác nhận ACK ở lớp Link-layer được truyền đi Thời gian cần cho một gói tin xác nhận được truyền ta, và thời gian cần thiết cho một gói tin xác nhận được phát hiện td, thiết lập giới hạn dưới cho khoảng kiểm tra tc

BẢO MẬT TRÊN LỚP LIÊN KẾT DỮ LIỆU - LLSEC

Contiki có lớp LLSEC (Link-Layer Security) [15] Lớp này độc lập với phần cứng vì nó sử dụng API (Application Programming Interface) trình điều khiển AES (Advanced Encryption Standard) chung thay vì truy cập trực tiếp vào phần cứng Cấu trúc và chức năng của trình điều khiển lớp liên kết dữ liệu trong hệ điều hành Contiki được thể hiện trong các nghiên cứu của các tác giả trước đây [Hình 3.8]

Hình 3.8: Cấu trúc 6LoWPAN protocol stack

6LoWPAN (IPv6 over Low-Power Wireless Personal Area Network) là giao thức ngăn xếp cung cấp cơ chế phân mảnh (fragmentation) và nén tiêu đề (header compression) cho phép truyền các gói IPv6 qua mạng IEEE 802.15.4 Trên lớp 2 (LLSEC), lớp bảo mật liên kết được thực hiện như một lớp mới, nằm giữa MAC và lớp mạng, được gọi là lớp con bảo mật 802.15.4 Vai trò của lớp “2.5” là phân mảnh và nén các gói IPv6 Phân mảnh là cần thiết vì MTU (Maximum Transmission Unit) của 802.15.4 frame là 127 bytes Nén các gói tin IPv6 có vai trò làm giảm tiêu thụ năng lượng cho truyền và nhận Trong lớp 3, giao thức 6LoWPAN (6LoWPAN Neighbor Discovery), phân phối thông tin ngữ cảnh để nén tiền tố mạng IPv6 ngẫu nhiên Giao thức định tuyến IPv6 cho các mạng thiếu năng lượng và tổn hao RPL (Routing Protocol for Low-Power and Lossy Networks) có vai trò duy nhất để định tuyến các gói IPv6

Do truyền thông không dây, kẻ tấn công có thể dễ dàng tiêm hoặc phát lại các khung 802.15.4 Lớp bảo mật 802.15.4 có vai trò chính để lọc các cuộc tấn công Trên lớp thích ứng 6LoWPAN, kẻ tấn công có thể khởi động các cuộc tấn công phân mảnh, phá hủy một phần các gói IPv6 hoặc bộ đệm xả Trên lớp 3, kẻ tấn công có thể khởi động các cuộc tấn công DoS (PDoS) dựa trên đường dẫn Một cuộc tấn công PDoS dựa vào các gói IPv6 giả mạo, có thể được định tuyến thông qua mạng 6LoWPAN, do đó tiêu tốn năng lượng pin Một cuộc tấn công khác là tiêm các thông điệp giả trên lớp 3 để làm tê liệt 6LoWPAN-ND hoặc RPL a)

Hình 3.9: Định dạng của a) Lớp MAC 802.15.4 và b) Lớp con bảo mật 802.15.4

Tiêu đề nén mới của lớp MAC 802.15.4 được hiển thị trong Hình 3.9.b Tải (payload) của khung MAC được giảm đáng kể để phù hợp với lớp con bảo mật Một số trường cần thiết cho các khung được kích hoạt bảo mật là Bộ đếm khung (Fram Counter) và Mã xác thực thông điệp (Message Integrity Code - MIC) Các MIC là các giá trị được tạo ra với chế độ mã hóa khối CCM* (Cipher Block Chaining - Message Authentication Code) CCM* là một phiên bản được sửa đổi của Bộ đếm (Counter) với khối mã hóa Chaining-MAC (CCM) và sử dụng mật mã khối AES 128 bit Trường Mã định danh (Key Identifier) có thể tùy chọn và nó có thể mang một giá trị tham chiếu đến khóa được tạo Tải cũng có thể được mã hóa hiệu quả hơn khi đích đến khung là một “hop”, thay vì nhiều “hop” vì các nút có khả năng bị xâm nhập có thể giải mã tải Ngoài ra còn có khả năng mã hóa tải với một giải pháp mức cao hơn, chẳng hạn như IPsec

Việc thiết lập các khóa 802.15.4 không được chỉ định trong lớp con bảo mật 802.15.4 Một trong những giải pháp là cho mỗi nút được tải trước bằng khóa chia sẻ trên toàn mạng (Network-Wide Shared Key) Tuy nhiên, giải pháp này không thích hợp cho các mạng 6LoWPAN không giám sát dễ bị tấn công Trong trường hợp này, kẻ tấn công có thể tiêm và từ chối các khung hợp pháp vào mạng Một giải pháp có sẵn khác là “fully pairwise keys scheme”, cho phép mỗi nút giao tiếp với các nút hàng xóm của nó bằng khóa cặp đôi được tải sẵn

APKES (Adaptable Pairwise Key Establishment Scheme) [16] là chương trình hình thành khóa phiên theo cặp (pairwise session keys) sử dụng trong bảo mật 802.15.4 giữa 2 nút hàng xóm Trong đó 2 “scheme” được “plug-in” vào APKES phổ biến hiện nay để chia sẻ khoá bí mật được tải trước trong mạng là LEAP (Localized Encryption and Authentication Protocol) [17] và Blom’s scheme [18] LEAP rất hiệu quả về năng lượng và khả năng nhớ Nó cho phép thiết lập khóa hai chiều chỉ với một khóa được tải trước cho mỗi nút

Những phần tiếp sau đây ta sẽ tìm hiểu các phương pháp bảo mật được sử dụng trong mạng 6LoWPAN ở lớp Adaptive Security và Secure RDC - Contiki MAC, để dễ dàng hiểu, ta phải trải qua quá trình hiểu từ cái gốc và đi theo thời gian để nắm được AdaptivesSEC được hình thành và phát triển từ đó tới nay như thế nào.

3.3.2 Adaptive Security Layer Ở phần này ta sẽ tìm hiểu lớp AdaptivesSEC qua các giao thức, chương trình trao đổi key đôi (pairwise key) ngẫu nhiên giữa các hàng xóm với nhau cũng như quy định các khung tin “unicast”, “broadcast” để đảm bảo xác thực cho mạng 6LoWPAN, khắc phục những hạn chế của bảo mật truyền thống mà phù hợp với những tính chất đặc trưng của mạng năng lượng thấp.

 AKES: Adaptive Key Establishment Scheme Để thiết lập các khóa phiên theo cặp (Pairwise Session Keys) sử dụng trong bảo mật 802.15.4, tác giả Krentz et al đã đề xuất APKES Tuy nhiên, APKES có bốn hạn chế Đầu tiên, APKES không có cơ chế cho phép các nút xóa dữ liệu “anti-replay” đến từ những hàng xóm chưa bao giờ xuất hiện trong mạng Thứ hai, trong quá trình hoạt động APKES bỏ qua bản tin HELLO đến từ những nút hàng xóm đã kết nối trước đó

Việc lờ đi bản tin HELLO từ những nút hàng xóm này gây ra “deadlock” sau khi các nút phải khởi động lại Thứ ba, APKES chỉ phát quảng bá các bản tin HELLO khi khởi động và không cố gắng khám phá những nút hàng xóm mới trong thời gian chạy Cuối cùng, APKES tập trung vào việc tạo các khóa phiên theo cặp từ các khóa theo cặp được phân phối trước và thiếu hỗ trợ hiệu quả cho các khóa trên toàn mạng được phân bổ trước Để khắc phục những hạn chế mà APKES vẫn còn tồn tại đó là chưa xử lý tình trạng nút bị khởi động lại (Reboot) hay di chuyển (Mobility) thì AKES với những đặc điểm sau giúp giải quyết việc này [19]:

AKES sẽ gửi các gói tin “ping” đến các hàng xóm mà không có sự kết nối sau một khoảng thời gian để kiểm tra xem nó có còn trong tầm thu phát của mình hay không Nếu không thấy trả lời thì AKES sẽ xóa tất cả dữ liệu của nút hàng xóm này.

AKES xử lý những bản tin HELLO từ những hàng xóm hiện tại và có khả năng bắt đầu lại một phiên kết nối mới đối với những hàng xóm này Sự thay đổi này giúp cho AKES khắc phục vấn đề khởi động lại trong bảo mật 802.15.4 Để khám phá những hàng xóm mới trong quá trình chạy, AKES còn sử dụng Trickle [20] để lên lịch trình cho việc phát “broadcast” lại HELLO Nhờ vào việc này mà AKES vừa tự mình giảm thiểu việc phát quá nhiều HELLO khi mà mạng đang ở trạng thái ổn định, vừa nhanh chóng phát hiện ra sự thay đổi xung quanh.

Giai đoạn hình thành key AKES

AKES sử dụng thuật toán bắt tay ba bước như APKES để thiết lập các khóa phiên Tuy nhiên có sự thay đổi trong các khung HELLO, HELLOACK, ACK (những khung này vẫn chỉ xử lý ở lớp 2) 3 bước bắt tay được thể hiện ở các bước sau đây và chi tiết như mô tả dưới đây [Hình 3.10]:

Ban đầu, nút u thiết lập khóa phiên theo cặp (Pairwise Session Key) với hàng xóm v Tiếp đó, u tạo ra một mật số mã ngẫu nhiên Ru và phát một khung HELLO có chứa Ru HELLO được xác thực bằng cách sử dụng EBEAP (Easy Broadcast Encryption and Authentication Protocol) [21] hoặc khóa phiên nhóm (Group Session Key) Quá trình xác thực và không xác thực HELLO được xử lý khác nhau.

Hình 3.10: Quá trình 3 bước bắt tay của AKES

Khi v nhận được gói HELLO từ hàng xóm u gửi đến, v bắt đầu tạo Kv,u nhờ vào “pluggable scheme” mà AKES sử dụng và cũng tạo ra một mật mã số ngẫu nhiên Rv Từ đó mà tạo được K’v,u = AES-128(Kv,u, Ru||Rv) Cuối cùng, v gửi một HELLOACK (HELLOACK được xác thực bằng MIC tạo từ K’v,u) đến u bao gồm Rv

SECURE RADIO DUTY CYCLING - CONTIKI MAC

3.4.1 POTR: Practical On-the-fly Rejection of Injected and Replayed 802.15.4

Qua việc tìm hiểu AKES ta thấy rất nhiều ưu điểm của nó như đã đề cập, tuy vậy vẫn còn có việc tấn công đó chính là kiểu tấn công nhỏ giọt làm tiêu tốn năng lượng (vấn đề tiết kiệm năng lượng là một trong những đặc điểm lớn của mạng WSN)

Việc phải xác thực tiêu tốn rất nhiều thời gian vì quá trình mã hóa giải mã, CCM*- MIC mà chính là điểm để kẻ tấn công khai thác và gây tiêu tốn năng lượng xử lý quá trình này Nhờ phát hiện vấn đề đó mà lớp Adaptive Security đã thêm vào POTR với nhiều tính năng mà có thể ngay lập tức lại bỏ những thông tin tấn công kiểu nhỏ giọt này với ý tưởng chính là dùng OTP (One Time Password) [22].

Adaptaion of the 802.15.4 Frame Format

So với cấu trúc khung 802.15.4 thông thường [Hình 3.11], POTR sẽ thay đổi 6 thông tin trong đó [Hình 3.12]

Hình 3.12: Định dạng khung 802.15.4 tương thích POTR

- Đầu tiên, POTR sẽ thay trường Frame Control bằng Frame Type Tùy vào giá trị Frame Type mà ý nghĩa của chúng khác nhau.

Bảng 3.1: Giá trị Frame Type tương thích POTR

- Thứ hai, POTR xem thỏa thuận “Network-wide” về việc sử dụng các địa chỉ đơn giản, địa chỉ ngắn hoặc địa chỉ mở rộng.

- Thứ ba, POTR di chuyển trường Source Address lên đầu khung.

- Thứ tư, POTR giảm kích thước trường Auxiliary Security Header (không cần thiết) để nhường cho trường Frame Counter.

- Thứ năm, POTR thêm l-bit trường OTP để nhúng giá trị OTP vào khung 802.15.4 Hiện giờ, trường OTP thay thế cho trường Destination Address bởi vì POTR OTP đã mã hóa người được nhận tin trong đó.

- Thứ sáu, POTR làm cho PAN-ID trở nên dư thừa do POTR có khả năng loại bỏ các khung không mong muốn rất nhanh kể cả khung PAN-ID với nút.

Như vậy việc thay đổi cấu trúc khung tin 802.15.4 bằng cách thêm POTR OTP mang lại rất nhiều lợi ích mà không ảnh hưởng đến việc làm tràn khung nhờ vào việc giảm bớt trường Frame Control, Destination PAN, Source PAN và Destination Address Field.

Bên cạnh việc tránh việc truyền thông “overhead”, POTR cũng giữ cho bộ nhớ truy cập ngẫu nhiên RAM (Random Access Memory) ở mức thấp Điều này đạt được thông qua việc tích hợp POTR với bảo mật 802.15.4 Cụ thể, POTR sử dụng lại các khóa nhóm mà AKES thiết lập để sử dụng trong bảo mật 802.15.4 Hơn nữa, POTR đảm nhận nhiệm vụ kiểm tra mức độ làm mới (freshness) của các khung đến từ bảo mật 802.15.4 và quản lý tất cả dữ liệu “anti-replay” Do đó, bảo mật 802.15.4 cần phải vô hiệu hóa “anti-replay” khi sử dụng POTR.

On-the-fly Rejection of Unwanted 802.15.4 Frames

Trong quá trình hoạt động, POTR sẽ thực hiện các kiểm tra trong khi nhận các khung đến Nếu kiểm tra không thành công, POTR sẽ từ chối gần như lập tức các khung đang đến (Incoming Frame) bằng cách tắt chế độ nhận ngay lập tức.

Sau khi nhận được một khung dữ liệu unicast, trước tiên POTR phải đảm bảo rằng bên gửi hiện tại được lưu trữ như một nút hàng xóm thường trực bằng cách kiểm tra trường Source Address Nếu đúng là hàng xóm vĩnh viễn đang gửi, POTR tạo ra OTP tương ứng và kiểm tra xem có trùng với mã có ở trong khung hay không OTP của khung dữ liệu unicast được tạo bằng cách:

KDF(Ksrc,∗ ⊕ Kn, IDdst||C) ∈ {0, 1} l Trong đó:

KDF là hàm key derivation function

⊕ là XOR Ksrc,* là group session key của bên gửi

Kn là khoá chung toàn mạng IDdst là địa chỉ bên gửi

|| là phép OR C frame counter để chống việc phát lại

Acknowledgement Frames bao gồm trường Frame Type, ít nhất 8 các bit quan trọng của bộ đếm khung (frame counter) và trường FCS Để bảo vệ khỏi các cuộc tấn công “Denial-of-Sleep” với khung xác nhận ACK, POTR chỉ đơn giản là đảm bảo rằng chiều dài của chúng là 4-byte bằng cách kiểm tra trường Frame Length Điều này khắc phục ở phần sau khi đảm bảo khung ACK an toàn hơn.

Các OTP của khung HELLO được tạo ra như cách tạo của khung “broadcast” bên trên, nhưng POTR chỉ từ chối những OTP của HELLO nếu chúng được phát lại Đặc biệt, nếu một HELLO bắt nguồn từ một bên gửi hiện không phải đang được lưu trữ như một nút hàng xóm thường trực, HELLO vẫn cần được xử lý để cho phép thiết lập khóa phiên với những hàng xóm mới Ngoài ra, ngay cả khi bên gửi được lưu trữ dưới dạng hàng xóm thường trực, nó có thể gửi một OTP không hợp lệ vì bên gửi có thể đã khởi động lại và do đó tạo ra khóa phiên nhóm mới Để bảo vệ khỏi tấn công

“Denial-of-Sleep” với HELLO anyway, POTR sẽ kiểm tra bốn thứ sau đây: một là đảm bảo số chiều dài khung tới là đúng; hai là POTR đảm bảo là vẫn còn chỗ trống để chứa thông tin nút hàng xóm; ba là POTR từ chối những khung HELLO từ hàng xóm nhất thời; bốn là POTR từ chối HELLO nếu đã chứa đủ hàng xóm gần nhất (như AKES).

HELLOACKs: Để chống việc phát lại OTP thì sẽ có bộ nhớ cache lưu tất cả OTP đã nhận và POTR khi nhận HELLOACK sẽ trích OTP trong tin đó ra so sánh với toàn bộ OTP trong “cache”, nếu giá trị OTP giống như cũ thì sẽ từ chối ngay lập tức Nếu “cache”

OTP đầy thì POTR sẽ từ chối toàn bộ HELLOACK nhận được cho tới khi nào AKES bắt đầu lại quá trình “broadcast” gói HELLO tiếp theo.

Hình 3.13: Quá trình bắt tay 3 bước thiết lập khoá phiên ACKs:

OTP của ACK được tạo giống như của HELLOACK, nhưng sử dụng số ngẫu nhiên 64 bit AKES thêm vào gói tin HELLOACK tương ứng, như được hiển thị trong hình 3.13 Để ngăn phát lại các ACK-OTP, POTR từ chối ACK từ bên gửi không được lưu trữ hay không phải hàng xóm nhất thời Hơn nữa, nếu POTR chấp nhận ACK trong khi AKES từ chối nó, AKES cũng xóa bên gửi ACK khỏi danh sách các hàng xóm láng giềng giống như việc từ chối gói tin ACK.

3.4.2 Countering Three Denial-of-Sleep Attacks on ContikiMAC

Giao thức RDC (Radio Duty Cycle) kiểm soát thời gian ngủ giữa các node mạng và lớp này quyết định khi nào các gói tin sẽ được truyền đi, nó đảm bảo rằng các nút sẽ được đánh thức khi nhận gói tin Giao thức được sử dụng phổ biến nhất là ContikiMAC với những ưu điểm đáng kể khi sử dụng tối ưu nguồn năng lượng nhờ biết cách thức và giữ giấc hợp lý để có thể nhận được gói tin nên vẫn giữ tỉ lệ nhận gói rất cao Tuy vậy vẫn có những kẻ tấn công mạng lợi dụng những sơ hở giữa những lần thức để tấn công, ép nút mạng thức nhận gói tin dẫn đến việc tiêu hao năng lượng, mà đây là nguồn tài nguyên giới hạn trong mạng cảm biến không dây

Trạng thái ngủ hay thức ContikiMAC chủ yếu dựa vào cơ chế đánh thức hiệu quả năng lượng dựa vào thời gian chính xác giữa các thời điểm truyền Kết hợp CCA và sử dụng chỉ số cường độ tín hiệu RSSI nhận được để quyết định xem có ngủ lại không Khi CCA phát hiện ra một gói tin truyền tải, thì ContikiMAC giữ radio để giữ trạng thái thức nhận được đầy đủ gói tin và sẽ ngủ lại sau một khoảng thời gian tl + ti

KẾT LUẬN CHƯƠNG

IEEE 802.15.4 là một tiêu chuẩn chỉ định lớp Vật lý (PHY) và điều khiển truy cập phương tiện (Media Access Control - MAC) cho mạng khu vực cá nhân không dây tốc độ thấp LR-WPAN (Low-rate Wireless Personal Area Network) [11] Được sử dụng trong những ứng dụng chỉ đòi hỏi mức tiêu thụ năng lượng thấp, không yêu cầu cao về tốc độ truyền tin và chất lượng dịch vụ (Quality of Service - QoS) Do đó, chính tốc độ truyền tin thấp cho phép chuẩn này tiêu hao ít năng lượng hơn

Khác với thông thường, ở lớp Link của Contiki được chia làm 3 lớp: Framer, RDC (Radio Duty Cycle) và MAC (Media Access Control) Như với nhiều công nghệ không dây, MAC được thực hiện với giao thức CSMA/CA để tránh va chạm giữa các thiết bị khi có nhiều nút hoạt động Trong khi, NullMAC là giao thức truyền nhận đơn giản, không lắng nghe kênh truyền nên thường xảy ra tình trạng xung đột gói tin và mất gói

Giao thức RDC (Radio Duty Cycle) kiểm soát thời gian ngủ giữa các nút mạng và lớp này quyết định khi nào các gói tin sẽ được truyền đi, nó đảm bảo rằng các nút sẽ được đánh thức khi nhận gói tin Giao thức được sử dụng phổ biến nhất là ContikiMAC với những ưu điểm đáng kể khi sử dụng tối ưu nguồn năng lượng nhờ biết cách thức và giữ giấc hợp lý để có thể nhận được gói tin nên vẫn giữ tỉ lệ nhận gói rất cao Tuy vậy vẫn có những kẻ tấn công mạng lợi dụng những sơ hở giữa những lần thức để tấn công, ép nút mạng thức nhận gói tin dẫn đến việc tiêu hao năng lượng, mà đây là nguồn tài nguyên giới hạn trong mạng cảm biến không dây

Kiểu tấn công nhỏ giọt làm tiêu tốn năng lượng (vấn đề tiết kiệm năng lượng là một trong những đặc điểm lớn của mạng WSN) Việc phải xác thực tiêu tốn rất nhiều thời gian vì quá trình mã hóa giải mã CCM*-MIC mà chính là điểm để kẻ tấn công khai thác và gây tiêu tốn năng lượng xử lý quá trình này, POTR với nhiều tính năng mà có thể ngay lập tức lại bỏ những thông tin tấn công kiểu nhỏ giọt này với ý tưởng chính là dùng OTP

Phương pháp Secure RDC tập trung giải quyết ba cuộc tấn công chống ngủ của giao thức ContikiMAC đó là: ding-dong ditching, pulse-delay attacks, collision attacks Hai phương pháp tối ưu để chống các cuộc tấn công nêu trên đó là “The Dozing Optimazation”, phương pháp này giúp giảm phần lớn năng lượng tiêu thụ do bị tấn công Ding-dong ditching đồng thời nó cũng giúp việc điều khiển quá trình thức giấc hợp lý và phương pháp “The Secure Phase-lock Optimization”, sử dụng hiệu quả nguồn năng lượng khi chống lại 2 kiểu tấn công là pulse-delay attack và collision attack.

BẢO MẬT TRONG MẠNG CẢM BIẾN KHÔNG DÂY

YÊU CẦU BẢO MẬT TRONG MẠNG CẢM BIẾN KHÔNG DÂY

Mạng cảm biến không dây rất dễ bị tấn công như bất kỳ mạng thông thường nào khác Nhưng với đặc tính nguồn năng lượng hạn chế, tính ứng dụng cao, sử dụng mạng Internet hoặc vệ tinh để trao đổi thông tin với người dùng, do đó mạng WSN cần phải đảm bảo được một số thuộc tính bảo mật như sau [4]:

Bảo mật có nghĩa là giữ bí mật thông tin khỏi các bên truy cập trái phép, bảo mật dữ liệu là một trong những yêu cầu bảo mật quan trọng đối với mạng cảm biến không dây vì mục đích ứng dụng của nó Ví dụ như trong các ứng dụng về quân sự, các nút cảm biến có thể sẽ trao đổi những dữ liệu mang tính chất nhạy cảm, bí mật cao Do đó, hệ thống WSN cần phải đảm bảo chắc chắn rằng không có bất kỳ kẻ xâm nhập hoặc hệ thống mạng lân cận nào có được thông tin trong quá trình trao đổi

Phương pháp bảo mật dữ liệu cho mạng cảm biến không dây được sử dụng rộng rãi hiện nay đó là mã hóa dữ liệu và sử dụng khóa chia sẻ để chỉ cho phép những nút nhận thật sự mới nhận và đọc được dữ liệu Quá trình mã hóa không chỉ ngăn chặn khả năng khôi phục tin nhắn mà còn ngăn chặn khả năng các đối thủ biết được một phần thông tin về các tin nhắn đã được mã hóa

4.1.2 Tính xác thực và tính toàn vẹn

Trong thực tế, nếu mạng cảm biến không dây chỉ được đảm bảo về tính bảo mật dữ liệu thì vẫn không đủ để đảm bảo an toàn mạng Các đối tượng xâm hại vẫn có thể thay đổi thông điệp, thay đổi dữ liệu truyền đi hoặc tiêm vào thông điệp những dữ liệu độc hại Các nút truy cập hợp pháp có thể phát hiện các tin nhắn từ các nút trái phép và từ chối chúng Ngoài ra, một hệ thống mạng an toàn sẽ cung cấp khả năng bảo toàn tin nhắn: nếu một bên nào đó sửa đổi tin nhắn của người gửi được ủy quyền trong khi tin nhắn đang được truyền đi, bên nhận sẽ có thể phát hiện sự giả mạo này

Vì vậy, tính xác thực và tính toàn vẹn của dữ liệu cũng là những yêu cầu bảo mật quan trọng

 Tính xác thực nhằm đảm bảo cho người nhận rằng dữ liệu nhận được là dữ liệu xuất phát từ chính bên gửi Mã xác thực phải thực sự phức tạp để không bị giả mạo nếu không có khóa bảo mật

 Tính toàn vẹn nhằm đảm bảo cho người nhận rằng dữ liệu nhận được là dữ liệu đầy đủ, chưa bị sửa đổi trong quá trình truyền

Tính khả dụng nhằm đảm bảo rằng các nút cảm biến đang hoạt động trong mạng để thực hiện chức năng của mình trong mạng Để đạt được điều này, hệ thống mạng cần đảm bảo rằng các cơ chế bảo mật được áp dụng tại các nút cảm biến nhằm đảm bảo tính bảo mật dữ liệu, tính xác thực dữ liệu, và tính toàn vẹn dữ liệu Từ đó, cho phép các nút cảm biến được ủy quyền tham gia vào việc xử lý dữ liệu hoặc thông tin liên lạc khi cần thiết

Vì các nút cảm biến có nguồn năng lượng pin giới hạn, các tính toán không cần thiết có thể làm cạn kiệt nguồn năng lượng của nút, điều này sẽ làm cho các nút không còn khả dụng và sẽ bị loại bỏ khỏi hệ thống mạng Do đó, chính sách bảo mật trong mạng WSN đặt ra yêu cầu đó là các nút cảm biến không thực hiện thêm các tính toán phức tạp và phân bổ tài nguyên cho mục đích bảo mật.

CÁC CUỘC TẤN CÔNG TẠI LỚP LIÊN KẾT DỮ LIỆU

Như chúng ta đã tìm hiểu ở chương 2, mạng cảm biến không dây được thiết kế giống như mô hình OSI 5 lớp Kiến trúc lớp này làm cho WSN dễ bị tấn công, đặc biệt là tại lớp liên kết dữ liệu Kẻ tấn công có thể truy cập vào các phương tiện truyền thông, gây nhiễu sóng vô tuyến, ngăn chặn các nút cảm biến hợp pháp truyền thông điệp

Các cuộc tấn công tại lớp liên kết dữ liệu trong mạng cảm biến không dây được trình bày tóm lượt như sau [24, 25]:

Kẻ tấn công sẽ làm ngừng chức năng của một vài nút cảm biến trong mạng WSN, nhằm ngăn chặn quá trình truyền thông trong hệ thống mạng và cố gắng đọc những thông tin có giá trị tại nút bị tấn công

 Gây nhiễu lớp liên kết dữ liệu

Kẻ tấn công sẽ dựa vào phân bố xác suất về thời gian đến giữa tất cả các loại thông điệp, nắm bắt tần số truyền dẫn và phát tín hiệu có tần số trùng với tần số của các nút cảm biến đang gửi thông điệp Tín hiệu vô tuyến này sẽ can thiệp vào các tín hiệu khác, điều này làm cho các máy thu trong phạm vi phát thông điệp không thể nhận được bất kỳ thông điệp nào Do đó, các nút cảm biến bị ảnh hưởng sẽ hoàn toàn bị cô lập và không có thông điệp nào được trao đổi giữa các nút bị ảnh hưởng

Việc không nhân được thông điệp khiến nút gửi phải truyền lại thông điệp liên tục, điều này làm cạn kiệt nguồn năng lượng của nó, từ đó làm cho nút không còn khả dụng trong hệ thống

 Tạo ra va chạm dữ liệu

Lớp liên kết dữ liệu rất dễ bị va chạm dữ liệu khi các nút cố gắng truyền thông điệp đồng thời trên cùng một tần số Để tạo ra xung đột, kẻ tấn công lắng nghe các truyền dẫn trong mạng cảm biến không dây Khi phát hiện ra sự bắt đầu của một thông điệp, kẻ tấn công sẽ gửi tín hiệu vô tuyến trong một khoảng thời gian nhỏ để can thiệp vào thông điệp nhằm gây ra lỗi ở đầu nhận

Vì cuộc tấn công này người nhận không thể nhận được thông điệp một cách chính xác Việc nhận thông điệp không chính xác khiến nút gửi thông điệp phải truyền lại thông điệp liên tục, điều này làm cạn kiệt nguồn năng lượng của nút gửi Có 2 loại va chạm đó là va chạm môi trường và xác suất

 Cạn kiệt nguồn năng lượng

Hình thức tấn công này tương tự như hình thức tấn công va chạm, nhưng ở cấp độ mạnh hơn Kẻ tấn công sẽ lặp đi lặp lại sự va chạm, cho đến khi nút gửi thông điệp bị cạn kiệt nguồn năng lượng hoàn toàn và bị loại bỏ khỏi hệ thống mạng

Kẻ tấn công thường xuyên giám sát kênh truyền, tính toán một số thông số dựa trên giao thức MAC bị ảnh hưởng và điều chỉnh thời gian, truyền thông điệp ngay tại thời điểm như các nút cảm biến thường làm Điều này làm phá vỡ các hoạt động của giao thức, giảm chất lượng thông điệp và tính khả dụng của mạng

Hình thức tấn công này, kẻ tấn công sau khi nghe được thông điệp truyền đi, sẽ giả mạo ACK của thông điệp

 Chuyển tiếp có chọn lọc

Chuyển tiếp chọn lọc là một cuộc tấn công mà trong đó thông điệp được gửi đi của nút bị xâm phạm được chọn lọc và làm giảm các gói tin quan trọng Nút đích nhận được thông điệp sẽ không có sự nghi ngờ Cuộc tấn công kiểu này sẽ làm cho mạng cảm biến không dây nhận được dữ liệu sai, từ đó đưa ra những quan sát sai về môi trường, làm ảnh hưởng xấu đến mục đích của các ứng dụng

Kẻ tấn công sẽ xâm nhập một nút cảm biến trong WSN, nút cảm biến bị xâm nhập sẽ thu hút một số lượng lớn lưu lượng của các nút láng giềng bằng cách giả mạo hoặc phát lại thông tin về tuyến đường chất lượng tới trạm gốc Kẻ tấn công có thể thực hiện bất kỳ hoạt động độc hại nào với các gói tin đi qua nút bị xâm nhập đó Điều này gây ra sự định tuyến sai lệch trong hệ thống, làm suy giảm nguồn năng lượng của các nút và là cơ sở để kích hoạt các cuộc tấn công khác ví dụ như kiểu tấn công nghe lén, chuyển tiếp có chọn lọc, …

Trong một tấn công Wormhole, hai hoặc nhiều nút thông đồng với nhau bằng cách thiết lập một đường hầm dây tốc độ cao ở băng tần khác, và truyền thông báo quảng bá về tuyến đường chất lượng cao cho tất cả các nút trong hệ thống mạng nhằm thu hút luồng dữ liệu lưu thông trong mạng Điều này gây ra sự định tuyến sai lệch trong toàn hệ thống, các nút mạng bị cạn kiệt nguồn tài nguyên do phải truyền thông điệp liên tục vì nút đích không nhận được thông điệp

Kẻ tấn công sẽ xâm nhập một nút trong mạng, nút bị xâm hại sẽ được mạo danh như một trạm đích và thu hút các nút gửi thông điệp đến vị trí này.

PHÂN LOẠI TẤN CÔNG LỚP LIÊN KẾT DỮ LIỆU

Các cuộc tấn công tại lớp liên kết của mạng cảm biến không dây dựa trên mức độ thiệt hại hoặc mức độ truy cập của kẻ tấn công bao gồm 2 loại như sau:

Với loại tấn công này, kẻ tấn công sẽ sử dụng các hình thức tấn công như đưa dữ liệu bị lỗi vào WSN, mạo danh, sửa đổi gói tin, truy cập trái phép, theo dõi, nghe trộm, sửa đổi tài nguyên và luồng dữ liệu, tạo lỗ hổng trong các giao thức bảo mật

Mục tiêu của loại tấn công này là làm gián đoạn chức năng mạng, làm suy giảm hiệu suất mạng, làm người dùng không thể sử dụng các dịch vụ của mạng, phá hủy các nút cảm biến, thay đổi dữ liệu, cản trở các hoạt động hoặc cắt đứt các nút nhất định đến các nút láng giềng

Với loại hình tấn công này, kẻ tấn công hoạt động như một nút bình thường, sau đó nó thực hiện các cuộc tấn công nghe lén kênh giao tiếp với mục tiêu là thu thập, ăn cắp thông tin, từ đó các yêu cầu về bảo mật và quyền riêng tư của thông điệp bị xâm phạm, làm suy giảm hệ thống mạng

4.3.2 Dựa trên vị trí của kẻ tấn công

Kẻ tấn công có thể triển khai tấn công ngay bên trong hoặc bên ngoài mạng cảm biến không dây Nếu kẻ tấn công nằm trong phạm vi của mạng thì được gọi là cuộc tấn công nội bộ, nếu kẻ tấn công được triển khai nằm ngoài phạm vi mạng WSN thì được gọi là cuộc tấn công bên ngoài

Kẻ tấn công sẽ làm nhiễu toàn bộ giao tiếp của mạng cảm biến không dây, làm tiêu hao nguồn tài nguyên hạn chế của WSN

Tấn công nội bộ là một thách thức trong mạng WSN, kẻ tấn công có thể truy cập vào tất cả các nút khác trong phạm vi tấn công của nó Nút bị xâm nhập sẽ tiến hành thực thi các dữ liệu độc hại hoặc sử dụng mật mã của các nút hợp pháp nhằm truy cập vào các khóa mã hóa hoặc các mã WSN khác, thu thập các khóa bí mật để đọc được thông tin từ các thông điệp truyền đi Đây là mối đe dọa cao đối với toàn bộ hệ thống mạng

4.3.3 Dựa trên thiết bị tấn công

Những kẻ tấn công có thể sử dụng các loại thiết bị khác nhau để tấn công mạng cảm biến không dây

Mục tiêu và hiệu ứng của loại tấn công này đó là nghe trộm, nhân bản gói, giả mạo hoặc sửa đổi gói

Kiểu tấn công này được gọi là tấn công từ chối dịch vụ (DoS) tấn công, nó làm suy giảm hiệu suất của mạng cảm biến không dây hoặc làm tê liệt mạng WSN

Loại tấn công này nghe lén kênh truyền, sau đó đưa dữ liệu sai vào trong mạng cảm biến không dây nhằm phá hủy một phần hay toàn bộ dịch vụ chức năng của mạng.

BẢO MẬT LỚP LIÊN KẾT DỮ LIỆU MẠNG CẢM BIẾN KHÔNG DÂY 45

Thông thường trong các mạng cảm biến không dây, tính xác thực, tính toàn vẹn, tính bảo mật dữ liệu thường được thực hiện bởi cơ chế bảo mật đầu cuối - đầu cuối (end-to-end) đó là truyền thông điệp từ nút đầu cuối đến nút cuối, trong đó các nút trung gian chỉ cần xem tiêu đề của thông điệp rồi chuyển tiếp mà không cần phải xem nội dung của dữ liệu [7]

Cơ chế bảo mật end-to-end rất dễ bị tấn công Nếu tính toàn vẹn thông điệp chỉ được kiểm tra tại nút cuối cùng, mạng có thể định tuyến chuyển các gói tin đã bị tấn công qua nhiều “hop” trước khi chúng được phát hiện Loại tấn công này sẽ làm lãng phí năng lượng và băng thông của các nút cảm biến, mà đây lại được xem là nguồn tài nguyên quý giá trong mạng

Cơ chế bảo mật trên lớp liên kết dữ liệu đảm bảo tính xác thực, tính toàn vẹn và tính bảo mật các thông điệp Lớp bảo mật 802.15.4 được xử lý ở lớp điều khiển truy cập phương tiện, phía dưới điều khiển ứng dụng Ứng dụng chỉ định các yêu cầu bảo mật bằng cách đặt các tham số điều khiển phù hợp vào ngăn xếp vô tuyến Nếu một ứng dụng không đặt bất kỳ tham số nào, thì mặc định bảo mật sẽ không được khởi động Mỗi ứng dụng có một lựa chọn bộ bảo mật mà có thể kiểm soát quá trình bảo vệ an toàn cho dữ liệu được truyền Mỗi bộ bảo mật cung cấp một tập hợp các thuộc tính bảo mật và bảo đảm khác nhau, và cuối cùng là các định dạng gói khác nhau Đặc điểm kỹ thuật 802.15.4 định nghĩa 8 bộ bảo mật khác nhau [4]:

Hình 4.1: Các mức bảo mật trong 802.15.4

Theo hình 4.1 phân loại các mức bảo mật theo các thuộc tính mà chúng cung cấp: không bảo mật (Null), chỉ mã hóa (AES-CTR), chỉ xác thực (AES-CBC-MAC), và bao gồm mã hóa và xác thực (AES-CCM) Mỗi danh mục hỗ trợ xác thực đều có ba biến tùy thuộc vào kích cỡ của MAC mà nó cung cấp, MAC có thể dài 32, 64 hoặc 128 bit MAC càng dài thì khả năng đối tượng truy cập trái phép càng gặp khó khăn trong giả mạo bằng cách đoán một mã thích hợp Ví dụ, với MAC có độ dài 8 bytes, kẻ tấn công sẽ có 2 -64 cơ hội giả mạo MAC

Một sự thay thế hiệu quả hơn là một gói có kích thước lớn hơn để tăng khả năng bảo vệ chống lại các cuộc tấn công xác thực Ngoài ra, đối với mỗi bộ cung cấp mã hóa, bên nhận có thể tùy chọn bật chức năng bảo vệ tấn công phát lại Các nhà thiết kế vô tuyến không phải thực hiện tất cả các bộ chức năng này Thông số kỹ thuật chỉ yêu cầu các chip vô tuyến cung cấp hỗ trợ cho bộ Null và bộ AES-CCM-64 Null là bộ bảo mật đơn giản nhất, bộ bảo mật này bắt buộc phải có trong tất cả các chip vô tuyến Không chứa bất kỳ tài liệu bảo mật nào và hoạt động như chức năng nhận dạng, nó cũng không cung cấp bất kỳ đảm bảo an ninh nào

Tính bảo mật trong mạng có thể đạt được thông qua thuật toán mã hóa Mã hóa là điều cần thiết để đảm bảo các dịch vụ được bảo mật Các phương pháp mã hóa khóa công khai như chữ ký RSA không phù hợp với mạng cảm biến không dây vì giới hạn về bộ nhớ, khả năng tính toán, nguồn năng lượng các nút trong mạng Vì vậy, giải pháp phù hợp hơn trong trường hợp này đó là sử dụng các thuật toán mã hóa đối xứng và hàm băm

Thuật toán mã hóa/giải mã thường được sử dụng là thuật toán AES, RC5, Triple-DES, Skipjack, … Tuy nhiên, thuật toán RC5 và Triple-DES có hạn chế đó là tốc độ xử lý chậm trong các vi điều khiển nhúng, nên không phù hợp trong WSN, thuật toán AES phù hợp hơn trong trường hợp này [5] AES (Advanced Encryption Standard) là một bộ mật mã khối đối xứng có thể mã hóa hoặc giải mã khối dữ liệu 128 bit, sử dụng các khóa mật mã có độ dài 128, 192 và 256 bit AES dựa trên thuật toán Rijndael được phát triển bởi Daemen và Rijmen vào năm 1998 [26]

AES-CTR cung cấp bảo mật bằng cách sử dụng mật mã khối AES với chế độ truy cập “counter mode” Để mã hóa dữ liệu dưới chế độ truy cập thì bên gửi sẽ phân chia bản tin thành khối 16 byte từ p1,…., pn và thực hiện việc tính toán ci = pi  Ek(xi)

Mỗi khối 16 byte sử dụng giá trị đếm khác nhau gọi là x1 Khi đó, tại bên nhận sẽ khôi phục lại bản tin gốc bằng cách tính pi = ci  Ek(xi) Rõ ràng, người nhận cần giá trị xi để xây dựng lại pi Bộ đếm xi, được gọi là “nonce” hoặc vector khởi tạo IV (Initialization Vector), bao gồm trường “flags”, địa chỉ người gửi (sender’s address) và 3 bộ đếm riêng biệt: bộ đếm khung (Frame Ctr) 4 byte xác định gói tin, trường bộ đếm khóa (Key Ctr) 1 byte và bộ đếm khối (Block Ctr) 2 byte đánh số các khối 16 byte trong gói như trong hình 4.2:

Hình 4.2: Định dạng khung giá trị đếm x i

Bộ đếm khung được duy trì bởi phần cứng vô tuyến, bên gửi tăng số lượng đếm khung sau khi mã hóa từng gói Khi đạt đến giá trị tối đa, vô tuyến trả về mã lỗi và không thể mã hóa thêm nữa Bộ đếm chính là bộ đếm 1 byte dưới sự điều khiển của ứng dụng Nó có thể được tăng lên nếu bộ đếm khung đạt đến giá trị tối đa Yêu cầu là IV không được lặp lại trong chu kỳ của bất kỳ khóa đơn lẻ nào, vai trò của bộ đếm khung và khóa là để ngăn chặn việc sử dụng lại IV Bộ đếm khối 2 byte đảm bảo rằng mỗi khối sẽ sử dụng một giá trị IV khác nhau; bên gửi không cần đưa vào gói tin vì bên nhận có thể suy ra giá trị cho mỗi khối Tóm lại, bên gửi đưa bộ đếm khung, bộ đếm khóa và tải trọng được mã hóa vào trường tải trọng dữ liệu của gói, như trong hình 4.3:

Hình 4.3: Định dạng khung AES-CTR

Hình 4.4: Sơ đồ mã hóa khối chuỗi (CBC)

Theo hình 4.4 thông điệp (Plaintext) được chia thành các khối theo kích thước cố định, khối đầu tiên được mã hóa với vector khởi tạo IV và khóa (key) để tạo ra mật mã (Ciphertext) và mật mã này được tiếp tục sử dụng làm tham số đầu vào cho khối tiếp theo, quy trình như vậy được lặp lại cho đến khối cuối cùng sẽ tạo ra được mật mã

Khối mật mã đầu tiên sẽ được giải mã với tham số đầu vào là khóa và vector khởi tạo để giải mã thành bản rõ, khối mật mã đó lại được sử dụng làm tham số đầu vào cùng với khóa cho khối mật mã tiếp theo để giải mã, quá trình tiếp tục đến khối mật mã cuối cùng để giải mã thành các bản rõ ban đầu [Hình 4.5]

Thuật toán mã hóa khối có thể được sử dụng cùng với vector khởi tạo IV như một tham số đầu vào cùng với khóa bí mật K nhằm làm tăng tính bảo mật của dữ liệu được mã hóa Các chương trình mã hóa chủ yếu sử dụng giá trị IV được tạo ngẫu nhiên để đảm bảo an toàn ngữ nghĩa Do tính chất này mà nhờ đó việc sử dụng lặp đi lặp lại của chương trình cùng 1 dữ liệu với cùng 1 khóa ngăn không cho phép kẻ tấn công suy ra mối quan hệ giữa các phân đoạn của thông điệp được mã hóa

Hình 4.5: Sơ đồ giải mã mật mã

Kích thước của giá trị IV phụ thuộc vào mật mã gốc được sử dụng, đối với mật mã khối thì kích thước của giá trị IV thường là kích thước khối của thuật toán mã hóa Khi chọn kích thước cho giá trị IV phải tính tới xác suất đụng độ do vấn đề lặp lại giá trị IV phải được tính toán và cân nhắc Để sử dụng mã hóa ngữ nghĩa an toàn đòi hỏi phải có chương trình mã hóa và xác định định dạng cho giá trị IV phù hợp Mã hóa khóa đối xứng thường có 2 loại đó là thuật toán mã hóa dòng và thuật toán mã hóa khối, cụ thể như sau:

 Thuật toán mã hóa dòng

Mật mã dòng thường sử dụng một khoá K và vector khởi tạo IV như tham số đầu vào của hàm Pseudorandom Keystream GK(IV) Keystream sau đó được XOR với thông điệp như công thức (1) để có được mật mã:

KẾT LUẬN CHƯƠNG

Trong mạng cảm biến không dây, tại lớp liên kết dữ liệu kẻ tấn công có thể truy cập vào các phương tiện truyền thông, gây nhiễu sóng vô tuyến, ngăn chặn các nút cảm biến hợp pháp truyền thông điệp Các cuộc tấn công phổ biến như: tấn công làm ngừng chức năng của một vài nút trong mạng, gây nhiễu lớp liên kết dữ liệu làm cạn kiệt nguồn năng lượng

Các thông điệp điều khiển không bảo mật dễ dàng tiết lộ thông tin lưu lượng và cho phép một nút đối thủ tham gia mạng Để giải quyết vấn đề này, công việc được đề xuất cung cấp bảo mật cho các thông điệp điều khiển bằng các tham số được xác định trong tiêu đề bảo mật Nút đối nghịch khi nhận thông báo điều khiển sẽ xác minh tính tương thích của các tham số bảo mật với các tham số của nó Nếu nó tương thích thì nút tham gia mạng, nếu không thì bị cấm tham gia.

MÔ HÌNH THỰC NGHIỆM

MÔI TRƯỜNG THỰC NGHIỆM

Ngày nay, các nút cảm biến không dây có kết nối mạng thường chạy một hệ điều hành để cung cấp nhiều ứng dụng hỗ trợ Một trong những hệ điều hành này là Contiki OS [27], đây là một hệ điều hành đa nhiệm, dựa trên ngôn ngữ lập trình C, mã nguồn mở cho các hệ thống nhúng mạng người dùng có bộ nhớ và WSN Hệ điều hành Contiki là một hệ điều hành mã nguồn mở được viết bởi bởi Adam Dunkels đến từ nhóm Embedded Systems của Viện Khoa học Máy tính Thụy Điển Hệ điều hành Contiki bắt đầu được nghiên cứu từ năm 2001 và phát hành bản Contiki 1.0 đầu tiên vào năm 2003

Hệ điều hành Contiki cung cấp những công cụ hỗ trợ mô phỏng với giao diện đơn giản [Hình 5.1], dễ sử dụng và hỗ trợ tốt những thiết bị trong thực tế Bên cạnh đó, hệ điều hành Contiki có tính di động cao, điều hành đa tác vụ cho hệ thống nhúng có dung lượng bộ nhớ hạn chế Contiki cung cấp hệ điều hành hỗ trợ Internet Protocol Suite (TCP/IP stack) rất phù hợp cho những mục đích nghiên cứu, thiết kế, mô phỏng và triển khai các hệ thống nhúng, các giao thức mới và đặc biệt là triển khai các ứng dụng của mạng cảm biến không dây, các thiết bị có công suất thấp, tiết kiệm năng lượng, băng thông hẹp, bộ nhớ hạn chế với cấu hình cơ bản là 2 KB bộ nhớ RAM và

40 KB ROM Với những ưu điểm như vậy mà Contiki OS được áp dụng rộng rãi cho các ứng dụng liên quan tới mạng cảm biến không dây và Internet of Things (IoT)

Hệ điều hành Contiki được lập trình bằng ngôn ngữ lập trình C, hoạt động dựa trên cơ chế “event – driven”, với các đặc điểm như sau:

 Contiki được chia thành nhiều mô-đun hoạt động độc lập Nhờ đó các ứng dụng có thể sử dụng các mô-đun một cách linh động và chỉ load những mô- đun thật sự cần thiết

Hình 5.1: Giao diện hệ điều hành Contiki

 Cơ chế hoạt động điều khiển sự kiện làm giảm năng lượng tiêu hao và hạn chế dung lượng bộ nhớ cần sử dụng

 Có thể sử dụng IP trong mạng cảm biến thông qua uIP stack được xây dựng dựa trên nền TCP/IP tương thích với RDC cho phép Contiki truyền thông qua Internet

 Sử dụng “Rime stack” là một ngăn xếp truyền thông “lightweight” phục vụ các giao thức dành cho mạng năng lượng thấp một cách hiệu quả “Rime” cung cấp một loạt các nguyên mẫu truyền thông từ khu vực cục bộ tới độ tin cậy với số lượng các nút mạng lớn

Cooja là bộ giả lập mạng trong hệ điều hành Contiki Bộ giả lập Cooja được tích hợp trong hệ điều hành Contiki kể từ phiên bản 2.0 trở về sau Bản thân Cooja là một ứng dụng dựa trên Java, cung cấp những đặc điểm chính:

 Giao diện người dùng đồ họa GUI [Hình 5.2] dựa trên tiêu chuẩn của Java để hiển thị các kết quả mô phỏng Bộ công cụ Swing dùng để thiết kế, chạy và phân tích các mô phỏng

 Mô phỏng của phương tiện radio nằm bên dưới không dây thông tin liên lạc của mạng cảm biến

 Bộ giả lập Cooja cho phép tích hợp các tính năng bổ sung bên ngoài bằng ngôn ngữ lập trình C

Hình 5.2: Giao diện bộ giả lập Cooja

Nhằm đáp ứng nhu cầu nghiên cứu, mô phỏng, đánh giá các giao thức mạng, Contiki tích hợp một số công cụ mô phỏng có giao diện đơn giản, thân thiện, dễ sử dụng như MSPsim emulator, Cooja cross - Layer network simulator,… những công cụ này cho phép người sử dụng thay đổi các thông số như vị trí, phạm vi kết nối, tỉ lệ truyền thông.

THIẾT KẾ MÔ PHỎNG

Như đã giới thiệu, hệ điều hành Contiki không cung cấp hỗ trợ tích hợp để quản lý khóa bảo mật Vì vậy trong nghiên cứu này, tôi trình bày việc triển khai một mô hình mô phỏng trên Contiki về sơ đồ quản lý khóa đối xứng phù hợp với nhiều nút cảm biến Lược đồ này cung cấp tính toàn vẹn cho toàn mạng, độ chính xác và bảo mật đầu cuối cho mạng cảm biến không dây Với những nghiên cứu các thuật toán bảo mật dữ liệu lớp liên kết đã được phân tích trong chương 4 của luận văn Tôi sử dụng thuật toán CBC-MAC với khóa AES cho quá trình xác thực dữ liệu để mô phỏng cho quá trình trao đổi dữ liệu trong mạng cảm biến không dây Để chứng minh các cấu hình bảo mật hoạt động trên lớp liên kết dữ liệu và đánh giá mức độ khả thi khi tích hợp bảo mật trên các nút cảm biến hạn chế về bộ nhớ, năng lượng, khả năng xử lý Tôi đã tiến hành các thực nghiệm trong trình mô phỏng mạng Contiki/Cooja WSN Cooja có thể thiết lập các mô phỏng hoạt động tương tự như phần cứng thực và chính xác thời gian hoạt động Nó có thể mô phỏng các nút Tmote Sky (một trong số những nền tảng WSN được sử dụng phổ biến) và kết nối chúng lại thành mạng [6] Để thể hiện tính đúng đắn về lý thuyết đã trình bày trong các chương, tính khả thi của nghiên cứu và hiệu suất bảo mật trên lớp liên kết dữ liệu thì tôi đã xây dựng hệ thống mạng cảm biến không dây được mô phỏng với 20 nút cảm biến, sau đó lần lượt cấu hình có và không có mã hóa bảo mật để so sánh sự khác biệt Trong đó: nút cảm biến sẽ tạo ra các gói tin và gửi chúng đến nút hàng xóm để xác thực, nó cũng thực hiện chuyển tiếp các gói tin của các nút khác về phía nút “Sink” Nút “Sink” sẽ nhận các gói tin từ các nút trong hệ thống nó hoạt động giống như một cổng kết nối giữa mạng WSN và mạng Internet

Thiết kế tổng quan của hệ thống như sau:

Mô hình truyền thông vô tuyến UDGM

Giao thức lớp MAC CSMA-CA

Kích thước gói tin truyền 50 bytes

Số lượng nút non-sec 5

Vị trí các nút Square

Kích thước trường cảm biến 100m x 100m

MÔ TẢ QUÁ TRÌNH THỰC NGHIỆM

Như đã trình bày trong chương 4 các tấn công chủ yếu vào mạng cảm biến không dây sẽ làm lãng phí năng lượng và băng thông của các nút cảm biến, mà đây lại được xem là nguồn tài nguyên quý giá trong mạng Vì vậy, cơ chế bảo mật trên lớp liên kết dữ liệu phải đảm bảo tính xác thực, tính toàn vẹn và tính bảo mật các thông điệp Các kết quả mô phỏng sẽ đánh giá về bộ nhớ chiếm dụng, độ trễ, tỷ lệ nhận gói, Radio Duty Cycle trong các trường hợp có và không có bảo mật trên lớp liên kết dữ liệu

Trong nghiên cứu [5], tác giả đã đưa ra các thống kê cho thấy rằng việc sử dụng các thuật toán để mã hoá và xác thực gói tin trong mạng cảm biến không dây làm tăng kích thước gói tin truyền tải, từ đó làm tăng thời gian xử lý và gây tiêu tốn năng lượng của nút cảm biến Như đã nói ở trên trong điều kiện hạn chế về nguồn tài nguyên của mạng, chúng ta phải hạn chế chi phí gói tin càng ít càng tốt hay đồng nghĩa với việc phải đánh đổi giữa bảo mật và tiết kiệm tài nguyên cho mạng cảm biến không dây

Trong quá trình tiến hành thực nghiệm, để có cái nhìn cụ thể về hoạt động bảo mật của mạng cảm biến không dây, tôi xây dựng mô hình thực nghiệm với 4 kịch bản:

 Kịch bản 1: Xây dựng mô hình thực nghiệm mạng cảm biến không dây đơn giản, bao gồm 20 nút mạng không sử dụng chế độ bảo mật xác thực

 Kịch bản 2: Xây dựng mô hình thực nghiệm mạng cảm biến không dây dựa trên thiết kế ở kịch bản 1, nhưng sử dụng thuật toán mã hóa dữ liệu AES-CTR trên lớp liên kết LLSEC cho 15 nút và 5 nút còn lại không cấu hình mã hóa

 Kịch bản 3: Xây dựng mô hình thực nghiệm mạng cảm biến không dây dựa trên thiết kế ở kịch bản 1, nhưng sử dụng thuật toán xác thực dữ liệu CBC- MAC (32, 64, 128 bit MAC) trên lớp liên kết LLSEC cho 15 nút và 5 nút còn lại không cấu hình xác thực Từ đó có thể quan sát các nút không xác thực sẽ không thể tham gia vào mạng để gửi dữ liệu trong mạng

 Kịch bản 4: Xây dựng mô hình thực nghiệm mạng cảm biến không dây dựa trên thiết kế ở kịch bản 1, nhưng sử dụng thuật toán xác thực và mã hóa dữ liệu AES-CCM (32, 64, 128 bit MAC) trên lớp liên kết LLSEC cho 15 nút và 5 nút còn lại không cấu hình xác thực và mã hóa

Từ kết quả thu được từ 4 kịch bản, tôi sẽ tiến hành phân tích, đánh giá và so sánh mức độ tiêu hao năng lượng, tốc độ xử lý, tỷ lệ nhận gói tin trên các nút mạng và mức độ chiếm dụng bộ nhớ khi kích hoạt bảo mật Với những lý thuyết đã tìm hiểu và dựa vào các nghiên cứu trước đây, tôi có thể đưa ra được các ước lượng việc khi sử dụng bảo mật trong mạng cảm biến không dây làm tăng kích thước gói tin truyền tải trong mạng từ đó làm chậm tốc độ dữ liệu, tăng độ trễ truyền gói và việc mô phỏng các cơ chế bảo mật này giúp ta đưa ra một lựa chọn đúng đắn nhất cho việc bảo mật trên lớp liên kết dữ liệu trong mạng WSN.

KẾT QUẢ VÀ PHÂN TÍCH THỰC NGHIỆM

Sau khi bắt đầu chạy mô phỏng, ta có thể quan sát ở cửa sổ công cụ Mote Output về quá trình giao tiếp giữa các nút Lúc đầu, không có tin nhắn Multicast nào được gửi đi Sau một thời gian gửi bản tin giữa các nút cảm biến thì mô hình mạng bắt đầu hội tụ và đi vào hoạt động ổn định Bằng việc sử dụng các giao thức phân tích trong Contiki bao gồm Radio Duty Cycling (RDC), tỷ lệ nhận gói thành công Packet Receive Ratio (PRR), bộ nhớ chiếm dụng để đánh giá mức độ ảnh hưởng giữa hai chế độ có bảo mật và không có bảo mật

Bằng cách chạy tất cả các thực nghiệm giữa 4 kịch bản có và không có bảo mật, tôi nghiên cứu kỹ tác động của lớp LLSEC đến hiệu suất đầu cuối và có thể chọn tùy chọn tốt nhất cho các nhu cầu cụ thể về tối ưu bảo mật Đối với lớp MAC, CMSA và NullMAC được hỗ trợ Mặc định các lớp RDC và MAC trong Contiki trên Tmote Sky là ContikiMAC và CSMA, thông qua nghiên cứu [12] tác giả cũng đã chứng minh được sử dụng ContikiMAC và CSMA cho hiệu quả tốt nhất

5.4.1 Đánh giá mức độ chiếm dụng bộ nhớ

Việc đánh giá tác động của việc chiếm dụng bộ nhớ lên mạng cảm biến không dây là rất quan trọng Khi kích thước chương trình của các nút nhiều thì có nghĩa là mức chiếm dụng bộ nhớ lớn, kích thước bộ nhớ chương trình thu được dùng để so sánh mức chiếm dụng bộ nhớ của các thuật toán khác nhau [15, 25] Tất cả các bộ vi điều khiển đều có 2 kiểu bộ nhớ là ROM và RAM; kích thước ROM rất hạn chế và nó thường có các mã chương trình được biên dịch và lưu trong bộ nhớ của nó; RAM có kích thước của nó thậm chí còn hạn chế hơn kích thước ROM Kích cỡ của tệp tin chương trình điều khiển được đánh giá theo kích cỡ các lệnh điều khiển

Trong các mạng không dây, các nút có thể cần chuyển tiếp thông điệp từ các nút khác để đến đích của chúng Với Contiki, ngay cả các nút chuyển tiếp (hay được gọi là bộ định tuyến) có thể được vận hành bằng cơ chế do chu kỳ nhiệm vụ vô tuyến của ContikiMAC cho phép chúng ngủ giữa mỗi tin nhắn được chuyển tiếp Contiki có thể được biên dịch ngay cả khi không có ContikiMAC Để minh họa tầm quan trọng của công việc, tôi đã quan sát kích thước chương trình mô tả mức tiêu thụ bộ nhớ giữa các kịch bản không và có các mức độ bảo mật (mặc định sử dụng ContikiMAC và CSMA) Qua đó minh chứng tính chất hạn chế bộ nhớ trong mạng cảm biến không dây và lựa chọn đánh đổi giữa tùy chọn của các mức bảo mật thích hợp với từng ứng dụng cụ thể

Bảng 5.1: Bảng mức độ chiếm dụng bộ nhớ

Chế độ LLSEC Chiếm dụng bộ nhớ

Dựa vào bảng 5.1, ta nhận thấy khi mức độ bảo mật càng cao thì chiếm dụng bộ nhớ càng nhiều Ở kịch bản 1 khi không sử dụng chế độ bảo mật thì mức độ chiếm dụng bộ nhớ là thấp nhất (26,13 kB) trong các kịch bản Tiêu thụ bộ nhớ dùng cho bảo mật và xác thực (AES-CCM) tiêu tốn 33,58kB bộ nhớ, do đó chỉ còn lại một khoảng dung lượng triển khai cho các định hướng ứng dụng khác Việc triển khai ContikiMAC và CSMA tiêu tốn rất nhiều bộ nhớ, nhưng giảm mức tiêu thụ điện năng xuống [12] Có thể tối ưu bộ nhớ bằng những tùy chọn khác nhau ví dụ như sử dụng NullMAC thay vì CSMA, vì những hạn chế về tài nguyên bộ nhớ nên ta phải đánh đổi lựa chọn giữa các chế độ bảo mật và kích thước bộ nhớ

5.4.2 Đánh giá tỷ lệ tổn hao năng lượng

Các thiết bị trong mạng cảm biến không dây được thiết kế chủ yếu để hoạt động bằng nguồn pin, điều này hạn chế tính linh hoạt của chúng và giảm thời gian sử dụng của mạng Năng lượng là nguồn tài nguyên hạn chế trong mạng cảm biến không dây, COOJA sử dụng một công cụ định hình năng lượng chính xác được sử dụng để ước tính mức tiêu thụ năng lượng của các nút trong môi trường mô phỏng

Hình 5.3: Năng lượng tiêu thụ đo được của các nút [Null]

Powertrace.app sẽ cung cấp thời gian dành cho vi xử lý trong xử lý CPU, Low Power Mode (LPM), truyền và nhận Với thông tin thời gian này, năng lượng tiêu thụ sẽ được tính toán và các đồ thị so sánh cho năng lượng được mô tả rõ ràng Đương nhiên, việc triển khai bảo mật tiêu tốn nhiều điện năng hơn so với việc triển khai không bảo mật

Hình 5.4: Năng lượng tiêu thụ đo được của các nút [AES-CTR]

Hình trên [5.3 và 5.4] cho thấy mức tiêu thụ điện năng sau một thời gian quan sát giao tiếp mạng trong 2 trường hợp có và không có bảo mật Tổng mức tiêu thụ điện năng của mỗi nút được phân loại gồm có CPU, chế độ năng lượng thấp LPM, công suất truyền và nhận Có thể thấy rằng một sự thay đổi lớn trong kết quả năng lượng từ hoạt động xử lý của CPU làm công suất truyền và nhận tăng theo Rõ ràng từ thực tế là tính bảo mật và xác thực đòi hỏi nhiều thời gian xử lý CPU hơn, do vậy mà năng lượng tiêu thụ của các nút cũng rất lớn

Hình 5.5: Năng lượng tiêu thụ đo được trước khi mạng hội tụ [Null]

Hình 5.6: Năng lượng tiêu thụ đo được trước khi mạng hội tụ [AES-CTR]

Hình trên [5.5 và 5.6] cho thấy là mức tiêu thụ điện năng cao trước khi mạng hội tụ Tiêu thụ điện năng cao trong giai đoạn đầu có thể được quy cho việc khởi động của các nút và các gói tin được gửi đi với số lượng lớn để thiết lập mạng Sự khác biệt chính được nhìn thấy về tiêu thụ năng lượng là mặc dù mã hóa và xác thực gây tiêu tốn một lượng điện năng CPU Nhưng không có nhiều thay đổi trong mức năng lượng LPM Sau khi hội tụ, nguồn điện sẽ ổn định từ từ đến các giá trị trong khoảng hoạt động của các nút

Khi so sánh 8 mức độ bảo mật của LLSEC trong mạng cảm biến không dây cho thấy chế độ bảo mật càng cao thì càng tiêu tốn năng lượng, kết quả cũng thể hiện khi thực hiện mã hóa để bảo mật (AES-CTR) năng lượng ảnh hưởng nhiều do hoạt động xử lý của CPU, trong khi đó xác thực (AES-CBC-MAC) tác động đến cả hoạt động CPU và quá trình truyền nhận gói tin [4, 5] Kết quả tổng kết được thể hiện như hình 5.7, kết quả mô phỏng năng lượng tiêu thụ có thể khác so với thực tế bên ngoài, tuỳ thuộc vào các nút cảm biến và nhà sản xuất Tuy nhiên, bộ giả lập Cooja hoạt động giả lập như phần cứng thực và chính xác về thời gian, nó cho giá trị tương đối chính xác nhất

Ngoài ra, khi ContikiMAC không được sử dụng, mức tiêu thụ điện năng lớn hơn nhiều Với cơ chế NullRDC nó luôn thức trong suốt quá trình truyền nhận nên nên năng lượng tiêu thụ nhiều Ngược lại, khi sử dụng cơ chế ContikiMAC cho phép cơ chế đánh thức của nó có hiệu suất năng lượng cao, cơ chế khóa pha để truyền hiệu quả và tối ưu hóa giấc ngủ nhanh để cho phép máy thu nhanh chóng đi vào giấc ngủ khi bị nhiễu sóng vô tuyến Do đó, việc đánh đổi giữa hiệu suất năng lượng và bảo mật là quá lớn Ta cần phải chọn lựa giữa một cơ chế tối ưu mặt năng lượng như ContikiMAC và chế độ xác thực thông tin để đảm bảo an toàn cho dữ liệu trong mạng

Hình 5.7: So sánh mức tiêu thụ năng lượng của các chế độ bảo mật

Hình 5.8: Radio Duty Cycle [Null]

Các chế độ bảo mật LLSEC

LPM CPU Radio listen Radio transmit

Theo nghiên cứu [29] trong các kịch bản truyền dữ liệu trong trường hợp dữ liệu được mã hóa và được giải mã tại mỗi nút do đó làm tiêu tốn năng lượng nhiều hơn Ngoài ra, theo lý thuyết chương 4 thì việc thực hiện bảo mật sẽ làm tăng kích thước gói tin và do vậy tiêu tốn năng lượng trong quá trình truyền dẫn

Hình 5.9: Radio Duty Cycle [AES-CTR]

Qua kết quả mô phỏng [Hình 5.8 và 5.9] cũng cho thấy giá trị trung bình của Radio Duty Cycle trên mỗi nút cảm biến, thể hiện trên hai giá trị về “Radio listen” và

“Radio transmit” Điện năng tiêu thụ trên các nút cảm biến được sử dụng cho các hoạt động như sau: các chế độ nghe và truyền radio Kết quả mô phỏng thể hiện công suất tiêu thụ của chế độ nghe lớn hơn so với chế độ truyền Với các nút phải lắng nghe để nhận và chuyển gói tin nhiều thì mức độ RDC sẽ cao hơn các nút khác

Như vậy, các nút cảm biến dành phần lớn thời gian hoạt động của nó để lắng nghe các gói từ hàng xóm để thực hiện yêu cầu xác thực và cập nhật thông tin từ hàng xóm xung quanh hơn là tiêu thụ năng lượng cho việc truyền dữ liệu của chính nó

Hình 5.10 so sánh giá trị Radio Duty Cycle của các mức bảo mật khác nhau

KẾT LUẬN CHƯƠNG

Cooja là bộ giả lập mạng trong hệ điều hành Contiki Bộ giả lập Cooja được tích hợp trong hệ điều hành Contiki kể từ phiên bản 2.0 trở về sau Hệ điều hành Contiki cung cấp những công cụ hỗ trợ mô phỏng với giao diện đơn giản, dễ sử dụng và hỗ trợ tốt những thiết bị trong thực tế Bên cạnh đó, hệ điều hành Contiki có tính di động cao, điều hành đa tác vụ cho hệ thống nhúng có dung lượng bộ nhớ hạn chế, rất phù hợp cho việc triển khai các ứng dụng của mạng cảm biến không dây, các thiết bị có công suất thấp, tiết kiệm năng lượng, băng thông hẹp, bộ nhớ hạn chế Để chứng minh các cấu hình bảo mật hoạt động trên lớp liên kết dữ liệu và đánh giá mức độ khả thi khi tích hợp bảo mật trên các nút cảm biến hạn chế về bộ nhớ, năng lượng, khả năng xử lý Tôi đã tiến hành các thực nghiệm trong trình mô phỏng mạng Contiki/Cooja WSN

Như đã trình bày trong chương 4 các tấn công chủ yếu vào mạng cảm biến không dây sẽ làm lãng phí năng lượng và băng thông của các nút cảm biến, mà đây lại được xem là nguồn tài nguyên quý giá trong mạng Vì vậy, cơ chế bảo mật trên lớp liên kết dữ liệu phải đảm bảo tính xác thực, tính toàn vẹn và tính bảo mật các thông điệp Các kết quả mô phỏng sẽ đánh giá về bộ nhớ chiếm dụng, năng lượng tiêu thụ, Radio Duty Cycle, và tỷ lệ nhận gói tin trong các trường hợp có và không có bảo mật trên lớp liên kết dữ liệu

Từ kết quả thu được từ 4 kịch bản, tôi sẽ tiến hành phân tích, đánh giá và so sánh mức độ tiêu hao năng lượng, tốc độ xử lý, tốc độ truyền gói tin Với những lý thuyết đã tìm hiểu và dựa vào các nghiên cứu của các tác giả trước đây, tôi có thể đưa ra được kết luận việc khi sử dụng bảo mật trong mạng cảm biến không dây làm tăng kích thước gói tin truyền tải trong mạng từ đó làm chậm tốc độ dữ liệu, tăng độ trễ truyền gói và việc mô phỏng các cơ chế bảo mật này giúp ta đưa ra một lựa chọn một thuật toán đúng đắn nhất cho việc bảo mật trên lớp liên kết dữ liệu trong mạng WSN.

Ngày đăng: 08/09/2024, 18:32

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w