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 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ân dướ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ận vă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ệu khá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ích dẫ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ời cam đ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 đỡ em trong 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 cho chú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ên lớ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 9MỞ ĐẦU
1 Tính cấp thiết của đề tài
Mô hình Internet of Things (IoT) đã trở nên phổ biến rất lớn trong những năm gần đây Thiết bị IoT được trang bị là các cảm biến hoặc thiết bị truyền động [1] [2] Các thiết bị IoT bao gồm máy tính cá nhân, máy tính xách tay, máy tính bảng, điện thoại thông minh, PDA, thiết bị gia dụng thông minh và các thiết bị cầm tay khác [11 13]
Sự 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ộc số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ông minh 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ệu quả 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 khu vự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ật thô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ông tin 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ông tin 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ác cô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áp bảo mật cho các thiết bị IoT trong gia đình (SmartHome) hoặc mô hình nông nghiệp thô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ặc trong 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ông nghiệ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ên quan 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ác thiết bị IoT và ứng dụng thử nghiệm trong mô hình nhà thông minh hoặc mô hình nô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ứu củ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 12CHƯƠNG 1: TỔNG QUAN VỀ IoT
1.1 Định nghĩa về IoT
Thiết bị (device): Đối với Internet Of Things, đây là một phần của cả hệ thống với chức năng bắt buộc là truyền thông và chức năng không bắt buộc là: cảm biến, thực thi,thu thập dữ liệu, lưu trữ và xử lý dữ liệu
Internet Of Things: Là một cơ sở hạ tầng mang tính toàn cầu cho xã hội thông tin, mang đến những dịch vụ tiên tiến bằng cách kết nối các “Things” (cả physical lẫ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ác thô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ật chấ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ông tin 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ông nghệ đượ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ếp sau đó nó cũng được dung nhiều trong các ấn phẩm đến từ các hãng và nhà phân tí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 đường liê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ữa hai 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ác thiế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 con người khi chúng ta tương tác với chúng Xu hướng tất yếu trong tương lai, con ngườ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ần thê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 13+ 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ách kế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ếp củ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ối vớ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ũng như 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ển trự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 4 layer 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 141.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 ứng dụ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óm dị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 15+ Chức năng Transporting: tập trung vào việc cung cấp kết nối cho việc truyền thô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ông thườ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ột Gateway hỗ trợ 2 chức năng sau: Có nhiều chuẩn giao tiếp: Vì các Things khác nhau có kiểu kết nối khác nhau, nên Gateway phải hỗ trợ đa dạng từ có dây đến khô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ống là: (1) khi truyền thông ở lớp Device, nhiều device khác nhau sử dụng giao thức khá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 gia vào mạng, hỗ trợ trong việc định tuyến dữ liệu
Trang 16Hì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ểm khá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 server trê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ải kế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ính bả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ới thế giới
Hình 1.3 Mô hình truyền thông thiết bị với đám mây
Trang 171.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ần devices và server Gateway thông thường sẽ kết nối với mạng internet bên ngoài bằ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ất nhanh 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àm nhiệ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 18Đố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 trong IoT Thông qua đó giúp chúng ta có cái nhìn tổng quan về IoT
Trang 19CHƯƠ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ới IoT 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 Internet hoặ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ông minh, 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ông qua 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 20độ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ức nă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 đến cá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ệnh lệ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 21+ 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ác mạ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ặc trự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ác device 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 tin liê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 thi kế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ền thô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 qua mạng dây hoặc không dây General device bao g m các thiết bị và đ dùng cho các domain 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ều khô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 khi ngườ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ụng smart home
Vật dụng mang theo trên người: Có thể kể đến một số thiết bị như Dashbon Mask, đâ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 22SmartBag ba lô có pin dự phòng có thể sạc điện cho các thiết bị di động, kể cả máy tính
Connected cars: Giúp nâng cao những trải nghiệm cho người dùng xe ôtô, 1 chiế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ên liệ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ủa hã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, độ ẩm khô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ời gian 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ụng hạ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ảm biế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ượng lớ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ác cô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ôi trường xung quanh khắc nghiệt, không thể đoán trước, và thậm chí là môi trường thù địch bao quanh, ở đó chúng có thể dễ bị hư hỏng Do đó, việc triển khai các cô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 độ cao hơ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 23nhữ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ếu như 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ệu bằ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ới nhữ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ớp mậ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ã hóa
Trong IoT, tầng mạng và tầng ứng dụng kết nối gần với nhau, nên phải lựa chọn:
- Với yêu cầu bảo mật cao, ta sử dụng mã hóa end-to-end
- Với yêu cầu bảo mật thấp, ta sử dụng mã hóa by-hop
Trang 242.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 1 khó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ể nhanh chó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 (stream ciphers) và mã khối (block ciphers) Mã luồng mã hóa từng bit của thông điệp trong khi 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ùng thường là các khối 64 bit Thuật toán tiêu chuẩn mã hóa tân tiến AES (Advanced Encryption Standard), được NIST công nhận tháng 12 năm 2001, sử dụng các khối
Trang 25gồ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ệu quố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ác thuậ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ân hưở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ác chì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àn trong 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ân phố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ệc là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óm gồ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ậm hơ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ác thuậ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ối chì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ầu như đề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ếu dùng public key để mã hóa thì private key sẽ dùng để giải mã và ngược lại Cặp key
Trang 26đượ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 private key 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 so vớ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ới khó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ột ngườ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 27khá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 middle attack): 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ông khai 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ều cầ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ết phụ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ật toán này thường được dùng bổ sung cho nhau để đạt hiệu quả cao Trong mô hình nà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ên giao 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 28đố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ênh truyề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ật giữ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 (Pretty Good Privacy) và GPG (GNU Privacy Guard) v.v Các thuật toán chìa khóa bất đối xứ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ụng là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óa Rijndael
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ường hữ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 29Tù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ép MixColumns
Trang 30 Quá trình mã hóa
Hình 2.5 Sơ đồ tổng quát quá trình mã hóa và giải mã
Hàm AddRoundKey
+ Được áp dụng từ vòng lặp thứ 1 tới vòng lặp Nr
+ Trong bước AddRoundKey , mỗi byte của trạng thái được kết hợp với một
byte của khóa con tròn sử dụng thao tác XOR (⊕)
Hình 2.6 Hàm AddRoundKey
Trang 31 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 )
Hình 2.7 Hàm SubBytes
Hàm ShiftRows
Trong bước ShiftRows , các byte trong mỗi hàng của trạng thái được dịch chuyển theo chu kỳ sang trái Số lượng vị trí mỗi byte được thay đổi khác nhau cho mỗi hàng
Hình 2.8 ShiftRows
Hàm MixColumns
+ Trong bước MixColumns , bốn byte của mỗi cột của trạng thái được kết hợp bằng cách sử dụng một phép biến đổi tuyến tính khả nghịch Hàm MixColumns lấy bốn byte làm đầu vào và đầu ra bốn byte, trong đó mỗi byte đầu vào ảnh hưởng đến tất cả bốn byte đầu ra Cùng với ShiftRows , MixColumn cung cấp sự khuếch tán trong mật mã
+ Trong hoạt động này, mỗi cột được chuyển đổi bằng cách sử dụng một ma trậ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 32Hình 2.9 Hàm MixColumns
Quá trình giải hóa
Thuật toán giải mã khá giống với thuật toán mã hóa về mặt cấu trúc nhưng 4 hàm sử dụng là 4 hàm ngược của quá trình mã hóa Riêng đối với cấu trúc giải mã trong AES gồm 2 chế độ giải mã: - Ở cấu trúc giải mã ngược, gồ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 tạo chỉ có phép biến đổi AddRounKey, vòng lặp gồm lần lượt 4 phép biến đổi chính: InvShiftRows, InvSubBytes, AddRounKey, InvMixColumns; vòng kết thúc khác với vòng lặp chính ở chỗ không có phép InvMixColumns - Ngược lại với cấu trúc giải mã ngược
là 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ôi việ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ể bao gồ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ểm khá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òn trong 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óa cò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ải
mã
Trang 332.3.3 Mô hình ứng dụng mã khối
2.3.3.1 Electronic Codebook – ECB
Trong mô hình ECB, mỗi khối được mã hóa một cách riêng rẽ, dùng chung mộ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 34Hì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, tuy nhiê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 Cipher Block 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 35Hì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 Vector khở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 khi truyề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 36Hì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ông tin, 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ử xung quanh 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úc chung 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 ra cá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 3 nguyê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
Trang 37định của chúng và cơ chế chống lỗi cũng là vấn đề cần kiểm soát
2.5 Nguy cơ hệ thống và các hình thức tấn công
Ba vấn đề cốt lõi với IoT là sự riêng tư cho con người, tính bảo mật của các quy trình kinh doanh và khả năng phụ thuộc của bên thứ ba Người ta thừa nhận rằng trong thiết lập IoTs, có bốn thành phần tương tác (con người, đồ vật, phần mềm và phần cứng) giao tiếp với các mạng công cộng, không đáng tin cậy Đây là những ràng buộc phải đối mặt với an ninh, bảo mật và tổ hợp những vấn đề mở Do
đó, các câu hỏi liên quan đến người dùng, máy chủ và bên thứ ba đáng tin cậy phải được giải quyết Trong tình hình như vậy, an ninh có thể được định nghĩa là một khuôn khổ có tổ chức bao gồm các khái niệm, nguyên tắc, chính sách, thủ tục, kỹ thuật và biện pháp cần thiết để bảo vệ hệ thống tài sản cá nhân cũng như toàn thể hệ thống khi chống lại sự đe dọa bất kỳ cố ý hoặc không cố ý Tất cả những tương tác này cũng phải được đảm bảo bằng cách này hay cách khác, để cung cấp dữ liệu và dịch vụ quan trọng cho tất cả các đối tượng và hạn chế số lượng các sự cố sẽ ảnh hưởng đến toàn bộ IoTs
2.5.1 Nguy cơ hệ thống
Nguy cơ hệ thống được hình thành bởi sự kết hợp giữa các mối đe dọa tấn công đến an toàn hệ thống và lỗ hổng của hệ thống
2.5.1.1 Các mối đe dọa
Các mối đe dọa đến hệ thống có thể được phân loại thành:
+ Mối đe dọa bên trong hệ thống: như password, data, update,
+ Mối đe dọa bên ngoài hệ thống: hacker, virut, internet,
Mục tiêu đe dọa tấn công: chủ yếu là các dịch vụ an ninh (DNS, www…), user ID, file mật khẩu, vị trí file, địa chỉ mạng,…nhằm lợi dụng quyền truy cập, thay đổi, phá hủy, nghe lén thông tin, ăn cắp phần mềm hoặc phần cứng, nhờ đó làm thay đổi cấu trúc nội dung thông tin hoặc lấy cắp thông tin
2.5.1.2 Lỗ hổng hệ thống
Là nơi mà đối tượng tấn công có thể khai thác để thực hiện các hành vi tấn công hệ thống Lỗ hổng hệ thống có thể tồn tại trong hệ thống mạng hoặc trong thủ
Trang 38• Giai đoạn sản xuất: Các thiết bị trong IoTs có xu hướng được thiết kế
hướng tới một nhiệm vụ cụ thể và không chỉ được phát triển bởi cùng một hãng sản xuất Điều này dẫn đến các tấn công trong giai đoạn sản xuất như việc sao chép và làm giả thiết bị bất hợp pháp Các thiết bị sao chép thường được bán với giá rẻ hơn rất nhiều dù có cùng chức năng như các sản phẩm chính hãng Phần mềm của thiết
bị có thể bị thay đổi hoặc cài đặt thêm các chức năng gây hại tới người dùng (ví dụ cửa hậu để ăn cắp thông tin)
• Giai đoạn cài đặt/vận hành: thiết bị được cài đặt một định danh và một
khóa bí mật được sử dụng trong toàn bộ giai đoạn hoạt động Thiết bị có thể bị thay thế bởi thiết bị khác có chất lượng thấp hơn nếu quá trình cài đặt không đáng tin cậy Tấn công giai đoạn này sẽ giúp kẻ tấn công tiết kiệm được tiền cài đặt và có thể thu được lợi nhuận bằng việc bán các sản phẩm chính hãng đã thay thế Những cuộc tấn công khác trong giai đoạn cài đặt liên quan tới việc chiếm dụng định danh và khóa bí mật gây tổn hại đến quá trình cài đặt trong mạng
• Giai đoạn hoạt động: Những tấn công trong giai đoạn này có thể bao gồm:
chặn bắt trên môi trường vật lý, làm gián đoạn hoạt động mạng, từ chối dịch vụ, tấn công nghe lén và các cuộc tấn công điều khiển
Những hiểm họa an toàn đối với các dịch vụ trong IoTs là do nguyên nhân hạn chế về năng lực tính toán, năng lượng và băng thông kết nối Để có thể kiểm
Trang 39thử và nhận biết được những mối đe dọa an toàn và các cuộc tấn công vào IoT, dưới đây sẽ khảo sát các hình thức tấn công cụ thể:
- Tấn công mạo danh: là ăn cắp quyền truy cập của người sử dụng có thẩm
quyền, có thể dẫn tới một loạt các tấn công khác như: cung cấp các thông tin điều khiển sai, kiểm soát nút mạng hoặc ảnh hưởng tới truyền thông trên toàn mạng Một nút mạng giả mạo hình thành khi tấn công giả mạo vào một nút hợp pháp thành công Khi có nhiều nút giả mạo có thể thực hiện cuộc tấn công trên toàn mạng bằng những nút này
- Tấn công tiêu hao tài nguyên nút: xảy ra khi kẻ tấn công liên tục xâm
nhập vào mạng, làm tràn bộ nhớ lưu trữ của nút mạng và còn có thể ảnh hưởng xuống nút phía dưới của mạng, gây tiêu hao tài nguyên mạng
- Tấn công nghe lén thụ động: nghe lén dữ liệu được truyền đi giữa các nút
bằng cách phân tích lưu lượng truyền thông Qua đó, kẻ tấn công có thể tìm hiểu được về hệ thống mạng Để chống lại những tấn công này, có thể dùng biện pháp
mã hóa dữ liệu khi truyền trên kênh Mạng IoTs sử dụng mã hóa an toàn với tấn công nghe lén nhưng lại tồn tại nhiều điểm yếu từ những tấn công khai thác nút bị tổn thương
- Kỹ thuật đánh lừa (Social Engineering): Tấn công này với hai mục đích
chính là đùa cợt và trục lợi Kỹ thuật này phụ thuộc nhiều vào sơ hở của nhân viên, hacker có thể gọi điện thoại hoặc gửi e-mail giả danh người quản trị hệ thống, từ đó lấy mật khẩu của nhân viên và tiến hành tấn công hệ thống Cách duy nhất để ngăn chặn nó là giáo dục khả năng nhận thức của nhân viên về cách đề phòng
Trang 40Hình 2.14 kỹ thuật đánh lừa
- Tấn công tính bí mật: diễn ra tại tầng mạng nhằm mục đích dò tìm những
thông tin định tuyến hoặc dữ liệu trao đổi định tuyến Cuộc tấn công này xảy ra khi thực thể định tuyến để lộ thông tin trong khi kết nối với một thực thể định tuyến ngoài mạng do lỗi cấu hình hoặc một cuộc tấn công vào điểm yếu của thực thể định tuyến Để có thể chống lại tấn công này thì tất cả các nút mạng cần phải được xác thực Việc truyền thông giữa các nút nên theo phương thức ngang hàng (peer-to-peer) để đảm bảo không có nút nào gửi thông tin tới bên nhận chưa được biết Những biện pháp trên không thể ngăn chặn được hết các cuộc tấn công dò tìm thông tin định tuyến sơ hở, nhưng có thể hạn chế được chúng Để thành công thì các cuộc tấn công này phải làm cho các nút tổn thương hoạt động nhiều hơn, nhằm làm lộ, lọt các thông tin định tuyến
- Tấn công từ chối dịch vụ DDoS (Denial of Service): Trên đường truyền
giữa hai nút trong IoTs, dễ dàng xảy ra những tấn công chặn bắt luồng dữ liệu Những cuộc tấn công này có thể khai thác được những dữ liệu mật, khóa,… từ thiết
bị Dựa vào đó, những kẻ tấn công có thể khởi động lại thiết bị khi cần Nếu kẻ tấn công chặn bắt được khóa riêng thì chỉ làm tổn thương một nút mạng, nhưng nếu là khóa chung thì tấn công này có thể ảnh hưởng tới toàn bộ mạng IoTs cũng có thể phải đối mặt với các cuộc tấn công từ chối dịch vụ DDoS từ lớp vật lý làm tắc nghẽn mạng, cản trở thiết bị gây ra mất kết nối, ở hình thức tấn công này Hệ thống
được chọn sẽ bị tấn công dồn dập bằng các gói tin với các địa chỉ IP giả mạo