NHIỆM VỤ VÀ NỘI DUNG:— Tìm hiểu về mang cảm biến không dây.— Xây dựng cơ chế bảo mật kênh truyén dành cho TinySQL.— Ứng dụng mã hóa ECC và một mô hình trao đổi Key dành cho mạng cảm biến
Trang 1ĐẠI HỌC QUỐC GIA TP HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Trang 2Công trình được hoàn thành tại: Trường Đại Học Bach Khoa - ĐHỌG TPHCM
Cán bộ hướng dẫn khoa học: TS Lê Dang Quang - 2 5552522222 2s2s2<c:
TS Võ Quế Sơn -¿- te SESx SE EEEEEEEEEree,
Cán bộ chấm nhận Xét Í: - G-G E138 E58 E8 E518 E8 15818 515111115811 E11E1 11115811 xe
Cán bộ chấm nhận Xét 2: - - G1331 S8 E8 515818 5158181515818 1151111111111 E11 18111115811 xe
Xác nhận của Chủ tịch Hội đồng đánh giá luận văn và Trưởng Khoa quản lý chuyên
ngành sau khi luận văn đã được sửa chữa (nêu có).
CHỦ TỊCH HOI DONG TRUONG KHOA ĐIỆN —- ĐIỆN TỬ
Trang 3ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập — Tự do — Hạnh phúc
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: Nguyễn Mạnh Hùng 5 s5: MSHV: 7140445Ngày, tháng, năm sinh: 08/08/1990 ẶẶẰẰ S2 Nơi sinh: Nha Trang
Chuyên ngành: Kỹ Thuật Viễn Thông - 5 555: Mã số: 60520208I TÊN ĐÈ TÀI: “Xây dựng hệ cơ sở dữ liệu TinySQL cho mạng cảm biếnkhông dây có bảo mật kênh truyền”
NHIỆM VỤ VÀ NỘI DUNG:— Tìm hiểu về mang cảm biến không dây.— Xây dựng cơ chế bảo mật kênh truyén dành cho TinySQL.— Ứng dụng mã hóa ECC và một mô hình trao đổi Key dành cho mạng cảm
biến không dây.— Thực hiện mô phỏng và thực nghiệm dé đánh giá kết quả.Kết quả đạt được:
Tạo một mang cảm biên gôm có 4 node băng thiết bị vật lý và thử nghiệm trongthực tế dùng dé đánh giá kết quả của dé tài
Il NGÀY GIAO NHIEM VU: 11/01/2016II NGÀY HOÀN THANH NHIEM VỤ: 17/06/2016
IV CÁN BỘ HƯỚNG DAN: TS LE ĐĂNG QUANG
TS VO QUE SON
TP.HCM, ngay 17 thang 06 nam 2016CAN BO HUONG DAN CHU NHIEM BO MON DAO TAO
TS Huynh Phu Minh Cuong
TRUONG KHOA ĐIỆN —- ĐIỆN TU
TS Đỗ Hồng Tuan
Trang 4LỜI CÁM ƠN
Em xin chân thành cám ơn các Thay, Cô ở bộ môn Viễn Thông nói riêng và
Thay, Cô ở các Bộ Môn khác của trường Dai học Bach Khoa — Dai học Quốc Gia
Tp.HCM đã truyền đạt cho em những kiến thức, hành trang vô cùng quý báu trongsuốt hai năm qua Em xin cảm ơn bạn bè, anh chị cùng khóa đã có nhiều sự giúp đỡem trong quá trình học tập Em xin chân thành cảm ơn thầy Võ Quế Sơn đã trực tiếphướng dẫn giúp em hoàn thành đề tài này Em cảm ơn sự chia sẻ, động viên và chỉ bảotận tình của thầy đã giúp em có nhiều cải thiện trong phương pháp làm việc, truyềncảm hứng cho em, cũng như giúp em giải quyết những khó khăn trong lúc thực hiện
đề tài.
Tp.HCM 12/06/2016Sinh viên
Nguyễn Mạnh Hùng
Trang 5TOM TAT LUẬN VĂNLuận văn nghiên cứu thiết kế giao thức bảo mật dành cho mạng cảm biến
không dây hỗ trợ hệ cơ sở dữ liệu TinySQL Việc sử dụng TinySQL trong mạng cảm
biến không dây sẽ giúp tăng cường kha năng quản lý dit liệu được thu thập, xây dựngmô hình mạng cảm biến thụ động, giảm chỉ phí năng lượng, triển khai các ứng dụngtrên từng node cảm biến và tận dụng được dung lượng lưu trữ lớn trên thiết bị.TinySQL cho phép biến một node cảm biến thành một database server độc lập vàcung cấp các tính năng cơ bản của một database như tao bảng dữ liệu, insert, select,các toán tử so sánh, đồng thời hỗ trợ cơ chế index giúp tăng tốc xử lý câu truy van.Tuy nhiên, cũng giống như nhiều ứng dụng trong mạng cảm biến không dây, dữ liệutrao doi của TinySQL ở dạng Plaintext, được truyền broadcast trong không gian vàmạng Multhop Do đó van dé bảo mật dữ liệu vẫn chưa được chú trọng Đề tài tập
trung vào việc nghiên cứu xây dựng một giao thức bảo mật dành cho TinySQL Giao
thức bảo mật phải có tính tương thích với các thiết bị trong mạng cảm biến không dâycó tai nguyên hạn chế Đông thời giao thức phải đáp ứng được các tiêu chí về bảo mậtnhằm bảo vệ thông tin dữ liệu thu thập được và tạo kênh truyền an toàn khi muốn điềukhiến các thiết bị từ xa Bên cạnh do, giao thức bảo mật được thiết kế để có thể tươngthích với nhiều ứng dụng khác nhau trong mạng cảm biến không dây
Nhiệm vụ đầu tiên luận văn tập trung nghiên cứu các mồ hình bảo mật hiệnđang được sử dụng hoặc đánh giá phù hợp với mạng cảm biến không dây ở các khíacạnh cơ chế mã hóa, xác thực, phân phối key Luận văn nghiên cứu thêm các mô hìnhbảo mật được sử dụng trong mạng máy tính thông thường để tham khảo Luận văn
đánh giá mục đích, tính năng, ưu khuyết điểm của các cơ ché bảo mật trên nhằm đưa
ra một mô hình bảo mật phù hợp với mạng cảm biến không dây
Sau khi cần nhac kỹ lưỡng, luận văn chọn giao thức bảo mật TLS làm mô hìnhtham khảo chính để xây dựng một giao thức bảo mật khác phù hợp hơn với mạng cảmbiến không dây cũng như dé dàng tích hợp vào TinySQL va đặt lên là Lightweight
TLS (Lw-TLS).
Trang 6Nhiệm vụ tiếp theo luận văn này là thử nghiệm các thuật toán mã hóa ECC vớikích thước key 160 bit ECDH và ECDSA trên các thiết bị mạng cảm biến Luận văntiếp tục triển khai tiếp các thuật toán bảo mật khác gồm AES-128, MD5, PRF, HMACtrên các node cảm biến.
Luận văn tiễn hành thiết kế giao thức Lw-TLS và triển khai vào chương trìnhmô phỏng và trong thực tế Luận văn thong kê các kết quả mô phỏng và thực nghiệmđể đánh giá khả năng bảo mật của giao thức Lw-TLS và cũng như cung cấp số liệu
hữu ích cho những nghiên cứu sau này.
Trang 7ABSTRACTSThe Thesis researches about designing a security protocol for Wireless SensorNetworks which support TinySQL Database Using TinySQL in Wireless SensorNetworks (WSNs) will enhance the ability of managing collected data, buildingpassive sensor networks, decreasing power consumption, implementing application onwireless sensor devices, taking advantage of large storage TinySQL allows making awireless sensor device become an independent database server and provides basicfunctions such as creating data tables, inserting and selecting data, compare operators,supporting index schemes help improve query processing speed However, like asmany other Wireless Sensor Networks applications, TinySQL communicates data inplaintext, broadcast and multi-hop networks Therefore, security problems are notconcerned The Thesis focuses on research and deploying a security protocol forTinySQL The protocol has to be compatible with Wireless Sensor Network devices,which have constrained resource On the other hand, the security protocol has tosatisfy security standards to protect collected data and be able to create a securedcommunication channel to control remote devices In additions, the security protocolcan be compatible with other Wireless Sensor Network applications.
The first task of Thesis is research about security models used or introduced inWSNs Those models are appropriate in some aspects such as encryption,authentication and key distribution scheme The Thesis also researches other securitymodels using in computer network as references The Thesis evaluates the purposes,functions, strengths and weaknesses of the models to design an appropriate model forWSNs.
After considering carefully, the Thesis chooses TLS protocol as a mainreferenced model to build another protocol which is more suitable with WSNs, be ableto integrate with TinySQL, and named Lightweight TLS (Lw-TLS).
Next, the Thesis experiments Elliptic Curve Cryptography (ECC) algorithmssuch as Elliptic curve Diffie-Hellman (ECDH) and Elliptic Curve Digital SignatureAlgorithm (ECDSA) with 160 bit key length on WSNs devices The Thesis continuesto deploy other cryptography algorithms such as Advanced Encryption Standard
Trang 8(AES), MD5, Pseudorandom function (PRF), Hash-based message authenticationcode (HMAC) on those devices.
Finally, the Thesis designs a security protocol, deploys in Cooja simulationsoftware and practice The Thesis statistics experiments to evaluate security ability ofLw-TLS protocol and provides useful data for next research.
Trang 9LỜI CAM ĐOANTôi xin cam đoan răng toàn bộ công trình nghiên cứu trong luận văn này là kếtquả nghiên cứu của tôi trong 5 tháng qua Không có sự sao chép nao đối với các côngtrình nghiên cứu, tài liệu hay bài báo đã được công bố trước đây.
Luận văn trình bày các kết quả đạt được một cách trung thực dựa theo quá trìnhlàm và thử nghiệm thực tế của tôi Luận văn có thảm khảo nhiều bài báo và tài liệu đểcó những cơ sở khách quan trong quá trình thực hiện và được để cập trong phân tài
liệu tham khảo.
TP Hồ Chí Minh, ngày 17 tháng 06 năm 2016
Học viên thực hiện
Nguyễn Mạnh Hùng
Trang 10MỤC LỤC
Chương 1: GiGi ThÏỆU d0 55G G55 9 9 9 9 98 999 09.08 96 0 090009909 9.000 00 000000090900 900006600000 1
Chương 2: Mạng cảm biến không diâyy 2 ° << sex s se exexeseeesesese 4
Chương 3: TinySQLL, << co 5 5 9 9 9.9 0 0 9.00 5 00 00000000004 9 0 000 000000009900 90000600000 73.1 Giới thiệu về TinySQL, - 6-5222 E232 12122121112121121211111112121101211 1 11k 7
3.2 Y tưởng và Ưu điểm của TinySQLL, :- 5: 5-52 S222 1 21211 212212171211212121 12x xe 7
3.3 Mô hình hoạt động của TInySQL - - c1 119g ng ng ngu 9
Chương 4: Các Phương pháp bảo mật trong mạng cảm biến không dây 14
4.1 Các kỹ thuật bảo mật có thé được triển khai trong mang cảm biến không dây 144.1.1 TEEE802.15.4 Datalink S€CUTIẨY H2 HH ng HH ng 14“Ai 4 15AB TLS 16"000 e 174.2 Thuật toán Ma hóa - - - C01001 1101103 1111100 111K vn TH cv crg 17AQ RCS eee 4 172 18A23 ECC 4 20A.3 Phurong phap Xac thc eee =.- Ả 214.4 Cơ chế Phân phối Key o ccccccccccccccscssssessssssessssessssesscscssssesessssssssesussseussssssesesesscesseeseeen 244.4.1 Một số cơ chế phân phối key dành cho mạng phân bồ (distributed network) 254.4.2 Cơ chế phân phối key dành cho mạng có kiến trúc phân tang (Hierachical) 27
4.4.3 Cơ chế phân phối Key dùng mã hóa ECC + - 2 25E+S+E+2E+E£E££zzEzEzrrxcxee 28
4.5 Mã hóa bất đối xứng ECC dành cho mạng cảm biến 5-5255 52222£2+2xcs+2 29A.6 Giao 22051 e.- 334.6.1 Các thuật toán quan trọng được sử dụng trong trong giao thức TLS 334.6.2 Mô hình hoạt động giao thức TLS - - c6 112111911199 1n ng vn ưu 36
Trang 114.7 Giao thức bảo mật Lightweight TLS được thiết kế dành cho Mang cảm biển không dây
¬ 40
4.7.1 Giới thiệu về Lightweight TIL/S - ¿+52 SES2 22392 2EEEE2EEE2E2E212122 211.222, 404.7.2 Những thay đổi của Lightweight TLS so với TLS 2- 52 5xc5zcs+sccse2 42“VN 0n ng ola r(4(aa Ai đdiỶiỶŸ3ẢŸẲŸÃŸẼẢŸẢÝÝẢẼŸẼẼŸẼŸ3Ả 454.7 A Giao thức Lw-TLS Handshake - - - c2 1011 9931119991 1n ven 464.7.5 Mã hóa và giải mã dữ lIỆU - - - G1 1n ng ng ng 55
4.7.6 Cơ chế xử lý lỗi và chống tân công ¿-2- ¿5222222222223 22212222 xcrke 56
4.7.7 Giao thức Rime dùng để truyền dữ liệu trong mạng cảm biến hỗ trợ TinySQL 574.7.8 Tích hợp giao thức Lightweight TLS vào TinySQLL «5525 cs+ssxe2 59
Chương 5: Kết quả mô phồng và thực nghiệm 2-5-5 < 5 se se se essesessesesese 60
5.1 Mô phỏng cọ ng Họ nọ kh 60khít nai 0/19 17 Ả ố 605.1.2 Kịch bản mô phỏng - - - 2s E1 1921119111 910 1199 2g ng kg 615.3 Thutc nghiém 695.3.1 Giới thiệu về Telos B TMote Sky c.ccccccccccssssesssscsssscsessesessssessssesussesussssnssssesseseees 695.3.2 Thử nghiệm trên phan CUM cccccccccccccsscsessssessssessescsscscsssesessssessssesussssnsessessssesneseees 7
Chương 6: Kết luận và hướng phát triển để tà - 2-5-5 5 se se sseesesesseeesese 73TÀI LIEU THAM KHẢOO << s2 xxx ecsevxsesveessrcxe 75
Trang 12DANH SÁCH HÌNH VE
Hình 2 1 - Các Node mạng cảm biến được ưa chuộng cho WSNs cà eee 5Hình 2 2 - Mô hình một mang cảm biến không dây đơn giản ee - 22522 £2+£+£zszc: 5Hình 3 1 - So sánh năng lượng tiêu tốn giữa việc truyền, nhận, đọc, ghi 100 byte dữ liệu 8Hình 3 2 - Kiến trúc của TinySQL [ I ] ¿5-5 5£25SE2E£S22E2EEEE2EE222EE2121212122121212121 E2 xe 9Hình 3 3 - Ví dụ một bảng dữ liệu của Antelope [ Ï | - 251111133335 ESSskksesse 10Hình 3 4 - Mô hình xử lý câu truy van của Antelope [1 ] ¿2 ¿5+5 ++x+zzzx+xzszxersez 12Hình 4 1 - Câu trúc gói tin Encapsulating Security Payload (ESP) [3] - 15Hình 4 2 - Mạng IoT sử dụng DTLS để bảo vệ sự liên lạc giữa các node cảm biến trongmạng 6LoWPAN&s và host trong mạng Internet[3 | - - << + 3 32 11 311 9 rsey 17Hình 4 3 - Mã hóa AES-CTR [Ã ] - 5 22 1192101193911 1991 11 9 110g nh 19Hình 4 4 - Mã hóa AES-CBC-MAC [3] oo cee eeeecesenceesseeceseccesaecesaeessneeesseeensaeecsaeessneeesseees 20Hình 4 5 - Cấu trúc của 5208ì002 0561/00 .0 510 20Hình 4 6 - So sánh về độ an toàn của mã hóa ECC va RSA, DSA [7] -:-s-s=s=s¿ 21Hình 4 7 - ContikiSec Packet [23] - - - 1111111111111 10 5 1111111111111 111111111 1n nghe 23Hình 4 8 - Mô hình mang: Hierarchical và Distributed WSNs [Š5] c~<22 25Hình 4 9 - Mô hình cơ chế phân phối group key cho mạng có phân tang (Hierarchial) [4] 27Hình 4.
Hình 4.Hình 4.Hình 4.Hình 4.Hình 4.Hình 4.Hình 4.Hình 4.
10 - Cơ chế phân phối Key Routing-driven (Routing-driven key management) [4] 28
11 - Đồ thị của phương trình Elliptic Curve [2] ccccccccescccsessesesesesessseseeseseeens 3012 - Mô hình thuật toán HMAC - c2 1111111101211 1111111135 111111113 1c rrey 3413 - Ham Pseudorandom Funcstion (PREF) - S2 31311111 2222eexerrresss 3514 —SSL/TLS Protocol Stack [2] - - << - - - 2c G120 1111111 111111111 101312 1111111 tru 3615 - Quá trình mã hóa dữ liệu cua SSL Payload [2] - -⁄< << s+++<xssss 3716 - TLS record Format [2 ] - - - - - + +5 + 5 + 1 2222313111111 1111111111115 1111111111111 rkg 37L7 - Dinh dạng các gói tin của các giao thức thuộc TLS [2] «- - -««<2 3818 - Giao thức Handshake của TLS [2] - - EEEEEE*E* +3 131 3£22£2££+eexerreesss 39
Trang 13Hình 4 19 - Cau trúc gói tin của giao thức Lw-TIL§ - - ¿©2522c+Ec2E2EEE2EcEzkerrkerrees 45Hình 4 20 - Các trường của Lightweight TLS Record - Ăn se 45Hình 4 21 - Gói tin Change Cipher va Alert của Law- ILỀ -cc sen se 46Hình 4 22 - Gói tin Lw-TLS Handshake Hello - «+ + 2x E333 1E 5111 kkeses 46Hình 4 23 - Gói tin Lw-TLS Handshake C erftIÍ1Cafe - - - - + 1123 E1 3311 39c rseg 46Hình 4 24 - Gói tin Lw-TLS Handshake Finish - - - 5 5 5 1221 331 ke 46Hình 4 25 - Hoạt động cua giao thức Lightweight TLS Handshake 50Hình 4 26 - Lưu đồ giải thuật Lw-TLS SerVer - ¿5-5225 22 2222222121222 eErrke 5Hình 4 27 - Lưu đồ giải thuật Lw-TLS Client - 5: 2 522522 SE2E2E2EEE2EcEzkerrererees 54Hình 4 26 - Lw-TLS Record Payload của giao thức Handshake - «+5 << s+++2 55Hình 4 29 — Quá trình Mã hóa và giải mã dữ GU - - 2 - 25 E221 351135 Eeses 56Hình 4 30 - Rime Stack [24] - - 2c 1200601111111 111 111111101 1 11 1111111111111 1 111k vu ng re 58Hình 4 31 - Tích hợp Lw-TLS vào mô hình WSNs HH ghe 59Hình 5 1 - Mô phỏng mảng cảm biến 20 Node băng Cooja c.ccccccccccscsessssessssessssssesseseeseseeees 60Hình 5 2 - Mô phỏng | - Do thời gian xử lý các thuật toán mã hóa trên SkyMote 62Hình 5 3 - Mô hình mạng mô phỏng 2 - So sánh thời gian xử lý câu truy van khi dùng vàkhông dùng mã hóa AES ooo eecceessneccnsneccessseeeesssaeccsseecesseeecssaaecceseeeeseeeesssaaecsensaeees 63Hình 5 4 - So sánh truy van TinySQL khi dùng và không dùng mã hóa AES 64Hình 5 5 - Mô hình WSNs cho Mô phỏng Ö 2G HH ng ng 65Hình 5 6 - Mô hình WSNs cho Mô phỏng 4 - - 2G HH ng 66Hình 5.7 - Đánh giá khả năng thực hiện thành công giao thức Lw-TLS Handshake trongmang multihop đang chịu tải LOM - - - c1 1132111833111 11 991 1111599111119 vn kh 66Hình 5.8 - Mô hình WSNs cho mô phỏng S5 - - 5 5 1119211119 ng ngư 67Hình 5 9 - Mô phỏng 5 - Đánh giá khả năng truyền nhận dữ liệu được mã hóa trong mạngmultihop đang chỊu tải TỚI - - - - 2c 2201011133111 1133910111191 11 99 111111 ng nh 68Hình 5 10 — Kết qua Mô phỏng 6 — Thử nghiệm Lw-TLS Handshake trong mạng WSNs chịutải lớn do các Client Node thực hiện truy van Database Server Node -. :cscsssessrssd 69
Trang 14Hình 5 11 - TMote Sky và các Module NÑguôn: TÌ - ¿5-5255 S+2E2E£+2Ec£zxezzxerecee2 70Hình 5 12 — Thử nghiệm Mô hình mang 4 node TMote Sky trong thực tế 71Hình 5 13 — Thu nghiệm giao thức Lw-TLS Handshake trong mang có 4 node TMote Sky 72
DANH SACH BANG BIEU
Bang 1 - Các câu lệnh được hỗ trợ bởi TinySQL [1] ¿ ¿25252 252525252 222 £z 222 sec: 11Bang 2 - So sánh mức độ tin cậy dựa vào độ dài key của Mã hóa đối xung-ECC-RSA [2] 33Bang 3 - Những thay đổi của Lightweight TLS so với TLS c.cccccccccsescesesssseseesssesseseeseseeees 42Bang 4 - Thời gian xử lý của các thuật toán sử dụng trong LW-TLS - ««+ +55 62
Trang 15IKE
MAC
MIC
Lw-TLSOCB
PKIPREF
SATLS
DANH SACH CAC TU VIET TAT
Ipv6 over Low Power Area NetworkAccess Control List
Advanced encryption standardAuthentication Header
Certificate AuthorityCipher block chainingConstrained Application ProtocolEncapsulating Security PayloadInternet Key Exchange
Message Authentication CodeMessage Integrity CodeLightweight TLS
Offset CodebookPublic Key InfrastructurePseudorandom functionSecurity AssociationTransport Layer Security
Trang 16Chương 1: Giới Thiệu
TinySQL là hệ cơ sở dữ liệu được thiết kế để dành riêng cho các mạng cảmbiến không dây nơi có tài nguyên hạn chế Việc sử dụng TinySQL trong mangcảm biến không dây sẽ giúp tăng cường khả năng quản lý dữ liệu được thu thập,xây dựng mô hình mạng cảm biến thu động, giảm chi phi năng lượng, triển khaicác ứng dụng trên từng node cảm biến và tận dụng được dung lượng lưu trữ lớntrên thiết bị TinySQL cho phép biến một node cảm biến thành một databaseserver độc lập và cung cấp các tính năng cơ bản của một database như tạo bảngdữ liệu, insert, select, các toán tử so sánh, đồng thời hỗ trợ cơ chế index giúp tăngtốc xử lý câu truy van Tuy nhiên, dữ liệu thu thập khi gửi câu truy vấn tớiTinySQL Server được truyền đi trong mạng ở dạng Plaintext, được truyềnbroadcast trong một mang multihop Vì vậy vấn dé bảo mật dữ liệu vẫn chưađược chú trọng Đề tài tập trung vào việc nghiên cứu xây dựng một cơ chế bảomật dành cho TinySQL, dữ liệu được truyền một cách tin cậy giữa các node cảmbiến nhưng vẫn phải đảm bảo hiệu năng của TinySQL ở một mức độ được chấpnhận Đề tài là một hướng đi nhăm mục đích tìm ra giải pháp nâng cao tính baomật của TinySQL nói riêng và mạng cảm biến không dây nói chung Do đó dé tàitiến hành thử nghiệm nhiều giao thức và thuật toán bảo mật với mong muốn xâydựng được một cơ chế bảo mật có độ tin cậy cao, cũng như mang lại những sốliệu hữu ích cho việc phát triển các phương pháp bảo mật dành cho mạng cảmbiến không dây
Luận văn bao gồm 4 chương trong đó:Chương 1: Giới thiệu tổng quan về dé tài luận văn, giúp người đọc có cái nhìntong quan vé dé tai va những nội dung chính thực hiện trong luận văn
Chương 2 và chương 3: Giới thiệu về mạng cảm biến không dây và ứng dụngcủa mạng cảm biến không dây trong đời sống Tiếp đó, luận văn giới thiệu vềmạng cảm biến không dây hỗ trợ hệ cơ sở dữ liệu TinySQL, ý nghĩa và ưukhuyết điểm của TinySQL Cũng như nhiều ứng dụng của mạng cảm biến không
Trang 17dây khác, TinySQL không hỗ trợ cơ chế bảo mật dữ liệu được truyền trong mạng,từ đó luận văn có ý tưởng cân phải thiết kế một giao thức bảo mật phù hợp với
TinySQL.
Chương 4: Luận văn trình bay kết quả nghiên cứu về các phương pháp bảomật đáng chú ý đang được sử dụng cho mạng cảm biến không dây, phân tích ưukhuyết điểm dé từ đó có thé dé xuất một cơ chế bảo mật phù hợp hơn Trong quátrình nghiên cứu, luận văn nhận thay rằng có một số thuật toán và giao thức baomật mạnh có thể ứng dụng để xây một giao thức đạt mục tiêu dé ra như ECC,AES, MD5, HMAC, PRF và TLS Phân tiếp theo, luận văn trình bày chỉ tiết cơchế bảo mật được thiết kế dành riêng cho mang cảm biến không dây có hỗ trợTinySQL được đặt tên la Lightweight TLS (Lw-TLS) Lw-TLS được lay y tuongtừ giao thức TLS nhưng có nhiều sự thay đối va tối ưu dé phù hợp với mạng cảmbiến không dây
Chương 5: Thực hiện và đánh giá quá trình mô phỏng nham chứng minh khanăng của giao thức LightWeight TLS có thể phù hợp để triển khai trong mạngcảm biến không dây, cũng như xác định những hạn chế để có thể tìm phương án
tôi ưu hơn.
Chương 6: Luận văn trình bày kết quả đạt được và hướng phát triển để hoàn
thiện hơn trong tương lai.
Mục tiêu nghiên cứu của đề tài:
o Nghiên cứu, xây dung giao thức bao mật tương thích với TinySQL và mang
cảm biến không dây
o Giao thức bao mật phải đáp ứng các tiêu chí bảo mật dành cho mang cam
biến không dây gồm tính riêng tư (confidentility), tính xác thực(authentication), tính không thé chối từ (integrity), tính sẵn sàng (available),tính phục hồi (resilence), tiết kiệm năng lượng, sử dụng it tài nguyên CPU vàRAM của thiết bị, có khả năng mở rộng khi có node mới gia nhập mạng
Tpœvy 2
Trang 18WSNs, có thé tạo kênh được một kênh liên lạc khi thực hiện giao thức dễ
dàng (conectivity).
o Năng lượng tiêu tốn thêm trên các node cảm biến khi triển khai giao thức bảo
mật không tăng quá 30%.
Đối tượng và phạm vi nghiên cứuĐối tượng
o Ung dụng mã hóa ECC vào van dé bảo mật cho mạng cảm biến không dây.o Xây dựng giao thức bảo mật Lw-TLS dùng để bảo mật kết nối điểm điểm
giữa 2 node.
o Danh giá ưu khuyết điểm của giao thức Lw-TLS
o Đánh gia kha năng giao thức bảo mật Lw-TLS bị phá vỡ
o_Đánh giá tốc độ xử lý truyền nhận dữ liệu của TinySQL sau khi tích hợp giao
thức bảo mật.Phạm vio Cac cơ chê bảo mật dùng trong mạng cảm biên không day.o Các tiêu chuân đánh giá về sự bao mật trong mạng cảm biên không dây.© Việc sử dụng các cơ chê bao mật như thê nào dé phù hop với mục dich sử
dụng của mạng cảm biến không dây
Trang 19Chương 2: Mạng cảm biến không dâyMạng cảm biến không dây là một tập hợp nhiều node mạng cỡ nhỏ, có thểphân bố ngẫu nhiên trong môi trường Mỗi thiết bị giao tiếp với nhau thông quamột kênh truyền không dây công suất thấp, và tài nguyên trên mỗi thiết bị rất hạnchế về tốc độ của bộ vi xử lý, bộ nhớ chỉ vài KiloByte, năng lượng cung cấp từpin cỡ nhỏ Trong mạng cảm biến không dây, dữ liệu thường được truyền multi-hop trước khi có thé tới sink node, là thiết bị kết nối với máy tính để chuyểnthông tin thu thập được cho người dùng hoặc một máy tính Việc kết nối trực tiếpgiữa sink node và các node cảm biến thường hạn chế vì công suất phát được điềuchỉnh thấp nhằm tiết kiệm năng lượng Mang cảm biến không dây (WSNs) có théđược xem là một dạng của mạng ad-hoc vì nó có thể thiết lập một mạng màkhông cần đến một thiết bị điều khiển trung tâm hoặc cần phải có một hạ tầngmạng sẵn Tuy nhiên WSNs có đặc điểm riêng là tài nguyên hạn chế, thường cómột lượng lớn các node được triển khai với mật độ cao, và thường các nodekhông thay đổi vị trị đặt Với mang máy tính thông thường, nhiệm vu QoS đượcđặt hàng đầu, WSNs tập trung vào van dé sử dụng tiết kiệm năng lượng để kéodai thời gian sử dụng Các node cảm biến trong WSNs tự quản lý để có thé thamgia vào một mạng cảm biến, vì chúng thường được đặt một cách ngẫu nhiên ởnơi mà con người khó tiếp cận Ví du, dé đặt các node cảm bién giám sát một khuriêng, người ta thường rãi các node bằng máy bay.
Sensor Node là những thiết bị có nhiệm vụ thu thập thông tin từ môi trườngbên ngoài qua các cảm biến, ghi lại thông tin trong bộ nhớ và gửi trở lại ngườidùng qua mạng cảm biến Các node này sử dụng Pin, do đó thường sử dụngnhững vi xử lý có tốc độ thấp nhưng tối ưu về chi phí năng lượng như chipMSP430 Trên các node này có thể gan được nhiều loại cảm biến như nhiệt độ,ánh sáng, áp suất khí, địa chấn, từ trường, hồng ngoại, độ âm, âm thanh Ngoàira, các node cảm biến có thể mở rộng thêm chức năng điều khiến các thiết bị
khác néu cân thiết.
Tpavy 4
Trang 20WeC mote Mica Mica2 TelosB Iris
(1999) (2001) (2003) (2007) (2008)
Hình 2 1 - Các Node mạng cảm biến được ưa chuộng cho WSNs
Two AA
Node Sink (Base Station) đóng vai trò là thiết bị trung tâm có nhiệm vu thu
thập dữ liệu trong WSNs Nó có khả năng phân tích dữ liệu, hiện thị cho người
dùng, hoặc gửi đến một hệ thống khác Node Sink có cấu hình mạnh hơn so vớiNode cảm biến do phải xử lý nhiều tác phụ phức tạp hơn và thường được kết nốitrực tiếp vào máy tính
Base station
Region
Hình 2 2 - Mô hình một mạng cảm biến không dây đơn giản
Internet |
Một thành phan rat quan trọng trong mang cảm biến là hệ điều hành, có
nhiệm vu quản lý phân cứng và cung cap các dịch vụ ở tang ứng dụng Hệ điêu
hành cho các node mạng cảm biến được thiết kế tối ưu, phù hợp với tài nguyên
Trang 21hạn chế Hai hệ điều hành phố biến nhất dành cho WSNs là Contiki và TinyOS.Contiki được sử dụng phô biến ở châu Au, trong khi TinyOS được sử dụng nhiều
ở Mỹ.
Ứng dụng của mạng cảm biến không dây rất đa dạng và hữu ích Mạng cảmbiến không dây lần đầu tiên được sử dụng trong lĩnh vực quân sự sau đó trở nênpho biến hơn trong công nghiệp va đời sống Mạng cảm biến không dây có théđược dùng để giám sát, cảnh báo sự xâm nhập của kẻ địch trên chiến trường.Trong lĩnh vực ý tế, các thiết bị mạng cảm biến giúp các bác sỹ thu thập thông tin
tình trạng bệnh nhân từ xa khi họ ở bệnh viện hoặc ở nhà Việc này hỗ trợ các
bác sỹ giám sát bệnh nhân liên tục, nhận được các cảnh báo và có sự điều trị kipthời Ngoài ra mang cảm biến còn giúp con người dé dàng thu thập các thông tinvề điều kiện môi trường như tính trạng chất lượng không khí và nguồn nước,cảnh báo cháy rừng, cảnh báo động đất hoặc các thảm họa thiên nhiên Các mạngcảm biến đặc biệt tiện lợi trong việc giám sát các dây chuyên sản xuất trong nhàmáy tại những chỗ con người không nên tiếp cận như khu vực có hóa chất độchại, phóng xạ cao Con người còn sử dụng mạng cảm biến dé thu thập dữ liệu tạinhững nơi có điều kiện khắc nghiệt như đáy đại dương, miệng núi lửa Mạng cảmbiến không dây còn được ứng dụng vào thiết kế hệ thống nhà thông minh, nơingồi nhà có thé tự động vận hành nhờ sử dụng thông tin node cảm biến được đặt
mọi nơi thu thập như tính trạng ánh sáng, nhiệt độ, quạt, bếp, lọ sưới, hay cảnh
báo rỏ rỉ khi ga, hỏa hoạn hay có kẻ lạ đột nhập để có những điều khiến tựđộng nhanh chóng Người chủ nhà cũng có thể giám sát và điều khiến ngôi nhàcủa mình từ xa thông qua các thiết bị di động
Tpavy 6
Trang 22Chương 3: TinySQL
3.1 Giới thiệu về TinySQLTinySQL là hệ thống quản lý cơ sở dữ liệu dành cho mang cảm biến, chophép biến một node mạng cảm biến thành một database server Nó là một hệ cơ
sở dữ liệu dạng quan hệ cho phép tạo bảng một cách linh động và thực hiện các
câu truy vẫn phức tạp.TinySQL là hệ cơ sở đữ liệu đầu tiên dành cho các node cảm biến có tàinguyên giới hạn, cung cấp kiểu truy vẫn với chi phi năng lượng thấp, mô hình cosở dữ liệu ở bậc cao, đồng thời cho phép index dữ liệu một cách độc lập.MaxHeap Index cho phép insert dữ liệu nhanh, truy vấn một lượng lớn dữ liệutrong khi tiêu tốn rất ít năng lượng Cơ chế MaxHeap index có thé hỗ trợ tốc độtruy van tăng đến 300 lần so với không có index TinySQL sử dụng LogicVM làmột kiến trúc máy ảo có tính đột phá cho phép phân tích và thực thi các câu lệnhở dạng byte-code Việc triển khai TinySQL trong mang cảm biến không dây cũng
tăng cường hiệu quả sử dung năng lượng TinySQL khác với các hệ cơ sở dữ liệu
khác ở 2 điểm chính Thứ nhất, được thiết kế để thực hiện các câu truy vấncreation, insertion và select với sự tiêu tốn năng lượng rất thấp Thứ hai, thiết kếđể thích nghi với kiến trúc của các hệ điều hành của mạng cảm biến không dâyvới sự kết hop của phương pháp “scheduling” và “split-pharse programing”.Thực hiện câu truy vẫn từng dòng một của database và cho phép thực hiện cácprocess khác giữa việc xử lý từng dòng truy vấn
3.2 Ý tướng và Ưu điểm của TinySQLỨng dụng TinySQL vào các mạng cảm biến không dây mang lại nhiều ưuđiểm và lợi ích trong việc lưu trữ, xử lý và truyền tải dữ liệu, đồng thời tiết kiệm
được chi phí năng lượng một cách đáng chú ý.
Vé mô hình mang dữ liệu cảm biến: TinySQL cho phép người dùng có théthu thập dữ liệu khi họ muốn TinySQL sử dụng ngôn ngữ SQL cho phép người
dùng gửi câu truy van tới node cảm biên và yêu cau thu thập bao nhiêu dữ liệu
Trang 23mà họ can TinySQL cho phép người dùng thu thập một lượng lớn dữ liệu đồngthời Như trong trường hợp một node thu thập dữ liệu từ 40 cảm biến, dữ liệu sẽđược tập hợp lại thành một khối lớn và gửi đi một lần thay vì gửi ngay dữ liệuvừa thu thập được Việc này sẽ giảm đáng kế chi phí năng lượng TinySQL còncho phép truyén tai dit liệu qua nhiều node cảm biến (multihop), dữ liệu truyềntải sẽ được định tuyến để có thé đến được nơi gửi câu truy van.[1]
Vé van dé sử dung năng lượng: Trong mang cảm biến không dây, nănglượng tiêu tốn nhiều nhất cho việc truyền tải dữ liệu giữa các node Dé giảm thiểuviệc tiêu tốn năng lượng, mỗi node cảm biến thực hiện cơ chế radio duty cycling,dùng để giới hạn giao tiếp vô tuyến của một node nhiều nhất có thể nhưng vẫnđảm bảo được giao tiếp multihop có thé diễn ra Tuy nhiên khi so sánh nănglượng tiêu tốn dùng cho việc giao tiếp vô tuyến và năng lượng dùng cho việcdoc/ghi dữ liệu vào chip nhớ flash, người ta thấy năng lượng dùng để truyền tải100 byte dữ liệu lớn gấp 20 lần năng lượng dùng để ghi 100 byte dữ liệu Điềunày cho thấy việc tổng hợp một lượng lớn dữ liệu bằng cách ghi vào chip nhớtrước khi truyền có thể tiết kiệm năng lượng đáng kế mà vẫn đảm bảo được việc
thu thập dữ liệu.[1]
' H Lj H1000 F kiểm ¬53 750 L -
Xây dựng các ứng dụng trên mỗi node cảm biến: việc sử dung TinySQL chophép mỗi node cảm biến có thể thực hiện việc phân tích, xử lý dữ liệu trước khigửi kết quả tới node trung tam, hay người dùng Điều này không chỉ giảm lưu
Tpavy 8
Trang 24lượng thông tin được gửi trong một mạng cảm biến đồng thời cũng tăng cườngtính bảo mật của mạng cảm biến đó Vì khi thông tin đã qua xử lý và được gửi đi,rủi ro của việc nghe trộm và thu thập dữ liệu về hành vi của người dùng sẽ giảm.Ngoài ra, một số mạng cảm biến chỉ cần thu thập thông tin sau khi đã qua xử lýnhư thu thập dữ liệu trung bình trong một khoảng thời gian Ví dụ các thiết bịcảm biến thu thập một lượng đa dạng các thông tin như các mạng cảm biến dùngtrong bệnh viện, việc ứng dụng TinySQL vừa cho phép mỗi node cảm biến tựtong hop, xử lý va gửi thông tin cần thiết nhất đến hệ thống giám sát, nhưng vancho phép các bác sỹ thu thập một lượng lớn mẫu dữ liệu khi cần dùng.
Tận dụng sự phát triển của công nghệ lưu trữ: Việc lưu trữ của TinySQL sử
dụng Chip nhớ Flash Cac chip nhớ này có giá thành ngày càng rẻ trong khi dung
lượng càng được mở rộng Điều này cho phép thực hiện ý tưởng tạo những nodecảm biến có thể lưu trữ tất cả dữ liệu thu thập hàng năm đến khi thiết bị cảm biếnhết pin.| I ]
3.3 Mô hình hoạt động của TinySQL
Antelop gồm có 8 khối chính[ 1]:
“t Ghn h6 6 te eee 6 6 eee 469 966466 $6 9 66 6 6 x6 <6 e4 #6 66 “$4
*
k Privacy | Control | Logic VM
Query processor: Phân tích cú pháp câu AQL (TinySQL query language)
Privacy control: Kiểm tra câu truy van có được cho phép hay khôngLogic VM: Thực thi câu truy vấn
Trang 25Database kernel: Lưu giữ database logic và phối hợp thực hiện các câu truyvẫn
Index abstraction: Lưu giữ cau trúc index logicIndexer process: Xây dựng index từ dữ liệu đã ton tạiStorage abstraction: Lưu giữ cấu trúc logic của dữ liệuResult transformer: Thể hiển kết quả của câu query sang dạng ngôn ngữ màchương trình có thể đọc được
Primary key
Relation: sensordataAttnibutes——+ ID? |SensoiD| Time | Value
3 10 14.32 2 16 124
Tuples 3 40 3 Attribute values
: 4 3 70 ro a
5 | 100 §6 2 116 186
Cardinality: 6
Hình 3 3 - Ví dụ một bang dữ liệu của Antelope [1]
Cau trúc của một bảng cơ sở dữ liệu:Tuple: một dòng dữ liệu gồm các dữ liệu có thuộc tính khác nhau
Attributes: những thuộc tính khác nhau.Domain: Dạng dữ liệu cua attribute của thuộc tính Vi du: giây(s), độ C
Relation: một tap hop các tuple có các thuộc tính giống nhau.Primary key: một kiểu attribute mà mỗi giá trị là duy nhất Ví dụ: Số thứ tựCardinality: là số tuple của một relation
Tpavy 10
Trang 26Ngôn ngữ truy vấn:Ngôn ngữ truy vấn của TinySQL được gọi là AQL được su dụng cho cả 2mục đích xây dựng và truy vẫn database TinySQL hỗ trợ các hàm truy vẫn như
bảng sau:
Hàm Chức năng
INSERT Thêm | dong vào bang
REMOVE Xóa | dòng khỏi bang
SELECT Lây dữ liệu từ bảng
JOIN Nhập 2 bang cơ sở dữ liệu
CREATE RELATION Tao một bang cơ sở dữ liệu
REMOVE RELATION Xóa một bang co sở dữ liệuCREATE ATTRIBUTE Tao thêm một cột (thuộc tinh)
CREATEINDEX Tao index
REMOVE INDEX Xóa index
Bang 1 - Các câu lệnh được hỗ trợ bởi TinySQL [1]
Ví dụ về một tập hợp các cau truy vấn: Tạo một bang cơ sở dữ liệu Tao cácthuộc tính có kiểu dữ liệu INT, STRING, LONG Tạo 2 kiểu index là INLINE và
MAXHEAP cho 2 thuộc tinh id va position [1].
CREATE RELATION sensor;
CREATE ATTRIBUTE id DOMAIN INT IN sensor;CREATE ATTRIBUTE name DOMAIN STRING(20) IN
sensor;
CREATE ATTRIBUTE position DOMAIN LONG IN sensor;
CREATE INDEX sensor.id TYPE INLINE;CREATE INDEX sensor.position TYPE MAXHEAP;
Trang 27Mô hình hoạt động Database Kernel của TinySQL
Database Kernel được gọi thực thi câu truy vẫn bởi module query processor,và cho phép thực thi nhiều câu truy vẫn cùng lúc Database kernel được thiết kếtheo mồ hình Interator, chỉ yêu cầu lưu trữ một dòng dữ liệu (tuple) trong bộ nhớ,và điều này phù hợp với cơ chế cooperative scheduling của các hệ điều hành trêncác node cảm biến Mỗi câu truy vấn có thể được tạm dừng trong lúc thực thigiữa mỗi quá trình xử lý một dòng dữ liệu (tuple) Hình dưới cho thấy luồng xử
lý của việc thực thi một cau truy vấn Ứng dụng mỗi lần có thể nhận được một
tuple của Anterlope Nó có thể tùy chọn việc tạm dừng thực thi truy xuất dữ liệuđể nhường tác vụ cho bộ Scheduler hoặc tiếp tục truy suất những dòng dữ liệukhác Việc truy suất được thực hiện cho đến TinySQL thông báo không còn dữ
liệu nào hợp lệ và giải phóng tác vụ.
db_process()Next tuple No more tuples
C Prepare) — Seabees) Process) n=IRI
erFinish
HÍvn 3.4-M1 nÍvn §Ì At x®u rpuự mov XÌ œ Avtedon
¢ [1]Co chế Index dữ liệu tiết kiệm năng lượng:Index là cơ chế hỗ trợ cấu trúc dữ liệu, có mục đích tối ưu hóa việc thực hiệncâu truy van bang cách giới hạn số dòng dữ liệu cần được xử lý Một index lưutrữ một cặp key, một dùng để chứa giá trị của thuộc tính, một là chứa ID của
dòng dữ liệu có giá trị đó Mỗi index phải sử dụng một lượng memory dùng làm
footprint và một mô hình truy xuất dữ liệu nhằm giảm nang lượng tiêu tốn.TinySQL hỗ trợ 3 cơ chế Index: Maxheap Index, Inline Index và Hash Index
Tpœvy 12
Trang 28Maxheap Index được thiết kế tối ưu cho việc giảm truy xuất chip nhớ flash vàgiảm tiêu tốn năng lượng Inline Index được tối ưu cho dữ liệu cảm biến có dạngchuỗi và phù hợp với mạng cảm biến thông thường Hash Index lưu trữ một
lượng nhỏ của cặp Index key trong RAM, và lý tưởng cho bảng dữ liệu nhỏ và
được truy vẫn thường xuyên.Cơ truyền nhận Message giữ 2 node của TinySQL:TinySQL sử dụng giao thức Rime mesh routing protocol dùng để trao đổithông điệp giữa client và server Tại Server node khi nhận và bắt đầu xử lý câutruy van, TinySQL sẽ tìm từng dòng dữ liệu hợp lệ va đây vào buffer vào gửi đithông qua giao thức Rime mesh routing Dữ liệu sẽ được chuyển tới Client nodetừng dòng một cho đến khi không còn dữ liệu nào hợp lệ Giao thức Rime meshrouting hỗ trợ truyền multihop và cơ chế định tuyến tĩnh, tại server node khi nhậnđược thông tin truy vấn từ client có địa chỉ nào sẽ gửi thông tin lại đúng địa chỉđó Dữ liệu được truyền multihop va ở dang plaintext nên có thé dễ dàng bị nghetrộm Vì vậy, một cơ chế mã hóa dữ liệu giữa server node và client node là một ýtưởng cần thiết cho việc truyền nhận dữ liệu của TinySQL
Trang 29Chương 4: Các Phương pháp bảo mật trong mạng cảm biến không dây4.1 Các kỹ thuật bao mật có thé được triển khai trong mạng cảm biến
không dây4.1.1 IEEE802.15.4 Datalink Security
Tiêu chuẩn IEEE802.15.4 cung cấp dich vụ bảo mật ở tầng liên kết (linklayer) Nó có thể hoạt động ở | trong 3 mode: không bảo mật (unsecured),
Access Control List (ACL), và có bao mật (secured) Trong mode không bao
mật: không có dịch vụ bao mật nào được sử dung Trong mode ACL, mỗi thiết bịsẽ giữ một danh sách các thiết bị mà nó được phép giao tiếp Tuy nhiên, ở ACLmode không cung cấp cơ chế mã hóa nào và phụ thuộc hoàn toản vào địa chỉnguồn của gói tin được gửi đến, trong khi địa chỉ nguồn có thé dé dang bị giamạo.
Ở mode có bảo mật, thiết bi cảm biến có sử dụng mã hóa đối xứng dé cungcấp các tính năng bảo mật gồm tính riêng tư (confidentility) xác thực dữ liệu(data authencity), và chống tấn công replay (replay protection) Cơ chế này sửdụng một key cho mỗi cặp thiết bị (link key), một key cho một nhóm các thiết bị.Tuy nhiên, cơ chế này không định nghĩa phương pháp đồng bộ và trao đổi key vàđể nhiệm vụ này cho tầng ứng dụng Các frame được mã hóa có thể được truyềnthông qua các thiết bị không được hỗ trợ tính năng bảo mật
Để đảm bảo tính riêng tư và xác thực thông điệp gửi/nhận,
IEEE802.15.4-2011 sử dung mode cipher block chaining * (CCM*), CCM# là phiên ban mởrộng của CCM được định nghĩa trong ANSI X9.63.2001 Mode CCM tương
thích với mode CCM và khắc phục được các hạn chế của CCM CCM* cho phép
chỉ hỗ trợ tính năng confidentiality only, và các tinh năng khác như
authentication là tùy chọn CCM* sử dụng thẻ xác thực có độ dài thay đổi(variable-length authentication tag) thay vì chi dùng thẻ xác thực có độ dai cố
định (fixed-length authentication tag).
Tpavy 14
Trang 30mật (HMAC -SHAI, tripleDES-CBC, and AES-CBC) Bởi vì sự phức tạp khi
triển khai IKE, IPSec được giới hạn trong mạng cảm biến không dây với những
thuật toán va key size được lựa chọn.IPSec được định nghĩa có 2 loại packet format cho nhiệm vụ bảo mật dữ liệu:
IP Authentication Header (AH) chỉ cung cấp tính năng xác thực và không thểchối từ (authentication and integrity protection only) Packet Format thứ 2 là IP
Encapsulating Security Payload (ESP), có kha năng bao vệ tinh riêng tu(confidentiality) thông qua việc mã hóa dữ liệu.
SS ee ee ee ee ee ee
~tm —_ + —*+—‡$+—‡
Hình 4 1 - Cấu trúc gói tin Encapsulating Security Payload (ESP) [3]
Trang 31IPSec sử dụng một nhóm các key gọi là Security Association (SA) Mỗi
packet thuộc về một SA nào đó Những SA khác nhau có thể sử dụng các thuậttoán mã hóa khác nhau Để tạo nên một SA, IPSec sử dụng cơ chế quản lý key
(IKE).
IPSec có thé sử dung cả mã hóa đối xứng lẫn mã hóa bat đối xứng Đối vớimạng cảm biến không dây thì mã hóa đối xứng được ưu tiên sử dụng Một SỐ vixử lý của các node trong mạng cảm biến không dây còn hỗ trợ phần cứng cho mãhóa AES (hardware AES acceleration) Việc sử dụng phan cung hỗ trợ cho mãhóa AES, các node cảm bién có thé đạt được hiệu suất mã hóa và giải mã cao hơnso với chỉ dùng phan mém
4.1.3 TLS
Transport layer Security (TLS) cung cấp cơ chế bảo mật end-to-end giữa 2đầu cuối Nó cung cấp khả năng mã hóa dữ liệu, xác thực người dùng, và khôngthé chối từ đối với sự giao tiếp giữa các thiết bị đầu cuối
TLS sử dụng mã hóa đối xứng dé đảm bảo tính riêng tu (confidentiality) vàtính không thé chối từ (integrity) Thực hiện việc phân phối key dùng cho thuậttoán mã hóa bất đối xứng, TLS dùng giao thức handshake để thiết lập kết nối.Quá trình nay cho phép TLS xác thực đối tượng kết nối, việc xác thực có thể chỉ
thực hiện với | bên, hoặc cả 2 bền.
Đối với các thiết bị trong mạng cảm biến không dây có tài nguyên giới hạn,TLS trở nên không phù hợp Do đó, chúng ta cần có những nỗ lực để tạo ra mộtgiao thức TLS với các giải thuật gọn nhẹ hon để có thể đạt được sự bảo mật end-to-end dành có các thiết bị có bộ vi xử lý yếu của các node mạng
TLS thường được triển khai cho kết nối giữa node sink và phần còn lại củamạng nhưng không dành cho việc kết nối với các node cảm biến thông minh(smart objects) TLS yêu cầu một cơ chế truyền tin cay (TCP), trong khi mangcảm biến không dây thường không hỗ trợ điều này
Tpavy 16
Trang 324.1.4 DTLSDatagram Transport Layer Security (DTLS) là một giao thức sử dụng các gói
datagram được bảo mật dùng cho việc trao đối thông tin giữa các ứng dụng.DTLS sử dung Record Protocol để đóng gói dữ liệu của tất cả các giao thức khác
như Handshake, Alert, application data Giao thức Handshake của DTSL sẽ làm
nhiệm vụ xác thực server và có thể tùy chọn xác thực client băng cách sử dụngkiến trúc mã hóa Public Key (PKI)
DTLS đã được triển khai trong ứng dụng CoAP (Constrained ApplicationProtocol) trong các mạng cảm biến không dây DTLS được sử dụng như một giao
thức bảo mật dành cho việc quản lý key tự động, mã hóa dữ liệu và xác thựcngười dùng.
6LOWPAN
SsCoAPs Node
saat rà sS“h- > — SF
CoAPs Node
Hình 4 2 - Mang IoT sử dung DTLS dé bao vệ sự liên lac giữa các node cam biến trong mang
6LoWPANS và host trong mạng Internet([3].
4.2 Thuật toán Mã hóa4.2.1 RC5
RCS là một thuật toán mã hóa đối xứng rất tiềm năng dùng cho việc mã hóadữ liệu trong mạng cảm biến không dây và được xem là một trong những chuẩnmã hóa tốt nhất về mặt hiệu suất nói chung khi sử dụng trong những thiết bị cóbộ nhớ và kha nang xử lý giới han RCS là một thuật toán mã hóa rất hiệu quả vàlinh động với kha năng thay đối các thông số như độ dài key, độ dài block, và sốvòng (round) Điều này cho phép người sử dụng có thé đánh đôi mức độ bảo mật
AS A SS SS SD A ED DS A ce ee eee on
Trang 33và hiệu năng xử lý và năng lượng tiêu thụ RC5 rất phù hợp để mã hóa dữ liệucho những ứng dụng của mạng cảm biến không dây với dữ liệu cần mã hóa có
những kích thước khác nhau.
RC5 không sử dụng những bang dữ liệu lớn và phép nhân như một số mãhóa block cipher khác Do đó, RCS sử dụng ít tài nguyên tính toán để cung cấp
khả năng mã hóa dữ liệu an toàn tương đương RCS mã hóa và giải mã nhanh
trên nhiều bộ vi xử lý được thiết kế dành cho các node mạng cảm biến không
dây.
Vẻ khả năng bảo mật, RC5 có độ dài key tiêu chuẩn là 128 bit dé chống lạicác kiểu tan công phân tích mật mã Các thông số của RC5 có thé thay doi mộtcách linh động cho các mức độ bảo mật và tốc độ mã hóa khác nhau RC5 đượcđánh giá là tốt hơn AES về sức mạnh bảo mật, và hiệu quả sử dụng
(implementation efficiency).
VỀ sự tiêu thu năng lượng, với dữ liệu có độ dài khác nhau, RCS sử dụng itnăng lượng hơn một cách đáng ké so với DES va AES Do đó RC5 được xem làmột giải pháp mã hóa rất tiềm năng trong mạng cảm biến không dây
RC5 có thé được triển khai bằng phần mém hoặc phan cứng trên các nodecảm biến Việc triển khai băng phần cứng mang lại những hiệu quả về nănglượng tiêu tốn, tăng tốc độ xử lý Một số khảo sát khi triển khai RC5 trong các vixử lý 8 bit, 16 bit và 32 bit cho thấy, nó có thời gian mã hóa nhanh hơn 4 lần sovới RC4 trong vi xử lý StrongArm 32 bit và gần bằng RC4 trong vi xử lý 8 bit
4.2.2 AES
AES (advanced encryption standard) là một tiêu chuẩn mã hóa đối xứngdang block (symmetric block cipher) được công bố bởi NIST AES hoạt độngdựa theo các khối dữ liệu 128 bit Thuật toán mã hóa va giải mã dùng chung một
secret key Độ dai key là 128 bịt, 192 bit, hoặc 256 bit Độ dài key phụ thuộc vào
Tpavy 18
Trang 34mức độ bảo mật AES có thể được triển khi trên các vi xử lý 8 bit của các node
của mạng cảm biên không dây.
AES được tích hop ở tang liên kết dữ liệu trong mạng 6LoWPAN dựa trêntiêu chuẩn IEEE 802.15.4 128 bit AES encryption Tuy nhiên secret key đượcdùng cần phải được thiết lập tại các ứng dụng ở tang cao hon AES được dùngvới mục đích cung cấp 2 tính năng của bảo mật đó là tính riêng tư (confidential)và tính không thé chối từ (integrity) Tiêu chuẩn IEEE 802.15.4 cho phép thựchiện việc bảo mật sử dụng mã hóa AES hoạt động ở nhiều chế độ: không bảo
mật, chỉ có mã hóa (AES-CTR), chỉ có xác thực (AES-CBCMAC), vừa mã hóavừa xác thực (AES-CCM).
Mã hóa AES-CTR: Thông điệp được chia thành các khối 16 byte, và đượcXOR với đoạn mã tương ứng E,, đoạn mã này được tinh băng cách mã hóa chuỗiNonce Counter bang secret key K, trong đó Counter được đếm tăng dan tươngứng với các block 16 byte Mã hóa dùng giải thuật AES-CTR cho tốc độ mã hóavà giải mã nhanh, đồng thời chỉ sử dụng 1 hàm cho cả việc mã hóa và giải mã.Việc này giúp tiết kiệm bộ nhớ cho vi xử lý
«Ằ 1 « | iOS me ep oe 1 | 7 PEN z2 man ‹ 1 3 ? ae om a ee re) es |
Nonce | ounter Nonce Counter
ie ee cá, Se cong ‹ ke Oe Re FS eet es nh Oe 273i CAN & Saw Bee ow eet
Xj X,
Key—>| Encryption (E) Key—> Encryption (E)
E(x)
Plaintext (b=—Plaintext ® Ciphertext (C,)
Hinh 4 3 - Ma héa AES-CTR [3]
Mã Hóa AES-CBC-MAC: đoạn thông điệp xác thực MAC được tinh băngcách mã hóa thông điệp được gửi đi với secret key bằng mã hóa AES ở chế độ
Trang 35CBC Tại bên nhận, đoạn mã MAC sẽ được tính lại và so sánh với đoạn mã được
gui tdi Néu bang nhau, nghĩa là thông điệp đã được xác thực cho kết quả hợp lệ
0 ] 2 3012345678901234567899 2345678901
t+—+—++—+—+—+—-+—+—-+—+—-+—-+—-+—-+—-+—-+—-+—-+—+—++—-+—+—-+—-+—-+—-+—-+—-+—-+—-+—-+-+—+
| Initialization Vector || (8 octets) |
đó.
Tpavy 20
Trang 36So với một mã hóa bat đối xứng khác là RSA, ECC sử dung key nhỏ hon, tốcđộ tính toán nhanh hon, sử dụng ít bộ nhớ hon và cũng tiết kiệm năng lượng hơn.Do đó ECC rất phù hợp đối với các mạng cảm biến không dây, có sử dụng cácphan tử có tài nguyên hạn chế.
I000 2000 3000 4000 5000 6000 7900 8000 9000
Hình 4 6 - So sánh về độ an toàn cua mã hóa ECC va RSA, DSA [7]
Đã có một số thử nghiệm mã hóa ECC thực hiện trên các vi xử lý 8 bit đượcsử dụng phố biến trong mạng cảm biến không dây như MSP430, CC1010,ATmegal28 Các thí nghiệm đều cho thay mã hóa ECC có thé được triển khaitrên các thiết bị của mạng cảm biến không dây với một mức độ bảo mật cao, đó
là sử dụng key có độ dài 160 bịt trở lên.
Việc sử dụng mã hóa bất đối xứng ECC trong mạng cảm biến không dây cóthé giải quyết được van đề về quá trình phân phối secret key dùng cho các thuậttoán mã hóa đối xứng như DES, AES, RC4, RC5, RC6 Đồng thời mã hóa ECCcũng đã được chứng minh là vô cùng tin cậy để xây dựng một hệ thông mã hóamạnh, có thé chống các kiểu tan công ngày càng tinh vi hiện nay
4.3 Phương pháp xác thực
Việc xác thực là một trong nhưng yếu tố quan trong nhất trong van dé baomật, có nhiệm vụ đảm bảo việc kết nối được thực hiện với đúng đói tượng vàchống lại được sự giả mạo Có rất nhiều phương pháp xác thực được sử dụngnhưng cũng đều có chung một mục đích
Trang 37Các cơ chế xác thực được sử dụng pho biến trong mạng cảm biến không dâyla SPINS, TinySec, TinyECC, MiniSec, ContikiSec, AES CCM Cac nén tangnày cung cap tinh năng về bao mật như: tinh riêng tư (confidentiality), khả năngxác thực (authentication), không thé chối từ (integrity).
SPIN: là nền tảng bảo mật đầu tiên được thiết kế dành cho mạng cảm biếnkhông dây (WSNs), và được tối ưu dé dé hỗ trợ những môi trường có tài nguyênhạn chế Nó cung cấp khả năng xác thực (authentication) và bảo vệ tính riêng tư
(confidentiality) cua dữ liệu.
TinySec: là nền tảng bảo mật đầu tiên được triển khai ở tầng liên kết (linklayer) được giới thiệu vào năm 2004, được viết băng ngôn ngữ nesC và đượctích hợp vào hệ điều hành TinyOS Nó cung cấp kha năng bảo về tính riêng tư(confidentiality), không thé chối từ (intergrity) và xác thực thông điệp (messageauthentication) TinySec sử dụng thuật toán mã hóa đối xứng Skipjack để mã hóa
dữ liệu và đoạn mã xác thực thông điệp Cipher Block Chaining MessageAuthentication Code (CBC-MAC) cho việc xác thực Tuy nhiên, TinySec không
còn được chấp nhận là một cơ chế bảo mật an toàn đối với các nguy cơ về bảo
mật ngày nay.
TinyECC: Là gói phần mềm mã hóa public key được thiết kế cho hệ điềuhành TinyOS vào năm 2008, giúp tối ưu hóa tài nguyên sử dụng trên các thiết bịcảm biến
SenSec: Được giới thiệu vào năm 2005 với sự tăng cường nhiều tinh năngbảo mật, sử dụng Skipjack-X (an toàn hơn Skipjack) và chống lại được kiểu tấn
công brute force.
MiniSec: Cung cấp các tính năng bao mật như: tính riêng tu(confidentiality), xác thực (authentication), bao vệ khỏi kiểu tấn công replay(replay protection) Nên tảng này có 2 mode, một là single-source và một làmulti-source dành cho Các yêu cầu về bao mật dcác giao tiếp quảng bá Nó chạy
Tpœvy 22
Trang 38trong hệ điều hành TinyOS và sử dụng cơ chế chia sẻ key mã hóa Offset
Codebook (OCB).
ContikiSec: Là cơ chế bảo mật được phát triển cho hệ điều hành ContikiOS.ContikiSec được thiết kế một cách linh động để hỗ trợ cho nhiều ứng dụng khácnhau trong mạng cảm biến không dây ContikiSec có 3 cấp độ bảo mật khác
nhau: chi bảo vệ tính riêng tư (Confidentiality-only ContikiSec-Enc), chỉ xácthực (ContikiSec-Auth), và xác thực cùng với mã hóa (ContikiSec AE).
PBL s H PAYLOAD c T CONTIKI PACKET2 2 2 0-128 2 2
Hinh 4 7 - ContikiSec Packet [23]
ContikiSec được thiết kế để cân bang giữa yếu tố tiêu thụ ít năng lượng vatăng cường tính bảo mật trong khi sử dụng ít tài nguyên bộ nhớ của các thiết bịcảm biến
AES CCM: CCM là một chế độ mới của mã hóa AES (AdvancedEncryption Standard), nó kết hợp giữa 2 mode Counter (CTR) và CBC-MAC décung cấp mã hóa và xác thực cùng một thời điểm Hoạt động của AES CCM
được chia làm 2 phân: CBC-MAC có nhiệm vụ xác thực, nó tạo 128 bit dữ liệu
gọi là MIC (Message Integrity Code) và gắn nó vào phía sau của chuỗi dự liệucần truyền MPDU Trong khi đó, CTR cung cấp tính năng mã hóa và giải mã chodir liệu gdm MPDU data và đoạn ma MIC Tai node nhận sẽ thực hiện giải mã vaso sánh gói MIC nhận được và gói MIC được tinh lại có giống nhau không, để
Trang 39đảm bảo tính xác thực (authentication) và không thé chối từ (Integrity) với dtr
liệu nhận được.
Cơ chế bảo mật SPIN và TinySec không còn được dùng hiện nay, các cơ chế
còn lại có thê được sử dụng, mặc dù có một sô cơ chê vân có những điêm yêu.Trong đó các tính năng bảo mật của ContikiSec có nhiêu ưu diém đáng chú ý.
4.4 Cơ chế Phân phối KeyĐề có thé thực hiện quá trình mã hóa và giải mã dữ liệu, quá trình phân phối
key cân được thực hiện giữa các thiệt bị muôn giao tiép với nhau trước tiên,nhăm thông nhât các key dùng cho việc mã hóa, giải mã, xác thực Các vân đề
liên quan đến cơ chế phân phối Key trong mạng cảm biến không dây gồm có:O
OKiến trúc mạng: mạng phân bồ (distributed) và mạng phân cấp (hierachical)Phương thức giao tiếp giữa các thiết bị pair-wise (unicast), group-wise
(multicast), network-wise (broadcast).
Cac yéu cầu về bảo mật dành cho WSNs như tính xác thực (authentication),tính riêng tư (confidentiality), tính không thé chối từ (integrity), tính sẵn sàng
Trang 40Ne 4 meee)
sêy Se wer
Hình 4 8 - Mô hình mang: Hierarchical va Distributed WSNs [5]
Cơ chế phan phối key còn phải có khả năng chống lai các kiểu tan công đểđảm bảo key được phân phối không bị bên thứ 3 phát hiện Ngoài ra, trongtrường hợp phát hiện có sự nghi vấn ở một node mang, cơ chế phân phối key cóthể yêu cầu node đó thực hiện lại quá trình phân phối key
4.4.1 Một số cơ chế phân phối key dành cho mạng phân bồ (distributed
network)
Cơ chế phân phối key thường được chia thành 3 giai đoạn: key setup khởitạo việc trao đối key, shared-key discovery thông nhất một key chung, path-keyestablishment tạo các key dùng cho việc trao đổi dữ liệu
Cơ chế phân phối key đơn giản nhất đó là sử dụng một key chung cho toànbộ các node trong mạng (network-wire key) Cơ chế này cho phép sử dụng ít tàinguyên, nhưng trong trường hợp key mã hóa bị lộ mọi thông tin trong mạng đềucó thé bị đánh cắp, thậm chí các thiết bị cảm biến bị điều khiến bởi kẻ tan công.Cơ chế này có tính phục hdi (resilience) vô cùng thấp Một giải pháp tốt hơn mỗinode g1ao tiếp với các node khác bang một cặp key riêng biệt (pair-wise key).Việc này cho phép đảm bảo tính riêng tư của thông tin trao đổi giữa 2 nodekhông bị node khác biết được Cơ chế này đòi hỏi thiết bị phải có nhiều bộ nhớđể có thể lưu được toàn bộ các cặp key mã hóa của các node khác Do vậy trongthực tế, node sink thường là thiết bị sẽ chứa toàn bộ các key mã hóa của các nodetrong mạng, và là nơi các node khác gửi yêu cầu nhận một key dùng một lần, key