Sự phát triển bùng nổ của Internet vạn vật (IoT) và các dịch vụ đi kèm đòi hỏi chúng ta phải chuẩn bị sẵn sàng không chỉ ở hạ tầng kết nối với hiệu năng cao, độ trễ thấp, mà còn cần đảm bảo yêu cầu an toàn thông tin tối đa. Các ứng dụng và dịch vụ IoT giúp hoàn thiện rõ nét hơn mục tiêu “thông minh hóa” mọi mặt đời sống của con người, điển hình như nhà/văn phòng thông minh, thành phố thông minh, nông nghiệp thông minh, sản xuất công nghiệp thông minh, chăm sóc y tế thông minh,.... Có thể dễ dàng nhận thấy, các dữ liệu được trao đổi trong các hệ thống thông minh gắn liền với các thông tin cá nhân quan trọng của người dùng. Mặt khác, xu hướng kết nối giữa các thiết bị IoT chủ yếu dựa trên các công nghệ kết nối vô tuyến trực tiếp khoảng cách gần, như Bluetooth, wifi, D2D, RFID,… có nhiều rủi ro về bảo mật. Do đó, đảm bảo an toàn thông tin đóng vai trò hết sức quan trọng với các kết nối IoT hiện nay.
Hầu hết các thiết bị IoT đều có hạn chế chung về tài nguyên phần cứng và phần mềm. Để bảo vệ an toàn dữ liệu, cơ chế mã hóa đối xứng được đánh giá phù hợp hơn so với mã hóa bất đối xứng, do các ưu điểm về tốc độ và hiệu năng mà nó mang lại. Tuy nhiên, quá trình thỏa thuận khóa để tạo ra khóa đối xứng an toàn lại là một thách thức lớn do các thông tin ban đầu phục vụ cho quá trình tạo khóa cần được trao đổi trước giữa hai thiết bị. Một trong các giao thức trao đổi khóa đối xứng kinh điển vẫn đang được sử dụng hiệu quả và phổ biến hiện nay là Diffie-Hellman (D-H) và các giao thức biến thể dựa trên nó. Tuy vậy, cơ chế D-H yêu cầu năng lực tính toán cao để có thể tạo ra được cặp khóa đủ an toàn (trên 256 bit). Chính vì điều này, rất nhiều thiết bị IoT hiện nay như cảm biến nhúng, thiết bị đeo, RFID… khó có thể ứng dụng khóa D-H, thay vào đó chỉ có thể sử dụng mã PIN cho việc xác thực và tạo khóa mã hóa.
Nhằm giải quyết vấn đề đó, một trong các hướng tiếp cận khả thi hiện nay đang được tập trung nghiên cứu là cơ chế tạo khóa bảo mật dựa trên các đặc tính vật lý riêng trên kênh vô tuyến trao đổi giữa hai thiết bị, đặc biệt là đặc tính ngẫu nhiên do hiện tượng fading gây ra. Xuất phát từ thực tế fading ngẫu nhiên trên kênh vô tuyến làm biến dạng tín hiệu tại phía nhận. Mặc dù ảnh hưởng của fading là ngẫu nhiên do sự biến đổi liên tục của môi trường vô tuyến, tuy nhiên xét trong một khoảng thời gian rất ngắn giữa hai lần truyền tin đi và đến giữa hai thiết bị, các ảnh hưởng ngẫu nhiên kể trên lại có thể xem như không đổi và là đặc trưng riêng biệt của kênh vô tuyến. Các đặc trưng riêng biệt này có thể được khai thác để tạo ra khóa bảo mật với độ an toàn cao (Hình 1). Phần tiếp theo sẽ trình bày chi tiết cơ chế này.
Hình 1. Cơ chế tạo khóa bảo mật dựa trên đặc tính vật lý kênh vô tuyến
Cơ chế tạo khóa
Cơ chế tạo khóa bảo mật dựa trên đặc tính vật lý kênh vô tuyến gây ra do fading, về cơ bản gồm 5 bước, được trình bày trong Hình 1:
Bước 1, thăm dò kênh: được sử dụng để thu thập các mẫu tín hiệu ngẫu nhiên do fading gây ra. Quá trình thu phát tín hiệu thăm dò kênh giữa hai thiết bị A và B được thực hiện như sau: Thiết bị A phát một chuỗi tín hiệu bất kỳ (xA) về phía thiết bị B. Do ảnh hưởng fading từ môi trường, tín hiệu nhận được tại B có dạng xAhAB, trong đó hAB là thành phần gây ra bởi fading trên kênh truyền từ A tới B. Tương tự, thiết bị B phát một chuỗi tín hiệu bất kỳ (xB) và thiết bị A thu được xBhBA. Trong một khoảng thời gian thu phát rất ngắn, fading gây ra trên kênh truyền từ A tới B và từ B về A được xem như thay đổi không đáng kể, do đó hAB ≈ hBA. Tín hiệu ghép xBhBAxA tại thiết bị A và xAhABxB tại thiết bị B được xem như đồng nhất (các bit tín hiệu sai có thể được hiệu chỉnh trong Bước 4). Trong trường hợp bị nghe lén, tín hiệu thu được sẽ có dạng xAhABxBhBA. Do thiết bị nghe lén ở vị trí khác so với thiết bị A và B, sự sai khác giữa hai tín hiệu hAB và hBA tương đối lớn. Đồng thời tín hiệu ghép thu được gồm cả hai thành phần hABhBA gây nhiễu lớn đến đặc tính ngẫu nhiên do fading gây ra, gây khó khăn trong việc trích xuất chính xác các đặc tính ngẫu nhiên này để thực hiện tái tạo khóa. Quá trình trên được thực hiện và lấy mẫu theo chu kỳ giữa hai thiết bị A và B, nhằm thu thập đủ lượng tín hiệu ngẫu nhiên cần thiết cho quá trình tạo khóa. Mẫu tín hiệu có thể được trích xuất dưới dạng biên độ hoặc pha. Số lượng mẫu tín hiệu ngẫu nhiên cần thu thập phụ thuộc vào mức độ fading trên kênh và yêu cầu về độ dài khóa bảo mật.
Bước 2, trích xuất đặc tính ngẫu nhiên: Tín hiệu thu được ở hai thiết bị chứa nhiều thành phần xác định có thể được hiệu chỉnh và giải mã một cách dễ dàng, nên rất dễ bị nghe lén. Do đó, chỉ những tín hiệu chứa đặc tính ngẫu nhiên do fading gây ra mới được trích xuất và sử dụng cho việc tạo khóa bảo mật. Hình 2 mô tả một ví dụ thu thập mẫu tín hiệu theo biên độ và trích xuất tín hiệu chứa đặc tính ngẫu nhiên. Các mẫu tín hiệu thu (điểm tròn) được so sánh với ngưỡng bit 0 và 1, những tín hiệu có biên độ vượt ra ngoài khoảng ngưỡng [0 – 1] (điểm tròn màu xanh) được xem như có chứa đặc tính ngẫu nhiên do fading gây ra và được lựa chọn cho quá trình tạo khóa.
Hình 2. Trích xuất đặc tính ngẫu nhiên trên kênh vô tuyến gây ra do fadinh
Bước 3, lượng tử hóa: Chuỗi tín hiệu thu được sau Bước 2 được lượng tử hóa theo thang thời gian đồng bộ thành dạng chuỗi bit nhị phân 0 và 1.
Bước 4, hiệu chỉnh sai khác: Mặc dù tính chất fading của kênh vô tuyến về cơ bản giống nhau trên hai chiều thu phát giữa hai thiết bị khi xem xét trong một khoảng thời gian rất ngắn, nhưng do môi trường truyền tin biến đổi liên tục và nhiễu nên tại hai thiết bị có sự khác nhau nhất định, một số sai khác nhỏ do fading gây ra có thể tồn tại trong tín hiệu thu (như đã phân tích trong Bước 1). Để hiệu chỉnh các sai khác này, hai thiết bị cần thực hiện quá trình đối chiếu và sửa lỗi bit nhị phân thu được sau lượng tử hóa tại Bước 3. Một trong các phương pháp phổ biến nhất để hiệu chỉnh là sử dụng thuật toán sửa mã khối. Theo đó, chuỗi bit sau lượng tử sẽ được phân chia thành các khối có kích thước giống nhau.
Hàm HASH được sử dụng để kiểm tra từng cặp khối bit tại hai thiết bị để đảm bảo tính đồng nhất. Hai thiết bị thực hiện trao đổi mã kiểm tra HASH cho từng cặp khối bit. Trong trường hợp phát hiện sai khác, toàn bộ phần bit chứa mã sai khác sẽ được một trong hai thiết bị gửi cho bên còn lại để cập nhật. Kích thước khối bit được lựa chọn phụ thuộc vào yêu cầu về mức độ bảo mật tránh rò rỉ thông tin và thời gian thực hiện quá trình hiệu chỉnh sai khác.
Bước 5, tạo khóa: Sau Bước 4, chuỗi bit lượng tử đã được đồng nhất, tuy nhiên một số phần (các khối bit chứa mã sai khác) được trao đổi tường minh giữa 2 thiết bị có thể bị nghe lén. Do đó, để giảm thiểu nguy cơ lộ khóa bí mật, chuỗi bit lượng tử sau khi đồng nhất sẽ được kiểm tra xác suất rò rỉ thông tin dựa trên tỷ lệ số lượng bit đã được trao đổi tường minh và toàn bộ chuỗi bit. Trong trường hợp xác suất rò rỉ thông tin vượt ngưỡng ấn định, toàn bộ quá trình tạo khóa cần thực hiện lại từ Bước 1. Ngược lại, chuỗi bit lượng tử đồng nhất sau Bước 4 được xem như đủ an toàn cho quá trình tạo khóa. Cơ chế tạo khóa bảo mật dựa trên đặc tính fading của kênh vô tuyến không định nghĩa một phương thức riêng cho quá trình tạo ra khóa bảo mật. Thay vào đó, cặp khóa chung sẽ được tính toán riêng biệt tại hai thiết bị căn cứ trên chuỗi bit lượng tử đồng nhất sử dụng một trong các hàm tạo khóa chuẩn (ví dụ thuật toán SHA-256). Sự tương đồng của khóa chung được đảm bảo từ tính đồng nhất của chuỗi bit lượng tử đưa vào hàm tạo khóa.
Thách thức cho quá trình tạo khóa
Mặc dù cơ chế tạo khóa bảo mật dựa trên đặc tính vật lý kênh vô tuyến đảm bảo tính bí mật về thông tin đầu vào và tính duy nhất giữa hai thiết bị tham gia, nhưng vẫn còn tồn tại những thách thức không nhỏ cần phải vượt qua, bao gồm:
- Thời gian tạo khóa dài: Quá trình thăm dò kênh và trích xuất đặc tính ngẫu nhiên được thực hiện với hàng ngàn mẫu bản tin trao đổi qua lại giữa hai thiết bị để đảm bảo đủ lượng thông tin cần thiết cho các bước tiếp theo. Không những vậy, trong trường hợp xác suất rò rỉ thông tin cao, toàn bộ quá trình này cần thực hiện lại từ đầu.
- Khó lượng hóa lượng thông tin rò rỉ: Thông tin tạo khóa có thể bị rò rỉ và nghe lén trong quá trình thăm dò kênh (Bước 1) và hiệu chỉnh sai khác (Bước 4). Mặc dù có thể tính toán tương đối về xác suất rò rỉ thông tin, nhưng vẫn không đảm bảo xác định được lượng thông tin tối đa có thể bị rò rỉ trong cả quá trình. Hay nói cách khác, không thể tính toán chính xác khi nào thì xảy ra trường hợp lượng thông tin bị rò rỉ có thể đủ để tái tạo khóa.
- Lượng thông tin bổ trợ lớn: Để tạo khóa thành công, một lượng lớn thông tin cần trao đổi giữa 2 thiết bị được thực hiện tại Bước 1 và Bước 4, gây chiếm dụng tài nguyên và tiêu hao năng lượng không có ích.
Khai thác các nhược điểm này, kẻ tấn công có thể thực hiện một loạt các biện pháp nhằm cản trở và/hoặc lấy cắp thông tin tạo khóa, điển hình như:
- Tấn công gây nhiễu kênh: Kẻ tấn công gửi tín hiệu gây nhiễu lên kênh vô tuyến được sử dụng bởi hai thiết bị trong quá trình tạo khóa. Hậu quả là tín hiệu thu được ở hai thiết bị sẽ sai khác nhau quá nhiều, không còn đại diện cho fading ngẫu nhiên đồng nhất nữa. Do đó, tín hiệu thu được không thể sử dụng cho quá trình tạo khóa.
- Tấn công giả mạo tín hiệu: Kẻ tấn công gửi các bản tin giả mạo của một trong hai hoặc cả hai thiết bị cho bên ngược lại. Mặc dù kênh không bị gây nhiễu quá lớn, nhưng tín hiệu thu được tại hai thiết bị không đồng nhất và không thể sử dụng để tạo khóa.
- Tấn công tín hiệu điều khiển kênh: Kẻ tấn công gửi các bản tin điều khiển giả mạo làm cho hai thiết bị liên tục phải đàm phán lại tham số truyền dẫn trên kênh. Khi tham số kênh truyền thay đổi, các tín hiệu đã thu được không còn giá trị sử dụng và mọi quá trình cần thực hiện lại từ đầu.
Hình 3. Tấn công MITM thu thập dữ liệu tạo khóa
- Tấn công “Người ở giữa” (Man In The Midle - MITM): Kẻ tấn công tiếp cận vị trí một trong hai thiết bị để có được đặc tính fading gần tương tự trên kênh vô tuyến giữa hai thiết bị. Kết hợp tấn công giả mạo tín hiệu (với một lượng nhỏ), kẻ tấn công có thể ước định mức fading của kênh, các tham số định danh hai thiết bị và sử dụng những thông tin này cho các quá trình tiếp theo để tái tạo khóa. Hình 3 mô tả tấn công MITM. Trong đó, kẻ tấn công (Eve) nghe lén tín hiệu gửi từ cả hai thiết bị (Alice và Bob). Tại thời điểm t1 và t2, tín hiệu thu được từ cả Alice và Bob không giống nhau và không đủ thể hiện tính ngẫu nhiên. Tuy nhiên, do ước định được lượng fading giữa hai thiết bị, Eve có thể hiệu chỉnh bù tín hiệu để thu được tín hiệu gần giống nhất với cả Alice và Bob. Kết quả là tại thời điểm t3, Eve thu được mẫu tín hiệu có đặc tính ngẫu nhiên như Alice và Bob truyền cho nhau.
Kết luận
Trước những thách thức về việc đảm bảo an toàn thông tin cho các thiết bị IoT, cách tiếp cận tạo khóa bảo mật dựa trên đặc tính fading ngẫu nhiên của kênh vô tuyến bước đầu đạt được những thành công nhất định. Nhưng việc hoàn thiện một cơ chế phù hợp để tạo ra khóa bảo mật an toàn đòi hỏi cần đầu tư nghiên cứu nhiều hơn nữa. Tuy nhiên, để có thể ứng dụng vào thực tế và đạt hiệu quả thiết thực, còn rất nhiều thách thức cần phải vượt qua. Hy vọng trong tương lai không xa, giải pháp này sẽ được hoàn thiện và ứng dụng rộng rãi, không chỉ đối với các thiết bị IoT, mà xa hơn nữa, có thể sẽ là thời kỳ của IoNT (Internet of Nano Things).
Tài liệu tham khảo
1. Đào Như Ngọc, Phạm Hải Chiến, “Các kỹ thuật tối ưu cho IoT trong mạng LTE-A” , Tạp chí Công nghệ thông tin và Truyền thông, 2017.
2. S. Eberz et al., “A Practical Man-In-The-Middle Attack on Signal-Based Key Generation Protocols”, in Proc. of ESORICS, pp. 235–52, 2012.
3. K. Zeng, “Physical layer key generation in wireless networks: challenges and opportunities”, IEEE Communications Magazine, Vol. 53, No. 6, pp. 33-39, 2015.
4. Y. Wei, K. Zeng, and P. Mohapatra, “Adaptive Wireless Channel Probing for Shared Key Generation Based on Pid Controller” IEEE Trans. Mobile Computing, Vol. 12, No. 9, pp. 1842–52, 2013.
|