Chương 7 Giao thức bảo mật cho mạng cảm biến không dây 7 1 giới thiệu Hàng nghìn đến hàng triệu cảm biến nhỏ tạo thành mạng không dây tự tổ chức Bảo mật cho các mạng cảm biến này không dễ dàng vì các[.]
Trang 1Chương 7 Giao thức bảo mật cho
mạng cảm biến không dây 7.1 giới thiệu
Hàng nghìn đến hàng triệu cảm biến nhỏ tạo thành mạng không dây tự tổ chức Bảo mật cho các mạng cảm biến này không dễ dàng vì các cảm biến này có công suất xử lý, lưu trữ, băng thông và năng lượng hạn chế Một bộ Giao thức bảo mật cho Mạng cảm biến, SPINS, những thách thức đối với bảo mật trong mạng cảm biến SPINS bao gồm µTESLA (phiên bản vi mô của giao thức Xác thực theo thời gian, hiệu quả, phát trực tuyến, chịu được tổn thất), cung cấp truyền phát trực tuyến được xác thực và SNEP (Giao thức mã hóa mạng an toàn), cung cấp tính bảo mật dữ liệu, xác thực dữ liệu hai bên và làm mới dữ liệu , với chi phí thấp Giao thức định tuyến được xác thực sử dụng các khối xây dựng SPINS Mạng cảm biến không được rò rỉ các kết quả đọc của cảm biến sang các mạng lân cận Trong nhiều ứng dụng (ví dụ: phân phối khóa), các nút giao tiếp dữ liệu có độ nhạy cao Cách tiếp cận tiêu chuẩn để giữ bí mật dữ liệu nhạy cảm là mã hóa dữ liệu bằng khóa bí mật mà chỉ những người nhận dự kiến mới có, do đó đạt được tính bảo mật Với các mẫu giao tiếp được quan sát, các kênh an toàn được thiết lập giữa các nút và trạm gốc, sau đó khởi động lại các kênh an toàn khác nếu cần
Truyền phát được xác thực yêu cầu cơ chế bất đối xứng, nếu không, bất kỳ người nhận nào bị xâm phạm đều có thể giả mạo tin nhắn từ người gửi Các cơ chế mật mã không đối xứng có tổng chi phí tính toán, giao tiếp và lưu trữ cao, điều này làm cho việc sử dụng chúng trên các thiết bị hạn chế tài nguyên là không thực tế µTESLA khắc phục vấn đề này bằng cách giới thiệu tính bất đối xứng thông qua việc tiết lộ chậm các khóa đối xứng, dẫn đến một sơ đồ xác thực quảng bá hiệu quả
Nói chung, mạng không dây dễ bị tấn công bảo mật hơn mạng có dây, do tính chất quảng bá của phương tiện truyền dẫn Hơn nữa, mạng cảm biến không dây
có thêm một lỗ hổng vì các nút thường được đặt trong môi trường thù địch hoặc nguy hiểm nơi chúng không được bảo vệ vật lý
Trong ứng dụng theo dõi mục tiêu, các nút phát hiện mục tiêu trong một khu vực trao đổi thông báo có chứa dấu thời gian, vị trí của nút gửi và thông tin dành riêng cho ứng dụng khác Khi một trong các nút thu được một số lượng thông điệp nhất định để có thể xác định được gần đúng vị trí của mục tiêu, thì nút đó sẽ gửi vị trí của mục tiêu cho người dùng
Trang 27.2 QUY TRÌNH BẢO MẬT TRONG MẠNG CẢM BIẾN
Các thiết bị cảm biến nhỏ là các thiết bị rẻ tiền, công suất thấp Họ có nguồn tài nguyên giao tiếp và tính toán hạn chế Các cảm biến tạo thành một mạng không dây tự tổ chức trong cấu trúc liên kết định tuyến đa bước Các ứng dụng điển hình có thể truyền định kỳ các kết quả đọc của cảm biến để xử lý
Mạng bao gồm các nút (thiết bị nhỏ chạy bằng pin) giao tiếp với một trạm gốc mạnh hơn, trạm này được kết nối với mạng bên ngoài Nguồn năng lượng trên các thiết bị là một viên pin nhỏ Liên lạc qua vô tuyến là chức năng tiêu tốn nhiều năng lượng nhất được thực hiện bởi các thiết bị này, do đó chi phí liên lạc cần được giảm thiểu Việc cung cấp năng lượng hạn chế tạo ra các giới hạn cho bảo mật, do đó bảo mật cần hạn chế tiêu thụ năng lượng của bộ xử lý Tuy nhiên, nguồn điện hạn chế sẽ hạn chế tuổi thọ của các phím Các trạm gốc khác với các nút ở chỗ có nguồn cung cấp năng lượng lâu hơn và có các kết nối thông tin liên lạc bổ sung với các mạng bên ngoài
Những hạn chế này làm cho việc sử dụng các thuật toán an toàn được thiết kế cho các máy trạm mạnh là không thực tế Ví dụ, bộ nhớ làm việc của một nút cảm biến không đủ để chứa các biến (có độ dài đủ để đảm bảo an toàn) được yêu cầu trong các thuật toán mật mã không đối xứng, chưa nói đến việc thực hiện các hoạt động với chúng
Chữ ký số không đối xứng để xác thực là không thực tế đối với mạng cảm biến
vì một số lý do, chẳng hạn như chữ ký dài với chi phí truyền thông cao từ 50–
1000 byte mỗi gói, chi phí rất cao để tạo và xác minh chữ ký Ngoài ra, các giải pháp đối xứng để xác thực quảng bá là không thực tế: một lược đồ chữ ký k-time cải tiến yêu cầu trên 300 byte cho mỗi gói Giao thức TESLA được điều chỉnh để các mạng cảm biến trở nên thực tế cho việc xác thực quảng bá được gọi là µTESLA
Việc bổ sung bảo mật cho mạng cảm biến hạn chế tài nguyên cao là khả thi Các khối xây dựng bảo mật tạo điều kiện thuận lợi cho việc triển khai giải pháp bảo mật cho mạng cảm biến bằng cách sử dụng giao thức định tuyến được xác thực
và giao thức thỏa thuận khóa hai bên Việc lựa chọn các mật mã nguyên thủy và các giao thức bảo mật trong mạng cảm biến bị ảnh hưởng bởi các hạn chế nghiêm trọng về phần cứng và năng lượng
Cơ sở hạ tầng bảo mật chung có thể áp dụng cho nhiều mạng cảm biến khác nhau cần phải xác định kiến trúc hệ thống và các yêu cầu về độ tin cậy
Nói chung, các nút cảm biến giao tiếp bằng cách sử dụng RF (tần số vô tuyến),
do đó phát sóng là giao tiếp cơ bản ban đầu Các giao thức cơ sở giải thích cho
Trang 3đặc tính này, điều này ảnh hưởng đến các giả định về độ tin cậy và được khai thác để giảm thiểu việc sử dụng năng lượng
Mạng cảm biến hình thành xung quanh một hoặc nhiều trạm gốc, giao diện mạng cảm biến với mạng bên ngoài Các nút cảm biến thiết lập một khu rừng định tuyến, với một trạm gốc ở gốc của mỗi cây Truyền báo hiệu định kỳ cho phép các nút tạo cấu trúc liên kết định tuyến Mỗi nút có thể chuyển tiếp một thông điệp tới một trạm gốc, nhận ra các gói được gửi đến nó và xử lý các chương trình phát thông điệp Trạm gốc truy cập các nút riêng lẻ bằng cách sử dụng định tuyến nguồn Trạm gốc có các khả năng tương tự như các nút mạng, ngoại trừ việc nó có đủ năng lượng pin để vượt qua tuổi thọ của tất cả các nút cảm biến, đủ bộ nhớ để lưu trữ các khóa mật mã và các phương tiện để giao tiếp với các mạng bên ngoài
Trong các ứng dụng cảm biến, việc trao đổi cục bộ và xử lý dữ liệu bị hạn chế Các mẫu giao tiếp trong mạng chia thành ba loại:
+ giao tiếp từ nút đến trạm gốc, ví dụ: các chỉ số cảm biến
+ giao tiếp từ trạm cơ sở đến nút, ví dụ: các yêu cầu cụ thể
+ trạm gốc đến tất cả các nút, ví dụ: báo hiệu định tuyến, truy vấn hoặc lập trình lại toàn bộ mạng
Mục tiêu bảo mật chủ yếu là giải quyết các mẫu giao tiếp này và điều chỉnh các giao thức đường cơ sở với các mẫu giao tiếp khác, tức là từ nút tới nút hoặc quảng bá nút
Mạng cảm biến có thể được triển khai ở những vị trí không đáng tin cậy Mặc
dù có thể đảm bảo tính toàn vẹn của từng nút thông qua các bộ vi điều khiển an toàn chuyên dụng, nhưng kiến trúc như vậy có thể quá hạn chế và không tổng quát hóa cho phần lớn các mạng cảm biến Perrig và cộng sự (2001b) giả định rằng các cảm biến riêng lẻ là không đáng tin cậy Thiết lập khóa SPINS ngăn chặn sự xâm nhập của một nút lan sang các nút khác
Giao tiếp không dây cơ bản không an toàn Bởi vì nó được phát sóng, bất kỳ đối thủ nào cũng có thể nghe trộm lưu lượng truy cập và đưa tin nhắn mới vào hoặc phát lại và thay đổi tin nhắn cũ Do đó, SPINS không đặt bất kỳ giả định tin cậy nào trên cơ sở hạ tầng truyền thông, ngoại trừ việc các thông điệp được gửi đến đích với xác suất khác không
Vì trạm gốc là cửa ngõ để các nút giao tiếp với thế giới bên ngoài, nên việc xâm phạm trạm gốc có thể khiến toàn bộ mạng cảm biến trở nên vô dụng Vì vậy, các trạm gốc là một phần cần thiết của cơ sở tính toán đáng tin cậy Tất cả các nút cảm biến đều tin cậy trạm gốc: tại thời điểm tạo, mỗi nút được cấp một khóa
Trang 4chính được chia sẻ với trạm gốc Tất cả các khóa khác đều có nguồn gốc từ khóa này
Mỗi nút tin tưởng vào chính nó và đặc biệt, đồng hồ cục bộ được tin tưởng là chính xác, tức là có độ lệch nhỏ Điều này là cần thiết cho giao thức quảng bá được xác thực
7.2.1 Yêu cầu bảo mật mạng cảm biến
Xác thực thông điệp rất quan trọng đối với nhiều ứng dụng trong mạng cảm biến Trong mạng cảm biến tòa nhà, xác thực là cần thiết cho nhiều tác vụ quản trị (ví dụ: lập trình lại mạng hoặc kiểm soát chu kỳ nhiệm vụ của nút cảm biến) Đồng thời, kẻ thù có thể dễ dàng đưa thông điệp vào, vì vậy người nhận cần đảm bảo rằng dữ liệu được sử dụng trong bất kỳ quá trình ra quyết định nào đều bắt nguồn từ đúng nguồn Về mặt không chính thức, xác thực dữ liệu cho phép người nhận xác minh rằng dữ liệu thực sự được gửi bởi người gửi đã xác nhận quyền sở hữu
Trong trường hợp giao tiếp hai bên, xác thực dữ liệu có thể đạt được thông qua một cơ chế hoàn toàn đối xứng: người gửi và người nhận
chia sẻ khóa bí mật để tính Mã xác thực tin nhắn (MAC) cho tất cả dữ liệu được giao tiếp Khi một tin nhắn có MAC chính xác đến, người nhận biết rằng nó phải được gửi bởi người gửi
Phong cách xác thực này không thể được áp dụng cho cài đặt truyền phát mà không đặt các giả định về độ tin cậy cao hơn nhiều trên các nút mạng Nếu một người gửi muốn gửi dữ liệu xác thực đến những người nhận không đáng tin cậy lẫn nhau, thì việc sử dụng MAC đối xứng là không an toàn Người nhận biết khóa MAC và do đó có thể mạo danh người gửi và giả mạo thông điệp cho người nhận khác Do đó, cần có một cơ chế bất đối xứng để đạt được việc phát sóng được xác thực Quảng bá được xác thực cũng có thể được xây dựng từ các nguyên thủy đối xứng và tính bất đối xứng được đưa vào với việc tiết lộ khóa bị trì hoãn và chuỗi khóa chức năng một chiều
Trong giao tiếp, tính toàn vẹn của dữ liệu đảm bảo cho người nhận rằng dữ liệu nhận được không bị thay đổi bởi kẻ thù Trong SPINS, tính toàn vẹn của dữ liệu đạt được thông qua xác thực dữ liệu, đây là một thuộc tính mạnh hơn
Vì tất cả các mạng cảm biến phát trực tuyến một số hình thức đo theo thời gian
và chúng được đảm bảo tính bảo mật và xác thực, chúng tôi cũng phải đảm bảo rằng mỗi thông báo là mới Về mặt không chính thức, làm mới dữ liệu ngụ ý rằng dữ liệu là gần đây và nó đảm bảo rằng không có đối thủ nào phát lại các tin nhắn cũ Hai loại làm mới được xác định: làm mới yếu, cung cấp thứ tự một
Trang 5phần thông báo, nhưng không mang thông tin về độ trễ và làm mới mạnh, cung cấp tổng số thứ tự trên cặp yêu cầu-phản hồi và cho phép ước tính độ trễ Độ làm mới yếu được yêu cầu bởi các phép đo cảm biến, trong khi độ mới mạnh hữu ích cho việc đồng bộ hóa thời gian trong mạng
Ký hiệu sau được sử dụng để mô tả các giao thức bảo mật và hoạt động mật mã: + A, B là các nguyên tắc, chẳng hạn như các nút giao tiếp;
+ NA là một nonce được tạo ra bởi A (một nonce là một chuỗi bit không thể đoán trước, thường được sử dụng để đạt được độ mới);
+ M1 | M2 biểu thị sự nối các thông điệp M1 và M2;
+ KAB biểu thị khóa bí mật (đối xứng) được chia sẻ giữa A và B;
+ {M} KAB là mã hóa của thông điệp M với khóa đối xứng được chia sẻ bởi A
và B;
+ {M} (KAB, IV), biểu thị mã hóa của thông điệp M, với khóa KAB và vectơ khởi tạo IV được sử dụng trong các chế độ mã hóa như chuỗi khối mật mã (CBC), chế độ phản hồi đầu ra (OFB) hoặc chế độ truy cập (CTR);
+ kênh an toàn là kênh cung cấp tính bảo mật, xác thực dữ liệu, tính toàn vẹn và tính mới
Yêu cầu bảo mật đạt được bằng cách sử dụng hai khối xây dựng bảo mật: SNEP
và µTESLA SNEP cung cấp tính bảo mật của dữ liệu, xác thực dữ liệu hai bên, tính toàn vẹn và tính mới µTESLA cung cấp xác thực cho việc phát dữ liệu Bảo mật cho cả hai cơ chế được khởi động bằng một khóa bí mật được chia sẻ giữa mỗi nút và trạm cơ sở Sự tin cậy đối với các tương tác nút nút có thể được
mở rộng từ độ tin cậy của nút đến trạm gốc
SNEP có chi phí liên lạc thấp vì nó chỉ thêm byte cho mỗi tin nhắn SNEP, giống như nhiều giao thức mật mã khác, sử dụng bộ đếm, nhưng việc truyền giá trị bộ đếm bị tránh bằng cách giữ trạng thái ở cả hai điểm cuối SNEP đạt được tính bảo mật về ngữ nghĩa, một thuộc tính bảo mật mạnh mẽ giúp ngăn chặn những kẻ nghe trộm suy ra nội dung thư từ thư được mã hóa
Giao thức đơn giản và hiệu quả tương tự cũng cung cấp cho chúng tôi xác thực
dữ liệu, bảo vệ phát lại và làm mới thư yếu
Bảo mật dữ liệu là một trong những nguyên tắc bảo mật cơ bản nhất và nó được
sử dụng trong hầu hết mọi giao thức bảo mật Một hình thức bảo mật đơn giản
có thể đạt được thông qua mã hóa, nhưng mã hóa thuần túy là không đủ Một thuộc tính bảo mật quan trọng khác là bảo mật ngữ nghĩa, đảm bảo rằng kẻ nghe
Trang 6trộm không có thông tin về văn bản thuần túy, ngay cả khi nó nhìn thấy nhiều
mã hóa của cùng một văn bản thuần túy Ví dụ: ngay cả khi kẻ tấn công có mã hóa 0 bit và mã hóa 1 bit, nó sẽ không giúp nó phân biệt được liệu mã hóa mới
là mã hóa 0 hay 1 Kỹ thuật cơ bản để đạt được điều này là ngẫu nhiên hóa: trước mã hóa thông điệp bằng chức năng mã hóa chuỗi (tức là DES-CBC (Tiêu chuẩn mã hóa dữ liệu - Chuỗi khối mã hóa)), người gửi đặt trước thông điệp bằng một chuỗi bit ngẫu nhiên Điều này ngăn kẻ tấn công suy ra văn bản thuần túy của các tin nhắn được mã hóa nếu nó biết các cặp văn bản mã hóa văn bản thuần túy được mã hóa bằng cùng một khóa
Tuy nhiên, việc gửi dữ liệu ngẫu nhiên qua kênh RF đòi hỏi nhiều năng lượng hơn Cơ chế mật mã đạt được sự bảo mật về ngữ nghĩa mà không cần thêm chi phí truyền tải Một bộ đếm được chia sẻ được sử dụng giữa người gửi và người nhận cho mật mã khối ở chế độ bộ đếm (CTR) Vì các bên giao tiếp chia sẻ bộ đếm và tăng dần sau mỗi khối, bộ đếm không cần phải được gửi cùng với tin nhắn Để đạt được xác thực hai bên và toàn vẹn dữ liệu, mã xác thực tin nhắn (MAC) được sử dụng
Sự kết hợp của các cơ chế này tạo thành Giao thức mã hóa mạng cảm biến (SNEP) Dữ liệu được mã hóa có định dạng sau: E = {D} (Kencr, C), trong đó
D là dữ liệu, khóa mã hóa là Kencr và bộ đếm là C MAC là M = MAC (Kmac,
C | E) Các khóa Kencr và Kmac có nguồn gốc từ khóa bí mật chính K Thông điệp đầy đủ mà A gửi cho B là: A → B:
{D} (Kencr, C), MAC (Kmac, C | {D} (Kencr, C))
SNEP cung cấp các thuộc tính sau:
+ Bảo mật ngữ nghĩa: Vì giá trị bộ đếm được tăng lên sau mỗi tin nhắn, nên cùng một thông điệp sẽ được mã hóa khác nhau mỗi lần Giá trị bộ đếm đủ dài
để không bao giờ lặp lại trong vòng đời của nút • Xác thực dữ liệu: Nếu MAC xác minh chính xác, người nhận có thể yên tâm rằng tin nhắn bắt nguồn từ người gửi đã xác nhận quyền sở hữu
+ Bảo vệ phát lại: Giá trị bộ đếm trong MAC ngăn việc phát lại các tin nhắn cũ Lưu ý rằng nếu bộ đếm không có trong MAC, kẻ thù có thể dễ dàng phát lại các thông báo
+ Độ mới yếu: Nếu tin nhắn được xác minh chính xác, người nhận biết rằng tin nhắn phải được gửi sau tin nhắn trước đó mà nó đã nhận đúng (có giá trị bộ đếm thấp hơn) Điều này thực thi một thứ tự tin nhắn và tạo ra độ tươi yếu
Trang 7+ Chi phí truyền thông thấp: Trạng thái bộ đếm được giữ ở mỗi điểm kết thúc
và không cần gửi trong mỗi bản tin (Trong trường hợp MAC không khớp, người nhận có thể thử một số lượng nhỏ bộ đếm cố định để khôi phục sau khi mất thông điệp Trong trường hợp đồng bộ hóa lại lạc quan không thành công, hai bên tham gia vào một giao thức trao đổi bộ đếm, sử dụng tính năng mới mạnh mẽ giao thức)
SNEP đơn thuần chỉ cung cấp tính năng làm mới dữ liệu yếu, vì nó chỉ thực thi lệnh gửi đối với các thông báo bên trong nút B, nhưng không đảm bảo tuyệt đối cho nút A rằng thông báo được tạo bởi B để phản hồi lại một sự kiện trong nút A
Nút A đạt được độ mới dữ liệu mạnh mẽ cho phản hồi từ nút B thông qua NA nonce (là một số ngẫu nhiên đủ dài để không thể đoán trước được) Nút A tạo
NA một cách ngẫu nhiên và gửi nó cùng với một bản tin yêu cầu RA tới nút B Cách đơn giản nhất để đạt được độ mới mạnh là để B trả lại nonce với bản tin phản hồi RB trong một giao thức đã được xác thực Tuy nhiên, thay vì trả lại nonce cho người gửi, quy trình có thể được tối ưu hóa bằng cách sử dụng nonce ngầm trong tính toán MAC Toàn bộ giao thức SNEP cung cấp sự mới mẻ mạnh
mẽ cho phản hồi của B là:
B → A : {RB}(Kencr,C),MAC(Kmac, NA|C|{RB} (Kencr,C))
Nếu MAC xác minh chính xác, nút A biết rằng nút B đã tạo phản hồi sau khi nó gửi yêu cầu Thư đầu tiên cũng có thể sử dụng SNEP thuần túy nếu cần xác thực
dữ liệu và bảo mật
7.2.2 Truyền phát được xác thực
Chữ ký số không đối xứng để xác thực là không thực tế vì nhiều lý do Họ yêu cầu chữ ký dài với chi phí giao tiếp cao từ 50–1000 byte mỗi gói và chi phí rất cao để tạo và xác minh chữ ký Các lược đồ chữ ký một lần dựa trên mật mã đối xứng (các chức năng một chiều không có cửa bẫy) có chi phí cao: Chữ ký phát sóng của Gennaro và Rohatgi dựa trên chữ ký một lần của Lamport yêu cầu hơn
1 kbyte thông tin xác thực trên mỗi gói tin và Rohatgi đã cải tiến lược đồ chữ ký k-time yêu cầu trên 300 byte mỗi gói
Giao thức TESLA cung cấp chương trình phát sóng được xác thực hiệu quả Tuy nhiên, TESLA không được thiết kế cho các môi trường máy tính hạn chế như gặp phải trong các mạng cảm biến
Trang 8TESLA xác thực gói tin ban đầu bằng chữ ký số, quá đắt để tính toán trên các nút cảm biến vì ngay cả việc lắp mã vào bộ nhớ cũng là một thách thức lớn Vì
lý do tương tự, chữ ký một lần là một thách thức để sử dụng trên các nút cảm biến TESLA tiêu chuẩn có tổng chi phí khoảng 24 byte cho mỗi gói
Đối với mạng kết nối các máy trạm, điều này thường không đáng kể Tuy nhiên, các nút cảm biến gửi các tin nhắn rất nhỏ dài khoảng 30 byte Đơn giản
là không thực tế khi tiết lộ khóa TESLA cho các khoảng thời gian trước đó với mọi gói: với các khóa và MAC 64 bit, phần liên quan đến TESLA của gói sẽ chiếm hơn 50% gói
Chuỗi khóa một chiều không phù hợp với bộ nhớ của nút cảm biến, vì vậy TESLA thuần túy không thực tế cho một nút để phát dữ liệu đã xác thực
…TESLA giải quyết các bất cập sau của TESLA trong mạng cảm biến:
+ TESLA xác thực gói tin ban đầu bằng chữ ký số, quá đắt đối với các nút cảm biến µTESLA chỉ sử dụng cơ chế đối xứng
+ Việc tiết lộ một khóa trong mỗi gói yêu cầu quá nhiều năng lượng cho việc gửi và nhận µTESLA tiết lộ khóa một lần mỗi kỷ
+ Rất tốn kém để lưu trữ chuỗi chìa khóa một chiều trong một nút cảm biến µTESLA hạn chế số lượng người gửi được xác thực
…TESLA được thảo luận cho trường hợp trạm gốc phát thông tin đã xác thực đến các nút và trường hợp một nút là người gửi
µTESLA yêu cầu trạm gốc và các nút được đồng bộ hóa theo thời gian một cách lỏng lẻo và mỗi nút biết một giới hạn trên về lỗi đồng bộ hóa tối đa Để gửi một gói đã được xác thực, trạm gốc chỉ cần tính MAC trên gói đó với một khóa bí mật tại thời điểm đó Khi một nút nhận được một gói, nó có thể xác minh rằng khóa MAC tương ứng chưa được tiết lộ bởi trạm gốc (dựa trên đồng hồ được đồng bộ hóa lỏng lẻo, lỗi đồng bộ hóa tối đa của nó và lịch trình thời gian mà các khóa được tiết lộ) Vì nút nhận được đảm bảo rằng khóa MAC chỉ được biết bởi trạm gốc, nút nhận được đảm bảo rằng không có kẻ thù nào có thể thay đổi gói tin trong quá trình truyền tải Nút lưu gói tin trong bộ đệm và tại thời điểm tiết lộ khóa, trạm gốc sẽ phát khóa xác minh cho tất cả các máy thu Khi một nút nhận được khóa được tiết lộ, nó có thể dễ dàng xác minh tính đúng đắn của khóa Nếu khóa chính xác, nút bây giờ có thể sử dụng nó để xác thực gói tin được lưu trữ trong bộ đệm của nó
Trang 9Mỗi khóa MAC là một trong chuỗi khóa, được tạo bởi hàm một chiều công khai
F Để tạo chuỗi khóa một chiều, người gửi chọn ngẫu nhiên khóa Kn cuối cùng của chuỗi và liên tục áp dụng F để tính tất cả các khóa khác : Ki = F (Ki + 1) Mỗi nút có thể dễ dàng thực hiện đồng bộ hóa thời gian và truy xuất khóa đã xác thực của chuỗi khóa cho cam kết một cách an toàn và được xác thực, bằng cách sử dụng khối xây dựng SNEP
Hình 7.1 cho thấy một ví dụ về µTESLA Mỗi khóa của chuỗi khóa tương ứng với một khoảng thời gian và tất cả các gói được gửi trong một khoảng thời gian đều được xác thực bằng cùng một khóa Thời gian cho đến khi các khóa của một khoảng thời gian cụ thể được tiết lộ là hai khoảng thời gian trong ví dụ này Nút nhận được giả định được đồng bộ hóa theo thời gian lỏng lẻo và biết K0 (cam kết với chuỗi khóa) theo cách đã được xác thực Các gói P1 và P2 được gửi trong khoảng thời gian một, chứa một MAC với khóa K1 Gói P3 có MAC
sử dụng khóa K2 Cho đến nay, người nhận vẫn chưa thể xác thực bất kỳ gói tin nào Giả sử rằng các gói P4, P5 và P6 đều bị mất, cũng như gói tiết lộ khóa K1,
vì vậy người nhận vẫn không thể xác thực P1, P2 hoặc P3 Trong khoảng thời gian thứ tư, trạm gốc phát đi khóa K2, mà nút này xác thực bằng cách xác minh K0 = F (F (K2)), và do đó cũng biết K1 = F (K2), vì vậy nó có thể xác thực các gói P1, P2 với K1, và P3 với K2
Thay vì thêm một khóa được tiết lộ vào mỗi gói dữ liệu, việc tiết lộ khóa độc lập với gói quảng bá và được gắn với các khoảng thời gian Trong ngữ cảnh của µTESLA, người gửi phát định kỳ khóa hiện tại trong một gói đặc biệt
µTESLA có nhiều giai đoạn: thiết lập người gửi, gửi gói tin đã xác thực, khởi động máy thu mới và xác thực gói tin Để đơn giản, µTESLA được giải thích cho trường hợp trạm gốc phát thông tin đã được xác thực và trường hợp các nút gửi các chương trình đã được xác thực
Trong quá trình thiết lập người gửi, trước tiên người gửi tạo một chuỗi khóa bí mật (hoặc một chuỗi khóa) Để tạo chuỗi khóa một chiều có độ dài, người gửi
Trang 10chọn ngẫu nhiên khóa cuối cùng Kn và tạo các giá trị còn lại bằng cách áp dụng liên tiếp hàm một chiều F [ví dụ: một hàm băm mật mã chẳng hạn như MD5 (Thông báo số 5)]: Kj = F (Kj + 1)
Trong suốt phát thanh truyền của các gói tin xác thực, thời gian được chia thành các khoảng thời gian và người gửi liên kết từng khóa của chuỗi khóa một chiều với một khoảng thời gian Trong khoảng thời gian t, người gửi sử dụng khóa của khoảng thời gian hiện tại, Kt, để tính MAC của các gói trong khoảng thời gian đó Người gửi sau đó sẽ tiết lộ khóa Kt sau một khoảng trì hoãn của δ khoảng thời gian sau kết thúc của khoảng thời gian t Độ trễ thời gian tiết lộ khóa δ là thứ tự của một vài khoảng thời gian , miễn là nó lớn hơn bất kỳ thời gian khứ hồi hợp lý giữa người gửi và người nhận
Trong quá trình bootstrapping khởi động bộ thu mới, thuộc tính quan trọng của chuỗi khóa một chiều là khi người nhận có khóa được xác thực của chuỗi, các khóa tiếp theo của chuỗi tự xác thực, có nghĩa là người nhận có thể dễ dàng và xác thực hiệu quả các khóa tiếp theo của chuỗi khóa một chiều sử dụng một khóa được xác thực Ví dụ, nếu người nhận có giá trị được xác thực Ki của chuỗi khóa, nó có thể dễ dàng xác thực Ki+1 bằng cách xác minh Ki = F(Ki+1) Do đó để bootstrap µTESLA , mỗi người nhận cần có một khóa xác thực của chuỗi khóa một chiều như một cam kết cho toàn bộ chuỗi Một yêu cầu khác của µTESLA đó có phải là người gửi và người nhận đồng bộ hóa thời gian theo lossely, và người nhận biết lịch trình tiết lộ khóa của các khóa của chuỗi khóa một chiều Cả đồng bộ hóa thời gian không chặt chẽ, cũng như cam kết chuỗi khóa đã được xác thực, có thể được thiết lập với một cơ chế cung cấp tính chất mới mạnh mẽ và điểm đến điểm xác thực Người nhận gửi một nonce trong thông báo yêu cầu cho người gửi Người gửi trả lời bằng một tin nhắn chứa thời gian hiện tại của nó Ts(để đồng bộ hóa thời gian),khóa Ki của chuỗi khóa một chiều sử dụng trong một khoảng quá khứ i (cam kết với chuỗi chìa khóa), và thời gian bắt đầu Ti của khoảng thời gian I, thời lượng "Tint" của một khoảng thời gian và sự chậm trễ tiết lộ δ (ba giá trị cuối cùng mô tả lịch trình tiết lộ chính)
S → M : TS|Ki|Ti|Tint|δMAC(KMS, NM|TS|Ki|Ti|Tint|δ)
Từ tính bảo mật không cần thiết, người gửi không cần mã hóa dữ liệu The MAC sử dụng khóa bí mật được chia sẻ bởi nút và căn cứ điểm để xác thực dữ liệu, thời gian này NM cho phép nút xác minh độ mới Thay vì sử dụng chữ ký
số kế hoạch như trong µTESLA , kênh đã xác thực từ nút đến trạm gốc được sử dụng để khởi động chương trình phát sóng đã xác thực