Chương 1. Lý do chọn để tài. Đối tượng nghiên cứu.---:-©22¿©2++2++22++22EE22EE221E22Ex22171E1E crrree 5 1. Mục tiêu đề tài.
Phương pháp thực hiện.--¿-525+222+222vtttExrrrrrrrsrrrrrrer 7 Chương2. CO SỞ LÝ THUYẾT.--2- 2: ©52S22E+2EE£EEtEEv2E+zEEerxrzxrzxezrreree § 2. Công nghệ Blockchain. Nền tảng cốt lõi.:©5:25222E22E22E2E22EE2EE2E2EEEErkrrrrrrrerrres § 2.
Lịch sử hình thành. Blockchain trong IOT. «<3 Ỳ ngưng tk 14 2. Mạng khả lập trình - Software-defined networking (SDN).
St SkSnH TH HH key 16 2. Cơ chế hoạt động. SDN và ứng dung trong IoT. Các công trình nghiên cứu liên quan.
PHAN TÍCH VA THIET KE HỆ THONG 3. Tổng quan về hệ thong. Các định nghĩa Chung. Quy trình đăng kí mới một thiết bi và chỉ tiết luồng đăng kí.
Quy trình chứng thực một đối tượng. Quy trình thu hồi quyền truy cập. Công cụ dùng dé giải mã kiểm tra lịch sử các transaction trong mạng. HIỆN THUC HỆ THONG VÀ THỰC NGHIỆM 4.
Tổng thé hạ tầng hệ thống. Cài đặt và hiện thực hệ thống. Cài đặt mạng SDN. LH TH HH ngư Hưến 35 4.
Cài đặt và xây dựng hệ thông mạng giả lập các thiết bị. Xây dựng hệ thống Blockchain. Kịch bản thực hin. ee eee ces eeeceeccseceecnscesscssecseeeecesecesecssesseesseenees 49 4.
Các kịch bản thực nghiệm. Đánh giá bảo mật hệ thống. Đánh giá hiệu năng hệ thống. KET LUẬN VÀ HƯỚNG PHÁT TRIỄN.
Kết quả dat Quoc. eee cece cee cceecceecesecneesaeeseeseeececseeeseseeseeeseseeeeea 61 5. Định hướng phat tren. ceccecsessesseeseeseesessecsecseesessseesecsesseeseesneesees 61 DANH MUC HiNH Hin! 1.1 : Tổng quan về hệ thông.---2- 2-2 ©St2St2EE+EE£EEtEE2EEeEEerxrrxrrxrrrreree 3 Hinl 2.
1: Cấu trúc của một cây Merkle trong Blockchain [4]. 2: Đường cong elliptic được sử dụng trong Blockchain. 3: Tổng quan về kiến trúc của SDN. 4: Architecture of SDIoT network [8] Hin! h 4.
1: Cai đặt docker và docker-compose trên máy controller. 2: Tải xuống ONOS docker image. 3: Kiểm tra trạng thái của container trên ONOS. 4: Kiểm tra IP mà ONOS controller.
5: Giao diện khi đã cai đặt thành công controller. 6: Các ứng dụng cần được kích hoạt trên controller. 7: Kết nối mang giả lập với controller. 8: Cài đặt ansibÌe.- -- c1 1 1121112 v12 1112111111 0111 g1 vn vn tk krg 42 Hin! h 4.
9: Clone mã nguồn containernet từ github.---:¿2+ s22+zzx2z+zzxzzx 42 Hinl CÀ)H9 i0 i00. 11: Cài đặt docker trước khi cài đặt Sawtooth. 12: Cài đặt docker trước khi cài đặt Sawtooth.-----cccsccs+sckxssevee 45 Hin 4. 13: Sơ đồ kết nói các thành phan của một node trong mạng Blockchain.
14: Cấu tạo của một batChes. 15: Log hiển thị ghi danh thành công. 16: Log hiển thị các thông tin đang gửi ACL đến controller. 17: Log quá trình xóa ACL cho một user.
18: Danh sách các DIOCK. eee eececceeeeteeeeeeneeeeeeseseeesecsseceeeseseneseresneeee 53 Hin! h 4. 19: Chi tiết lịch sửa của một blOCK. 20: Giải mã thông điệp được lưu trữ trong block.
21: Hiệu năng cao nhất CPU đăng kí thiết bị (10 requesÐ).------‹ 57 Hin 4, 22: Hiệu năng thấp nhất CPU đăng kí thiết bị (10 request). 23: Hiệu năng cao nhất CPU đăng kí thiết bị (50 request). 24: Hiệu năng thấp nhất CPU đăng kí thiết bị (50 request).25: Hiệu năng cao nhất CPU yêu cầu quyền truy cập (10 request). 26: Hiệu năng thấp nhất CPU yêu cầu quyền truy cập (10 reques0).27: Hiệu năng cao nhất CPU chứng thực thiết bị (50 request).
28: Hiệu năng cao nhất CPU thu hồi quyền truy cập. 29 : Hiệu năng thấp nhất CPU thu hồi quyên truy cập.-------- 60 DANH MỤC SƠ ĐÒ Sơ đồ 1: Tổng thé toàn bộ các luồng hệ thống. Sơ đồ 2: Sơ đồ luồng xử lí đăng kí mới một thiết bị Sơ đồ 3: Sơ đồ luồng xử lí chứng thực và áp dụng ACL cho một thiết bị. DANH MỤC TU VIET TAT STT Từ viết tắt Nội dung 1 SDN Software-defined networking 3 ITSEC Information Technology Security Evaluation Criteria 3 TCSEC Trusted Computer System Evaluation Criteria 4 loT Internet of things 5 PBFT Practical Byzantine Fault Tolerance 6 PoET Proof of Elapsed Time 7 TCP Transmission Control Protocol 8 ONOS Open Network Operating System 9 P2P Peer-to-peer 10 ECDSA Elliptic Curve Digital Signature Algorithm 11 NIST National Institute of Standards and Technology TÓM TẮT KHÓA LUẬN Trong phạm vi khóa luận, chúng tôi nghiên cứu về việc ứng dụng Blockchain đề chứng thực và kiểm soát truy cập cho mạng khả lập trình.
Thông tin của các thiết bị cuối sẽ được lưu trữ trên mạng Hyperledger Sawtooth. Chúng tôi tập trung vào việc xử lí thông tin từ phía các thiết bị cuối gửi đến mạng Blockchain và từ mạng Blockchain gọi đến API của mang SDN dé áp dung các chính sách kiểm soát truy cập (ACL). Mục tiêu của khóa luận là tìm hiểu phương pháp đề xây dựng một mạng khả lập trình và mạng Blockchain, qua đó có thể xây dựng chương trình xử lí cho việc xác thực và kiểm soát truy cập bằng mạng Blockchain và chương trình giao tiếp giữa các thiết bị cuôi với mạng Blockchain. | MỞ ĐÀU Trong thời đại ứng dụng bùng nổ của công nghệ thông tin, Internet of Things (IoT) đóng một vai trò quan trọng trong việc xây dựng các thành phó thông minh, hiện dai và thân thiên với con người.
Nhiều thiết bị chúng ta sử dụng hàng ngày được trang bị kết nối internet. Cùng với sự phát triển của công nghệ điện toán đám mây (Cloud Computing) đã thúc đầy quá trình sự phát triển của quá trình truyền dữ liệu và tự động hóa trong các thiết bị IoT thông minh mà không cần sự can thiệp của con người. Do đó, việc số hóa và tự động này cần có cơ chế xác thực và kiểm soát dé dam bảo tính bảo mật và tính toàn vẹn của thông tin được truyền trước các tác nhân gây hại như người dùng độc hại hoặc mã độc. Bên cạnh đó, quản lý tập trung cũng tiềm ân những rủi ro như DOS, thông tin cá nhân có thể bị phân tích và giám sát, người dùng bị hạn chế kiểm soát thông tin cá nhân.
Dé cập đến van đề giải quyết việc quản lí lưu lượng mang của thiết bị thì mạng khả lập trình có là đối tượng được các nhà nghiên cứu nhắm đến nhiều. Mạng khả lập trình là kiến trúc mạng trong đó tách biệt control plane và data plane. Theo đó, chức năng điều khién, tính toán, ra quyết định tách khỏi thiết bị và được thực thi bằng phần mềm, nằm trên SDN controller. Các thiết bị chỉ thực thi chuyền tiếp dữ liệu từ chỉ thị của controller.
Thêm nữa, các thiết bị chỉ cần tuân theo chuẩn giao tiếp chung mà không phụ thuộc vào nhà sản xuất thiết bị. Tuy nhiên, mạng khả lập trình còn tồn tại một số khuyết điểm như hạn chế trong việc xác thực các thiết bị ở kênh phía nam (northbound), thiếu yếu tố xác thực,. Với việc tìm hiểu từ các nghiên cứu khác, nhóm thay Blockchain có thé được sử dụng như một chía khóa cho mắc xích này. Blockchain là một mạng dữ liệu phân tán với một số cái (ledger) có chức năng ghi lại các transtion.
Công nghệ Blockchain có thê theo dõi, [2] điều phối, thực hiện các giao dịch (transaction) và lưu trữ một lượng lớn thông tin từ các thiết bị. Vì những lí do đó, nhóm quyết định nghiên cứu công nghệ Blockchain và áp dụng đề xây dựng hệ thống xác thực đơn giản cho mạng khả lập trình có khả năng tương thích với các hệ thông IoT đề kiểm chứng khả năng ứng dụng của công nghệ Blockchain vào việc xác thực cho các thiết bị trong mạng khả lập trình. Tập trung vào việc mô phỏng một mô hình Edge Computing trong môi trường mạng khả lập trình và ứng dụng công nghệ Blockchain (trong dé tài là được gọi là mạng BlockBee) để xác thực và kiểm soát các luồng dữ liệu trong mạng cho các thiết bị thông minh.1 thể hiện mô hình tổng quan của toàn bộ hệ thống: Edgo Device Reject Edge Device ⁄ ' Data Center Reject F/ ‘Smart Gr Fake / ⁄ B 5) i is Edge Device ‘SmartDevices-Blue Hinh 1. 1 : Téng quan vé hé théng [3] Chuong1.
Lý do chọn dé tai Trong thời đại ứng dụng bùng nổ của công nghệ thông tin, Internet of Things (IoT) đóng một vai trò quan trong trong việc xây dung các thành phố thông minh, hiện dai và thân thiên với con người. Nhiều thiết bị chúng ta sử dụng hàng ngày được trang bị kết nối internet. Cùng với sự phát triển của công nghệ điện toán đám mây (Cloud Computing) đã thúc đầy quá trình sự phát triển của quá trình truyền dữ liệu và tự động hóa trong các thiết bị loT thông minh mà không cần sự can thiệp của con người. Do đó, việc số hóa và tự động này cần có cơ chế xác thực và kiểm soát dé đảm bảo tính bảo mật và tính toàn vẹn của thông tin được truyền trước các tác nhân gây hại như người dùng độc hại hoặc mã độc.
Bên cạnh đó, quản lý tập trung cũng tiềm ân những rủi ro như DOS, thông tin cá nhân có thể bị phân tích và giám sát, người dùng bị hạn chế kiểm soát thông tin cá nhân,. Có những nghiên cứu khác nhau về bảo mật và quyền riêng tư của kiến trúc hệ thống IoT. Ví dụ, thí nghiệm của Sukhvir Notra et al. [1] các cuộc tấn công vào một loạt các thiết bị loT như Nest Smoke-Alarm, Hue Light-Bulbs, WeMo Motion Switch,.
để chứng minh các thiết bị IoT có sẵn thiếu bảo mật và quyên riêng tư cơ bản. Tuy nhiên, với sự phát triển theo cấp số nhân của các thiết bị IoT như ngày nay (nghiên cứu cho thấy sẽ có 35 tỷ thiết bị thông minh trực tuyến vào năm 2021 và con sé đó sẽ tăng lên 75 tỷ vào năm 2025 [2]), mô hình quản lý tập trung sẽ không đạt được hiệu quả cao trong xử ly end-to-end. Hơn nữa, việc quản lý số lượng lớn các thiết bị khác nhau là một thách thức không hề nhỏ. Kết nối giữa các thiết bị cũng đòi hỏi tính tương thích cao đề đáp ứng nhu cầu về tốc độ và khả năng xử lý chính xác của mạng IoT.
SDN có thé là chìa khóa dé mở cánh cửa này. Ưu điểm chính của mạng lập trình là nó có thé giám sát tất cả các trạng thái và đường dẫn mạng có sẵn dé có thé điều hướng các gói dựa trên các yêu cầu lưu lượng một [4] cách chính xác và tối ưu. Do khả năng hiển thị trực quan, mạng có thể lập trình cũng có thể tự động sửa đổi luồng lưu lượng, thông báo cho quản trị viên về các liên kết bị tắc nghẽn trong mạng và các trạng thái mang bat thường khác,. Tuy nhiên, mạng lập trình cũng tồn tại một số nhược điểm.
Điểm yếu của mạng tồn tại trong việc xác thực giữa các thiết bị. Dé giải quyết van dé đã được đặt ra, số lượng các dự án nghiên cứu và phát triển đã thử nghiệm kết hợp công nghệ Blockchain vào một cơ sở hạ tầng mạng có thể lập trình được.