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

nghiên cứu phát triển một số thuật toán nâng cao khả năng bảo mật cho các thiết bị trong mạng iot

158 8 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

Nội dung

DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT | Phép toán chia hết || Phép toán OR ≡ Dấu đồng dư ∤ Phép toán không chia hết ⊕ Phép toán XOR 6LoPAN Tiêu chuẩn kỹ thuật được phát triển để hỗ trợ giao

Trang 1

VIỆN KHOA HỌC VÀ CÔNG NGHỆ QUÂN SỰ

Trang 2

VIỆN KHOA HỌC VÀ CÔNG NGHỆ QUÂN SỰ

LUẬN ÁN TIẾN SĨ TOÁN HỌC

NGƯỜI HƯỚNG DẪN KHOA HỌC: 1 PGS.TS NGUYỄN LINH GIANG 2 TS NGUYỄN NGỌC CƯƠNG

HÀ NỘI, 2024

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi Các số liệu, kết quả được trình bày trong luận án này là trung thực và chưa được ai công bố trong bất kỳ một công trình nghiên cứu nào khác, các dữ liệu tham khảo được trích dẫn đầy đủ

Hà Nội, ngày tháng năm 2024

Tác giả luận án

Trần Xuân Ban

Trang 4

LỜI CẢM ƠN

Trong quá trình thực hiện luận án tiến sĩ với đề tài: “Nghiên cứu, phát

triển một số thuật toán nâng cao khả năng bảo mật cho các thiết bị trong mạng IoT” tôi xin bày tỏ lòng biết ơn sâu sắc đến:

- Tập thể giáo viên hướng dẫn: PGS.TS Nguyễn Linh Giang - Đại học Bách khoa Hà Nội và Thiếu tướng TS Nguyễn Ngọc Cương - Cục trưởng Cục cảnh sát quản lý hành chính về trật tự xã hội (Bộ Công an)

- Tập thể Viện Khoa học và Công nghệ quân sự, Phòng Đào tạo, Viện Công nghệ thông tin

- Các thầy, cô giảng viên tại Viện Khoa học và Công nghệ quân sự và tại các cơ sở đào tạo

- Các đồng nghiệp tại Trường Đại học Kỹ thuật - Hậu cần Công an nhân dân, gia đình và những người đã giúp đỡ tôi trong quá trình làm luận án

Tác giả luận án Trần Xuân Ban

Trang 5

Chương 1 AN TOÀN BẢO MẬT MẠNG INTERNET OF THINGS 17

1.1 Tổng quan mạng Internet of Things và giải pháp bảo mật 17

1.1.1 Khái quát về mạng Internet of Things và ứng dụng 17

1.1.2 Nguy cơ mất an toàn trong mạng Internet of Things 19

1.1.3 Ứng dụng mật mã nhẹ cho bảo mật trong mạng IoT 23

1.1.4 Nhận xét các điểm còn tồn tại 29

1.2 Thanh ghi dịch phản hồi tuyến tính 31

1.2.1 Cơ sở toán học 31

1.2.2 Sinh chuỗi bit bằng thanh ghi dịch phản hồi tuyến tính 34

1.2.3 Một số nghiên cứu liên quan 37

1.2.4 Nhận xét các điểm còn tồn tại 40

1.3 Khóa trong hệ mật mã dòng 40

1.3.1 Một số khái niệm 40

1.3.2 Tạo khóa cho mật mã dòng 43

1.3.3 Trao đổi khóa cho mật mã dòng 44

1.3.4 Một số nghiên cứu liên quan 46

Trang 6

2.2.1 Cơ sở toán học 55

2.2.2 Cấu trúc bộ mã nhị phân 5 bit 58

2.2.3 Nhận xét 63

2.3 Thuật toán mã hóa dòng nhẹ 68

2.3.1 Bộ sinh bit giả ngẫu nhiên 68

2.3.2 Quá trình mã hóa và giải mã 73

3.2.2 Trao đổi khóa dài hạn 105

3.2.3 Trao đổi khóa phiên 118

3.3 Kết luận chương 3 123

KẾT LUẬN 124

DANH MỤC CÁC CÔNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ 126

TÀI LIỆU THAM KHẢO 127

PHỤ LỤC 135

Trang 7

DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT

| Phép toán chia hết || Phép toán OR ≡ Dấu đồng dư

∤ Phép toán không chia hết ⊕ Phép toán XOR

6LoPAN Tiêu chuẩn kỹ thuật được phát triển để hỗ trợ giao tiếp mạng IPv6 trên các mạng không dây với tài nguyên năng lượng và băng thông hạn chế (IPv6 over Low power Wireless Personal Area Networks)

AES Tiêu chuẩn mã hóa mở rộng (Advanced Encryption Standard) CoAP Giao thức mạng dành cho các thiết bị có tài nguyên hạn chế và hoạt động trong môi trường IoT (Constrained Application Protocol)

CSDL Cơ sở dữ liệu

DoS Tấn công từ chối dịch vụ (Denial of Service)

DTLS Giao thức bảo mật cho việc truyền tải dữ liệu thông qua trên lớp vận chuyển (Datagram Transport Layer Security)

FCSR Thanh ghi dịch phản hồi hoán vị vòng (Feedback with Carry Shift Registers)

FPGA Mạch logic có thể lập trình được (Field Programmable Gate Array)

GPS Hệ thống định vị toàn cầu (Global Positioning System)

IDEA Thuật toán mã hóa dữ liệu quốc tế (International Data Encryption Algorithm)

IDS Hệ thống Phát hiện xâm nhập (Intrusion Detection System)

Trang 8

IEEE Viện Kỹ sư Điện và Điện tử (Institute of Electrical and Electronics Engineers)

IoT Mạng vạn vật (Internet of Things)

ITU Liên minh Viễn thông Quốc tế (International Telecommunication Union)

LFSR Thanh ghi dịch phản hồi tuyến tính (Linear Feedback Shift Register)

LoRaWAN Mạng không dây phạm vi rộng (Long Range Wireless Area Network)

MAC Truy cập điều khiển Đa phương tiện (Media Control Access) MIT Học viện Công nghệ Massachusetts (Massachusetts Institute

of Technology)

MITM Kiểu tấn công kẻ đứng giữa (Man-in-the-Middle)

MQTT Giao thức truyền thông điệp theo mô hình cung cấp/thuê bao cho thiết bị hạn chế (Message Queueing Telemetry Transport) NFC Kết nối môi trường gần (Near-Field Communications)

NLFSR Thanh ghi dịch phản hồi phi tuyến (Non-Linear Feedback Shift Register)

OAuth2 Giao thức ủy quyền mở được sử dụng để quản lý quyền truy cập và chia sẻ thông tin người dùng giữa các ứng dụng và dịch vụ trực tuyến (Open Authorization 2.0)

PRNG Sinh số giả ngẫu nhiên (PseudoRandom Number Generator) RFID Định danh tần số vô tuyến (Radio Frequency Identification)

RSA Thuật toán mã hóa khóa công khai viết tắt 3 chữ cái của 3 nhà khoa học Ron Rivest, Adi Shamir và Leonard Adleman đề xuất thuật toán

SSL Giao thức bảo mật được sử dụng để thiết lập kết nối an toàn

Trang 9

giữa máy khách và máy chủ trên mạng (Secure Socket Layer) TA Xác thực tin cậy (Trusted Anthentication)

TCP/IP Giao thức điều khiển vận chuyển/Giao thức mạng (Transmission Control Protocol/Internet Protocol)

TLS Giao thức bảo mật mạng được sử dụng để đảm bảo tính bảo mật và toàn vẹn của dữ liệu truyền tải qua mạng trên tầng vận chuyển (Transport Layer Security)

Triple DES Tiêu chuẩn mã hóa 3DES (Triple Data Encryption Standard) TRNG Tạo số ngẫu nhiên thực (True Random Number Generation)

UDP Giao thức dữ liệu người dùng (User Datagram Protocol) WiMAX Công nghệ truyền thông không dây (wireless) được sử dụng để

cung cấp kết nối mạng rộng (broadband) không dây (Worldwide Interoperability for Microwave Access)

WLAN Mạng cục bộ không dây (Wireless Local Area Network)

Trang 10

Bảng 2.3 Giá trị các hàm chuyển đổi g1và g2 63

Bảng 2.4 Bảng vector bit của khóa SK1 71

Bảng 2.5 Bảng vector bit của khóa 𝑆𝐾2 71

Bảng 2.6 Bảng mã nhị phân 5 bit của các mầm khóa 𝑆𝐾1 và 𝑆𝐾2 77

Bảng 2.7 Giá trị khởi tạo của mỗi thanh ghi LFSR 77

Bảng 2.8 Giá trị các hàm ψ và φ 78

Bảng 2.9 Giá trị của vector 𝜆𝑡 và hàm g1() 79

Bảng 2.10 Bảng giá trị của hàm g2() 79

Bảng 2.11 Giá trị của các ký tự trong bản mã 80

Bảng 2.12 Biểu diễn nhị phân của bản mã 84

Bảng 2.13 So sánh hiệu quả thuật toán tạo chuỗi khóa 86

Bảng 3.1 Các nghiệm của bài toán 1 100

Bảng 3.2 Các nghiệm của bài toán 2 101

Bảng 3.3 Bảng ma trận B 120

Trang 11

DANH MỤC CÁC HÌNH VẼ

Trang

Hình 1.1 Mô hình kiến trúc tối thiểu của mạng IoT 18

Hình 1.2 Yêu cầu an toàn, bảo mật của mạng IoT 19

Hình 1.3 Mô hình hoạt động của mật mã dòng 27

Hình 1.4 Mô hình thanh ghi dịch phản hồi tuyến tính 31

Hình 1.5 Bộ tạo chuỗi kết hợp phi tuyến 36

Hình 1.6 Mô hình bộ tạo dãy giả ngẫu nhiên Massey-Rueppel 42

Hình 2.1 Sơ đồ hoạt động của các thanh ghi LFSR 69

Hình 2.2 Giá trị khởi tạo của các thanh ghi 72

Hình 2.3 Kết quả kiểm tra chất lượng chuỗi bản mã X 85

Hình 3.1 Vị trí bit thay đổi giá trị của 𝐶′𝑖 110

Trang 12

MỞ ĐẦU

1 Tính cấp thiết của đề tài luận án

Mạng Internet of Things (IoT) phát triển với nhiều hệ sinh thái mới và được ứng dụng trong nhiều lĩnh vực đời sống như: giám sát y tế, giám sát điều khiển giao thông, giám sát trong nông nghiệp, đặc biệt là các lĩnh vực an ninh, quốc phòng …Các thiết bị kết nối trong mạng IoT đa dạng về công nghệ và có xu hướng sử dụng những thiết bị hạn chế năng lực tính toán, kích thước nhỏ, năng lượng tiêu thụ ít, được lắp đặt trong những môi trường dễ bị tấn công để đánh cắp thông tin dữ liệu Các nguy cơ mất an ninh, an toàn và bảo mật của mạng IoT tương tự như trong mạng internet truyền thống [CT2]

Chính phủ nhiều nước trên thế giới đã có những chính sách để thúc đẩy phát triển mạng IoT, bao gồm cả việc đảm bảo an ninh, an toàn cho mạng IoT như: Chính phủ Mỹ ra Điều luật SB-327-California có hiệu lực từ ngày 01/01/2020 quy định về việc ngăn cấm sử dụng mật khẩu mặc định đối với thiết bị IoT có kết nối mạng internet vì tin tặc sử dụng các thiết bị này làm bàn đạp tấn công (Botnet) vào hệ thống mạng máy tính trọng yếu quốc gia; Chính phủ Anh ban hành đạo luật liên quan đến đảm bảo an ninh, an toàn lĩnh vực IoT có hiệu lực từ ngày 21/01/2020 quy định mật khẩu mặc định của thiết bị phải được thay đổi trước khi đưa vào sử dụng, việc cập nhật vá lỗi phần mềm, thông tin các điểm liên lạc phục vụ cộng đồng trong vấn đề bảo mật thiết bị IoT; Chính phủ Nhật Bản đã thực hiện chính sách về an toàn không gian mạng, trong đó chú trọng vào hạ tầng thiết bị IoT và có chiến lược an toàn, an ninh mạng thể hiện trong Luật An toàn, an ninh mạng, đồng thời cũng ban hành các văn bản pháp lý quy định về đảm bảo an toàn, nâng cao uy tín quốc tế về hệ thống mạng IoT từ khâu thiết kế, chế tạo sản phẩm, tạo kết nối giữa các tổ chức, cá nhân trong và ngoài nước để thiết lập các tiêu chuẩn chung về bảo mật IoT Việt Nam hiện đã ban hành nhiều văn bản quy phạm pháp luật như: Luật An ninh mạng

Trang 13

có hiệu lực từ ngày 01/01/2019, Nghị quyết số 52-NQ/TW ngày 27/9/2019 đề ra những chủ trương chính sách tham gia vào cuộc cách mạng công nghệ số; Chiến lược Chuyển đổi số của Chính phủ; Nghị quyết số 30-NQ/TW ngày 25/7/2018 của Bộ Chính trị về Chiến lược an ninh mạng quốc gia Để đấu tranh phòng chống tội phạm lợi dụng không gian mạng máy tính, thiết bị công nghệ trong đó có mạng IoT để thực hiện hành vị phạm tội, Bộ Công an đã thành lập Cục An ninh mạng và phòng chống tội phạm công nghệ cao để thực hiện nhiệm vụ quản lý nhà nước và phòng, chống tội phạm liên quan lĩnh vực này

Trong mạng IoT có nhiều thiết bị thông minh hoạt động trong nhiều nền tảng khác nhau, đặc biệt khi chuyển từ máy chủ sang cảm biến, sẽ tạo ra nhiều thách thức như bảo mật và quyền riêng tư, khả năng tương tác, tuổi thọ và công nghệ hỗ trợ, Ngoài ra, các thiết bị IoT có thể dễ dàng truy cập và chịu nhiều cuộc tấn công bảo mật khi chúng tương tác trực tiếp với thế giới vật lý để thu thập dữ liệu khiến chúng trở thành mục tiêu hấp dẫn đối với những kẻ tấn công Tất cả những vấn đề này khiến an toàn mạng trở thành một thách thức lớn trong các thiết bị IoT với các yêu cầu về tính bảo mật, tính toàn vẹn của dữ liệu, xác thực và ủy quyền, tính khả dụng, các tiêu chuẩn quy định và quyền riêng tư cũng như cập nhật hệ thống thường xuyên

Có nhiều giải pháp kỹ thuật đề xuất để đảm bảo an ninh, an toàn cho hệ thống mạng IoT, trong đó giải pháp sử dụng mã hóa nhẹ để bảo mật thông tin dữ liệu cho hệ thống mạng đang được nhiều học giả quan tâm nghiên cứu Đối với mạng IoT, hạn chế tài nguyên và bảo mật thiết bị là điều cần thiết đối với hầu hết các thiết bị này Các tài nguyên phần cứng hạn chế có thể gây ra các vấn đề về hiệu suất khi sử dụng các thuật toán mã hóa tiêu chuẩn như AES, RSA,…Do đó, các nhà nghiên cứu đã tìm tòi và phát triển mật mã hạng nhẹ và các công nghệ mật mã hiệu quả khác nhau nhằm đảm bảo sự cân bằng tốt hơn giữa hiệu suất và bảo mật trong giới hạn chi phí

Như vậy, việc nghiên cứu và phát triển thuật toán mã hóa hạng nhẹ trên

Trang 14

cơ sở mật mã dành cho ứng dụng trong bảo mật thông tin trên mạng IoT là vô cùng cấp thiết, có thể đưa ra các nguyên nhân sau:

- Các thiết bị IoT thường có tài nguyên hạn chế về cả phần cứng và phần mềm, bao gồm bộ nhớ, công suất tính toán và pin do đó, cần phải sử dụng các thuật toán mã hóa nhẹ để đảm bảo hiệu suất hoạt động cho các thiết bị này

- Tiêu thụ năng lượng thấp: Một số lượng lớn các thiết bị IoT hoạt động dựa trên pin hoặc nguồn năng lượng có hạn Các thuật toán mã hóa hạng nhẹ giúp giảm tiêu thụ năng lượng, kéo dài tuổi thọ pin và giảm chi phí vận hành

- Bảo mật cao: Mạng IoT thường chứa các dữ liệu nhạy cảm và yêu cầu mức độ bảo mật cao Các thuật toán mã hóa hạng nhẹ phải đảm bảo mức độ bảo mật tương đương với các thuật toán mã hóa tiêu chuẩn, nhưng vẫn đảm bảo hiệu suất cho các thiết bị có tài nguyên hạn chế

- Yêu cầu về khả năng di động và tích hợp: Mạng IoT thường bao gồm các thiết bị di động và đa dạng Thuật toán mã hóa hạng nhẹ cần phải linh hoạt và dễ dàng tích hợp vào các loại thiết bị khác nhau

- Sự phát triển của IoT: Với sự gia tăng của các ứng dụng IoT trong đời sống hàng ngày, việc nghiên cứu và phát triển thuật toán mã hóa hạng nhẹ là một xu hướng không thể tránh khỏi để đảm bảo an toàn thông tin

Từ những nội dung tổng hợp, phân tích, đánh giá trên thấy rằng đề tài

luận án “Nghiên cứu, phát triển một số thuật toán nâng cao khả năng bảo mật

cho các thiết bị trong mạng IoT” có ý nghĩa quan trọng trong thực tiễn và lý

luận, góp phần bổ sung giải pháp tăng cường khả năng đảm bảo an ninh, an toàn và bảo mật cho mạng IoT nhằm chống lại xâm nhập trái phép và tấn công đánh cắp dữ liệu trong bối cảnh mạng IoT ngày càng được sử dụng phổ biến

2 Mục tiêu nghiên cứu

Nghiên cứu phát triển thuật toán mã hóa nhẹ trên cơ sở các thanh ghi LFSR ứng dụng cho bảo mật trong mạng IoT, đồng thời đề xuất giải pháp tạo và trao đổi khóa của thuật toán

Trang 15

3 Đối tượng, phạm vi nghiên cứu

Đối tượng nghiên cứu của Luận án: Cấu trúc, đặc điểm của mạng Internet of Things; Cơ sở toán học của hệ mật mã dòng, thanh ghi dịch phản hồi tuyến tính, phương pháp đồng dư tuyến tính để sinh số giả ngẫu nhiên; phương pháp trao đổi khóa cho hệ mật khóa đối xứng

Phạm vi nghiên cứu: thiết bị có năng lực tính toán thấp như các thiết bị cảm biến, thiết bị tập trung trong mạng IoT; thuật toán mã dòng sử dụng thanh ghi dịch phản hồi tuyến tính; phương pháp tạo số giả ngẫu nhiên và trao đổi khóa cho mật mã đối xứng

4 Nội dung nghiên cứu

(1) Nghiên cứu phương pháp bảo mật cho thiết bị mạng IoT sử dụng thuật toán mã hóa dòng nhẹ Để xây dựng hệ mật mã dòng nhẹ, luận án tập trung nghiên cứu các nội dung:

(1.1) Nghiên cứu xây dựng bộ mã có thể mã hóa được hết các ký tự trong bảng chữ cái la tinh (26 chữ cái từ A đến Z) Đây là bảng chữ cái chứa các ký tự để sinh các chuỗi khóa bí mật sử dụng trong luận án Từ yêu cầu này bộ mã phải có tối thiểu 5 bit để có thể mã hóa hết 26 ký tự vì 25 = 32 bộ 5 bit Như vậy, sẽ còn dư 6 bộ 5 bit Để có bộ mã 5 bit, mà các mã này được sinh cách ngẫu nhiên, độc lập cần lựa chọn một đa thức sinh Do vậy luận án sẽ nghiên cứu và đề xuất sử dụng một đa thức nguyên thủy bậc 5 để đáp ứng yêu cầu

(1.2) Đề xuất hệ mã dòng nhẹ sử dụng thanh ghi dịch LFSR với số bit khóa phù hợp thiết bị hạn chế năng lực tính toán và hạn chế bộ nhớ như các thiết bị trong mạng IoT Hệ mã cũng cần đảm bảo các phép tính phải đơn giản, song vẫn phải đảm bảo các tính chất như: bí mật, ngẫu nhiên và phi tuyến của chuỗi bit khóa,… để chống lại các hình thức tấn công hệ mã

(1.3) Tạo mầm khóa SK cho thuật toán mã hóa dòng gồm 2 phần:

- Phần khóa dài hạn ký hiệu là 𝑆𝐾1 được thay đổi định kỳ thời gian theo thống nhất giữa 2 bên (hàng tuần, hàng tháng, ) để giảm tải việc tính toán cho

Trang 16

các thiết bị trong mỗi lần thực hiện mã hóa

- Phần khóa ngắn hạn (hay khóa phiên) ký hiệu là 𝑆𝐾2 được thay đổi trong từng phiên liên lạc giữa các bên

(2) Đề xuất phương pháp tạo và trao đổi các khóa 𝑆𝐾1 và 𝑆𝐾2 giữa các bên, đồng thời kiểm tra tính xác thực của khóa đã được gửi đi Cụ thể, luận án tập trung nghiên cứu các nội dung sau:

(2.1) Đối với khóa dài hạn 𝑆𝐾1, luận án sử dụng phương pháp giấu vào trong ảnh rồi gửi qua kênh công khai

(2.2) Đối với khóa phiên 𝑆𝐾2, luận án sử dụng phương pháp tạo khóa bí mật chung giữa 2 bên gửi và nhận

5 Phương pháp nghiên cứu

Trên cơ sở mục tiêu, đối tượng, phạm vi và nội dung nghiên cứu đã trình bày ở trên, Luận án sử dụng một số phương pháp nghiên cứu sau:

- Nghiên cứu tài liệu: Nghiên cứu, phân tích các tài liệu có liên quan đến nội dung nghiên cứu, từ đó đưa ra nhận xét và hướng nghiên cứu

- Tham khảo ý kiến chuyên gia: Trong quá trình nghiên cứu tham khảo ý kiến chuyên gia nhằm làm sáng tỏ những vấn đề vướng mắc

- Tổ chức hội thảo, xemina: Mời các chuyên gia cho ý kiến về các vấn đề nghiên cứu cũng như tham dự các hội thảo khoa học có những vấn đề liên quan lĩnh vực nghiên cứu để nắm bắt được thông tin cũng như trao đổi với các chuyên gia, những người cùng nghiên cứu

- Thực nghiệm, chứng minh: Sử dụng các hình thức thực nghiệm tính toán, chứng minh theo cơ sở toán học, chỉ ra những điểm thực tiễn đã được chứng minh trước đó để khẳng định kết quả nghiên cứu

6 Ý nghĩa khoa học và thực tiễn

- Về mặt khoa học: Tổng hợp các nghiên cứu mới liên quan đến an ninh, an toàn mạng IoT; trên cơ sở đó đề xuất thuật toán mã hóa nhẹ để đảm bảo an ninh, an toàn và bảo mật cho mạng IoT

Trang 17

- Về mặt thực tiễn: Từ những nghiên cứu ban đầu hình thành cơ sở lý luận, các kỹ năng, kinh nghiệm triển khai áp dụng giải pháp đảm bảo an toàn cho thông tin mạng IoT; ứng dụng trong đảm bảo an ninh, an toàn thông tin phục vụ một số lĩnh vực nghiệp vụ Công an, như công tác đấu tranh phòng, chống tội phạm sử dụng công nghệ cao, góp phần đảm bảo an ninh, an toàn thông tin trên hệ thống mạng máy tính và dữ liệu người dùng Ngoài ra, các kết quả nghiên cứu của luận án có thể sử dụng làm tài liệu tham khảo cho giảng dạy, học tập, nghiên cứu tại các cơ sở đào tạo trong và ngoài lực lượng Công an; có thể cài đặt để cứng hóa thuật toán trong các thiết bị chuyên dụng phục vụ công tác của lực lượng Công an nhân dân Thuật toán được đề xuất cũng cho phép ứng dụng để bảo mật thông tin nói chung nếu có thể cứng hóa thành module mật mã (như máy mã công nghệ FPGA)

7 Bố cục luận án

Ngoài các phần mở đầu, kết luận, tài liệu tham khảo, luận án được bố cục thành 3 chương chính, gồm:

Chương 1: An toàn bảo mật mạng Internet of Things Đây là chương cơ

sở để xác định những nội dung nghiên cứu chính cho các chương sau Trong chương này, luận án trình bày tổng quan về mạng Internet of Things (IoT), giải pháp bảo mật và khả năng ứng dụng mật mã nhẹ trong bảo mật cho mạng IoT, cơ sở lý thuyết về thanh ghi dịch LFSR để xây dựng bộ tạo chuỗi bit giả ngẫu nhiên cho mật mã dòng, tạo số giả ngẫu nhiên cho mầm khóa và trao đổi khóa trong mật mã dòng Trên cơ sở phân tích các công trình đã công bố để xác định những nội dung cần tiếp tục nghiên cứu đồng thời đề xuất nội dung nghiên cứu của luận án

Chương 2: Đề xuất thuật toán mã hóa nhẹ trên cơ sở thanh ghi dịch phản

hồi phi tuyến Đây là một trong những nội dung đề xuất quan trọng của luận án, trong đó tập trung nghiên cứu: xây dựng bộ mã nhị phân gồm 5 bit để mã hóa các ký tự trong bộ từ điển chữ cái Latinh dùng riêng trong luận án thay thế

Trang 18

việc sử dụng bộ mã ASCII (8 bit); đề xuất cách thức tạo bộ sinh bit giả ngẫu nhiên bằng cách sử dụng kết hợp 5 thanh ghi LFSR trên cơ sở toán học nhằm tạo chuỗi bit có chu kỳ lớn, độ phức tạp phi tuyến để sử dụng cho việc mã hóa/giải mã trong thuật toán mã dòng dùng cho bảo mật trong mạng IoT

Chương 3: Đề xuất kỹ thuật trao đổi khóa Trong chương này, luận án

đưa ra giải pháp tạo số giả ngẫu nhiên dựa trên phương pháp đồng dư tuyến tính để sinh mầm khóa cho hệ mật được đề xuất trong Chương 2 Trong thuật toán mã hóa dòng do luận án đề xuất ở Chương 2 sử dụng 2 khóa (khóa dài hạn và khóa phiên), để phù hợp với từng loại khóa và phù hợp với môi trường thiết bị trong mạng IoT, luận án trình bày các giải pháp riêng để trao đổi các khóa cho hệ mã

Trang 19

Chương 1

AN TOÀN BẢO MẬT MẠNG INTERNET OF THINGS

Trong chương này luận án tập trung nghiên cứu phân tích, đánh giá những đặc trưng của mạng IoT và những yêu cầu bảo mật cho mạng IoT Trên cơ sở đó, luận án đề xuất giải pháp sử dụng mật mã dòng nhẹ để đảm bảo an toàn bảo mật thông tin cho mạng IoT bằng cách xây dựng thuật toán mã hóa dựa trên sử dụng thanh ghi LFSR và phương pháp tạo, trao đổi khóa phù hợp

1.1 Tổng quan mạng Internet of Things và giải pháp bảo mật

1.1.1 Khái quát về mạng Internet of Things và ứng dụng

Mạng Internet of Things (IoT) hay mạng của vạn vật là thuật ngữ xuất hiện từ những năm 1999 do Kevin Ashton là nhà khoa học tại Viện Nghiên cứu Massachusetts đưa ra [3], hiện có nhiều khái niệm khác nhau về thuật ngữ này

và chưa thống nhất Trong luận án, cách hiểu chung về mạng IoT là: Mạng IoT

là một mạng lưới mở với số lượng thiết bị lớn và thông minh được kết nối, chia sẻ thông tin tự động và tự tương tác để điều khiển lại thế giới “thực”, tạo liên kết giữa thế giới “thực” và thế giới “ảo” dựa trên các công nghệ thông tin và công nghệ truyền thông tiên tiến

Không gian mạng nói chung, mạng vạn vật nói riêng có nguy cơ ảnh hưởng đến an ninh của một quốc gia [3], mạng IoT với hàng tỉ thiết bị được kết nối đồng nghĩa với rất nhiều nguy cơ rủi ro xảy ra và ngày càng tăng lên trong khi khả năng bảo mật các thiết bị của mạng này hạn chế Bên cạnh đó, kiến trúc và cách kết nối các thiết bị trong mạng IoT cũng có nhiều mô hình khác nhau, đây cũng là nguyên nhân dẫn đến những nguy cơ lộ lọt thông tin dữ liệu, xung đột dữ liệu, tạo cơ hội để tin tặc xâm nhập trái phép vào hệ thống Kiến trúc của mạng IoT có thể chia thành 3 lớp, 4 lớp hoặc 5 lớp tùy theo cách tiếp cận Các nghiên cứu [25], [27], [43] cho thấy mạng IoT tối thiểu có 3 lớp cơ bản (lớp thiết bị, lớp mạng và lớp ứng dụng) như trong Hình 1.1 và cách kết nối các

Trang 20

thiết bị trong mạng IoT cũng rất đa dạng (thiết bị - thiết bị, thiết bị - cổng trung gian, thiết bị - cloud)

Lớp Thiết bị gồm các thiết bị vật lý cảm nhận thu thập dữ liệu tương tự, sau đó số hóa cho mục đích vận chuyển Các giao thức cơ sở hạ tầng như ZigBee, Z-Wave, Bluetooth Low Energy (BLE), WiFi và LTE-A chạy trong lớp Mạng Lớp Ứng dụng là giao diện để người dùng cuối truy cập dữ liệu và giao tiếp với các thiết bị IoT của mạng, lớp này hỗ trợ các giao thức tiêu chuẩn như: Giao thức truyền siêu văn bản (HTTP), Giao thức ứng dụng ràng buộc (CoAP), Vận chuyển từ xa hàng đợi tin nhắn (MQTT), Giao thức hiện diện và nhắn tin mở rộng (XMPP), Giao thức xếp hàng tin nhắn nâng cao (AMQP) và Dịch vụ phân phối dữ liệu (DDS)

Hình 1.1 Mô hình kiến trúc tối thiểu của mạng IoT

Theo Ammar và cộng sự [21] có một số nền tảng mạng IoT phổ biến được ứng dụng phổ biến hiện nay, được trình bày trong phụ lục 2 của luận án có những đặc điểm chung như: tính không đồng nhất của nền tảng phần cứng với những chuẩn khác nhau; tính kết nối liên thông giữa mạng IoT với các mạng truyền thông có sẵn; quy mô số lượng thiết bị IoT có xu hướng gia tăng đồng

Trang 21

nghĩa với tăng lưu lượng kết nối, tăng nguy cơ mất an toàn thông tin trong mạng; tính linh hoạt của mạng (thiết bị rất nhỏ gọn có thể gắn theo người như điện thoại di động, thiết bị bảo vệ sức khỏe,…; đặt trong môi trường khắc nghiệt hay gắn ngoài trời,…); các giao thức bảo mật đa dạng và sử dụng nhiều loại mật mã để mã hóa đều là những dòng mã hóa khóa đối xứng, cũng như các nguyên thủy mật mã để phù hợp với kiến trúc phần cứng của các thiết bị IoT

1.1.2 Nguy cơ mất an toàn trong mạng Internet of Things

Theo khoản 1 Điều 3 Luật an toàn thông tin mạng năm 2015 khái niệm

an toàn thông tin: “An toàn thông tin mạng là sự bảo vệ thông tin, hệ thống

thông tin trên mạng tránh bị truy nhập, sử dụng, tiết lộ, gián đoạn, sửa đổi hoặc phá hoại trái phép nhằm bảo đảm tính nguyên vẹn, tính bảo mật và tính khả dụng của thông tin” Bảo mật thông tin được hiểu là bảo vệ thông tin dữ liệu

của cá nhân, tổ chức nhằm tránh khỏi sự “đánh cắp, ăn cắp” bởi những kẻ xấu hoặc tin tặc gây mất an toàn thông tin

Hình 1.2 Yêu cầu an toàn, bảo mật của mạng IoT

Những thách thức về an toàn và bảo mật cho mạng IoT là vấn đề quan tâm lớn của người dùng, nhà sản xuất, các tổ chức và chính phủ các quốc gia, đặt ra

Trang 22

các yêu cầu về đảm bảo an toàn, bảo mật thông tin cho mạng IoT như trong Hình 1.2, gồm [5]: tính bảo mật, tính toàn vẹn, vấn đề ủy quyền và xác thực, tính sẵn sàng sử dụng thông tin dữ liệu, tính riêng tư, yêu cầu về cập nhật hệ thống

Trong đó, yêu cầu về bảo mật, tính toàn vẹn và ủy quyền xác thực đều cần đến các giải pháp mật mã hóa thông tin trên các lớp trong hệ thống mạng IoT như thể hiện trong Bảng 1.1 [5], [14], [21]

Bảng 1.1 Yêu cầu bảo mật các lớp trong mạng IoT

Cảm biến (Preception)

Mã hóa nhẹ Xác thực Thỏa thuận khóa

Bảo mật dữ liệu

Mạng (Network)

Bảo mật kết nối Bảo mật định tuyến

Thỏa thuận khóa Phát hiện xung đột Ứng dụng

(Application)

Xác thực Bảo vệ riêng tư Quản lý bảo mật thông tin

Mạng IoT có những nguy cơ bị tấn công dưới hình thức chủ động hoặc bị động theo một số kiểu phổ biến như [35]:

Tấn công tại lớp cảm biến: tấn công sao chụp các nút mạng (node

capture); tấn công từ chối dịch vụ (Denial of Service attack); tấn công từ chối việc nghỉ (Denial of sleep); tấn công từ chối dịch vụ phân tán (Distributed Denial of service); tạo danh tính giả (Fake Node/Sybil attack); tấn công lặp lại (Relay attack); đe doạ định tuyến (Routing threats); tấn công kênh kề (Silde-chanel attack); và tấn công xác thực nút khối (Mass Node Authentication) Từ

Trang 23

các rủi ro nêu trên, yêu cầu đặt ra là cần phải nâng cao an toàn bảo mật các nút trong mạng IoT bằng mã hóa dữ liệu để bảo vệ chúng trong quá trình truyền thông trên mạng

Tấn công tại lớp mạng: Trong lớp này, một số công nghệ mạng được sử

dụng cho các mạng IoT gồm các công nghệ cho liên lạc di động (2G, 3G, 4G và 5G) và mạng không dây (Bluetooth, WiMAX, WiFi, LoRaWAN, v.v.) dựa trên nền tảng IPv6 Các kiểu tấn công phổ biến như: Tấn công kẻ đứng giữa (Man-in-the-Middle - MITM), tấn công từ chối dịch vụ (DoS), nghe trộm (Eavesdropping), tấn công định tuyến (Routing attack) Các cuộc tấn công tiềm ẩn như mô tả trên của lớp mạng đặt ra các yêu cầu cần mã hóa điểm đến điểm, xác thực điểm đến điểm, quản lý và thỏa thuận khóa, định tuyến bảo mật và phát hiện xâm nhập

Tấn công tại lớp ứng dụng: Lớp này sử dụng các giao thức cho gói tin đi

qua (CoAP, MQTT, XMPP, AMQP, v.v.) và có một số dạng tấn công phổ biến như: tấn công giả mạo người dùng, tấn công vào quyền riêng tư và nhận dạng dữ liệu, tấn công vào khả năng xử lý dữ liệu lớn của hệ thống Yêu cầu bảo mật của lớp ứng dụng là rất cần thiết để đảm bảo sự toàn vẹn của thông tin dữ liệu

Việc bảo mật thông tin cho hệ thống IoT có vai trò đặc biệt quan trọng Hiện nay có một số giải pháp thường sử dụng như [1, 2, 3, 5, 6, 7, 8]:

(1) Cập nhật phần mềm: Đảm bảo rằng tất cả các thiết bị IoT luôn được cập nhật phần mềm mới nhất, bao gồm cả phần sụn (firmware) và phần mềm ứng dụng Các cập nhật thường chứa các bản vá lỗi và cải thiện tính bảo mật

(2) Mã hóa dữ liệu: Sử dụng mã hóa để bảo vệ dữ liệu khi di chuyển qua mạng và lưu trữ trên các thiết bị IoT, điều này đảm bảo rằng dữ liệu chỉ có thể đọc được bởi những người hoặc thiết bị được ủy quyền Mã hóa thường được sử dụng để bảo mật trong mạng IoT là mã hóa nhẹ và hiện có nhiều công bố khoa học đề xuất đưa ra những thuật toán mới phù hợp với môi trường thiết bị trong hệ thống mạng IoT [80], [84], [86]

Trang 24

(3) Xác thực và ủy quyền: Đảm bảo rằng chỉ các thiết bị và người dùng được xác thực và ủy quyền mới có thể truy cập vào các dịch vụ và chức năng của hệ thống IoT

(4) Phân chia mạng (Network segmentation): Chia mạng IoT thành các phân đoạn (segment) riêng biệt để giảm thiểu tác động của một cuộc tấn công trong trường hợp một phần của hệ thống bị nhiễm mã độc (malware) hay bị tấn công

(5) Giám sát hành vi: Theo dõi các hoạt động của các thiết bị IoT trong thời gian thực để phát hiện các hành vi bất thường Một giải pháp đưa ra là dựa trên độ tin cậy của các thiết bị trong mạng như được đề xuất trong [CT4] Giải pháp này hoạt động dựa trên mô hình dữ liệu phân tán tại các nút mạng, điều đó sẽ giảm việc tính toán tại thiết bị trung tâm và có khả năng đảm bảo tính bí mật khi thực hiện xác thực do không phải truyền các khóa mã trên đường truyền Tuy nhiên, với hình thức này yêu cầu các điểm trong mạng phải có khả năng xử lý tính toán tốt nên cần có nhiều cải tiến giải pháp trong [CT4] để tối ưu chi phí tính toán cho phù hợp với mô hình mạng IoT

(6) Kiểm tra an toàn thiết bị (Device hardening): Cấu hình các thiết bị IoT với mức độ bảo mật cao nhất có thể và vô hiệu hóa các tính năng không cần thiết

(7) Bảo mật mạng: Sử dụng tường lửa và các giải pháp bảo mật mạng để giảm thiểu khả năng tấn công từ bên ngoài và phân tán mã độc

(8) Sử dụng các giao thức bảo mật: Sử dụng các giao thức bảo mật, như TLS/SSL để bảo vệ dữ liệu truyền qua mạng

(9) Xây dựng hệ thống sao lưu và khôi phục: Đảm bảo có hệ thống sao lưu dữ liệu thường xuyên và kế hoạch khôi phục dự phòng trong trường hợp hệ thống gặp sự cố hoặc bị tấn công

(10) Đào tạo và nâng cao nhận thức về bảo mật: Đào tạo người dùng về các nguy cơ mất an toàn liên quan đến mạng IoT và cách phòng ngừa các cuộc

Trang 25

tấn công vào mạng để nâng cao sự cảnh giác

Bảo mật cho hệ thống mạng IoT phải là quá trình liên tục và không có giải pháp đơn lẻ nào có thể bảo vệ mạng IoT hoàn hảo, để gia tăng khả năng bảo mật trong thực tế cần kết hợp nhiều giải pháp

1.1.3 Ứng dụng mật mã nhẹ cho bảo mật trong mạng IoT

1.1.3.1 Khái niệm về mật mã

Một hệ mật mã được định nghĩa gồm 5 thành phần (P, C, K, E, D) [53]: P (Plaintext) là tập hợp hữu hạn các bản rõ có thể; C (Ciphertext) là tập hợp hữu hạn các bản mã có thể; K (Key) là tập hợp các bản khoá có thể; E (Encrytion) là tập hợp các qui tắc mã hoá có thể; D (Decrytion) là tập hợp các qui tắc giải mã có thể Khi đó quá trình mã hóa và giải mã được biểu diễn qua Hàm mã hóa: 𝐸𝐾(𝑃) = C và Hàm giải mã: 𝐷𝐾(𝐶) = P Mật mã được phân loại thành mật mã khóa đối xứng và mật mã khóa công khai [54] Đối với mật mã khóa đối xứng gồm 2 loại là mật mã dòng và mật mã khối

1.1.3.2 Mật mã nhẹ

Cơ sở của mật mã nhẹ được phát triển từ các nguyên thủy mật mã truyền thống, đó là: mã khối, mã dòng, mã xác thực thông báo và hàm băm Phương pháp tiếp câ ̣n để giải quyết các vấn đề của mâ ̣t mã nhe ̣ thường là: sử du ̣ng các thuật toán mã hóa cổ điển; sử a đổi các thuâ ̣t toán cổ điển nhằm thích nghi với các tính năng hạn chế của phần cứng thiết bị sao cho có chi phí thấp; phát triển các giải pháp chuyên biê ̣t mới trong phương pháp, thuật toán và điều khoản của phần cứng, phần mềm Mỗi phương pháp trên đều có ưu, nhươ ̣c điểm riêng, hiện có nhiều giải pháp tập trung vào phương pháp thứ ba và cho kết quả khả quan [2], [15], [44], [55], [68], [85]

Mật mã nhẹ (lightweight crypto) được thiết kế và dùng cho mục đích bảo mật, xác thực, nhận dạng và trao đổi khóa phù hợp với những môi trường tài nguyên hạn chế và được giới thiệu trong Tiêu chuẩn quốc gia TCVN 12854-1:2020 (ISO/IEC 29192-1:2012) [6] Mật mã nhẹ vẫn phải đảm bảo mức độ an

Trang 26

toàn cần thiết cho ứng dụng/phần cứng

Khi thiết kế mật mã nhẹ phải thỏa hiệp, cân đối giữa ba tiêu chí: độ an toàn, hiệu suất và chi phí cài đặt để phù hợp trong triển khai ứng dụng vào thực tiễn [43], [44]

Mật mã nhẹ thường được sử dụng cho mạng IoT [44] vì:

- Hiệu quả của việc trao đổi thông tin vì các thuật toán trong mật mã nhẹ có tính tối ưu cho phù hợp với đặc điểm của thiết bị mạng IoT;

- Khả năng ứng dụng cho các thiết bị công suất thấp;

- Những thuật toán khóa công khai đã và đang được ứng dụng rất nhiều trong thực tế nhưng để áp dụng trong những thiết bị nhúng, thiết bị hoạt động với công suất nhỏ thì không phù hợp

DSC Điện thoại không dây 64 80 355 234

Bảng 1.2 là tổng hợp một số loại mật mã nhẹ bao gồm mã dòng, mã khối và hàm băm đã được giới thiệu và ứng dụng trong bảo mật cho các thiết bị hạn chế năng lực tính toán [25]

Trong Bảng 1.2, các thông tin về khóa (Key), vector khởi tạo (IV), trạng thái lúc đầu (IS) của các hệ mã cho thấy có số bit tối đa 355 bit, kích thước

Trang 27

khóa phổ biến từ 64 đến 80 bit Đây là các giá trị tương thích với các nền tảng phần cứng có kích thước bộ xử lý và bộ nhớ cỡ 8, 16 hay 32 bit, trong khi đó thời gian để tấn công tốt nhất đối với hệ mã (cột Att.time) là 216

Nhiều nước trên thế giới hoặc các tổ chức cũng tập trung xây dựng các hệ mật mã nhẹ của riêng họ để sử dụng cho các mục đích quân sự, ngoại giao, an ninh quốc gia ví dụ như một số hệ mã nhẹ liệt kê trong Bảng 1.3

Về diện tích chip, mức tiêu thụ năng lượng, kích thước mã nguồn và mức độ sử dụng RAM đối với các hệ mã hóa nhẹ cần phải nhỏ hơn so với các tiêu chuẩn ISO hiện hành

Trang 28

Bảng 1.4 Một số tiêu chuẩn mã hóa nhẹ

Theo chuẩn ISO/IEC

quốc gia

eSTREAM portfolio (EU) Grain, Trivium, Salsa20

Theo giao thức ứng

dụng

Keccak

Trang 29

hóa/giải mã nhanh (vì thuật toán chỉ sử dụng các pháp toán dịch chuyển và phép cộng), đồng thời dễ cứng hóa (nhúng) trên các module phần cứng

Mật mã dòng (stream crypto) gồm 6 thành phần (P, C, K, L, F, E, D) trong đó [15]: P là một tập hữu hạn các bản rõ có thể; C là một tập hữu hạn các bản mã có thể; K là một tập hữu hạn các khoá có thể; L là một tập hữu hạn được gọi là bảng chữ cái; F = (f1, f2, …) là bộ tạo dòng khoá với mỗi i ≥ 1 ta có fi: K x Pi−1 → L; E là tập quy tắc mã và D là tập quy tắc giải mã Với mỗi z ∈L, tồn tại một qui tắc mã ez ∈ E và một qui tắc giải mã tương ứng dz ∈ D sao cho ez: P → C và dz: C → P là các hàm thoả mãn dz(ez(x)) = x với mọi x ∈ P Bản mã trong hệ mã dòng thu được: C = P ⊕ S, bản rõ trong hệ mã dòng được giải: P = C ⊕ S Trong đó:

Hình 1.3 Mô hình hoạt động của mật mã dòng

Theo C E Shannon [9], [15], [53]: nếu {si} là dãy ngẫu nhiên lý tưởng (tức si là các biến ngẫu nhiên độc lập đồng xác suất) thì hệ mã dòng là hoàn thiện Trong thực tế khó có thể có được dãy ngẫu nhiên lý tưởng, điều đó dẫn đến việc nghiên cứu tìm kiếm các phương pháp tạo dãy gần ngẫu nhiên (còn gọi là giả ngẫu nhiên hay tựa ngẫu nhiên) để tiếp cận tính chất của dãy ngẫu

Trang 30

nhiên lý tưởng Dãy {si} được tạo bằng các thuật toán toán học được gọi là dãy giả ngẫu nhiên

Mật mã dòng được phân chia thành mã đồng bộ, mã tự đồng bộ và mã sử dụng một lần [15]:

- Mã dòng đồng bộ (Synchronous Stream Ciphers-SSSC) có dòng khóa {ki}, i≥1 được sinh ra độc lập hoàn toàn với bản rõ và bản mã gọi Quá trình mã hóa được mô tả như sau: ᵹi+1 = f(ᵹi, k); zi = g(ᵹi, k); ci = h(zi, mi) với i=1, 2, 3,…Trong đó: ᵹi là trạng thái thứ i, với ᵹ0 là trạng thái ban đầu và được xác định từ khóa k; f là hàm xác định trạng thái tiếp theo ᵹi+1 từ khóa k và trạng thái trước đó; g là hàm sinh dòng khóa zi từ khóa k và trạng thái ᵹi; h là hàm đầu ra ci (bản mã) từ dòng khóa zi và dòng bản rõ mi để tạo ra dòng bản mã

- Mã dòng tự đồng bộ (Self Synchronous Stream Ciphers-SSSC) có dòng khóa được tạo ra như một hàm của khóa K và một số cố định các bit của bản mã được tạo ra từ ngay bước trước đó, được mô tả như sau: ᵹ𝑖+1 =(𝑐𝑖−𝑡, 𝑐𝑖−𝑡+1,𝑐𝑖−𝑡+2,… , 𝑐𝑖−1); 𝑧𝑖 = 𝑔(ᵹ𝑖, 𝑘) và 𝑐𝑖 = ℎ(𝑧𝑖, 𝑚𝑖) với t <i, t là số cho trước và cố định Trong đó: ᵹ𝑖 𝑙à trạng thái thứ i, trong đó ᵹ0 =(𝑐−𝑡, 𝑐−𝑡+1,𝑐−𝑡+2,… , 𝑐−1) là trạng thái ban đầu (không bí mật); k là khóa (mầm khóa); g là hàm sinh dòng khóa 𝑧𝑖 từ khóa k và trạng thái ᵹ𝑖; h là hàm đầu ra 𝑐𝑖 từ dòng khóa 𝑧𝑖 và dòng bản rõ 𝑚𝑖

- Mật mã sử dụng một lần (One-time Pad ciphers - OTP): Cho m = 𝑚1𝑚2𝑚3… 𝑚𝑛 là một dãy bit của bản rõ (𝑚𝑖 ∈ {0,1}, 𝑖 = 1, 𝑛̅̅̅̅̅) Với: k = 𝑘1𝑘2𝑘3… 𝑘𝑛 là dòng bit của khóa (𝑘𝑖 ∈ {0,1}, 𝑖 = 1 n, ), khi đó dòng bit bản mã là: 𝑐𝑖 = 𝑚𝑖 ⊕ 𝑘𝑖, i=1…n,…Thuật toán này khóa bí mật chỉ sử dụng một lần và được tạo ra hoàn toàn ngẫu nhiên Hiện có nhiều cải tiến thuật toán này để sử dụng trong thực tiễn bằng việc xây dựng dãy khóa giả ngẫu nhiên trên cơ sở dãy ký tự cho trước, điều đó có thể loại bỏ được đòi hỏi khối lượng khóa vô hạn [11] Dãy giả ngẫu nhiên dưới sự điều khiển của một khóa bí mật được tạo

Trang 31

bởi một thuật toán tất định được gọi là bộ tạo khóa dòng

Bảng 1.5 tổng hợp một số loại mật mã dòng nhẹ phổ biến được ứng dụng trong thực tiễn do Alex Biryukov và cộng sự giới thiệu trong [25] Đây là những hệ mã dòng nhẹ được ứng dụng bảo mật trong các hệ thống có hạn chế về không gian bộ nhớ và tốc độ tính toán

Trang 32

(2) Nghiên cứu xây dựng hệ mật mã dòng có tính nhẹ đã được nhiều cá nhân, tổ chức đầu tư nghiên cứu ứng dụng trong mạng IoT Với một hệ mã dòng, giả thiết bản rõ đã biết tương đương với việc cho phép thám mã truy nhập tới dòng khóa Mật mã dòng cũng được xác định trong Tiêu chuẩn quốc gia TCVN [10] Mã dòng phù hợp cho mã hoá dữ liệu lớn nhưng lại được xử lý bởi các thiết bị hạn chế năng lực tính toán hoặc hạn chế bộ nhớ Mạng IoT gồm các thiết bị như cảm biến, thẻ thông minh RFID, camera giám sát, hay thiết bị chăm sóc sức khoẻ, … có kích thước vật lý nhỏ gọn và cấu hình phần cứng thấp để phù hợp với các tác vụ riêng biệt hoặc sử dụng trong lĩnh vực an ninh, quốc phòng Tốc độ của mã dòng thường nhanh hơn các loại mã khác, kể cả mã khối và dễ cài đặt trong thiết bị phần cứng, có ưu việt khi trong kênh thông tin có sai số cao (kênh có nhiễu), đặc biệt loại mã này thường được sử dụng trong các môi trường yêu cầu tính bảo mật cao, tốc độ mã hóa nhanh, dễ cài đặt và cứng hóa, hoặc trong lĩnh vực an ninh, quốc phòng

(3) Để cho hệ thống an toàn thì phải đảm bảo không thể dự đoán được bất kỳ vị trí nào của dòng khóa với xác suất cao hơn dự đoán một dãy ngẫu nhiên thực sự, bất kể số lượng các ký tự khóa dòng đã quan sát được là bao nhiêu Nếu có thể tạo được một dãy giả ngẫu nhiên tốt thì việc sử dụng khoá giả ngẫu nhiên sẽ rất thuận lợi đối với những máy mã hoặc những hệ thống mật mã tự động với tốc độ mã hóa nhanh Mặt khác, việc quản lý, phân phối khoá giả ngẫu nhiên cũng sẽ thuận lợi do đặc tính của quá trình tạo ra chúng Việc này đặt ra hướng nghiên cứu đưa ra giải pháp hiệu quả để tạo dòng khóa cho hệ mật mã dòng có tính ngẫu nhiên cao, song phải đơn giản, dễ thực hiện thông qua các hàm toán học

(4) Mật mã dòng thực hiện mã hoá từng ký tự riêng biệt (các bit nhị phân) của văn bản chỉ một lần, do vậy cần có bộ tạo dãy bit để thực hiện mã hóa/giải mã Thanh ghi dịch LFSR được ứng dụng nhiều để tạo chuỗi bit do khả năng tạo ra chuỗi có chu kỳ lớn, dễ cài đặt, tình toán nhanh Luận án sẽ nghiên cứu

Trang 33

và đề xuất một hệ mật mã nhẹ trên cơ sở mật mã dòng cho IoT, trong đó tập trung xây dựng bộ sinh chuỗi bit giả ngẫu nhiên sử dụng thanh ghi LFSR

1.2 Thanh ghi dịch phản hồi tuyến tính

1.2.1 Cơ sở toán học

Gọi GF(p)[x] là tập hợp các đa thức cấp n tùy ý có dạng: f(x) = a0 + a1x + a2x2 + ⋯ + xn, trong đó ai ∈ GF(p), i = 0,1, … , n − 1 và p là số nguyên tố, khi đó ta có các định nghĩa sau:

Định nghĩa 1.1 [15]: Một đa thức f(x) ∈ GF(p)[x] có cấp n được gọi là

bất khả quy trong trường GF(p) nếu f(x) không thể phân tích thành tích các đa thức không tầm thường

Định nghĩa 1.2 [15]: Đa thức bất khả quy f(x) ∈ GF(p) có cấp n được

gọi là đa thức nguyên thủy nếu và chỉ nếu số nguyên dương m bé nhất sao cho xm-1 chia hết cho f(x) là m = pn-1

Định nghĩa 1.3 [1]: Một thanh ghi dịch phản hồi tuyến tính (Linear

Feedback Shift Register - LFSR) là bộ gồm 2 thành phần <L, C(x)> Trong đó: L là cấp của đa thức C(x) còn C(x) là đa thức liên kết trong GF(2), có dạng: a0x0+ a1x1+…+aLxL, với ai ∈ GF(2) với i=0, L̅̅̅̅̅

Hình 1.4 Mô hình thanh ghi dịch phản hồi tuyến tính

Một thanh ghi dịch LFSR độ dài L gồm có L ô được đánh số từ 0 đến 1 trong đó mỗi ô có 2 trạng thái và là đơn vị lưu trữ nhị phân (0 và 1) của thanh ghi dịch LFSR, dữ liệu sẽ là dạng nhị phân có độ dài bằng độ dài thanh ghi dịch và được mô tả như trong Hình 1.4

L-Với S = (an−1,an−2,…, a0) ∈ GF(2n) là trạng thái ban đầu của LFSR và f(𝑥0, 𝑥1, 𝑥2, … , 𝑥𝑛−1)

Trang 34

f(x0, x1,…, xn−1) là hàm phản hồi (đa thức phản hồi) Tại mỗi thời điểm xung đồng hồ, các bit được dịch chuyển sang bên phải ngoại trừ 𝑎0 để tạo chuỗi đầu ra, một bit mới được tạo ra từ việc kết hợp giữa giá trị trong f() và S sẽ được phản hồi vào bit bên trái nhất tạo thành giá trị đầu vào mới của thanh ghi LFSR

Một thanh ghi LFSR được khởi tạo với mầm khóa S, giá trị đầu ra tiếp theo được tạo ra bằng cách tính tổng XOR của các thành phần trước đó với những vị trí phản hồi tương ứng theo công thức sau [70]:

S𝑛 ≡ 𝑎𝑛−1𝑥𝑛−1+ ⋯ + 𝑎1𝑥1 + 𝑎0𝑥0 𝑚𝑜𝑑 2 S𝑛+1 ≡ 𝑎𝑛𝑥𝑛−1+ ⋯ + 𝑎2𝑥1+ 𝑎1𝑥0 𝑚𝑜𝑑 2 Tổng quát:

S𝑛+1 ≡ ∑𝑛−1𝑖=0 𝑎𝑖−1 𝑥𝑖 𝑚𝑜𝑑 2 (1.1) Vì số trạng thái hồi quy là hữu hạn nên dãy được tạo ra bởi LFSR sẽ lặp lại sau một khoảng hữu hạn, do vậy độ dài của chuỗi được xác định bởi các hệ số phản hồi và giá trị mầm khóa Sau mỗi chu kỳ liên tiếp cộng với thanh ghi LFSR sẽ tạo ra một chuỗi nhị phân đầu ra có dạng b = 𝑎0,𝑎1,…, (chuỗi tuỳ ý)

Nếu hàm phản hồi f là tuyến tính thì chuỗi đầu ra gọi là chuỗi tuyến tính, ngược lại nó được gọi là chuỗi phi tuyến tính Để dãy b là dãy nhị phân thì công thức (1.1) được biểu diễn dưới dạng đa thức f(x) = xn + an−1xn−1+ ⋯ + a1x + a0 và là đa thức đặc trưng của thanh ghi LSFR

Định nghĩa 1.4 [15]: Một thanh ghi LFSR được ký hiệu là <L, C(x)>,

trong đó C(x) = 1 + C1x+ C2x2+…+ CLxL ∈ GF(2) là một đa thức với hệ số Ci ∈ GF(2) và i=0, 1, 2,…, L Khi đó thanh ghi LFSR được gọi là không suy biến nếu cấp của C(x) là L, tức là giá trị CL = 1 và đa thức C(x) được gọi là đa

thức liên kết cấp L

Định lý 1.1 [53]: Ta xét một đa thức liên kết C(x) ∈ GF(2) có cấp L:

(i) Nếu C(x) là đa thức bất khả quy trong trường GF(2) khi đó mỗi một 2𝐿 − 1 trạng thái ban đầu của một thanh ghi LFSR không suy biến sẽ sinh ra

Trang 35

một dãy đầu ra có chu kỳ bằng số nguyên dương nhỏ nhất n là ước của 2𝐿 − 1 (ii) Nếu C(x) là đa thức nguyên thủy khi đó mỗi một 2𝐿 - 1 trạng thái ban đầu khác 0 của một <L, C(x)> sẽ sinh ra dãy đầu ra có chu kỳ cực đại là 2𝐿 - 1

Định nghĩa 1.5 [15]: Nếu C(x) ∈ GF(2)[x] là một đa thức nguyên thủy cấp

L, khi đó <L, C(x)> được gọi là thanh ghi LFSR có độ dài cực đại Đầu ra <L, C(x)> đối với trạng thái khởi tạo khác 0 được gọi là m-dãy (maximum sequence)

Định lý 1.2 [53]: Tính chất thống kê của m-dãy Cho s là một m-dãy

được sinh bởi một thanh ghi LFSR cực đại cấp L:

(i) Cho k là một số nguyên, 1 ≤ k ≤ L và gọi 𝑠 là chuỗi con bất kỳ của s độ dài 2𝐿 + 𝑘 − 2 Khi đó mỗi dãy khác không độ dài k xuất hiện chính xác 2𝐿−𝑘 lần như là một chuỗi con của 𝑠 Hơn nữa, chuỗi không độ dài k xuất hiện chính xác 2𝐿−𝑘 -1 lần như là một chuỗi con của 𝑠 Nói cách khác, phân bố các mẫu có độ dài cố định tối đa là L gần như đồng đều

(ii) s thỏa mãn các tiên đề ngẫu nhiên Golomb Nghĩa là, mỗi m-dãy cũng là một pn-dãy

si ∈GF(2), i∈[0, L-1] thì dãy [sL−1, sL−2,…,s1, s0] sẽ được gọi là trạng thái ban đầu (vector khởi tạo) của thanh ghi LFSR

sL−2,…,s1, s0] khi đó dãy đầu ra S= s0, s1, s2, … được xác định duy nhất bởi công thức truy hồi: sj = (c1sj−1 + c2sj−2+ ⋯ + cLsj−L) mod 2 với mọi j ≥ L

Trang 36

Định lý 1.4 [53]: Giả sử R1, R2, … , RK là K thanh ghi dịch phản hồi phi tuyến với mỗi Ri là không suy biến và có độ dài là Li với i=1,2,…K Đa thức liên kết tương ứng là những đa thức nguyên thủy cấp Li Khi đó, dãy đầu ra sẽ có chu kỳ là: 2L1(2L2 -1)(2L2 -1)…(2LK -1)

Định lý 1.4 được chứng minh trong [18]

Bảng 1.6 Trạng thái thanh ghi dịch LFSR với đa thức liên kết bậc 4

1.2.2 Sinh chuỗi bit bằng thanh ghi dịch phản hồi tuyến tính

Thanh ghi LFSR được ứng dụng rộng rãi trong việc tạo ra dòng bit giả ngẫu nhiên có chu kỳ lớn, với các tính chất thống kê rất tốt, các thuật toán được thực hiện bởi các phép toán số học đơn giản nên thời gian tính toán nhanh [16]

Trang 37

Tuy nhiên, trong nhiều nghiên cứu [12], [41], [43], [54], [66] đã chỉ ra nếu chuỗi bit đầu ra của bộ tạo bit giả ngẫu nhiên chỉ sử dụng một thanh ghi LFSR thì độ phức tạp không lớn nên dễ bị đoán nhận ra khóa ban đầu (seed) và có thể bị tấn công để phá vỡ tính bảo mật Để chuỗi bit sinh ra mạnh về mật mã cần kết hợp nhiều thanh ghi LFSR với nhau nhằm làm tăng độ khó cho các tấn công vào khóa của mật mã dòng [65]

Chuỗi đầu ra của bộ tạo dòng khóa phi tuyến thường có các thuộc tính như: chu kỳ dài, độ phức tạp tuyến tính lớn và các thuộc tính thống kê tốt Đây là những thuộc tính quan trọng để cho một chuỗi bit được tạo ra là ngẫu nhiên khi sử dụng cho mã dòng [66], [67] Luận án sẽ nghiên cứu cách thức thiết kế một bộ tạo số giả ngẫu nhiên sử dụng kết hợp nhiều thanh ghi LFSR để cho ra dòng bit đảm bảo tính ngẫu nhiên, độ phức tạp phi tuyến tính lớn, chống lại được các tấn công tương quan, tấn công đại số, … tăng cường mức độ an toàn khi sử dụng cho thiết bị trong mạng IoT

Định nghĩa 1.7 [53]: Một bộ tạo tổ hợp phi tuyến (nonlinear

combination generator - NLCG) bao gồm: n thanh ghi LFSR được đánh số 0, 1, , n−1; một hàm tổ hợp Boolean phi tuyến tính f(l0, l1, … , ln−1); và một đồng hồ điều khiển chuyển động của dữ liệu

Trong mỗi đơn vị thời gian, các hoạt động sau đây sẽ được thực hiện: (i) Thanh ghi LFSR Li được cập nhật trạng thái tiếp theo với 0 ≤ i ≤ n – 1 và,

(ii) Kết quả của hàm 𝑓(𝑙0, 𝑙1, … , 𝑙𝑛−1) tạo thành một phần của chuỗi đầu ra, với 𝑙𝑖 là đầu ra của LFSR thứ i

Mọi hàm Boolean 𝑓(𝑙1, 𝑙2, … , 𝑙𝑛) có thể được viết dưới dạng tổng modulo 2 của các tích phân biệt bậc m của các biến, với 0 ≤ m ≤ n, được gọi là dạng chuẩn tắc đại số (ANF) của f Bậc phi tuyến tính của f là bậc lớn nhất của các số hạng xuất hiện ở dạng chuẩn tắc đại số của nó

Hàm phản hồi l của thanh ghi LFSR có thể được biểu diễn dưới dạng ma

Trang 38

trận vuông 𝐿𝑙 kích thước n trên trường hữu hạn GF(2) Khi đó có thể thu được trạng thái 𝑆𝑖+1 từ trạng thái 𝑆𝑖 và là kết quả của phép nhân: 𝑆𝑖 ∗ 𝐿𝑙

Hình 1.5 Bộ tạo chuỗi kết hợp phi tuyến

Định lý 1.5 [53]: Nếu n thanh ghi dịch phản hồi LFSR có độ dài tối đa

tương ứng là 𝑙1, 𝑙2, … , 𝑙𝑛 được sử dụng cùng với hàm Boolean f, thì độ phức tạp tuyến tính của dòng bit khóa là: 𝑓(𝑙1, 𝑙2, … , 𝑙𝑛) = 𝑎0+ 𝑎1𝑙1+ 𝑎2𝑙2 + ⋯ + 𝑎𝑛𝑙𝑛+ 𝑎1,2𝑙1𝑙2 + … + 𝑎1,2,…,𝑛𝑙1𝑙2… 𝑙𝑛 Trong đó: 𝑎0, 𝑎1, … , 𝑎𝑛 là hệ số trong chuẩn tắc đại số của hàm f Giá trị của độ phức tạp tuyến tính được tính trong trường số nguyên dương Bậc phi tuyến của hàm f là số lớn nhất của các thành phần xuất hiện trong biểu thức chuẩn tắc đại số, bậc phi tuyến lớn nhất của hàm f có n biến chính là giá trị n

𝑥4𝑥5+ 𝑥1𝑥3𝑥4𝑥5 sẽ có bậc phi tuyến của f là 4 vì có 4 biến xuất hiện trong 1 thành phần của hàm f: x1x3x4x5; hàm f này có bậc cao nhất là 5

dài tương ứng là 𝐿1, 𝐿2, … , 𝐿𝑛, trong đó gcd (𝐿𝑖, 𝐿𝑗) = 1, với i ≠ j được sử dụng trong bộ tạo số kết hợp phi tuyến Nếu các hàm liên kết của các LFSR và hàm kết hợp f được xác định thì độ dài chuỗi bit khóa là ∏𝑛𝑖=1(2𝐿𝑖 − 1)

Như vậy, theo Định lý 1.6 chu kỳ của chuỗi bit do các thanh ghi LFSR là tích của các chu kỳ của các thanh ghi bộ phận tạo nên bộ tạo số giả ngẫu nhiên Nếu các thanh ghi bộ phận có độ dài lớn thì chu kỳ của bộ tạo số giả

LFSR 1 LFSR 2

LFSR n

f()

Chuỗi khóa

Trang 39

ngẫu nhiên sẽ rất lớn và sẽ an toàn với kiểu tấn công tương quan, tấn công vét cạn để tìm ra khóa ban đầu (mầm khóa)

Thật vậy, giả sử rằng có một sự tương quan giữa chuỗi bit của bộ tạo số và chuỗi bit được tạo ra từ 𝑅1, với xác xuất tương quan là 𝑝 ˃ 1

2 Nếu biết một đoạn đủ dài của dòng khóa, trạng thái khởi tạo của 𝑅1 có thể được suy ra bằng cách đếm số lần trùng khớp giữa dòng khóa và tất cả các lần dịch chuyển có thể có của dòng khóa chuỗi đầu ra của 𝑅1 cho đến khi con số này phù hợp với xác suất tương quan 𝑝 Trong điều kiện này, việc tìm trạng thái ban đầu của 𝑅1sẽ mất nhiều nhất 2𝐿1 − 1 lần thử Trường hợp đặc biệt với 𝐿1 = 𝐿2 = ⋯ =𝐿𝑛 thì ta có chu kỳ đầu ra cực đại là (2𝐿𝑖− 1)𝑛 Trong đó, n là số các thanh ghi dịch và các 𝑅𝑖 là không suy biến với i = 1, 2,…,n

1.2.3 Một số nghiên cứu liên quan

Trong phần này, luận án tổng hợp, phân tích một số nghiên cứu về hệ mật mã nhẹ sử dụng thanh ghi dịch LFSR đã được công bố ứng dụng trong các thiết bị có năng lực tính toán thấp như thiết bị mạng IoT Trên cơ sở phân tích, đánh giá các thuật toán này luận án rút ra những vấn đề cần tiếp tục nghiên cứu Cụ thể như sau:

(1) Francois Arnault và cộng sự đã có công bố “A New Approach for FCSRs” [22] đề xuất một cách tiếp cận mới sử dụng thanh ghi dịch mang (The Feedback with Carry Shift Registers - FCSR) thay cho việc sử dụng thanh ghi dịch phản hồi, gồm các vòng tròn FCSR để xây dựng bộ tạo khóa cho thuật toán mã hóa đối xứng Biểu diễn này dựa trên ma trận kề của đồ thị tự động Một vòng FCSR có thể được xem như là một tổng quát của biểu diễn dãy Fibonacci và dãy Galois Các vòng FCSR có nhiều ưu điểm hơn các tính chất đã giới thiệu của các dãy Galois và Fibonnacci dựa trên FCSR và chống lại các kiểu tấn công trước đó

(2) Mật mã dòng hướng bit WG-16 là một biến thể mới của mật mã dòng

Trang 40

WG nổi tiếng do Xinxin Fan và Guang Gong đề xuất [37] WG-16 thừa hưởng các thuộc tính ngẫu nhiên tốt của họ mật mã dòng WG như chu kỳ, sự cân bằng, sự tương quan lý tưởng cấp hai, phân phối t-tupe lý tưởng và độ phức tạp tuyến tính chính xác Hơn nữa, WG-16 có thể chống lại các cuộc tấn công phổ biến nhất tấn công vào mật mã dòng, bao gồm tấn công đại số, tấn công tương quan, tấn công khác biệt, tấn công phân biệt, tấn công chuyển đổi Fourier rời rạc, và tấn công thương mại Do đó, WG-16 được đề xuất để đảm bảo truyền thông trong các mạng 4G-LTE hiện đang được sử dụng nhiều Mã hóa dòng WG-16 có đầu vào là một khóa 128-bit, một véc tơ IV 128-bit và tạo ra một bit dòng khoá cho mỗi chu kỳ đồng hồ Dòng khoá có thể được sử dụng để mã hóa/giải mã thông tin liên lạc giữa một điện thoại di động và một trạm cơ sở (base station) trong các mạng 4G-LTE Mã dòng WG16 bao gồm một thanh ghi LFSR có 32 trạng thái với đa thức thông tin phản hồi l(x) tiếp nối là một mô đun chuyển đổi WG-16 với hệ số thập phân (decimation) d = 1057 nên nó có thể được coi là bộ lọc phi tuyến tính trên trường hữu hạn F216 Tuy nhiên, với đầu vào là 128 bit khóa và 128 bit cho vector IV là lớn so với những thiết bị mạng IoT hạn chế năng lực tính toán và hạn chế về bộ nhớ để lưu trữ Bên cạnh đó thuật toán sử dụng 1 thanh ghi LFSR có độ dài 32 không phải là số nguyên tố nên có thể dẫn đến có chu kỳ con

(3) ACORN là thuật toán mã hóa hạng nhẹ có xác thực với dữ liệu liên kết được giới thiệu bởi Hongjun Wu - nhà mật mã người Singapore [67] ACORN có cấu trúc mã dòng sử dụng khóa, véc-tơ khởi tạo có kích thước 128 bit, độ dài của bản rõ P tối đa 264 bit Đầu vào của thuật toán có thể bao gồm

dữ liệu liên kết AD có kích thước adlen bit (0 ≤ adlen < 264), dữ liệu liên kết này không yêu cầu phải đảm bảo tính bí mật, nên không được mã hóa, tuy nhiên, cần đảm bảo tính toàn vẹn cho các dữ liệu này Thuật toán ACORN được thiết kế để đảm bảo mức độ an toàn 128 bit trong cả tính bí mật và xác thực Đây là độ dài sẽ gây khó khăn cho các thiết bị IoT hạn chế năng lực tính toán

Ngày đăng: 07/06/2024, 04:09

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w