Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.56 MB, 158 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
<b>VIỆN KHOA HỌC VÀ CÔNG NGHỆ QUÂN SỰ </b>
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2"><b>VIỆN KHOA HỌC VÀ CƠNG NGHỆ QN SỰ </b>
<b>LUẬN ÁN TIẾN SĨ TỐN HỌC </b>
<b><small>NGƯỜI HƯỚNG DẪN KHOA HỌC: 1. PGS.TS NGUYỄN LINH GIANG 2. TS NGUYỄN NGỌC CƯƠNG </small></b>
<b>HÀ NỘI, 2024 </b>
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3"><b>LỜI CAM ĐOAN</b>
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 đủ.
<i>Hà Nội, ngày tháng năm 2024 </i>
<b>Tác giả luận án </b>
<b> Trần Xuân Ban </b>
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4"><b>LỜI CẢM ƠN </b>
<i>Trong quá trình thực hiện luận án tiến sĩ với đề tài: “Nghiên cứu, phát </i>
<i>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: </i>
- 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ệ qn 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 q trình làm luận án.
<b>Tác giả luận án Trần Xuân Ban </b>
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="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ở tố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
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="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 tốn mã hóa dòng nhẹ ... 68
2.3.1. Bộ sinh bit giả ngẫu nhiên ... 68
2.3.2. Q 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
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7"><b>DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT </b>
| Phép toán chia hết || Phép toán OR ≡ Dấu đồng dư
∤ Phép tốn khơng chia hết ⊕ Phép tố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 tố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)
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="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/th 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 tố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
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="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à tồ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)
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">Bảng 2.3. Giá trị các hàm chuyển đổi g1và g2 ... 63
<i>Bảng 2.4. Bảng vector bit của khóa SK1 ... 71</i>
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 tố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
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11"><b>DANH MỤC CÁC HÌNH VẼ </b>
<b>Trang </b>
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. u cầu an tồ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
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12"><b>MỞ ĐẦU </b>
<b>1. Tính cấp thiết của đề tài luận án </b>
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 tố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 tồ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 tồ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 tồ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 tồ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
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="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ợ,... Ngồ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 tồ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 tốn mã hóa hạng nhẹ trên
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="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 tốn và pin do đó, cần phải sử dụng các thuật tố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 tố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 tố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 tố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 tố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 tốn mã hóa hạng nhẹ là một xu hướng không thể tránh khỏi để đảm bảo an tồ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
<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 </i>
<i>cho các thiết bị trong mạng IoT” có ý nghĩa quan trọng trong thực tiễn và lý </i>
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.
<b>2. Mục tiêu nghiên cứu </b>
Nghiên cứu phát triển thuật tố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.
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15"><b>3. Đối tượng, phạm vi nghiên cứu </b>
Đố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ở tố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 tố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 tố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.
<b>4. Nội dung nghiên cứu </b>
(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 tố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ì 2<small>5</small> = 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 tố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 tốn mã hóa dịng gồm 2 phần:
- Phần khóa dài hạn ký hiệu là 𝑆𝐾<sub>1</sub> đượ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 tốn cho
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="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à 𝑆𝐾<sub>2</sub> đượ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 𝑆𝐾<sub>1</sub> và 𝑆𝐾<sub>2</sub> 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 𝑆𝐾<sub>1</sub>, 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 𝑆𝐾<sub>2</sub>, 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.
<b>5. Phương pháp nghiên cứu </b>
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 tốn, chứng minh theo cơ sở tố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.
<b>6. Ý nghĩa khoa học và thực tiễn </b>
- 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 tốn mã hóa nhẹ để đảm bảo an ninh, an toàn và bảo mật cho mạng IoT.
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="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 tồn cho thơng tin mạng IoT; ứng dụng trong đảm bảo an ninh, an tồ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 tồn thơng tin trên hệ thống mạng máy tính và dữ liệu người dùng. Ngồ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à ngồi lực lượng Cơng an; có thể cài đặt để cứng hóa thuật tố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 tố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).
<b>7. Bố cục luận án </b>
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:
<i>Chương 1: An tồn bảo mật mạng Internet of Things. Đây là chương cơ </i>
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.
<i>Chương 2: Đề xuất thuật tốn mã hóa nhẹ trên cơ sở thanh ghi dịch phản </i>
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ế
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="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 tốn mã dịng dùng cho bảo mật trong mạng IoT.
<i>Chương 3: Đề xuất kỹ thuật trao đổi khóa. Trong chương này, luận án </i>
đư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 tố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ã.
</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19"><b>Chương 1 </b>
<b>AN TOÀN BẢO MẬT MẠNG INTERNET OF THINGS </b>
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 tồn bảo mật thông tin cho mạng IoT bằng cách xây dựng thuật tố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.
<b>1.1. Tổng quan mạng Internet of Things và giải pháp bảo mật </b>
<i><b>1.1.1. Khái quát về mạng Internet of Things và ứng dụng </b></i>
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
<i>và chưa thống nhất. Trong luận án, cách hiểu chung về mạng IoT là: Mạng IoT </i>
<i>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. </i>
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
</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="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
</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">nghĩa với tăng lưu lượng kết nối, tăng nguy cơ mất an tồ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.
<i><b>1.1.2. Nguy cơ mất an toàn trong mạng Internet of Things </b></i>
Theo khoản 1 Điều 3 Luật an tồn thơng tin mạng năm 2015 khái niệm
<i>an tồn thơng tin: “An tồn thơng tin mạng là sự bảo vệ thông tin, hệ thống </i>
<i>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 </i>
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 tồn thơng tin.
Hình 1.2. 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
</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">các yêu cầu về đảm bảo an tồ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 tồ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 đó, u cầu về bảo mật, tính tồ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]:
<i>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 </i>
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ừ
</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="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 q trình truyền thơng trên mạng.
<i>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ử </i>
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.
<i>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 </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ự tồ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].
</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="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 tố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 tố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 tốn cho phù hợp với mơ hình mạng IoT.
(6) Kiểm tra an tồ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 ngồ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
</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="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à q 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 hồ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.
<i><b>1.1.3. Ứng dụng mật mã nhẹ cho bảo mật trong mạng IoT </b></i>
<i>1.1.3.1. Khái niệm về mật mã </i>
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 khố có thể; E (Encrytion) là tập hợp các qui tắc mã hố có thể; D (Decrytion) là tập hợp các qui tắc giải mã có thể. Khi đó q trình mã hóa và giải mã được biểu diễn qua Hàm mã hóa: 𝐸<sub>𝐾</sub>(𝑃) = C và Hàm giải mã: 𝐷<sub>𝐾</sub>(𝐶) = 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.
<i>1.1.3.2. Mật mã nhẹ </i>
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 tố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 ngun 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
</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="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 tồ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 tố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 tố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 2<sup>34</sup>
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 tố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
</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="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à 2<sup>16</sup>.
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.
</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">Bảng 1.4. Một số tiêu chuẩn mã hóa nhẹ
<b>Theo chuẩn ISO/IEC </b>
<b>quốc gia </b>
eSTREAM portfolio (EU) Grain, Trivium, Salsa20
<b>Theo giao thức ứng </b>
<b>dụng </b>
Keccak
</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="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 khố có thể; L là một tập hữu hạn được gọi là bảng chữ cái; F = (f<sub>1</sub>, f<sub>2</sub>, …) là bộ tạo dịng khố với mỗi i ≥ 1 ta có f<sub>i</sub>: K x P<sup>i−1</sup> → 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ã e<sub>z</sub> ∈ E và một qui tắc giải mã tương ứng d<sub>z</sub> ∈ D sao cho e<sub>z</sub>: P → C và d<sub>z</sub>: C → P là các hàm thoả mãn d<sub>z</sub>(e<sub>z</sub>(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 {s<sub>i</sub>} là dãy ngẫu nhiên lý tưởng (tức s<sub>i</sub> là các biến ngẫu nhiên độc lập đồng xác suất) thì hệ mã dịng là hồ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
</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">nhiên lý tưởng. Dãy {s<sub>i</sub>} đượ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 {k<sub>i</sub>}, i≥1 được sinh ra độc lập hoàn toàn với bản rõ và bản mã gọi. Q trình mã hóa được mơ tả như sau: ᵹ<sub>i+1</sub> = f(ᵹ<sub>i</sub>, k); z<sub>i</sub> = g(ᵹ<sub>i</sub>, k); c<sub>i</sub> = h(z<sub>i</sub>, m<sub>i</sub>) với i=1, 2, 3,…Trong đó: ᵹ<sub>i</sub> là trạng thái thứ i, với ᵹ<sub>0</sub> 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 ᵹ<sub>i+1</sub> từ khóa k và trạng thái trước đó; g là hàm sinh dịng khóa z<sub>i</sub> từ khóa k và trạng thái ᵹ<sub>i</sub>; h là hàm đầu ra c<sub>i</sub> (bản mã) từ dịng khóa z<sub>i</sub> và dịng bản rõ m<sub>i</sub> để 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: ᵹ<sub>𝑖+1</sub> =(𝑐<sub>𝑖−𝑡</sub>, 𝑐<sub>𝑖−𝑡+1,</sub>𝑐<sub>𝑖−𝑡+2,</sub>… , 𝑐<sub>𝑖−1</sub>); 𝑧<sub>𝑖</sub> = 𝑔(ᵹ<sub>𝑖</sub>, 𝑘) và 𝑐<sub>𝑖</sub> = ℎ(𝑧<sub>𝑖</sub>, 𝑚<sub>𝑖</sub>) với t <i, t là số cho trước và cố định. Trong đó: ᵹ<sub>𝑖</sub> 𝑙à trạng thái thứ i, trong đó ᵹ<sub>0</sub> =(𝑐<sub>−𝑡</sub>, 𝑐<sub>−𝑡+1,</sub>𝑐<sub>−𝑡+2,</sub>… , 𝑐<sub>−1</sub>) 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 𝑧<sub>𝑖</sub> từ khóa k và trạng thái ᵹ<sub>𝑖</sub>; h là hàm đầu ra 𝑐<sub>𝑖</sub> từ dịng khóa 𝑧<sub>𝑖</sub> và dịng bản rõ 𝑚<sub>𝑖</sub>.
- Mật mã sử dụng một lần (One-time Pad ciphers - OTP): Cho m = 𝑚<sub>1</sub>𝑚<sub>2</sub>𝑚<sub>3</sub>… 𝑚<sub>𝑛</sub> là một dãy bit của bản rõ (𝑚<sub>𝑖</sub> ∈ {0,1}, 𝑖 = 1, 𝑛̅̅̅̅̅). Với: k = 𝑘<sub>1</sub>𝑘<sub>2</sub>𝑘<sub>3</sub>… 𝑘<sub>𝑛</sub> là dịng bit của khóa (𝑘<sub>𝑖</sub> ∈ {0,1}, 𝑖 = 1..n,...), khi đó dịng bit bản mã là: 𝑐<sub>𝑖</sub> = 𝑚<sub>𝑖</sub> ⊕ 𝑘<sub>𝑖</sub>, i=1…n,…Thuật tố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 tố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
</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="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 tốn.
</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="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ã hố 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 tố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 tồn thì phải đảm bảo khơng thể dự đố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 q 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 tốn học.
(4) Mật mã dịng thực hiện mã hố 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 tốn nhanh. Luận án sẽ nghiên cứu
</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="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.
<b>1.2. Thanh ghi dịch phản hồi tuyến tính </b>
<i><b>1.2.1. Cơ sở toán học </b></i>
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) = a<sub>0</sub> + a<sub>1</sub>x + a<sub>2</sub>x<sup>2</sup> + ⋯ + x<sup>n</sup>, trong đó a<sub>i</sub> ∈ GF(p), i = 0,1, … , n − 1 và p là số nguyên tố, khi đó ta có các định nghĩa sau:
<i><b>Đị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></i>
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.
<i><b>Định nghĩa 1.2 [15]: Đa thức bất khả quy f(x) ∈ GF(p) có cấp n được </b></i>
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 x<sup>m</sup>-1 chia hết cho f(x) là m = p<sup>n</sup>-1.
<i><b>Định nghĩa 1.3 [1]: Một thanh ghi dịch phản hồi tuyến tính (Linear </b></i>
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: a<sub>0</sub>x<sub>0</sub>+ a<sub>1</sub>x<sub>1</sub>+…+a<sub>L</sub>x<sub>L</sub>, với a<sub>i</sub> ∈ 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 = (a<sub>n−1</sub>,a<sub>n−2</sub>,…, a<sub>0</sub>) ∈ GF(2<sup>n</sup>) là trạng thái ban đầu của LFSR và f(𝑥<sub>0</sub>, 𝑥<sub>1</sub>, 𝑥<sub>2</sub>, … , 𝑥<sub>𝑛−1)</sub>
</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">f(x<sub>0</sub>, x<sub>1</sub>,…, x<sub>n−1</sub>) 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ừ 𝑎<sub>0</sub> để 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<sub>𝑛</sub> ≡ 𝑎<sub>𝑛−1</sub>𝑥<sub>𝑛−1</sub>+ ⋯ + 𝑎<sub>1</sub>𝑥<sub>1</sub> + 𝑎<sub>0</sub>𝑥<sub>0</sub> 𝑚𝑜𝑑 2 S<sub>𝑛+1</sub> ≡ 𝑎<sub>𝑛</sub>𝑥<sub>𝑛−1</sub>+ ⋯ + 𝑎<sub>2</sub>𝑥<sub>1</sub>+ 𝑎<sub>1</sub>𝑥<sub>0</sub> 𝑚𝑜𝑑 2 Tổng quát:
S<small>𝑛+1 ≡ ∑</small><sup>𝑛−1</sup><sub>𝑖=0</sub> 𝑎<sub>𝑖−1</sub>. 𝑥<small>𝑖 𝑚𝑜𝑑 2 </small> (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 = 𝑎<sub>0</sub>,𝑎<sub>1</sub>,…, (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) = x<sub>n</sub> + a<sub>n−1</sub>x<sub>n−1</sub>+ ⋯ + a<sub>1</sub>x + a<sub>0</sub> và là đa thức đặc trưng của thanh ghi LSFR.
<i><b>Định nghĩa 1.4 [15]: Một thanh ghi LFSR được ký hiệu là <L, C(x)>, </b></i>
trong đó C(x) = 1 + C<sub>1</sub>x+ C<sub>2</sub>x<sup>2</sup>+…+ C<sub>L</sub>x<sup>L</sup> ∈ GF(2) là một đa thức với hệ số C<sub>i</sub> ∈ 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ị C<sub>L</sub> = 1 và đa thức C(x) được gọi là đa
<i>thức liên kết cấp L. </i>
<i><b>Đị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: </b></i>
(i) Nếu C(x) là đa thức bất khả quy trong trường GF(2) khi đó mỗi một 2<small>𝐿</small> − 1 trạng thái ban đầu của một thanh ghi LFSR không suy biến sẽ sinh ra
</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="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<sup>𝐿</sup> − 1. (ii) Nếu C(x) là đa thức nguyên thủy khi đó mỗi một 2<sup>𝐿</sup> - 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<small>𝐿</small> - 1.
<i><b>Đị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 </b></i>
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).
<i><b>Đị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 </b></i>
đượ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<small>𝐿</small> + 𝑘 − 2. Khi đó mỗi dãy khác khơng độ dài k xuất hiện chính xác 2<sup>𝐿−𝑘</sup> 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<sup>𝐿−𝑘</sup> -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.
s<sub>i</sub> ∈GF(2), i∈[0, L-1] thì dãy [s<sub>L−1</sub>, s<sub>L−2</sub>,…,s<sub>1</sub>, s<sub>0</sub>] sẽ được gọi là trạng thái ban đầu (vector khởi tạo) của thanh ghi LFSR.
s<sub>L−2</sub>,…,s<sub>1</sub>, s<sub>0</sub>] khi đó dãy đầu ra S= s<sub>0</sub>, s<sub>1</sub>, s<sub>2</sub>, … được xác định duy nhất bởi công thức truy hồi: s<sub>j</sub> = (c<sub>1</sub>s<sub>j−1</sub> + c<sub>2</sub>s<sub>j−2</sub>+ ⋯ + c<sub>L</sub>s<sub>j−L</sub>) mod 2 với mọi j ≥ L.
</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36"><i><b>Định lý 1.4 [53]: Giả sử R</b></i><sub>1</sub>, R<sub>2</sub>, … , R<sub>K</sub> là K thanh ghi dịch phản hồi phi tuyến với mỗi R<sub>i</sub> là không suy biến và có độ dài là L<sub>i</sub> 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 L<sub>i</sub>. Khi đó, dãy đầu ra sẽ có chu kỳ là: 2<sup>L</sup><small>1</small>(2<sup>L</sup><small>2</small> -1)(2<sup>L</sup><small>2</small> -1)…(2<sup>L</sup><small>K</small> -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
<i><b>1.2.2. Sinh chuỗi bit bằng thanh ghi dịch phản hồi tuyến tính </b></i>
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 tốn số học đơn giản nên thời gian tính tốn nhanh [16].
</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="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ị đố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.
<i><b>Định nghĩa 1.7 [53]: Một bộ tạo tổ hợp phi tuyến (nonlinear </b></i>
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(l<sub>0</sub>, l<sub>1</sub>, … , l<sub>n−1</sub>); 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 L<sub>i</sub> đượ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 𝑓(𝑙<sub>0</sub>, 𝑙<sub>1</sub>, … , 𝑙<sub>𝑛−1</sub>) tạo thành một phần của chuỗi đầu ra, với 𝑙<sub>𝑖</sub> là đầu ra của LFSR thứ i.
Mọi hàm Boolean 𝑓(𝑙<sub>1</sub>, 𝑙<sub>2</sub>, … , 𝑙<sub>𝑛</sub>) 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
</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">trận vuông 𝐿<sub>𝑙</sub> kích thước n trên trường hữu hạn GF(2). Khi đó có thể thu được trạng thái 𝑆<sub>𝑖+1</sub> từ trạng thái 𝑆<sub>𝑖</sub> và là kết quả của phép nhân: 𝑆<sub>𝑖</sub> ∗ 𝐿<sub>𝑙</sub>.
Hình 1.5. Bộ tạo chuỗi kết hợp phi tuyến
<i><b>Định lý 1.5 [53]: Nếu n thanh ghi dịch phản hồi LFSR có độ dài tối đa </b></i>
tương ứng là 𝑙<sub>1</sub>, 𝑙<sub>2</sub>, … , 𝑙<sub>𝑛</sub> đượ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à: 𝑓(𝑙<sub>1</sub>, 𝑙<sub>2</sub>, … , 𝑙<sub>𝑛</sub>) = 𝑎<sub>0</sub>+ 𝑎<sub>1</sub>𝑙<sub>1</sub>+ 𝑎<sub>2</sub>𝑙<sub>2</sub> + ⋯ + 𝑎<sub>𝑛</sub>𝑙<sub>𝑛</sub>+ 𝑎<sub>1,2</sub>𝑙<sub>1</sub>𝑙<sub>2</sub> + … + 𝑎<sub>1,2,…,𝑛</sub>𝑙<sub>1</sub>𝑙<sub>2</sub>… 𝑙<sub>𝑛</sub>. Trong đó: 𝑎<sub>0</sub>, 𝑎<sub>1</sub>, … , 𝑎<sub>𝑛</sub> 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.
𝑥<sub>4</sub>𝑥<sub>5</sub>+ 𝑥<sub>1</sub>𝑥<sub>3</sub>𝑥<sub>4</sub>𝑥<sub>5</sub> 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: x<sub>1</sub>x<sub>3</sub>x<sub>4</sub>x<sub>5</sub>; hàm f này có bậc cao nhất là 5.
dài tương ứng là 𝐿<sub>1</sub>, 𝐿<sub>2</sub>, … , 𝐿<sub>𝑛</sub>, trong đó gcd (𝐿<sub>𝑖</sub>, 𝐿<sub>𝑗</sub>) = 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à ∏<sup>𝑛</sup><sub>𝑖=1</sub>(2<sup>𝐿</sup><small>𝑖</small> − 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
</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">ngẫu nhiên sẽ rất lớn và sẽ an tồ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ừ 𝑅<sub>1</sub>, với xác xuất tương quan là 𝑝 ˃ <sup>1</sup>
<small> 2</small>. 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 𝑅<sub>1</sub> 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 𝑅<sub>1</sub> 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 𝑅<sub>1</sub>sẽ mất nhiều nhất 2<sup>𝐿</sup><small>1</small> − 1 lần thử. Trường hợp đặc biệt với 𝐿<sub>1</sub> = 𝐿<sub>2</sub> = ⋯ =𝐿<sub>𝑛</sub> thì ta có chu kỳ đầu ra cực đại là (2<sup>𝐿</sup><small>𝑖</small>− 1)<sup>𝑛</sup>. Trong đó, n là số các thanh ghi dịch và các 𝑅<sub>𝑖</sub> là không suy biến với i = 1, 2,…,n.
<i><b>1.2.3. Một số nghiên cứu liên quan </b></i>
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 tố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 tố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
</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="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 khố cho mỗi chu kỳ đồng hồ. Dịng khố 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 F<sub>2</sub><small>16</small>. 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 tốn và hạn chế về bộ nhớ để lưu trữ. Bên cạnh đó thuật tốn sử dụng 1 thanh ghi LFSR có độ dài 32 khơng phải là số ngun tố nên có thể dẫn đến có chu kỳ con.
(3) ACORN là thuật tố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 2<sup>64</sup> bit. Đầu vào của thuật tốn có thể bao gồm
<i>dữ liệu liên kết AD có kích thước adlen bit (0 ≤ adlen < 2</i><sup>64</sup>), 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 tồn vẹn cho các dữ liệu này. Thuật tố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 tốn
</div>