Mật mã dòng trong mật mã nhẹ và triển vọng trong iot

0 18 0
  • Loading ...
1/0 trang

Thông tin tài liệu

Ngày đăng: 21/11/2019, 23:06

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ LÊ THỊ LEN MẬT MÃ DÒNG TRONG MẬT MÃ NHẸ VÀ TRIỂN VỌNG TRONG IoT LUẬN VĂN THẠC SĨ Ngành: Hệ thống thông tin HÀ NỘI - 2017 ii ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ LÊ THỊ LEN MẬT MÃ DÒNG TRONG MẬT MÃ NHẸ VÀ TRIỂN VỌNG TRONG IoT Ngành: Hệ thống thông tin Chuyên ngành: Hệ thống thông tin Mã số: 60480104 LUẬN VĂN THẠC SĨ Ngành: Hệ thống thông tin NGƯỜI HƯỚNG DẪN KHOA HỌC TS Lê Phê Đô TS Phùng Văn Ổn HÀ NỘI - 2017 TĨM TẮT Tóm tắt: Cùng với phát triển tính tốn khắp nơi, hệ thống vạn vật kết nối (Internet of Things – IoT) ngày thu hút quan tâm chuyên gia nhà ứng dụng Vấn đề an ninh an tồn thơng tin hệ thống IoT với thiết bị nhỏ gọn, lực tính tốn thấp, trở thành chủ đề nóng Với khả tính tốn nhanh, an tồn chi phí thực thấp, mật mã nhẹ, tiêu biểu mật mã dòng, lựa chọn tối ưu cho thiết bị chuyên dụng IoT Luận văn nghiên cứu khả ứng dụng, điều kiện áp dụng yêu cầu số giải thuật mật mã nhẹ, đề xuất phương án sử dụng mật mã dòng mật mã nhẹ phù hợp với lớp toán cụ thể Đi vào thực nghiệm luận văn đề xuất sử dụng mã hóa đầu cuối với mật mã dòng Grain mật mã nhẹ mã xác thực thông báo với hàm băm nhẹ Keccak thiết bị Raspberry Pi để thu thập, điều khiển nhiệt độ, độ ẩm, cửa vào nhà – tiền đề cho nghiên cứu bảo mật mơ hình smart home nói riêng mơ hình IoT nói chung Từ khóa: vạn vật kết nối, mật mã dòng, Grain, mật mã nhẹ, mã xác thực thơng báo, mã hóa đầu cuối, hàm băm Keccak ii LỜI CẢM ƠN Tôi xin chân thành cảm ơn Khoa Công nghệ thông tin, Trường Đại học Công nghệ tạo điều kiện, môi trường thuận lợi cho học viên q trình học tập, nghiên cứu hồn thành luận văn thạc sĩ Với lòng biết ơn sâu sắc nhất, xin gửi đến tiến sĩ Lê Phê Đô, Trường Đại học Công nghệ, ĐHQG Hà Nội, tiến sĩ Phùng Văn Ổn, Văn phòng Chính phủ tận tâm hướng dẫn qua buổi học lớp buổi nói chuyện, thảo luận đề tài nghiên cứu Nếu khơng có định hướng, lời dạy bảo thầy luận văn tơi khó hồn thiện Một lần nữa, xin chân thành cảm ơn thầy Tôi xin bày tỏ lòng kính trọng biết ơn sâu sắc tới gia đình thầy, Trường Đại học Công nghệ, ĐHQG Hà Nội, anh chị nhóm Nghiên cứu KH & CN Mật Mã UET-CRYPT, Trường Đại học Công nghệ - ĐHQG HN bạn Đỗ Công Thành – học viên cao học Trường Đại học Cơng nghệ khóa K23, người dạy dỗ, giúp đỡ tơi suốt q trình học tập thực luận văn Bước đầu vào thực tế, tìm hiểu lĩnh vực chun sâu An tồn thơng tin, kiến thức tơi hạn chế nhiều bỡ ngỡ Do vậy, khơng tránh khỏi thiếu sót luận văn Tơi mong nhận ý kiến đóng góp q báu thầy bạn để hoàn thiện luận văn Tôi xin chân thành cảm ơn iii LỜI CAM ĐOAN Tôi xin cam đoan kết đạt luận văn thực hướng dẫn Tiến sĩ Lê Phê Đô Tiến sĩ Phùng Văn Ổn Tất tham khảo từ nghiên cứu liên quan trích dẫn nguồn gốc cách rõ ràng từ danh mục tài liệu tham khảo luận văn Luận văn không chép tài liệu, cơng trình nghiên cứu người khác mà khơng rõ mặt tài liệu tham khảo Các kết thực tế luận văn tiến hành thực nghiệm Nếu phát có gian lận nào, tơi xin hồn tồn chịu trách nhiệm trước hội đồng, kết luận văn tốt nghiệp Hà Nội, ngày tháng năm Học viên thực Lê Thị Len , iv MỤC LỤC LỜI CẢM ƠN ii LỜI CAM ĐOAN iii MỤC LỤC iv DANH MỤC HÌNH VẼ vii DANH MỤC BẢNG BIỂU ix DANH MỤC TỪ VIẾT TẮT x MỞ ĐẦU Chương MẬT MÃ DÒNG TRONG MẬT MÃ NHẸ 1.1 Tổng quan mật mã nhẹ 1.1.1 Một số khái niệm .4 1.1.2 Quá trình hình thành phát triển mật mã nhẹ 1.1.3 Nguyên lý thiết kế thuật toán mật mã nhẹ 1.1.4 Các mật mã nhẹ nguyên thủy 1.1.5 Ứng dụng mật mã nhẹ IoT .13 1.2 Mật mã dòng mật mã nhẹ .14 1.2.1 Khái niệm 14 1.2.2 Các thuật toán đặc trưng 17 1.2.3 Triển vọng mật mã dòng mật mã nhẹ IoT .20 Chương HỌ GRAIN .22 2.1 Lịch sử 22 2.2 Mô tả Grain 22 2.2.1 Grain V0 22 2.2.2 Grain V1 24 2.2.3 Grain 128 25 2.2.4 Grain-128a 26 2.2.5 Tạo khóa 27 v 2.3 Nguyên lý thiết kế 28 2.3.1 Tiêu chuẩn thiết kế 28 2.3.2 Tốc độ thực 29 2.3.3 Phức tạp phần cứng 30 2.4 Một số cải tiến hệ mật Grain 30 2.5 Phân tích Grain .31 2.5.1 So sánh phiên họ Grain .31 2.5.2 So sánh Grain với số hệ mã hóa nhẹ khác 34 2.5.3 Điểm yếu 37 Chương MÃ HÓA GRAIN TRÊN THIẾT BỊ RASPBERRY 40 3.1 Mơ tả tốn 40 3.2 Giải toán 40 3.1.1 Mã hóa đầu cuối 41 3.1.2 Mã xác thực thông báo 41 3.1.3 Hàm băm Keccak 43 3.1.4 Tạo trao đổi khóa 46 3.1.5 Mơ hình mã hóa xác thực .47 3.3 Môi trường liệu thực nghiệm 50 3.3.1 Mơi trường lập trình 50 3.3.2 Môi trường thực nghiệm 50 3.3.3 Thiết lập phần cứng 50 3.4 Ứng dụng mã hóa đầu cuối mã xác thực giải toán 53 3.5 Kịch thực nghiệm 54 3.5.1 Raspberry lấy liệu từ sensor gửi đến client .54 3.5.2 Client gửi thông tin điều khiển đến Server .54 3.5.3 Tạo trao đổi khóa Server Client .55 3.6 Kết thu 56 vi 3.7 Đánh giá 59 3.7.1 Đánh giá an toàn 59 3.7.2 Đánh giá hiệu 60 3.7.3 So sánh với giải thuật khác ứng dụng Raspberry 61 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 62 TÀI LIỆU THAM KHẢO .64 PHỤ LỤC 67 A RASPBERRY Pi 67 A.1 Raspberry gì? 67 A.2 Phần cứng 68 A.3 Hệ điều hành phần mềm 69 A.4 Ưu nhược điểm Raspbery .69 A5 Thông số kỹ thuật thiết bị Raspberry thực nghiệm luận văn 69 B SHT11 70 C TIÊU CHUẨN CỦA MẬT MÃ NHẸ .70 C.1 Tiêu chuẩn mã hóa ISO/IEC 71 C.2 Tiêu chuẩn mã hóa khu vực 72 C.3 Giao thức truyền thông 72 C.4 Thư viện định hướng IoT 72 D MÃ NGUỒN .73 D.1 Grain128.c .73 D.2 ecrypt-sync.c 76 D.3 Ví dụ kết mã hóa giải mã với Grain-128 .76 vii DANH MỤC HÌNH VẼ Hình 1-1: Sơ đồ hệ mật mã Hình 1-2: Mã hố với hệ mật mã khóa đối xứng Hình 1-3: Mã hố với hệ mật mã bất đối xứng .5 Hình 1-4: Số lượng mật mã nhẹ phát triển nhà khoa học Hình 1-5: Ba nguyên lý thiết kế thuật toán mật mã nhẹ Hình 1-6: Các nguyên thủy mật mã nhẹ Hình 1-7: Ví dụ FCSR 18 Hình 1-8: Kiến trúc MICKEY 19 Hình 1-9: Kiến trúc SNOW 3G 20 Hình 1-10: Thiết kế Trivium 20 Hình 2-1: Kiến trúc Grain .23 Hình 2-2: Cơ chế xác thực Grain-128a 27 Hình 2-3: Q trình tạo khóa Grain 28 Hình 2-4: Thuật tốn Grain với tốc độ tăng gấp đơi .29 Hình 2-5: Lưu lượng tối đa mật mã dòng nhẹ với thiết kế 0.13 m Standard Cell CMOS 35 Hình 2-6: Hiệu suất giải thuật mật mã dòng nhẹ mạng Wireless-LAN 10Mbps 36 Hình 2-7: Hiệu suất cho ứng dụng RFID / WSN cấp thấp đồng hồ 100kHz 36 Hình 2-8: Điểm yếu giá trị IV Grain .38 Hình 3-1: Sơ đồ CBC-MAC [32] 42 Hình 3-2: Sơ đồ HMAC [32] 42 Hình 3-3: Kiến trúc Keccak nối tiếp 45 Hình 3-4: Các vòng xử lý liệu Keccak 45 Hình 3-5: So sánh hiệu suất Keccak triển khai song song nối tiếp 46 Hình 3-6: So sánh hiệu suất Keccak, MAME SHA-1 46 viii Hình 3-7: Mơ hình mã hóa xác thực 48 Hình 3-8: Quá trình thực 49 Hình 3-9: Thiết kế SHT11 51 Hình 3-10: Kết nối SHT11 Raspberry .51 Hình 3-11: Kết nối cơng tắc từ (magnetic switch) giả lập cửa vào Raspberry .52 Hình 3-12: Kết nối Raspberry hệ thống đèn LED 52 Hình 3-13: Mơ hình ứng dụng .53 Hình 3-14: Hình ảnh thực tế Raspberry Pi cảm biến đèn LED 56 Hình 3-15: Giao diện client 56 Hình 3-16: Màn hình tăng nhiệt độ .57 Hình 3-17: Giả lập Raspberry điều khiển tăng nhiệt độ qua đèn LED đỏ 57 Hình 3-18: Màn hình giảm nhiệt độ 58 Hình 3-19: Giả lập Raspberry điều khiển giảm nhiệt độ qua đèn LED xanh .58 Hình 3-20: Màn hình mở cửa 59 Hình 3-21: Giả lập Raspberry điều khiển mở cửa qua đèn LED vàng 59 Hình 3-22: Hiệu thực mã hóa .60 Hình 3-23: Hiệu thực giải mã .60 ix DANH MỤC BẢNG BIỂU Bảng 1-1: Hiệu phần cứng số giải thuật mật mã nhẹ Bảng 1-2: Một số thông số số hệ mật mã nhẹ triển khai 13 Bảng 1-3: Kết triển khai thuật tốn mã hóa nhẹ phần cứng (1) [17] 15 Bảng 1-4: Kết triển khai thuật tốn mã hóa nhẹ phần cứng (2) 16 Bảng 2-1: Số cổng Grain chức khác 30 Bảng 2-2: Số cổng tốc độ Grain với giá trị t 30 Bảng 2-3: Độ dài khóa IV họ Grain 31 Bảng 2-4: Hàm cập nhật họ Grain 31 Bảng 2-5: Số cổng họ Grain thực với phần cứng .33 Bảng 2-6: Hiệu suất họ Grain 33 Bảng 2-7: Khả ứng dụng mật mã dòng nhẹ 37 Bảng 3-1: So sánh Keccak với vài ứng viên SHA-3 .44 Bảng 3-2: Đặc điểm kỹ thuật SHT11 50 Bảng 3-3: So sánh Grain số hệ mã hóa nhẹ khác Raspberry .61 x DANH MỤC TỪ VIẾT TẮT Dạng đầy đủ Ký hiệu Internet of Things – Vạn vật kết nối – Một kịch giới, mà đồ vật, người cung cấp định IoT NIST RFID danh riêng mình, tất có khả truyền tải, trao đổi thông tin, liệu qua mạng mà không cần đến tương tác trực tiếp người với người, hay người với máy tính (National Institute of Standards and Technology) Viện tiêu chuẩn Công nghệ Mỹ Radio Frequency Identification – Hệ thống nhận dạng tần số sóng vơ tuyến SHT11 Cảm biến đo nhiệt độ độ ẩm Đây dòng cảm biến (SHT10, SHT11, SHT15, SHT75) chuyên dùng, có độ xác cao Nó sử dụng rộng dãi công nghiệp dân dụng HTML5 Một chuẩn hệ ngôn ngữ đánh dấu siêu văn - HyperText Markup Language explained (gọi tắt HTML) Nonlinear feedback shift register – Thanh ghi dịch hồi phi NFSR tuyến – ghi dịch hồi với bit đầu vào hàm phi tuyến tính trạng thái trước 𝑟𝑖+1 (𝑏0 , 𝑏1 , 𝑏2 , … , 𝑏𝑛−1 ) = 𝑟𝑖 (𝑏1 , 𝑏2 , … , 𝑓 (𝑏0 , 𝑏1 , 𝑏2 , … , 𝑏𝑛−1 )) LFSR Linear feedback shift register – Thanh ghi dịch hồi tuyến tính – ghi dịch hồi với bit đầu vào hàm tuyến tính trạng thái trước Hàm tuyến tính dùng phổ biến XOR MAC (Message authentication code) Mã xác thực thông báo HMAC (Hash Messasge Authentication Code) Mã xác thực thông báo sử dụng hàm băm CMAC (Cipher Message Authentication Code) Mã xác thực thơng báo dựa mã hóa GE (Gate equivalence) Cổng tương đương - đơn vị đo lường cho phép xác định độ phức tạp độc lập công nghệ sản xuất mạch điện tử kỹ thuật số MỞ ĐẦU Cơ sở khoa học thực tiễn đề tài: Cùng với phát triển theo hàm số mũ cách mạng công nghiệp lần thứ 4, vấn đề an ninh an toàn thông tin ngày quan tâm trở thành ưu tiên hàng đầu nghiên cứu ứng dụng Để đảm bảo an toàn, bí mật cho thơng tin, đa số thiết bị thông tin trang bị phương pháp phòng ngừa, bảo vệ hiệu Tiêu biểu phương pháp mã hóa truyền thống triển khai phổ biến thiết bị có cấu hình cao Tuy nhiên, với thiết bị nhỏ, kích thước, lượng khả tính tốn hạn chế, việc sử dụng mã hóa truyền thống khơng khả thi, cần có giải thuật khác phù hợp Đây vùng đất vàng cho mật mã nhẹ phát triển Tùy yêu cầu bảo mật cụ thể thiết bị mà áp dụng giải thuật mã hóa khác để cân đối ba tiêu chí quan trọng mật mã nhẹ: độ an toàn, hiệu suất giá thành Luận văn nghiên cứu khả ứng dụng, điều kiện áp dụng yêu cầu số giải thuật mã hóa nhẹ cụ thể, đề xuất phương án sử dụng mật mã nhẹ, tiêu biểu mật mã dòng phù hợp cho thiết bị nhỏ gọn, lực tính tốn thấp, mơi trường Internet of Thing (IoT) Một thiết bị nhỏ gọn có khả tính tốn thấp lại có vai trò quan trọng nhiều hệ thống IoT Raspberry Pi [Phụ lục A] Raspberry Pi vi máy tính phát triển Raspberry Pi Foundation Anh Phần cứng Raspberry Pi có nhiều cấu hình khác nhau, dung lượng nhớ thiết bị ngoại vi khác tùy phiên Hiện nay, Raspberry Pi sử dụng cách rộng rãi ứng dụng IoT Theo đánh giá từ nhà nghiên cứu, Raspberry Pi tảng phần cứng quan trọng để thực nghiệm ứng dụng cho dự án IoT Với thiết bị IoT này, có vài mối nguy hiểm cần quan tâm vấn đề bảo mật Vấn đề bảo mật hệ thống IoT tiêu biểu smart home có nhiều tầng, nhiều mức độ Kẻ cơng đánh cắp thơng tin chiếm quyền điều khiển sensor việc can thiệp trực tiếp vào đường truyền vật lý sensor với thiết bị thu nhận, phân tích, điều khiển liệu Raspberry Pi Một cách công khác, kẻ cơng tìm cách truy cập trực tiếp vào thiết bị máy chủ, lệnh giả điều khiển thiết bị cảm biến, đồ dùng, vật dụng nhà Việc giao tiếp thiết bị Raspberry client side (điện thoại di động, máy tính bảng, laptop ) khơng an tồn xâm nhập vào hệ thống lấy liệu đường truyền dùng cho mục đích xấu Ở mức cao chút, kẻ cơng chiếm quyền kiểm sốt client side để trực tiếp điều khiển hệ thống smart home Trong phạm vi nghiên cứu, luận văn tập trung vào tốn an tồn thơng tin q trình giao tiếp thiết bị Raspberry Pi với client side Luận văn nghiên cứu đề xuất sử dụng mã hóa đầu cuối với mật mã dòng mật mã nhẹ mã xác thực thông báo thiết bị Raspberry Pi để thu thập, điều khiển nhiệt độ, độ ẩm, cửa vào nhà – tiền đề cho nghiên cứu bảo mật mơ hình smart home nói riêng mơ hình IoT nói chung Nội dung đề tài vấn đề cần giải 2.1 Hướng nghiên cứu:  Nghiên cứu mật mã nhẹ, mật mã dòng mật mã nhẹ  Khả ứng dụng mật mã dòng mật mã nhẹ IoT  Đề xuất xây dựng kênh truyền tin an toàn phương pháp mã hóa đầu cuối sử dụng kỹ thuật mã hóa dòng Grain xác thực thơng báo với hàm băm Keccak Raspberry PI để điều khiển nhiệt độ, độ ẩm, cửa vào nhà  Đánh giá hiệu việc sử dụng mật mã dòng mật mã nhẹ Raspberry so với số giải thuật mã hóa khác 2.2 Nội dung nghiên cứu: Ngoài phần mở đầu kết luận, nội dung luận văn trình bày ba chương: Chương 1: Giới thiệu tổng quan mật mã nhẹ, mật mã dòng mật mã nhẹ, số khái niệm quan trọng, tìm hiểu số hệ mật mã dòng mật mã nhẹ phổ biến lợi ích vấn đề gặp phải ứng dụng mật mã dòng mật mã nhẹ thực tế mà tiêu biểu IoT Chương 2: Nghiên cứu đánh giá họ hệ mật mã dòng tiêu biểu mật mã nhẹ – Grain khả ứng dụng mật mã dòng nhẹ Grain IoT Chương 3: Thực nghiệm áp dụng mã hóa đầu cuối với mật mã Grain mã xác thực thông báo với hàm băm nhẹ Keccak việc sử dụng thiết bị Rasberry để thu thập liệu từ cảm biến SHT11 dùng để đo nhiệt độ, độ ẩm phòng làm việc; qua trả lại thơng tin cho người dùng thơng qua giao diện Web HTML5 Người dùng điều khiển thiết bị phòng để thay đổi nhiệt độ, độ ẩm Đồng thời đánh giá hiệu việc sử dụng mật mã dòng mật mã nhẹ Raspberry so với số giải thuật mã hóa khác 3 Kết đạt Sau tháng nghiên cứu, lý thuyết, luận văn nghiên cứu, đánh giá độ an toàn, hiệu suất sử dụng hệ mật mã Grain nói riêng hệ mật mã dòng mật mã nhẹ nói chung mơi trường IoT Về thực nghiệm, luận văn xây dựng thành cơng kênh truyền tin an tồn phương pháp mã hóa đầu cuối sử dụng kỹ thuật mã hóa dòng Grain xác thực thông báo với hàm băm Keccak Raspberry PI để điều khiển nhiệt độ, độ ẩm, cửa vào ngơi nhà Từ có số liệu thực tế đánh giá hiệu quả, độ an tồn mật mã dòng nhẹ Grain so với số hệ mật mã nhẹ khác 4 Chương MẬT MÃ DÒNG TRONG MẬT MÃ NHẸ 1.1 Tổng quan mật mã nhẹ 1.1.1 Một số khái niệm 1.1.1.1 Hệ mật mã Hệ mật mã [17]: hệ bao gồm thành phần (P, C, K, E, D) thoả mãn tính chất sau: • P (Plaintext) tập hợp hữu hạn rõ • C (Ciphertext) tập hợp hữu hạn mã • K (Key) tập hợp khố • E (Encrytion) tập hợp qui tắc mã hố • D (Decrytion) tập hợp qui tắc giải mã EK(P) = C DK(C) = P Người gửi Bản rõ Khóa giải mã Khóa mã hóa Thuật tốn Mã hoá Bản mã Thuật toán Giải mã Người nhận Bản rõ Hình 1-1: Sơ đồ hệ mật mã Những yêu cầu hệ mật mã [18] • Độ tin cậy: việc sử dụng kỹ thuật mã hóa khác nhau, hệ mật giúp che giấu thơng tin, đảm bảo bí mật cho thơng báo liệu lưu trữ • Tính tồn vẹn: cung cấp chế đảm bảo thông báo không bị thay đổi q trình truyền nhận • Tính khơng thể chối bỏ: cung cấp cách xác nhận tài liệu đến từ họ cố gắng từ chối • Tính xác thực: xác thực nguồn gốc thông báo người đăng nhập hệ thống Ta phân hệ mật mã thành hai loại dựa vào khóa: • Hệ mật mã khóa đối xứng (Symmetric cryptosystem): hệ mật mã lâu đời với khoá mã hố tính khố giải mã, khoá mã hoá khoá giải mã giống Với hệ mật mã khóa đối xứng, người gửi người nhận phải thỏa thuận khóa bí mật trước thực mã hóa Độ an tồn thuật tốn phụ thuộc vào khố Nếu khóa bí mật bị tiết lộ giải mã thơng báo hệ thống mã hố Bản rõ Mã hoá Bản mã Giải mã Bản rõ Khố Hình 1-2: Mã hố với hệ mật mã khóa đối xứng • Hệ mật mã bất đối xứng (Asymmetric cryptosystem): Diffie Hellman phát minh hệ mã hố cơng khai hay hệ mã hố phi đối xứng từ năm 1970 Hệ mã hố cơng khai khác biệt so với hệ mật mã đối xứng khóa mã hóa khóa giải mã Khố mã hố (khóa cơng khai) hồn tồn khác với khố giải mã (khóa bí mật) Đặc biệt, kẻ cơng khơng thể tính tốn khóa giải mã kể biết khóa mã hóa Khóa mã hóa cơng khai Bất kỳ sử dụng khố cơng khai để mã hố thơng báo, người có khố bí mật có khả giải mã thơng điệp Khố cơng khai mã gửi kênh truyền khơng an tồn mà khơng làm độ an tồn hệ mật Bản rõ Mã hoá Khoá mã Bản mã Giải mã Bản rõ Khố giải Hình 1-3: Mã hố với hệ mật mã bất đối xứng 1.1.1.2 Khái niệm mật mã nhẹ Hiện nay, chưa có tổ chức đưa khái niệm xác hay định lượng cụ thể mật mã nhẹ Vì có nhiều phiên để định nghĩa mật mã nhẹ Một số tiêu chuẩn ISO/IEC 29192-1 [1] đưa khái niệm mật mã nhẹ phần tổng quan tiêu chuẩn Mật mã nhẹ mật mã dùng cho mục đích bảo mật, xác thực, nhận dạng trao đổi khóa; phù hợp cài đặt cho môi trường tài nguyên hạn chế Trong ISO / IEC 29192, tính chất nhẹ mơ tả dựa tảng cài đặt Trong triển khai phần cứng, diện tích chip lượng tiêu thụ biện pháp quan trọng để đánh giá tính nhẹ hệ mật Trong triển khai phần mềm kích thước mã nguồn, kích thước RAM lại tiêu chí cho hệ mật coi nhẹ 6 1.1.2 Quá trình hình thành phát triển mật mã nhẹ Mật mã nhẹ nhiều nhà nghiên cứu tìm hiểu từ lâu, đến cách 13 năm có đời áp dụng thức giải thuật mật mã nhẹ đầu tiên: Grain Trivium (2005), Present, DESL, DESXL (2007), KATAN (2009) Sprout (2015) Ngày nhiều thuật tốn mã hóa nhẹ đời với nhiều ứng dụng hữu ích [30] Hình 1-4: Số lượng mật mã nhẹ phát triển nhà khoa học Bên cạnh mạng lưới vạn vật kết nối chứa đựng nhiều yếu điểm – hội cho kẻ công thực hành động xấu Nhất ứng dụng yêu cầu độ an toàn cao ứng dụng qn sự, ngân hàng hay tự động hóa Ngồi cơng vào đường truyền vật lý, tính tốn khắp nơi bị đe dọa cơng chiếm quyền kiểm sốt, cơng lấy liệu đường truyền, … Chính hệ thống tính tốn khắp nơi, độ an tồn hệ mật cần quan tâm xem xét 1.1.3 Nguyên lý thiết kế thuật toán mật mã nhẹ Nguyên lý thiết kế thuật toán mật mã nhẹ toán chưa có lời giải xác cho thiết bị có tài nguyên hạn chế Mật mã nhẹ cần đáp ứng yêu cầu “nhẹ” cài đặt mặt khác phải đảm bảo mức độ an tồn cần thiết cho ứng dụng/phần cứng Người thiết kế mật mã nhẹ phải thỏa hiệp, cân đối ba tiêu chí: độ an tồn, hiệu suất chi phí cài đặt (Hình 1-5) Hình 1-5: Ba nguyên lý thiết kế thuật tốn mật mã nhẹ Độ an tồn: Khi thiết kế hệ mật nào, điều người thiết kế cần quan tâm độ an tồn hệ mật Độ an tồn coi yếu tố sống hệ mật Với mật mã nhẹ, người thiết kế cần thiết kế hệ mật “đủ an toàn” điều kiện cho phép chi phí hiệu cài đặt Dĩ nhiên độ an toàn mật mã nhẹ đạt đến ngưỡng an tồn chấp nhận điều kiện cụ thể Hiệu cài đặt, thường đánh giá qua độ đo tài nguyên sử dụng thuật tốn như: diện tích bề mặt, số chu kỳ xung nhịp, thời gian thực thi, thơng lượng, nguồn cung cấp, lượng, điện tích… u cầu liên quan mật thiết đến chi phí cài đặt, hiệu suất khả tính tốn đường truyền Độ đo cho tính hiệu phần cứng tỷ lệ thơng lượng điện tích sử dụng hệ mật mã (Bảng 1-1) Bảng 1-1: Hiệu phần cứng số giải thuật mật mã nhẹ Chu kỳ xung Số bits Số bits Mã pháp nhịp khóa khối khối Thơng lượng Xử lý Điện 100MHz (Kbps) logic tích (GEs) (m) Mã khối Present 80 64 32 200 0.18 1570 Hight 128 64 34 188 0.18 3048 mCrypton 96 64 13 492 0.13 2681 Mã dòng Trivium 80 1 100 0.13 2599 Grain 80 1 100 0.13 1294 Giá thành thuật tốn: Thơng thường hệ mật mã nhẹ thường áp dụng số lượng lớn thiết bị hệ thống IoT Chính giá thành thuật tốn đóng ý nghĩa quan trọng việc triển khai Một hệ mật tốt cần phải cân giá thành, hiệu suất độ an toàn Tuy nhiên việc cân yếu tố tốn khó Tùy điều kiện, yêu cầu cụ thể, người thiết kế cân đối nên ưu tiên khía cạnh Ví dụ thực cài đặt phần cứng có hiệu suất cao thường dẫn tới yêu cầu cao điện tích, giá thành cao Mặt khác, thiết kế hệ mã ưu tiên độ an toàn thiết bị có phần cứng thấp hiệu suất thấp 8 1.1.4 Các mật mã nhẹ nguyên thủy Theo nghiên cứu ECRYPT1, mật mã nhẹ có loại mật mã nguyên thủy tương tự với loại mật mã truyền thống Đó mã khối, mã dòng, mã xác thực thơng báo hàm băm Qua hội nghị ECRYPT đề cập đến nhiều hệ mật như: • Mã khối: HIGHT, KATAN/KTANTAN, DESL/DESX/DESXL, PRESENT, PRINTCIHER, SEA, XTEA, LBlock, … • Mã dòng: Grain, MICKER, TRIVIUM, F-FCSR-H, WG-7 • Mã xác thực thơng báo: SQUASH • Hàm băm: MAME, H-PRESENT / DM-PRESENT, Keccak, PHOTON, QUARK hay Spongent … Mã khối (Block Cipher) Mã dòng (Stream Cipher) Mật mã nhẹ (Lightweight cryptography) Hàm băm (Hash function) Mã xác thực thông báo (MAC) Hình 1-6: Các nguyên thủy mật mã nhẹ Bảng mô tả số thông số/ đặc điểm ưu, nhược điểm ứng dụng số hệ mật mã nhẹ nguyên thủy ECRYPT đề cập ERCYPT mạng lưới nghiên cứu mật mã tiếng Châu Âu IST (Information Societies Technology) tài trợ từ năm 2004 Mục tiêu tăng cường hợp tác nhà nghiên cứu Châu Âu an ninh thông tin, đặc biệt kỹ thuật mật mã kỹ thuật số Loại mật mã nhẹ Key (bits) Người thiết kế Hệ mật mã Block / IV (bits) Đặc điểm - 32 vòng lặp HIGHT KATAN KTANTAN 128 / Chrstophe de Canniere, Orr Dunkelman Miroslav Knezevic 80 64 32 / 48 / 64 Triển khai - Sử dụng phép toán đơn giản thiết bị hạn chế XOR, mod 28 dịch bits RFID hay thiết - Có thể thực với 3048 cổng, bị phổ biến khắp nơi công nghệ 0.25 m - Kiến trúc KATAN / KTANTAN đơn giản Bản rõ lưu ghi Trong vòng, số bit lấy đưa vào hàm phi tuyến Boolean, LFRS bits để mã hóa Mã khối DES, DESL, DESX and DESXL 56 / 184 64 - 16 vòng lặp - DES sử dụng lặp lại S-box (6*4 bits) lần - Cấu trúc SPN với 31 vòng PRESENT 80 / 128 64 Ứng dụng - Mỗi vòng thực phép cộng XOR để đưa vào khóa vòng - Tầng phi tuyến sử dụng S-box bits áp dụng 16 lần song song vòng 10 PRINTCIPHER SEA Scalable Encryption Algorithm XTEA LBlock 48 / 96 – F.-X Standaert, G Piret, N Gershenfeld, Quisquater J.-J David Wheeler Roger Needham Wenling Wu and Lei Zhang 48 / 96 / 144 128 64 - Thiết kế SEA dựa số 80 Grain MICKEY v2 Steve Babbage Matthew Dodd 2005 Trivium Christophe De Cannière năm 80/ 128 80 64 64 / 96 - Sử dụng 64 vòng lặp 80 Áp dụng tảng phần mềm biến thể với 32 vòng lặp sử dụng vi điều khiển S-box bits bits - Mã dòng đồng - Dựa LFSR NFSR - Có thể triển khai song song - Ưu việt cho phần cứng nhẹ - MICKEY 2.0 có kích thước mạch 0-80/ 0128 phần mềm điều khiển, thẻ thông phép toán bản: XOR, thay thế, minh vi xử dịch trái, đảo bit, cộng mod 2b lý - Nó sử dụng cấu trúc Feistel Martin Hell, Thomas 64 / 80 / Johansson Willi 128 Meier năm 2004 Mã dòng - PRINTCIPHER 48 sử dụng 48 bits Sử dụng mạch khóa bí mật cộng thêm 32 bits tích hợp in ấn sinh từ thuật tốn mã hóa (Integrated circuit – sử dụng 16 S-box bits IC-printing) Ứng dụng sử dụng WLAN, RFID/WSN Sử dụng cho 3,188 GE, hoạt động tối đa với tảng phần cứng với tần số 454,5 MHz, thông lượng tài nguyên giới hạn 454,5 Mbps - Sử dụng ghi LFSR với 11 ghi sử dụng “Sbox” (1x1) để tạo bit keystream, sau ADD với hai LFSR cũn li and Bart Preneel Thierry Berger, Franỗois F-FCSR-H WG-7 Arnault, and Lauradoux Cédric 80/ 128 Y Luo, Q Chai, G Gong X Lai năm 2010 80 80/ 128 81 Hirotaka Yoshida, Dai Watanabe, Katsuyuki MAME Hàm băm Okeya, Jun Kitahara, Hongjun Wu, Ozgul Kucuk, Bart Preneel năm - Chu kỳ thuật toán log(n) – n tổng chiều dài ghi Mật mã dòng sử dụng component FCSR Ứng dụng thẻ - Thuật tốn mã hóa dòng dựa RFID điện thoại WG Stream Cipher di động - Các thao tác lôgic đơn giản S- 96 256 box đem lại hiệu phần cứng Ứng dụng yêu cầu cho MAME: cần 8,1 Kgates phần cứng hạn chế cho công nghệ 0,18 μm 2007 H-PRESENT / DMPoschmann, Alex 80 / 128 PRESENT Keccak Sử dụng - Hàm nén sử dụng mã khối ứng dụng yêu cầu PRESENT hàm chiều 64 bits bảo mật Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche 256 - Với hiệu suất cao sức đề kháng tốt, Keccak Viện Tiêu chuẩn Công nghệ (NIST) chọn 12 tiêu chuẩn SHA3 vào tháng 10/2012 - Một cách hoán vị ngẫu nhiên dựa PHOTON Mã xác thực thông báo Jian Guo, Thomas Peyrin, and Axel AES, sử dụng 12 lần lặp cho chuỗi biến đổi thực Poschmann hình vuông Nibbles (4 bits) QUARK Jean-Philippe Aumasson, Luca Henzen, Willi Meier, Maria NayaPlasencia 136 / 176 / 256 Spongent Bogdanov, A., Knežević, M., Leander, G., Toz, D., Varıcı, K., & Verbauwhede 88 / 128 / 160 / 224 / 256 SQUASH Adi Shamir (RFID Security Workshop 2007) - Một hoán vị phần cứng P-Sponge sử dụng mã hóa KTANTAN KATAN với phần cứng theo định hướng mã dòng Grain Mã xác thực thơng báo (MAC), sinh số giả ngẫu nhiên, mã hóa dòng - Họ hàm băm nhẹ - Linh hoạt mức độ tốc độ, hàm băm với footprint nhỏ phần cứng công bố từ trước đến - Sử dụng hàm tuyến tính dựa thuật tốn mã hóa khóa cơng khai Rabin Những báo cáo liên quan tới thuật toán mật mã đối xứng nhẹ trình bày hội nghị ECRYPT 2011 như: Mã khối (PUFFIN, PUFFIN2, LBlock, Piccolo, TWINE) Hàm băm (SPONGENT) 13 1.1.5 Ứng dụng mật mã nhẹ IoT Các thuật toán mật mã nhẹ đời phát triển nhằm đáp ứng nhu cầu cụ thể thiết bị hay lớp toán Chúng phù hợp với ứng dụng, thiết bị có cấu hình nhỏ gọn, tốc độ xử lý nhanh nhiều phép tính khoảng thời gian cố định, yêu cầu bảo mật không cao Bảng mô tả số thông số số hệ mật mã nhẹ trình triển khai Bảng 1-2: Một số thông số số hệ mật mã nhẹ triển khai Hệ mật AES DES DESL DESXL PRESENT KATAN64 Grain Trivium Sprout GE 2400 2309 1848 2168 1570 1054 1294 2599 813 Throughput 100KHz (Kbit/s) 56.6 44.4 44.4 44.4 200 25.1 100 100 100 Logic (m) 0.13 0.18 0.18 0.18 0.18 0.13 0.13 0.13 0.18 Ta thấy, hệ mật mã dòng mật mã nhẹ thiết kế nhỏ gọn, yêu cầu phần cứng tốc độ nhanh hệ mật mã khối Với thiết kế riêng mình, mật mã nhẹ đem lại nhiều lợi ích đặc trưng như:  Yêu cầu nguồn tài nguyên thấp, lượng tiêu thụ nhỏ, phù hợp với trang thiết bị cấu hình nhỏ Vì giải pháp mật mã nhẹ hướng đến việc cài đặt gọn nhẹ thiết bị có lực tính tốn thấp hay tài nguyên hạn chế  Giá thành rẻ Mật mã nhẹ thường ứng dụng thiết bị có tính thâm nhập khắp nơi, cần phải triển khai hàng loạt hàng trăm, hàng nghìn, chí hàng tỉ thiết bị Chính việc giảm giá thành cơng nghệ sử dụng quan tâm hàng đầu  Hoạt động nhanh, thực đầy đủ hiệu chức Bên cạnh lợi ích thực tế, mật mã nhẹ chứa đựng nhiều hiểm họa khó khăn q trình áp dụng  Độ an tồn mật mã nhẹ khơng cao mật mã thơng thường khác, phải cân đối hai yếu tố tính an tồn tính gọn nhẹ Về mật mã nhẹ khơng phù hợp với ứng dụng yêu cầu độ an tồn cao ứng dụng qn sự, tài chính, 14  Các mật mã nhẹ xử lý lượng thơng tin nhỏ, khơng có băng thơng cao Bản thân mật mã nhẹ thiết kế chủ yếu cho phần mềm mà để áp dụng, nhúng vào phần cứng Vì lượng thơng tin cần truyền khơng nhiều  Khó khăn việc tối ưu hóa thuật tốn mật mã nhẹ có Bản thân hệ mật mã nhẹ nhiều sức đề kháng tài nguyên sử dụng hạn chế Điều làm chậm đáng kể việc phát triển thuật toán mật mã nhẹ Tất điều làm cho việc sử dụng mật mã nhẹ thực hành có chun mơn cao khó khăn Tùy nhu cầu ứng dụng phần cứng mà định có nên lựa chọn sử dụng mật mã nhẹ cho vấn đề đảm bảo an tồn hệ thống hay khơng 1.2 Mật mã dòng mật mã nhẹ 1.2.1 Khái niệm Nếu xét theo số bit xử lý, mật mã khóa đối xứng có hai loại mã dòng (stream cipher) mã khối (block cipher) Mã khối làm việc cách chia khối liệu cần mã hóa thành khối có độ dài định xử lý (mã hóa/giải mã) khối liệu Yêu cầu mã khối phải biết trước kích thước rõ Tuy nhiên liệu cần mã hóa rõ ràng, tường minh từ đầu, mà thường khơng biết trước kích thước biến thiên theo thời gian Mật mã dòng hoạt động với liệu đầu vào mã hóa bit đáp ứng biến thiên theo thời gian khối rõ (plaintext) riêng biệt Mật mã dòng thực phát triển từ năm 1960 với nhiều tổ chức sử dụng quân đội, ngoại giao, tổ chức gián điệp, doanh nghiệp, viễn thơng Mã dòng ngày trở lên phổ biến thiết bị mã hóa điện tử bán dẫn bắt đầu xuất với dung lượng nhớ thấp Nhất với tốc độ phát triển IoT ngày nay, theo dự đoán SICCO đến năm 2020 có đến 50 tỷ thiết bị tham gia vào Internet Ngồi máy tính, thiết bị có cấu hình cao có nhiều thiết bị có chip xử lý hạn chế tủ lạnh, điều hòa, máy giặt So với thuật tốn mã hóa dòng khác, thuật tốn mã hóa dòng nhẹ dành ưu đơn giản triển khai Theo thực nghiệm Good, T., & Benaissa, M [17], RC4 cần 50000 GE có thơng lượng 10 Gbps; Snow 3G cần 11000 GE, 1.72 Gbps; A5/1 cần 700 GE; thuật tốn mã hóa nhẹ tiêu biểu Grain 80 cần đến 1294 GE để đạt thông lượng 725 Mbps, hay Trivium x64 cần đến 4921 GE để có thông lượng 22300 Mbps 15 16 16 32 64 8 16 32 32 32 32 32 32 32 32 32 312 81 41 21 1333 36 170 87 45 24 225 513 129 65 33 17 417 51 34 255 533 100 40 30 50 1016 Thấp 724.6 649.4 632.9 617.3 358.4 413.2 359.7 408.2 350.9 348.4 392.2 925.9 584.8 581.4 540.5 452.5 413.2 88.1 63.0 188.3 121.9 155.0 54.4 35.2 131.2 80.0 Cao Area NAND GE, gates Max Clock freq MHz Bits/Cycle 16 16 32 64 8 16 32 16 32 32 0.994 5.28 13.84 18.96 2.37 0.124 Thấp 1294 1678 2191 3239 2599 2660 2801 3185 3787 4921 4760 1857 2129 2489 3189 4617 5039 13159 15032 18819 12126 12914 16394 18626 5398 3400 Thấp Total Pow10 MHz, µW 80 80 80 80 80 80 80 80 80 80 80 128 128 128 128 128 128 256 256 256 256 256 256 256 128 128 Leakage power, µW Grain80 Grain80, x4 Grain80, x8 Grain80, x16 Trivium Trivium, x4 Trivium, x8 Trivium, x16 Trivium, x32 Trivium, x64 F-FCSR-H Grain128 Grain128, x4 Grain128, x8 Grain128, x16 Grain128, x32 Mickey128 Phelix, ½ md Phelix, md Sosemaunk Salsa20, 1h Salsa20, 4h Salsa20, 16h Salsa20, 32h AES[7]* AES[17]* Tốt Load/ini cycles Key Hệ mật Interface Bảng 1-3: Kết triển khai thuật tốn mã hóa nhẹ phần cứng (1) [17] 2.22 3.24 4.63 7.40 3.84 4.04 4.45 5.84 7.50 10.68 7.97 2.70 3.81 4.90 6.88 11.44 8.14 23.90 27.60 33.55 19.36 22.34 31.43 35.06 Thấp 109.45 126.59 150.66 200.53 181.18 184.83 199.59 231.23 282.55 374.19 269.27 167.73 183.37 205.12 254.64 344.74 310.73 928.85 1432.37 812.47 708.46 883.94 2368.98 3375.28 Thấp 16 Bảng 1-4: Kết triển khai thuật tốn mã hóa nhẹ phần cứng (2) Hệ mật Thông lượng (Mbps) Grain80 Grain80, x4 Grain80, x8 Grain80, x16 Trivium Trivium, x4 Trivium, x8 Trivium, x16 Trivium, x32 Trivium, x64 F-FCSR-H Grain128 Grain128, x4 Grain128, x8 Grain128, x16 Grain128, x32 Mickey128 Phelix, ½ md Phelix, md Sosemaunk Salsa20, 1h Salsa20, 4h Salsa20, 16h Salsa20, 32h AES[7]* AES[17]* Tốt 725 2,778 5,063 9,877 355 1,653 2,878 6,531 11,228 23,300 3,137 926 2,339 4,651 8,648 14,480 413 1,410 2,016 6,026 121 818 753 668 311 10 Cao Năng lượng tính toán (uW) 7,772 8,659 9,247 11,929 6,360 7,475 7,024 9,205 9,658 12,677 10,255 15,283 10,505 11,646 13,399 15,093 12,512 7,997 8,879 14,702 8,423 13,380 12,756 11,801 Thấp Năng lượng/ bit (pJ/bit) Vùng thời gian sản phẩm (um2– us) 10.73 3.08 1.83 1.21 17.74 4.52 2.44 1.41 0.86 0.57 3.27 16.51 4.49 2.50 1.55 1.04 30.28 5.67 4.40 2.44 69.47 16.35 16.93 17.67 Thấp 9.26 3.13 2.24 1.70 37.58 8.34 5.05 2.53 1.75 1.14 7.87 10.39 4.72 2.77 1.91 1.65 63.21 48.39 38.65 16.19 518.50 81.80 112.82 144.56 90.12 1776.33 Thấp Năng Thơng lượnglượng / Diện tíchdiện tích Thời gian (kbps/um2) (nJ-um2) 108.00 72.0 319.33 26.8 445.78 20.7 588.27 20.3 26.61 239.1 119.88 62.3 198.16 35.4 395.57 23.3 571.88 16.9 874.14 14.5 127.13 80.7 96.20 158.9 211.98 49.6 360.52 32.3 523.10 25.6 604.92 24.9 15.82 790.9 20.66 387.0 25.88 343.2 61.77 238.0 1.93 4367.3 12.22 1094.6 8.86 1439.2 6.92 1705.9 11.10 0.56 Cao Thấp 17 1.2.2 Các thuật toán đặc trưng 1.2.2.1 Hệ mật ChaCha ChaCha biến thể hệ mật mã dòng Salsa202 – hệ mật có tốc độ nhanh AES ChaCha phát triển Daniel J Bernstein (University of Illinois at Chicago, USA) năm 2008 (SASC 2008) ChaCha20 với 20 vòng chuẩn hóa IETF RFC 7539 ChaCha sử dụng 256 bits khóa, đếm khởi tạo 32 bits vector khởi tạo 96 bits Ngồi khóa bí mật IV, nhận số 128 bits đếm khối 32 bits để xuất số giả ngẫu nhiên 512 bits Trong vòng lặp, ChaCha sử dụng phép cộng, phép XOR phép dịch bit để cập nhật trạng thái từ 32 bits khởi tạo 𝑎 += 𝑏; 𝑑 ^ = 𝑎; 𝑑
- Xem thêm -

Xem thêm: Mật mã dòng trong mật mã nhẹ và triển vọng trong iot , Mật mã dòng trong mật mã nhẹ và triển vọng trong iot

Gợi ý tài liệu liên quan cho bạn