Vì thế, tiềm ẩn nguy cơ lộ những thôngtin riêng tư trong quá trình truyền dữ liệu, tập hợp, lưu trữ, khai thác và xử lý thôngtin của các thiết bị IoT.Xuất phát từ lý do trên đề tài “Nghi
Trang 1ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
Trang 2LỜI CAM ĐOAN
Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm của cá nhândưới sự hướng dẫn khoa học của TS Nguyễn Văn Tảo Trong toàn bộ nội dung luậnvăn, nội dung được trình bày là của cá nhân hoặc tổng hợp từ nhiều nguồn tài liệukhác nhau Tất cả các tài liệu tham khảo đó đều có xuất xứ rõ ràng và được tríchdẫn hợp pháp
Tôi xin chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lờicam đoan của mình
Thái Nguyên, tháng 05 năm 2019
Tác giả
Vũ Anh Dũng
Trang 3LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành đến TS Nguyễn Văn Tảo - người thầy,người đã hướng dẫn khoa học, định hướng và nhiệt tình hướng dẫn, giúp đỡ emtrong quá trình làm luận văn
Em xin gửi lời biết ơn sâu sắc đến quý thầy cô giáo trường Đại học Công nghệthông tin và Truyền thông; Viện công nghệ thông tin thuộc Viện hàn lâm Khoa học
và Công nghệ Việt Nam đã truyền đạt những kiến thức và kinh nghiệm quý báu chochúng em trong thời gian học tập
Xin chân thành cảm ơn các bạn bè, đồng nghiệp, ban cán sự và các học viênlớp cao học CK16H, những người thân trong gia đình đã động viên, chia sẻ, tạođiều kiện giúp đỡ trong suốt quá trình học tập và làm luận văn
Thái Nguyên, tháng năm 2019
Tác giả
Vũ Anh Dũng
Trang 4MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN iii
MỤC LỤC iv
DANH MỤC VIẾT TẮT vi
DANH MỤC HÌNH VẼ vii
MỞ ĐẦU ix
CHƯƠNG 1: TỔNG QUAN VỀ IoT 1
1.1 Định nghĩa về IoT 1
1.2 Kiến trúc IoT 2
1.2.1 Application Layer 3
1.2.2 Service support and application support layer 3
1.2.3 Network layer 3
1.2.4 Device layer 4
1.3 Các mô hình truyền thông IoT 4
1.3.1 Mô hình truyền thông thiết bị với thiết bị 4
1.3.2 Mô hình truyền thông thiết bị với đám mây 5
1.3.3 Mô hình truyền thông thiết bị với cổng giao tiếp 6
1.3.4 Mô hình chia sẻ dữ liệu đầu cuối 6
1.4 Kết luận chương 1 7
CHƯƠNG 2: MÔ HÌNH KẾT NỐI IoT 8
2.1 Cơ sở lý thuyết mô hình kết nối IoT 8
2.2 Phân lớp thiết bị IoT và ứng dụng 9
2.2.1 Phân lớp thiết bị IoT 9
2.2.2 Ứng dụng của IoT 10
2.3 Kỹ thuật bảo mật trong IoT [5] 11
2.3.1 Kỹ thuật mã hóa 12
2.3.2 Thuật toán mã hóa nhẹ tiêu chuẩn mã hóa nâng cao (Advanced Encryption Standard - AES) 17
Trang 52.3.3 Mô hình ứng dụng mã khối 22
2.4 Tầm quan trọng của bảo mật IoTs .25
2.5 Nguy cơ hệ thống và các hình thức tấn công 26
2.5.1 Nguy cơ hệ thống 26
2.5.2 Các hình thức tấn công mạng [6] .27
2.6 Kết luận Chương 2 32
CHƯƠNG 3: THIẾT KẾ VÀ TRIỂN KHAI GIẢI PHÁP BẢO MẬT 33
3.1 Giới thiệu mô hình bảo mật 33
3.1.1 Mô hình chức năng 33
3.2 Triển khai xây dựng giải pháp bảo mật thông tin các thiết bị IoT 34
3.2.1 Bảo mật lớp vật lý 35
3.2.2 Bảo mật định tuyến IoT [11] 36
3.2.3 Bảo mật lớp ứng dụng 37
3.3 Triển khai bảo mật cho ngôi nhà thông minh 40
3.3.1 Mô tả bài toán 40
3.3.2 Giải quyết bài toán 41
3.3.3 Mã hóa đầu cuối 42
3.3.4 Tạo khóa 42
3.3.5 Mô hình mã hóa 42
3.3.6 Môi trường và dữ liệu thực nghiệm 44
3.3.7 Thiết lập phần cứng 45
3.3.8 Lưu đồ thuật toán 51
3.3.9 Kịch bản thực nghiệm 56
3.4 Kết luận chương 3 60
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 61
TÀI LIỆU THAM KHẢO 64
Trang 6DANH MỤC VIẾT TẮT
Trang 7DANH MỤC HÌNH VẼ
Hình 1.1 Kiến trúc IoT 3
Hình 1.2 Mô hình truyền thông thiết bị với thiết bị 5
Hình 1.3 Mô hình truyền thông thiết bị với đám mây 5
Hình 1.4 Mô hình truyền thông thiết bị với cổng giao tiếp 6
Hình 1.5 Mô hình chia sẻ dữ liệu đầu cuối 6
Hình 2.1 Mô hình kết nối chung cho IoT 8
Hình 2.2 Các loại thiết bị khác nhau và mối quan hệ [3] 9
Hình 2.3 Mã hóa đối xứng 13
Hình 2.4 Mã hóa bất đối xứng 15
Hình 2.5 Sơ đồ tổng quát quá trình mã hóa và giải mã 19
Hình 2.6 Hàm AddRoundKey 19
Hình 2.7 Hàm SubBytes 20
Hình 2.8 ShiftRows 20
Hình 2.9 Hàm MixColumns 21
Hình 2.10 Mô hình ECBcuar mã khối 22
Hình 2.11 Mã hóa ECB không che dấu hết thông tin [14] 23
Hình 2.12 Mô hình CBC của mã khối 24
Hình 2.13 Bức ảnh sau khi mã hóa dùng mô hình CBC [14] 25
Hình 2.14 kỹ thuật đánh lừa 29
Hình 2.15 Tấn công DdoS 30
Hình 2.16 Tấn công chuyển tiếp lựa chọn 31
Hình 2.17 Tấn công Wormhole 31
Hình 3.1 Sơ đồ khối chức năng 33
Hình 3.2 Kiến trúc ba lớp của mô hình IoT cơ bản 34
Hình 3.3 Xác thực và mã hóa dữ liệu 35
Hình 3.4 Cấu trúc trường bảo mật trong RPL 37
Hình 3.5 Truyền thông lớp ứng dụng IoT với bảo mật MQTT 38
Hình 3.6 Truyền thông lớp ứng dụng IoT với bảo mật CoAP 39
Trang 8Hình 3.7 Mô hình hoạt động của hệ thống 41
Hình 3.8 Mô hình mã hóa 43
Hình 3.9 Quá trình thực hiện 44
Hình 3.10 Sơ đồ khối phần cứng của hệ thống 45
Hình 3.11 Sơ đồ mạch nguyên lý khối nguồn 46
Hình 3.12 Sơ đồ mạch nguyên lý bàn phím 46
Hình 3.13 Sơ đồ mạch nguyên lý Module Sim 47
Hình 3.14 Sơ đồ mạch nguyên lý cảm biến rung 47
Hình 3.15 Mạch nguyên lý khối hiển thị 48
Hình 3.16 Sơ đồ mạch nguyên lý cơ cấu chấp hành 48
Hình 3.17 Sơ đồ mạch nguyên lý khối cảnh báo 49
Hình 3.18 Sơ đồ mạch nguyên lý Node MCU 49
Hình 3.19 Sơ đồ mạch nguyên lý khối xử lý trung tâm 50
Hình 3.20 Sơ đồ nguyên lý của toàn hệ thống 50
Hình 3.21 Lưu đồ thuật toán chương trình nhúng của phần cứng 52
Hình 3.22 Lưu đồ thuật toán gửi dữ liệu mã hóa lên Server 53
Hình 3.23 Lưu đồ thuật toán mã hóa nhẹ AES 54
Hình 3.24 Lưu đồ thuật toán giải mã nhẹ AES 54
Hình 3.25 Hiển thị dữ liệu lên giao diện Web 55
Hình 3.26 Hệ thống vô hiệu hóa trong 20s và còi kêu cảnh báo 56
Hình 3.27 Tin nhắn gửi tới người dùng khi nhập sai mật khẩu quá 03 lần 56
Hình 3.28 Nhập mã xác nhận nếu đúng là người dùng 57
Hình 3.29 Mã xác nhận được gửi từ hệ thống 57
Hình 3.30 Tin nhắn cảnh báo từ hệ thống 58
Hình 3.31 Trạng thái két khóa trên giao diện Web 59
Hình 3.32 Trạng thái két mở trên giao diện Web 59
Trang 9Sự ra đời và phát triển theo cấp số nhân của các thiết bị kết nối Internet đã vàđang làm thay đổi thế giới Những vật dụng hàng ngày như xe hơi, tủ lạnh, thiết bịcảm biến nhiệt độ… đã có thể hoạt động như chiếc điện thoại thông minh Các thiết
bị IoT như vậy có khả năng tự động hóa và đơn giản hóa nhiều lĩnh vực trong cuộcsống hàng ngày của con người Chẳng hạn, với một ngôi nhà thông minh, người ta
có thể điều chỉnh nhiệt độ ngôi nhà, bật/tắt bóng đèn từ xa; một chiếc xe hơi thôngminh sẽ đưa con người tới nơi cần đến; những ứng dụng thông minh sẽ lên lịch trình
đồ ăn trong tủ lạnh để đảm bảo luôn cung cấp đủ cho người dùng
Trong nông nghiệp, ứng dụng của IoT là những bộ cảm biến đặt trong lòngđất để theo dõi nhiệt độ và các thông số vật lý, hóa học giúp canh tác vụ mùa hiệuquả hơn
Trong y tế, đó là những thiết bị theo dõi đường huyết, kiểm tra huyết áp, vàphát hiện hydrat hóa của con người
Theo dự báo của Gartner, năm 2017 trên toàn cầu sẽ có khoảng 8,4 tỷ thiết bịIoT, tăng 31% so với năm 2016 Trong đó, 67% thiết bị IoT sẽ tập trung ở 3 khuvực là Trung Quốc, Bắc Mỹ và Tây Âu Ước tính đến năm 2020, số lượng thiết bịIoT được đưa vào sử dụng có thể lên tới trên 20 tỷ thiết bị
Với IoT, nhiều thiết bị được kết nối với nhau và kết nối với mạng Internet.Chính điều này tiềm ẩn những nguy cơ về an ninh, an toàn, chẳng hạn như bí mậtthông tin bị tiết lộ, xác thực sai, dữ liệu bị thay đổi hoặc làm giả Do các thiết bị nàyđều có chủ sở hữu và người sử dụng nó, nên dữ liệu thu thập được từ các thiết bị cóthể chứa thông tin cá nhân liên quan chủ sở hữu hoặc người sử dụng nó, chẳng hạn
Trang 10như thói quen, sở thích, hồ sơ sức khỏe… Vì thế, tiềm ẩn nguy cơ lộ những thôngtin riêng tư trong quá trình truyền dữ liệu, tập hợp, lưu trữ, khai thác và xử lý thôngtin của các thiết bị IoT.
Xuất phát từ lý do trên đề tài “Nghiên cứu xây dựng giải pháp bảo mật
thông tin cho các thiết bị IoT ứng dụng” làm luận văn nghiên cứu Luận văn tập
trung tìm hiểu cấu trúc hệ thống IoT, các giải pháp bảo mật cho thiết bị IoT, cáccông cụ hỗ trợ bảo mật cho thiết bị IoT và tập trung nghiên cứu xây dựng giải phápbảo mật cho các thiết bị IoT trong gia đình (SmartHome) hoặc mô hình nông nghiệpthông minh
2 Đối tượng và phạm vi nghiên cứu
+ Đối tượng nghiên cứu của đề tài:
- Kiến trúc hệ thống IoT;
- Các giải pháp bảo mật cho thiết bị IoT;
- Các công cụ hỗ trợ bảo mật cho thiết bị IoT
+ Phạm vi nghiên cứu của đề tài:
- Nghiên cứu bảo mật cho thiết bị IoT trong gia đình (SmartHome) hoặctrong mô hình nông nghiệp thông minh;
- Nghiên cứu các mô hình kết nối IoT trong gia đình hoặc mô hình nôngnghiệp thông minh
3 Hướng nghiên cứu của đề tài
Hướng nghiên cứu chính của đề tài là nghiên cứu các vấn đề lý thuyết liênquan như cấu trúc IoT, mô hình IoT, các giải pháp bảo mật thông tin trong IoT; trên
cơ sở nội dung trên đề tài tập trung nghiên cứu xây dựng giải pháp bảo mật cho cácthiết bị IoT và ứng dụng thử nghiệm trong mô hình nhà thông minh hoặc mô hìnhnông nghiệp thông minh
4 Cấu trúc của luận văn
Cấu trúc của luận văn gồm các phần chính như sau:
Mở đầu: Trình bày tính cần thiết của đề tài, đối tượng, phạm vi nghiên cứucủa đề tài, hướng nghiên cứu và bố cục của luận văn
Trang 11Chương 1: Tổng quan về IoT
Chương 2: Mô hình kết nối IoT
Chương 3: Thiết kế và triển khai giải pháp bảo mật
Trang 12Internet Of Things: Là một cơ sở hạ tầng mang tính toàn cầu cho xã hội thôngtin, mang đến những dịch vụ tiên tiến bằng cách kết nối các “Things” (cả physicallẫn virtual) dựa trên sự t n tại của thông tin, dựa trên khả năng tương tác của cácthông tin đó, và dựa trên các công nghệ truyền thông.
Things: Đối với Internet Of Things, “Thing” là một đối tượng của thế giới vậtchất (physical things) hay thế giới thông tin ảo(virtual things) “Things” có khảnăng được nhận diện, và “Things” có thể được tích hợp vào trong mạng lưới thôngtin liên lạc [10]
Những năm trở lại đây, thế giới đã không còn xa lạ với một xu hướng côngnghệ được gọi là Internet of things (IoT) Có rất nhiều định nghĩa, khái niệm về IoT,tuy nhiên vẫn chưa có một khái niệm về IoT được chấp nhận rộng rãi
Cụm từ “Internet of things” được đưa ra bởi Kevin Ashton vào năm 1999, tiếpsau đó nó cũng được dung nhiều trong các ấn phẩm đến từ các hãng và nhà phântích Họ cho rằng IoT là một hệ thống phức tạp, bởi nó là một lượng lớn các đườngliên kết giữa máy móc, thiết bị và dịch vụ với nhau Ban đầu, IoT không mang ýnghĩa tự động và thông minh Về sau, người ta đã nghĩ đến khả năng kết hợp giữahai khái niệm IoT - Autonomous control lại với nhau Nó có thể quan sát sự thayđổi và phản hồi với môi trường xung quanh, cũng có thể tự điều khiển bản thân màkhông cần kết nối mạng Việc tích hợp trí thông minh vào IoT còn có thể giúp cácthiết bị, máy móc, phần mềm thu thập và phân tích các dữ liệu điện tử của conngười khi chúng ta tương tác với chúng Xu hướng tất yếu trong tương lai, conngười có thể giao tiếp với máy móc chỉ qua mạng internet không dây mà không cầnthêm bất cứ hình thức trung gian nào khác [10]
Các định nghĩa về IoT từ một vài tổ chức tiêu biển:
Trang 13Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin –
2
+ International Telecommunication Union (ITU-T): IoT là một cơ sở hạ tầng
toàn cầu cho xã hội thông tin, cho phép triển khai các dịch vụ tiên tiến bằng cáchkết nối những vật thể (vật lý và ảo) dựa trên các thông tin hợp tác và công nghệtruyền thông sẵn có cũng như đang được phát triển
+ Institute of Electrical and Electronics Engineers (IEEE): IoT là sự thực hiện
việc trao đổi thông tin giữa các trạm thuê bao với một máy chủ trong mạng lõi(thông qua một trạm cơ sở) mà không có sự tương tác của con người
+ The European Telecomunication Standard Institute (ETSI): IoT là sự truyền
thông giữa hai hay nhiều thực thể mà không nhất thiết cần đến sự can thiệp trực tiếpcủa con người
+ Internet Engineering Task Force (IETF): IoT là một mạng toàn cầu kết nối
các đối tượng với các địa chỉ riêng, dựa trên giao thức truyền thông tiêu chuẩn
+ International Organisation for Standardisalion (ISO): IoT là một cơ sở hạ
tầng dàng cho các vật thể, con người, hệ thống và các nguồn thông tin được kết nốivới nhau, cùng với các dịch vụ thông minh cho phép chúng xử lý thông tin cũngnhư phản ứng về thế giới vật lý và thế giới ảo
+ Internet Architecture Board (IAB): IoT cho thấy ở đó một lượng lớn thiết bị
nhúng sử dụng dịch vụ thông tin liên lạc được cung cấp bởi các giao thức Internet.Hầu hết trong số đó được gọi là các đối tượng thông minh không được điều khiểntrực tiếp bởi con người, nhưng chúng tồn tại như là thành phần trong các tòa nhàhoặc xe cộ hoặc ngoài môi trường
1.2 Kiến trúc IoT
Bất kỳ một hệ thống IOT nào cũng được xây dựng lên từ sự kết hợp của 4layer sau [4]:
+ Application Layer (Lớp ứng dụng) Application Layer
+ Service support and application support layer (Lớp Hỗ trợ dịch vụ và hỗ trợứng dụng)
+ Network Layer (Lớp mạng)
+ Device Layer (Lớp thiết bị)
Trang 14Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin –
3
Trang 15Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin –
1.2.2 Service support and application support layer
Nhóm dịch vụ chung: Các dịch vụ hỗ trợ chung, phổ biến mà hầu hết các ứngdụng IoT đều cần, ví dụ như xử lý dữ liệu hoặc lưu trữ dữ liệu
Nhóm dịch vụ cụ thể, riêng biệt: Những ứng dụng IoT khác nhau sẽ có nhómdịch phụ hỗ trợ khác nhau và đặc thù Trong thực tế, nhóm dịch vụ cụ thể riêng biệt
là tính toán độ tăng trưởng của cây mà đưa ra quyết định tưới nước hoặc bón phân
Trang 16+ Chức năng Transporting: tập trung vào việc cung cấp kết nối cho việc truyềnthông tin của dịch vụ/ứng dụng IoT.
và tải network gián tiếp thông qua khả năng gateway Ngược lại, các thiết bị có thểgián tiếp nhận thông tin (ví dụ, lệnh) từ network Trong thực tế, các Thiết bị thôngthường bao g m các cảm biến, các phần cứng điều khiển motor, đèn,…
+ Thiết bị Gateway: Gateway là cổng liên lạc giữa device và network MộtGateway hỗ trợ 2 chức năng sau: Có nhiều chuẩn giao tiếp: Vì các Things khácnhau có kiểu kết nối khác nhau, nên Gateway phải hỗ trợ đa dạng từ có dây đếnkhông dây, chẳng hạn CAN bus, ZigBee, Bluetooth hoặc Wi-Fi Tại Network layer,gateway có thể giao tiếp thông qua các công nghệ khác nhau như PSTN, mạng 2G
và 3G, LTE, Ethernet hay DSL
Chức năng chuyển đổi giao thức: Chức năng này cần thiết trong hai tình huốnglà: (1) khi truyền thông ở lớp Device, nhiều device khác nhau sử dụng giao thứckhác nhau, ví dụ, ZigBee với Bluetooth, và (2) là khi truyền thông giữa các Device
và Network, device dùng giao thức khác, network dùng giao thức khác, ví dụ,device dùng ZigBee còn tầng network thì lại dùng công nghệ 3G
1.3 Các mô hình truyền thông IoT
1.3.1 Mô hình truyền thông thiết bị với thiết bị
Mô hình truyền thông thiết bị với thiết bị là mô hình bao gồm nhiều thiết bịEnd Device liên kết vào một thiết bị Router Router là một nút có đầy đủ tính năng,gửi thông tin, nhận thông tin, định tuyến thông tin, cho phép các thiết bị khác giavào mạng, hỗ trợ trong việc định tuyến dữ liệu
Trang 17Hình 1.2 Mô hình truyền thông thiết bị với thiết bị
1.3.2 Mô hình truyền thông thiết bị với đám mây
Mô hình này sẽ gần giống với mô hình truyền thông thiết bị với thiết bị Điểmkhác ở đây là sẽ không cần gateway nữa Các thiết bị sẽ trực tiếp kết nối lên servertrên cloud Yêu cầu để các thiết bị có thể làm được điều đó là các thiết bị phải sửdụng công nghệ kết nối trực tiếp được vào mạng internet như sử dụng kết nối Wifi,2G, 3G, 4G, 5G, Để cài đặt ban đầu cho các thiết bị này kết nối được mạng ta phảikết nối chúng với một thiết bị thông minh khác như điện thoại thông minh, máy tínhbảng, vv Sau đó cấu hình các cài đặt cần thiết để chúng có thể tự liên lạc được vớithế giới
Hình 1.3 Mô hình truyền thông thiết bị với đám mây
Trang 181.3.3 Mô hình truyền thông thiết bị với cổng giao tiếp
Ở mô hình này, các thiết bị sẽ kết nối trực tiếp với gateway Gateway sẽ cónhiệm vụ định tuyến, tiền xử lý dữ liệu và chuyển tiếp dữ liệu giữa 2 thành phầndevices và server Gateway thông thường sẽ kết nối với mạng internet bên ngoàibằng dây để đảm bảo đường truyền được ổn định nhất
Hình 1.4 Mô hình truyền thông thiết bị với cổng giao tiếp
Với cách kết nối này thì các thiết bị truyền nhận dữ liệu với server là rấtnhanh Nhưng khoảng cách để truyền thì sẽ phụ thuộc vào công nghệ truyền tín hiệu
mà thiết bị đó sử dụng Trên thực tế sẽ có nhiều gateway để tăng tốc độ truyền tải
dữ liệu cũng như mở rộng tầm hoạt động của hệ thống
1.3.4 Mô hình chia sẻ dữ liệu đầu cuối
Ở mô hình này, các thiết bị vừa làm chức năng của thiết bị đầu cuối vừa có thểđịnh tuyến cho dữ liệu gửi từ thiết bị khác về Gateway gốc Gateway thì nó vẫn làmnhiệm vụ định tuyến, tiền xử lý dữ liệu và truyền nhận dữ liệu giữa các bên để giữcho kết nối được thông suốt
Hình 1.5 Mô hình chia sẻ dữ liệu đầu cuối
Trang 19Đối với mô hình này thì các thiết bị có thế kết nối với khoảng cách cực xa.Bên cạnh đó thì độ trễ cũng là một vấn đề cần quan tâm Khoảng cách xa thì độ trễtruyền nhận càng lớn.
1.4 Kết luận chương 1
Chương 1 tập trung tìm hiểu và làm rõ một số vấn đề liên quan đến IoT gồm:nguồn gốc ra đời; khái niệm về IoT; kiến trúc kết nối; mô hình truyền thông trongIoT Thông qua đó giúp chúng ta có cái nhìn tổng quan về IoT
Trang 20CHƯƠNG 2: MÔ HÌNH KẾT NỐI IoT 2.1 Cơ sở lý thuyết mô hình kết nối IoT
Hình 2.1 Mô hình kết nối chung cho IoT
Cảm biến: Cảm biến có ở khắp mọi nơi, từ cảm biến nhiệt độ, ánh sáng, độ
ẩm đến các cảm biến sinh, trắc học để lấy thông tin về sức khoẻ của con người.Nhiệm vụ của cảm biến là thu thập mọi loại thông tin khác nhau và chia sẻ nó vớiIoT Gateway/Framework
IoT Gateway/Frameworks: IoT gateway là một cổng kết nối tới Internet cho
tất cả các vật/thiết bị mà chúng ta muốn tương tác Nhiệm vụ của IoT gateway làchuyển giao dữ liệu giữa các thiết bị cảm biến trong mạng nội bộ với mạng Internethoặc World Wide Web
Cloud Server: Dữ liệu được truyền qua gateway được lưu trữ và xử lý một
cách bảo mật bên trong một máy chủ Cloud server (hay còn gọi là Trung tâm dữliệu) Các dữ liệu đã được xử lý sẽ được sử dụng để thực hiện cách hành động thôngminh, biến các thiết bị thành thiết bị thông minh (Smart Devices)
Ứng dụng di động: Các ứng dụng di động là phương tiện trực quan dành cho
người dùng cuối, cho phép họ theo dõi và điều khiển các thiết bị từ bất cứ đâu thôngqua Internet Các ứng dụng này sẽ hiển thị các thông tin quan trọng lên thiết bị di
Trang 21động của người dùng, ngoài ra nó còn cho phép người dùng gửi các lệnh điều khiển các thiết bị thông qua giao diện người dùng.
Cơ chế hoạt động: Dữ liệu được thu thập thông qua các cảm biến và mọi dữ
liệu được truyền đến cổng giao tiếp, sau đó dữ liệu được gửi lên đám mây,tại đây dữliệu được lưu trữ, phân tích, xử lý nhằm phục vụ cho các mục đích khác nhau, hoặc
dữ liệu được xử lý và ra quyết định điều khiển thiết bị hoặc thực hiện một chứcnăng cụ thể
2.2 Phân lớp thiết bị IoT và ứng dụng
2.2.1 Phân lớp thiết bị IoT
Hình 2.2 Các loại thiết bị khác nhau và mối quan hệ [3]
Các “Communication networks” chuyển dữ liệu được thu thập từ devices đếncác ứng dụng và device khác, và ngược lại, các network này cũng chuyển các mệnhlệnh thực thi từ ứng dụng đến các device Vai trò của communication network làtruyền tải dữ liệu một cách hiệu quả và tin cậy
Yêu cầu tối thiểu của các “device” trong IOT là khả năng giao tiếp [3] Thiết
bị sẽ được phân loại vào các dạng như thiết bị mang thông tin, thiết bị thu thập dữliệu, thiết bị cảm ứng (sensor), thiết bị thực thi:
Trang 22+ Thiết bị mang dữ liệu (Data carrierring device): Một thiết bị mang thông tinđược gắn vào một Physical Thing để gián tiếp kết nối các Physical Things với cácmạng lưới thông tin liên lạc.
+ Thiết bị thu thập dữ liệu (Data capturing device): Một device thu thập dữliệu có thể được đọc và ghi, đồng thời có khả năng tương tác với Physical Things
Sự tương tác có thể xảy ra một cách gián tiếp thông qua device mang dữ liệu, hoặctrực tiếp thông dữ liệu gắn liền với Physical Things Trong trường hợp đầu tiên, cácdevice thu thập dữ liệu sẽ đọc thông tin từ một device mang tin và có ghi thông tin
từ các network và các device mang dữ liệu
+ Thiết bị cảm ứng và thiết bị thực thi (sensing device and actuation device):Một device cảm nhận và device thực thi có thể phát hiện hoặc đo lường thông tinliên quan đến môi trường xung quanh và chuyển đổi nó sang tín hiệu dạng số Nócũng có thể chuyển đổi các tín hiệu kỹ thuật số từ các mạng thành các hànhđộng(như tắt mở đèn, hù còi báo động …) Nói chung, thiết bị và thiết bị thực thikết hợp tạo thành một mạng cục bộ giao tiếp với nhau sử dụng công nghệ truyềnthông không dây hoặc có dây và các gateway
+ General device: Một general device đã được tích hợp các network thông quamạng dây hoặc không dây General device bao g m các thiết bị và đ dùng cho cácdomain khác nhau của IOT, chẳng hạn như máy móc, thiết bị điện trong nhà, vàsmart phone
2.2.2 Ứng dụng của IoT
Smart Home: Là 1 ngôi nhà với rất nhiều tính năng tự động như bật máy điềukhông khí khi bạn sắp về tới nhà, tắt đèn ngay khi bạn rời khỏi nhà, mở khóa khingười thân trong gia đình đang ở cửa nhà, mở garage khi bạn lái xe đi làm về …còn rất nhiều những tính năng giúp nâng cao chất lượng cuộc sống khi sử dụngsmart home
Vật dụng mang theo trên người: Có thể kể đến một số thiết bị như DashbonMask, đây là 1 chiếc smart headphone giúp bạn vừa có thể nghe nhạc với âm thanh
có độ trung thực cao vừa có thể xem phim HD với máy chiếu ảo , hoặc AMPL
Trang 23SmartBag ba lô có pin dự phòng có thể sạc điện cho các thiết bị di động, kể cả máytính.
Connected cars: Giúp nâng cao những trải nghiệm cho người dùng xe ôtô, 1chiếc Connected car có thể tối ưu các hoạt động của nó như thông báo khi hết nhiênliệu, đưa ra các cảnh báo khi có vật tới gần hoặc mới đây nhất là xe điện tự lái củahãng Tesla…
Nông nghiệp thông minh: Là nền nông nghiệp ứng dụng công nghệ cao (cơgiới hóa, tự động hóa), công nghệ sản xuất, bảo quản sản phẩm an toàn, công nghệquản lý, nhận diện sản phẩm theo chuỗi giá trị, vv… gắn với hệ thống công nghệthông tin hỗ trợ người nông dân giám sát thông số về nhiệt độ, độ ẩm đất, độ ẩmkhông khí, áp suất, ánh sang, gió, mưa của cây trồng giúp người nông dân giảm thờigian lao động, tăng năng suất cây trồng
2.3 Kỹ thuật bảo mật trong IoT
Đối với Internet hiện nay có rất nhiều các giao thức và công nghệ sẵn có đểgiải quyết hầu hết các vấn đề bảo mật, nhưng các công cụ hiện tại có tính ứng dụnghạn chế trong lĩnh vực IoTs do hạn chế về các nodes, phần cứng IoTs và mạng cảmbiến không dây Hơn nữa, các giao thức bảo mật thông thường tiêu thụ một lượnglớn bộ nhớ và các tài nguyên máy tính Một yếu tố khác hạn chế việc thực hiện cáccông cụ bảo mật hiện tại là các thiết bị IoTs thường phải làm việc trong các môitrường xung quanh khắc nghiệt, không thể đoán trước, và thậm chí là môi trườngthù địch bao quanh, ở đó chúng có thể dễ bị hư hỏng Do đó, việc triển khai cáccông cụ bảo mật hiện tại vẫn là một nhiệm vụ đầy thách thức và do đó đòi hỏi phải
có kiến thức chuyên sâu về kỹ thuật an ninh trong IoTs [5]
IoTs tạo ra mạng lưới hàng tỉ các thiết bị kết nối không dây liên lạc với nhau,nên việc quản lí giám sát và bảo mật trở nên rất khó khăn, tất cả những thông tin cánhân của chúng ta đều có khả năng bị theo dõi do những hacker (tin tặc) xâm nhập
và đánh cắp Đối với một người dùng bình thường, những thông tin mật chúng tađôi khi chỉ là những tin nhắn, dòng chat, tài liệu thông thường, nhưng ở mức độ caohơn điều này gây ra hậu quả vô cùng nghiêm trọng đối với các công ty, tập đoàn do
Trang 24những thông tin mật nếu bị tiết lộ ra ngoài sẽ gây thiệt hại rất lớn Tuy nhiên, nếunhư những dữ liệu quan trọng được bảo mật và mã hóa, sẽ rất khó để hacker có thểtheo dõi và đánh cắp được.
Các kỹ thuật an ninh bao gồm: kỹ thuật mã hóa, kỹ thuật bảo mật dữ liệu cảm biến
2.3.1 Kỹ thuật mã hóa
Việc mã hóa dữ liệu, đơn giản là việc tăng thêm một lớp bảo mật cho dữ liệubằng cách chuyển đổi dữ liệu sang một dạng khác thông qua một mã khóa vớinhững quy tắc tùy biến, vì vậy, kể cả khi dữ liệu có bị đánh cắp, việc giải mã dữliệu cũng là rất khó khăn Một ví dụ đơn giản cho việc mã hóa dữ liệu Nếu như chỉđặt mật khẩu cho máy tính, laptop, hacker chỉ cần một vài thủ thuật để bỏ qua lớpmật khẩu (bypass) là có thể truy cập được dữ liệu, hoặc đơn giản chỉ là cắm thiết bịlưu trữ sang một hệ thống khác, tuy nhiên nếu như dữ liệu được mã hóa, kể cả khi
có được dữ liệu rồi cũng rất khó để giải mã được như ban đầu nếu không có mãkhóa
+ Nhược điểm: Các gói tin được giải mã ở mỗi bước nhảy
End-to-end: Bên gửi sẽ mã hóa tin, tin được mã hóa truyền qua các thiết bị
và chỉ được giải mã khi nó đến được bên nhận
+ Ưu điểm: Mỗi hop trên mạng không cần phải có 1 chìa khóa để giải mã, độphức tạp, linh hoạt cao hơn so với By-hop
+ Nhược điểm: tiêu đề, địa chỉ và các thông tin định tuyến không được mã
Trang 262.3.1.2 C ác thuật toán mã hóa
Mã hóa đối xứng (symmetric encryption algorithm)
Là phương pháp mã hóa trong đó việc mã hóa và giải mã sử dụng chung 1khóa (secret key)
Giả sử A cần mã hóa một tập tin để gửi cho B, thì quy trình sẽ như sau:
1 A sử dụng một thuật toán mã hóa, cộng với khóa của A để mã hóa file gửi
2 Bằng cách nào đó, A giao cho B một khóa giống với khóa của A, có thể làgiao trước hoặc sau khi mã hóa tập tin đều được
3 Khi B nhận tập tin, B sẽ dùng khóa này để giải mã ra tập tin gốc có thểđọc được
Hình 2.3 Mã hóa đối xứng
Vấn đề ở đây, đó là A phải làm sao để chuyển khóa cho B một cách an toàn.Nếu khóa này bị lộ ra thì bất kì ai cũng có thể dùng thuật toán nói trên để giải mãtập tin, như vậy thì tính bảo mật sẽ không còn nữa
Thường dùng password như là khóa mã hóa, và bằng cách này có thể nhanhchóng nhắn cho người nhận cùng đoạn password đó để dùng làm khóa giải mã
Thuật toán đối xứng có thể được chia ra làm hai loại, mã luồng (streamciphers) và mã khối (block ciphers) Mã luồng mã hóa từng bit của thông điệp trongkhi mã khối gộp một số bit lại và mã hóa chúng như một đơn vị Cỡ khối được dùngthường là các khối 64 bit Thuật toán tiêu chuẩn mã hóa tân tiến AES (AdvancedEncryption Standard), được NIST công nhận tháng 12 năm 2001, sử dụng các khối
Trang 27gồm 128 bit.
Một số ví dụ các thuật toán đối xứng nổi tiếng: Twofish, Serpent, AES ,Blowfish, CAST5, RC4, Tam phần DES (Triple Data Encryption Algorithm), vàIDEA (International Data Encryption Algorithm – Thuật toán mật mã hóa dữ liệuquốc tế)
+ Tốc độ
Các thuật toán đối xứng nói chung đòi hỏi công suất tính toán ít hơn cácthuật toán khóa bất đối xứng Trên thực tế, một thuật toán khóa bất đối xứng cókhối lượng tính toán nhiều hơn gấp hằng trăm, hằng ngàn lần một thuật toán khóađối xứng có chất lượng tương đương
+ Hạn chế
Hạn chế của các thuật toán khóa đối xứng bắt nguồn từ yêu cầu về sự phânhưởng chìa khóa bí mật, mỗi bên phải có một bản sao của chìa Do khả năng cácchìa khóa có thể bị phát hiện bởi đối thủ mật mã, chúng thường phải được bảo toàntrong khi phân phối và trong khi dùng Hậu quả của yêu cầu về việc lựa chọn, phânphối và lưu trữ các chìa khóa một cách không có lỗi, không bị mất mát là một việclàm khó khăn, khó có thể đạt được một cách đáng tin cậy
Để đảm bảo giao thông liên lạc an toàn cho tất cả mọi người trong một nhómgồm n người, tổng số lượng chìa khóa cần phải có là
Hiện nay người ta phổ biến dùng các thuật toán bất đối xứng có tốc độ chậmhơn để phân phối chìa khóa đối xứng khi một phiên giao dịch bắt đầu, sau đó cácthuật toán khóa đối xứng tiếp quản phần còn lại Vấn đề về bảo quản sự phân phốichìa khóa một cách đáng tin cậy cũng tồn tại ở tầng đối xứng, song ở một điểm nàođấy, người ta có thể kiểm soát chúng dễ dàng hơn Tuy thế, các khóa đối xứng hầunhư đều được sinh tạo tại chỗ
Mã hóa bất đối xứng (asymmetric key algorithms)
Là thuật toán trong đó việc mã hóa và giãi mã dùng hai khóa khác nhau làpulic key (khóa công khai hay khóa công cộng) và private key (khóa riêng ) Nếudùng public key để mã hóa thì private key sẽ dùng để giải mã và ngược lại Cặp key
Trang 28được tạo ra ngẫu nhiên với nhiều chữ số hiển thị, sẽ không thể giải mã ra privatekey nếu biết public key, khối lượng tính toán lớn, gấp hàng trăm hàng ngàn lần sovới thuật toán mã hóa đối xứng.
+ Ứng dụng
Ứng dụng rõ ràng nhất của mã hóa khóa công khai là bảo mật: một văn bảnđược mã hóa bằng khóa công khai của một người sử dụng thì chỉ có thể giải mã vớikhóa bí mật của người đó
Các thuật toán tạo chữ ký số khóa công khai có thể dùng để nhận thực Mộtngười sử dụng có thể mã hóa văn bản với khóa bí mật của mình Nếu một người
Trang 29khác có thể giải mãvới khóa công khai của người gửi thì có thể tin rằng văn bản thực sự xuất phát từ người gắn với khóa công khai đó.
Các đặc điểm trên còn có ích cho nhiều ứng dụng khác như: tiền điện tử,thỏa thuận khóa…
- Khả năng bị tấn công dạng kẻ tấn công đứng giữa (man in the middleattack): kẻ tấn công lợi dụng việc phân phối khóa công khai để thay đổi khóa côngkhai Sau khi đã giả mạo được khóa công khai, kẻ tấn công đứng ở giữa 2 bên đểnhận các gói tin, giải mã rồi lại mã hóa với khóa đúng và gửi đến nơi nhận để tránh
bị phát hiện Dạng tấn công kiểu này có thể phòng ngừa bằng các phương pháp traođổi khóa an toàn nhằm đảm bảo nhận thực người gửi vàtoàn vẹn thông tin Một điềucần lưu ý là khi các chính phủ quan tâm đến dạng tấn công này: họ có thể thuyếtphục (hay bắt buộc) nhà cung cấp chứng thực số xác nhận một khóa giả mạo và cóthể đọc các thông tin mã hóa
+ Khối lượng tính toán
Để đạt được độ an toàn tương đương đòi hỏi khối lượng tính toán nhiều hơnđáng kể so với thuật toán mật mã hóa đối xứng Vì thế trong thực tế hai dạng thuậttoán này thường được dùng bổ sung cho nhau để đạt hiệu quả cao Trong mô hìnhnày, một bên tham gia trao đổi thông tin tạo ra một khóa đối xứng dùng cho phiêngiao dịch Khóa này sẽ được trao đổi an toàn thông qua hệ thống mã hóa khóa bất
Trang 30đối xứng Sau đó 2 bên trao đổi thông tin bí mật bằng hệ thống mã hóa đối xứng trong suốt phiên giao dịch.
Một vài thuật toán mã hóa bất đối xứng: RSA-Rivest shamir adleman, hellman, ECC- Error Correcting Code - mã sửa lỗi
Diffie-Thuật toán trao đổi khóa Diffie–Hellman cho phép hai bên (người, thực thểgiao tiếp) thiết lập một khóa bí mật chung để mã hóa dữ liệu sử dụng trên kênhtruyền thông không an toàn mà không cần có sự thỏa thuận trước về khóa bí mậtgiữa hai bên
Trong thiết kế hệ thống bảo mật hiện đại, hai thuật toán mã hóa đối xứng vàbất đối xứng được sử dụng phối hợp để tận dụng các ưu điểm của cả hai Những hệthống sử dụng cả hai thuật toán bao gồm: SSL (Secure Sockets Layer), PGP (PrettyGood Privacy) và GPG (GNU Privacy Guard) v.v Các thuật toán chìa khóa bất đốixứng được sử dụng để phân phối chìa khóa mật cho thuật toán đối xứng có tốc độcao hơn
2.3.2 Thuật toán mã hóa nhẹ tiêu chuẩn mã hóa nâng cao (Advanced Encryption Standard - AES)
AES (viết tắt của từ tiếng anh: Advanced Encryption Standard, hay Tiêu chuẩn
mã hóa nâng cao) là một thuật toán mã hóa khối được chính phủ Hoa Kỳ áp dụnglàm tiêu chuẩn mã hóa
Thuật toán được xây dựng dựa trên Rijndael Cipher phát triển bởi 2 nhà mật
mã học người Bỉ: Joan Daemen và Vincent Rijmen
AES làm việc với các khối dữ liệu 128 bit và độ dài khóa 128 bit, 192 bit hoặc
256 bit Các khóa mở rộng sử dụng trong chu trình được tạo ra bởi thủ tục sinh khóaRijndael
Hầu hết các phép toán trong thuật toán AES đều thực hiện trong một trườnghữu hạn của các byte Mỗi khối dữ liệu đầu vào 128 bit được chia thành 16 byte, cóthể xếp thành 4 cột, mỗi cột 4 phần tử hay một ma trận 4x4 của các byte, nó gọi là
ma trận trạng thái s
Trang 31Tùy thuộc vào độ dài của khóa khi sử dụng 128bit, 192bit hay 256bit mà thuật toán được thực hiện với số lần lặp khác nhau.
Thuật toán AES khá phức tạp, được mô tả khái quát gồm 3 bước như sau:+ Một vòng khởi tạo chỉ gồm phép AddRoundKey
+ Nr - 1 Vòng lặp gồm 4 phép biển đổi lần lượt: SubBytes, ShiftRows,MixColumns, AddRoundKey
+ Một vòng cuối gồm các phép biến đổi giống vòng lặp và không có phépMixColumns
Trang 33
Hàm SubBytes
Trong bước SubBytes , mỗi byte ở trạng thái được thay thế bằng mục nhập của
nó trong bảng tra cứu 8 bit cố định, S ; bij = S (aij )
Trang 34+ Trong hoạt động này, mỗi cột được chuyển đổi bằng cách sử dụng một matrận cố định (ma trận nhân trái với cột mang lại giá trị mới của cột trong trạng thái):+ Mỗi cột của trạng thái được nhân với một đa thức cố định c (x).
Trang 36là cấu trúc giải mã xuôi, việc ngược lại thể hiện ở điểm: trong cấu trúc giải mã xuôiviệc sắp xếp các phép biến đổi ngược giống hệt với cấu trúc mã hóa, cụ thể baogồm: vòng khởi tạo, Nr-1 vòng lặp và vòng kết thúc.
Trong đó vòng khởi là phép AddRounKey; ở vòng lặp thứ tự các phép biếnđổi ngược lần lượt là: InvSubBytes, InvShiftRows, InvMixColumns, AddRounKey;vòng kết thúc giống vòng lặp nhưng được lược bỏ phép InvMixColumns Một điểmkhác biệt nữa trong hai cấu trúc giải mã ngược và giải mã xuôi đó là: Trong giải mãngược khóa vòng giải mã chính là khóa vòng mã hóa với thứ tự đảo ngược Còntrong giải mã xuôi thì khóa giải mã ngoài việc đảo ngược thứ tự khóa vòng mã hóacòn phải thực hiện phép InvMixColumns đối với các khóa vòng của vòng lặp giảimã
Trang 372.3.3 Mô hình ứng dụng mã khối
2.3.3.1 El e ctronic Co d ebook – E C B
Trong mô hình ECB, mỗi khối được mã hóa một cách riêng rẽ, dùng chungmột khóa K
Hình 2.10 Mô hình ECBcuar mã khối
Trong mã hóa ECB, nếu Pi = Pj thì Ci = Cj và ngược lại Có thể thấy rằng mã ECB tương tự như mã hóa đơn bảng cổ điển, trong đó Pi và Ci giống như là các chữ cái, còn khóa K cùng với mã khối giống như là một phép hoán vị Do đó, người phá
mã có thể dựa vào một số đặc tính thống kê của dữ liệu để tiến hành phá mã, giống
như dùng thống kê tần suất chữ cái để phá mã mã hóa đơn bảng (dù rằng Pi có kích
thước lớn nên đặc tính thống kê cũng khó phát hiện hơn) Vì vậy mã hóa ECB chỉthích hợp để mã hóa những bản tin ngắn
Trang 38Hình 2.11 Mã hóa ECB không che dấu hết thông tin [14]
Để minh họa đặc tính thống kê của dữ liệu, hình trên thể hiện một tấm ảnhđược mã hóa bằng ECB Dù rằng mỗi khối đã được biến đổi qua phép mã hóa, tuynhiên nhìn tổng thể thì vẫn tồn tại một sự liên hệ nào đó giữa các khối
2.3.3.2 C i pher B l ock Chaining – CBC
Trong mô hình CBC, bản mã của một lần mã hóa được sử dụng cho lần mãhóa tiếp theo:
Ci = E(Pi ⊕ Ci-1,K) với i = 1,2,3, … n-1
Do đó để mã hóa khối đầu tiên, người ta dùng một khối dữ liệu giả được gọi là vector khởi tạo (initialization vector – IV) và được chọn ngẫu nhiên:
C0 = E(P0 ⊕ IV,K)
Để giải mã, tiến hành ngược lại:
P0 = D(C0,K) ⊕ IV
Pi = D(Ci,K) ⊕ Ci-1
Trang 39Hình 2.12 Mô hình CBC của mã khối
Người mã hóa và người giải mã phải dùng chung vector khởi tạo IV Vectorkhởi tạo không cần giữ bí mật nên thường được gắn vào trước bản mã trước khitruyền thông điệp (IV, C0, C1, C2 … Cn-1)
Có thể thấy rằng nội dung của bản mã Ci không chỉ phụ thuộc vào bản rõ Pi
mà còn phụ thuộc vào tất cả các bản rõ đứng trước và IV Do đó nếu có hai bản rõ giống nhau thì hai bản mã sẽ không giống nhau (do IV ngẫu nhiên) Điều này khắc
phục được hạn chế của mô hình ECB, từ bản mã người phá mã không thể phát hiện
ra những đặc tính thống kê củadữ liệu
Ngược lại, đối với việc giải mã, bản rõ Pi không chỉ phụ thuộc vào bản mã Ci
mà còn phụ thuộc vào bản mã Ci-1 đứng trước Do đó nếu xảy lỗi trên đường
truyền, chỉ cần một bít bị hỏng thì dẫn đến không thể giải mã được bản mã đó vàbản mã tiếp theo sau
Trang 40Hình 2.13 Bức ảnh sau khi mã hóa dùng mô hình CBC [14]
2.4 Tầm quan trọng của bảo mật IoTs.
Internet của vạn vật hay IoTs mang tới một viễn cảnh về sự hợp nhất thôngtin, nơi không chỉ hệ thống máy tính mà còn là tất cả những thiết bị điện tử xungquanh con người, đều sở hữu khả năng cảm biến, có thể hợp tác với nhau nhằm tạođược sự tiện lợi và thông minh nhất cho cuộc sống con người Tuy nhiên, chính do
sự đa dạng từ mẫu mã, thiết kế, nguồn điện năng tiêu thụ cũng như khả năng xử lýchênh lệch lại gây ra các thách thức vô cùng lớn trong việc định hình một cấu trúcchung cho IoTs cũng như việc đảm bảo an ninh theo cấu trúc chung đó
Vấn đề quyền riêng tư và bảo mật thông tin, kiểm duyệt thông tin đang đặt racác bài toán cần giải quyết, với IoTs số lượng các bài toán này còn lớn hơn bởi 3nguyên nhân chính:
- Các mô hình kinh doanh, ứng dụng, chuẩn hóa giao thức và hạ tầng cơ sởgiữa các nhà sản xuất là vấn đề mà các bên tham gia phải cùng giải quyết
- Việc kết nối hàng tỉ các thiết bị trên thế giới đòi hỏi sự kiểm soát, quản lýchặt chẽ trở nên phức tạp hơn rất nhiều
- Khi máy móc can thiệp tự động và sâu rộng vào cuộc sống, sự hoạt động ổn