1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp: Xây dựng ứng dụng dựa trên công nghệ chuỗi khối cho kiến trúc Thành phố thông minh trên nền tảng phần cứng Libelium

62 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng ứng dụng dựa trên công nghệ chuỗi khối cho kiến trúc Thành phố thông minh trên nền tảng phần cứng Libelium
Tác giả Nguyễn Khỏnh An
Người hướng dẫn Th.S. Nguyễn Khỏnh Thuật, Th.S Bụi Thanh Bỡnh
Trường học Trường Đại học Công Nghệ Thông Tin - Đại học Quốc Gia Thành Phố Hồ Chí Minh
Chuyên ngành Mạng Máy tính và Truyền thông
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2023
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 62
Dung lượng 35,94 MB

Nội dung

Hiện nay các giải pháp công nghệ bảo mật và an toàn thông tin đã và đang được phát nhằm giúp nâng cao khả năng bảo vệ tính toàn vẹn của dữ liệu trong IoT.. Công nghệ Blockchain là một tr

Trang 1

ĐẠI HỌC QUOC GIA THÀNH PHO HO CHÍ MINH

TRUONG DAI HOC CONG NGHE THONG TIN

Xây dựng ứng dụng dựa trên công nghệ chuỗi khối

cho kiến trúc Thành phố thông minh

trên nền tang phan cứng Libelium

Building a Blockchain-based applications for Smart City Architecture

on Libelium hardware platform

Sinh viên thực hiện

Trang 2

LỜI CẢM ƠN

Đề tài “Xây dựng ứng dụng dựa trên công nghệ chuỗi khối cho kiến trúc thành phố thông minh trên nền tảng phần cứng Libelium” là nội dung mà tôi đã nghiên cứu

và làm khóa luận tốt nghiệp sau thời gian theo học tại Khoa Mạng Máy tính và Truyền

thông, Trường Đại học Công nghệ Thông tin - ĐHQG TP.HCM Trong quá trình

nghiên cứu và hoàn thiện khóa luận tốt nghiệp, tôi đã nhận được nhiều sự quan tâm,

giúp đỡ từ Quý thay cô, gia đình và bạn bè Đề khóa luận tốt nghiệp thành công nhất,

tôi xin gửi lời cảm ơn chân thành tới:

Khoa Mạng Máy tính và Truyền thông, Trường Đại học Công nghệ Thông tin ĐHQG TP.HCM đã tạo môi trường học tập và rèn luyện rất tốt, cung cấp cho tôi những kiến thức và kỹ năng bồ ích giúp tôi có thể áp dụng và thuận lợi thực hiện khóa

-luận này.

Hai giảng viên hướng dẫn là Th.S Nguyễn Khánh Thuật và Th.S Bùi Thanh Bình

là người giảng viên tâm huyết, đã tận tâm hướng dẫn, giúp đỡ tôi trong suốt quá trình nghiên cứu và thực hiện đề tài Thầy đã có những trao đổi và góp ý đề tôi có thể hoàn

thành tốt dé tài nghiên cứu nay.

Cuối cùng, tôi xin cảm ơn gia đình, bạn bè đã luôn động viên và tạo điều kiện tốt

nhất để tôi có thé nỗ lực hoàn thành tốt bài nghiên cứu.

Tôi xin chân thành cảm ơn!

TP.HCM, tháng 6 năm 2023

Nguyễn Khánh An

Trang 3

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH _ CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc

CÔNG NGHỆ THÔNG TIN

DE CƯƠNG CHI TIẾT

TEN DE TÀI:

- _ Tiếng Việt: Xây dựng ứng dụng dựa trên công nghệ chuỗi khối cho kiến trúc Thành

phố thông minh trên nén tảng phan cứng Libelium.

- Tiéng Anh: Building a blockchain-based applications for Smart cities architecture

on Libelium hardware platform.

Cán bộ hướng dẫn: ThS.Nguyén Khánh Thuật.

_Th§.Bùi Thanh Bình | Thời gian thực hiện: Từ ngày 27/02/2023 đến ngày 16/06/2023

Sinh viên thực hiện:

Nguyễn Khánh An ~19520368 — 0798233666

Nội dung đề tài: |

Tổng quan tình hình nghiên cứu

Tinh hình nghiên cứu ngoài nước:

Tốc độ đô thị hoá hiện đại hoá của các thành phó trên thới giới ngày càng nhanh kéo |

theo nhu cầu về lĩnh vực Internet of Things ngây càng lớn Hiện nay các giải pháp công

nghệ bảo mật và an toàn thông tin đã và đang được phát nhằm giúp nâng cao khả

năng bảo vệ tính toàn vẹn của dữ liệu trong IoT Công nghệ Blockchain là một trong

những phương pháp được áp dụng vào các giải pháp IoT dé giúp cho dữ liệu người dùng

và các dữ liệu cảm biến được bảo mật hơn.

Nhiều phương pháp nghiên cứu về BloT (Blockchain IoT) và loTT(Internet of Trusted |

rbinas) có thé kể đến như: “Bao vệ quyền riêng tư của IoT bằng cách sử dụng chuỗi _.

khối” [1], “Chuối khối và ‘Internet of Things’ cho ngành xây dựng: nghiên cứu xu hướng |

và cơ hội” [3] |

Trang 4

‘Tinh khoa học và tính mới của đề tài:

Các giải pháp IoT được phát triển rông rãi trong các lĩnh vực khác nhau Sự phát triển

vuot bậc nay nhằm mục đích thay đôi dé đáp ứng những, thách thức mới trong việc bảo

vệ sự toàn vẹn dữ liệu Công nghệ loT đã mở rộng và vượt xa sự mong đợi của mọi

người Các thành phố và đô thị lớn trên thé giới đang tim cách ứng dụng và thừa kế

những công nghệ oT dé phát triển trở thành thành phố thông minh trong tương lai, theo

báo cáo của Statista, thành phố thông minh chiếm ngân sách lớn thứ hai theo thống kê

các dự án loT được phát triển trong năm 2021 [6], cũng theo theo số liệu của Iot-analytics

dự đoán sẽ có hơn 27.1 tỉ thiết bị IøT trong năm 2025 [7]

Với số lượng g thiết bị lơT' ngày cảng phát triển, việc đảm bảo dữ liệu toàn vẹn lả một thách

thức lớn đổi với những người phát triên trong lĩnh vực này Ngoài những cách lưu trữ

truyền thống và 4p dụng các giải thuật ma hóa Với sự phát triển của công nghệ

Blockchain đã tạo ra một bước tiến lớn trong việc lưu trữ và đảm bảo toàn ven dữ liệu trong không gian mạng sự giao thoa giữa Blockchain và IoT đã nỗi lên và phát triển đến

nay nhằm mang lại sự toàn vẹn dit liệu cũn; 1g như nâng cao tính bảo mật của hệ thông IoT.

Mục tiêu, đối tượng và phạm vi NC

1 Mục tiêu nghién cứu,

Tìm hiéu các thiết bị cam biến và xây dựng ha tang cho bộ thiết bị Libelium

Smart Cities, diều chỉnh và đưa ra giải pháp tối ưu khi sử dụng bị.

Tìm hiểu và kết hợp nhiều thành phần cảm biến, các phương pháp giao tiếp

với nhiều gateway, nhiều giao thức khác nhau trên đa nền tang dé lựa chọn

giải pháp tôi ưu cho dé tài

Xây dựng một hệ thông Smart City dựa trên nén tảng Libelium và công nghệ

Blockchain, bao gồm:

+ Cấu hình dé dữ liệu của các thiết bị cảm biến có thể thực hiện giao tiếp với gateway.

+ Thiết lập hệ thống blockchain private để lưu trữ các dữ liệu cảm biến.

Ứng dụng giải pháp Blockchain để lưu trữ các dữ liệu cảm biến thu thập được từ hệ thống Smart City.

2 Đắi tượng nghiên cứu

c thiết bị, cam biến và các module hỗ trợ việc giao tiếp của bộ

Libelium Smart Cities .

- Các kiến trúc và kiến thức về tinh toán cận biên dé áp dụng vào thiết bj gateway.

- Công nghệ ảo hoá container sử dụng Docker.

- Máy tính nhúng Raspberry Pi.

- Network communications từ Sensor đến Raspberry Pi (Edge) và từ Raspberry Pi đến

Server.

Trang 5

3 Phạm vi nghiên cứu:

- Vị trí lắp đặt thiết bị: Sân thượng toa E toà nha Dai học Công nghệ Thông

tin — Đại học Quốc Gia Thành Phố Hồ Chí Minh.

- Đối tượng nghiên cứu:

¢ Cac dữ liệu thu thập được từ cảm biến bao gồm: Nhiệt độ, độ

ẩm, áp suất khí quyền, tiếng ồn, ánh sáng, CO, NO2, 03.

e_ Các thiết bị phần cứng của Libelium, module giao iép giữa thiết bị

đến gateway và công nghệ truyền tải thông qua WiFi.

s _ Ngôn ngữ lập trình: Python, C,

~ Phạm vi nghiên cứu:

¢ Thang đo đánh giá mức độ của các dữ liệu cảm biến thu thập được.

© Cac thiết bị phần cứng mã nguồn mở của Libelium, các cảm biển.

s _ Công nghệ truyền thông mạng: MQTT, SSL/TLS,

¡Nội dung, phương pháp dự định nghiên cứu

Nội dung 1: Tìm hiểu và triển khai Blockchain Network

Phương pháp: Nghiên cứu các bài báo liên quan, tìm hiểu về cách thực hiện

và triển khai hệ thống Blockchain.

Mục tiêu: Xây dựng thành công hệ thống Blockchain Private, và tiền hành kiểm tra khả

động của hệ thống

Kết quả dự kiến: hoàn thành được hề thống Blockchain Private.

Nội dung 2: Xây dựng hệ thống tính toán cân biên dựa trên các công nghệ

Docker, Kubernetes, Raspberry pi 4.

Phương pháp: Ung dụng kiến thức Docker, Kubernetes, và Raspberry pi

Cluster dé xây dụng hệ thong.

Mục tiêu: Triển khai được hệ thống tính toán cận biên Edge site.

Phuong án kết hợp với khoa: Mượn các thiết bị Raspberry pi 3 dé làm Edge

server, bộ Libelium Smart Cities, các cảm biến về môi trường, bộ module

giao tiếp Wifi.

Kết quả dự kiến: Hoàn thành được thế thống tính toán cận biên với Edge

server.

Nội dung 3: Tìm hiểu phương pháp thu thập các dữ liệu cảm biến của bộ

Libelium và các cách truyền tải giá trị cảm biến đến gateway

Phương pháp: Nghiên cứu các tài liệu mã nguồn mở của Libelium, tìm hiểu

về cách giao tiếp của module truyền tải đến gateway.

năng hoạt

Trang 6

Mục tiêu: Xây dựng được mô hình truyền nhận dữ liệu cảm biến, thu thập

được dữ liệu thô của cảm biến và đóng gói thành dataframe.

Kết quả dự kiến: Các dữ liệu cảm biến sau khi được đọc sẽ đóng gói thành

các dataframe và gửi đến gateway, dataframe có thể được truyền tải qua nhiều

giao thức trên nhiều nên tang.

Nội dung 4: Ung dung công nghệ Blockchain vào mô hình IoT đã dựng

Phương pháp: Nghiên cứu cách thức truyền nhận dữ liệu cảm biến trong hệ

thông.

Mục tiêu: Triển khai được việc truyền nhận dit liệu từ gateway đến

Blockchain Network va đóng gói lưu trữ dữ liệu trên hệ thông.

Kết quả dự kiến: Dữ liệu thô sau khi được đưa đến gateway dé xử lý thành dữ liệu có thể đọc

được, từ đó dữ liệu sẽ được gửi dến Blockchain Network nhằm đóng khối các dữ liệu và lưu trữ phi tập trung trên hệ thống.

Nội dung 5: Thực nghiệm 4 tầng hệ thống IoT (Thiết bị, module giao tiếp, edge

gateway, blockchain network) và hoàn thành các nội dung

Phương pháp: Đo lường các chi số dựa trên các dữ liệu cảm biến Kiểm tra tính hoàn

thiện, kiếm tra hiệu năng của luồng xử lý dữ liệu và khả năng xử lý dữ liệu liên tục

| Mục tiêu: Vận hãnh hệ thống và đo lường dé kiểm nghiệm, đánh giá khả năng hoạt động của mô hình Ghi nhận, phân tích, đánh giá các kết quả đạt được Khắc phục những thiếu

| sót trong quá trình vận hành.

| Kết quả dự kiến: Hoàn thành các nội dung về cơ sở lý thuyết và vận hành hệ thống Hoàn

thành khoá luận.

Kế hoạch thực hiện:

Thời gian Nội dung Nhiệm vụ

06/02/2023 | Tìm hiểu và thảo luận ~ Tìm hiểu về đề tai, các nghiên cứu liên

quan đến đề tai.

12/02/2023 - Ban luận về những báo cáo đã tiềm

7 ¬ hiểu và đặt vấn dé cho đề tài

13/02/2023 | Nhận đề tài va trao đổi | - Nhận đề tai từ GVHD, thống nhất các

nội dung thực hiện, hướng phát triển.

hưng - Đăng ký và hoàn thành đại cương khoá

: luận _|

|| 27/02/2023 | Triển khai nội dung 1 - Xây dụng hệ thống Blockchain

network.

Trang 7

23/03/2023 T

25/03/2023 Báo cáo tiền độ - Báo cáo tiễn độ và trao đổi với GVHD

28/03/2023 | Triển khai nội dung2 _ | - Xây dựng hệ thống tính toán cận biên

- kết hợp điện toán đám mây sử dung

11/04/2023 Docker, Kubernetes, Raspberry Pi,

AWS

- Xây dựng các serverfnode —_

_ - Phát triển mô hình của hệ thống _

11/04/2023 Triển khai nội dung 3 ~ Tìm hiểu phương pháp thu thập các dữ ||

- liệu cảm biến của bộ Libelium, các cách

18/04/2023 truyền tải giá trị cảm biến đến gateway

~ Truyễn và nhận dữ liệu từ các cảm biến

~ Tìm hiểu các cách giao tiếp của các

seul sa | module i

18/04/2023 | Báo cáo tiến độ giữa kì | - Báo cáo tiến độ giữa kỳ khoá luận tốt

- nghiệp với GVHD

02/05/2023 3

02/05/2023 | Triển khai nội dung 4 - Tìm hiểu phương pháp đóng gói dừ

_ Báo cáo liệu trên hệ thông Blockchain Network.

09/05/2023 - Triên khai đóng khối các dữ liệu cảm

= biến vào chuỗi |

09/05/2023 Triển khai nội dung 5 ~ Thực nghiệm 4 tang hệ thống loT

- (Thiết bi, module giao tiếp,

13/06/2023 edge

gateway, cloud site) và hoàn thành các |

nội dung tiles - Hoàn thành so thảo báo cáo khoá luận

20/06/2023 | Phản biện khoá luận tốt | Gặp GVHD và giảng viên phản biện

SH nghiệp Hoan chỉnh các báo cáo và các vẫn đề

27/06/2023 liên quan ie |

04/07/2023 | Bảo vệ khoá luận Chính thức bảo vệ khoá luận tốt nghiệp _

11/07/2023

tốt nghiệp

Trang 8

Tài liệu tham khảo

(Patel, Chintan, "loT privacy preservation using blockchain." Information Security

Journal: A Global Perspective 31.5 (2022): 566-58 L.=

2] Huo, Ru, et al "A comprehensive survey on blockchain in industrial internet of things:

Motivations, research progresses, and future challenges." IEEE Communications Surveys & Tutorials 24.1 (2022); 88-122.

BỊ Elghaish, Faris, ct al "Blockchain and the ‘Internet of Things' for the construction

industry: research trends and opportunities." Automation in construction 132 (2021): 103942.

(4) Huynh Thanh Tam, Nguyen Dinh Thuc, Dang Hai Van, Huynh Nguyen Chỉnh.

“http://ste ienceandtechnology.com.vn/index.php/stdj/artiele/view/3855” Vnuhem

journal of science and technology development [Published March 31, 2022].

[5] A v Sce, "Smart Cities - Statistics & Facts," Statista, 25 May 2021 [Online] Available:

hitps:/vww.statista.com/topics/4448/smart-city/#dossierContents outerWrapper.

[Accessed 7 March 2022].

[6] Quan, Doan Minh, and Tran Thi Hai Van "POTENTIAL APPLICATION OF

BLOCKCHAIN TECHNOLOGY IN AGRICULTURE IN VIETNAM."

[] Nguyen, Binh Minh, Thanh-Chung Dao, and Ba-Lam Do "Towards a

blockchain-based certificate authentication system in Vietnam." Peer Computer Science 6

(2020): e266.

[8] Mohammad Hasan, "State of loT 2022: Number of connected Io devices growing 18%

to 144 billion globally" May 18, 2022 [Online] Available:

_https:/iot-analytics.comnumber-conneeted-iot-devices/.

Xác nhận của CBHD TP HCM, ngày 15 tháng 03 năm 2023

(Ký tên và ghỉ rõ họ tên) Sinh viên

| She (Ký tên va ghi rõ họ tên)

lu (Ma ai Ng«jệt Khếnh 7A

a

Trang 9

MỤC LỤC

¡cô ®- Ỏ 1 Chương 1: ` MỞ ĐẦU eee-eccccccccessrerereeeeee 2

1.1 Mục đích -c chen 2

12 Đối tượng.

1.3 _ Phạm vi nghiên CỨU - 6 St St # SE 3

Chương 2: TONG QUAN eccceccccceseerereseerrcee 4

2.1 Tổng quan tình hình nghiên cứu: -22c:z++222vvvvccrz+rrrrx 4

2.1.1.Tình hình nghiên cứu ngoài nước: - ++c~+ 4

2.1.2.Tình hình nghiên cứu trong nước: -:- + ++++secx+x++ 4

2.2 Tính khoa học của đề tài: -cccsccerreererrrrirrrrrrrrrrrriee 5 Chương 3: ` LÝ THUYET LIEN QUAN.

3.1.VPSUA <i, _ BA 6

3.2 TCRESOcKet mina SR Bee sấ 7

ko =5=ốế 9 3.4 Blockchain Io/T€X + tt St SE ren 12

3.5 Smart Contract Solidity tt St # SE 16

Chương 4: TRIÊN KHAI MOI TRƯỜNG 18

4.1 Mô hình hệ thống 22¿©2+2++2EEEE+2EE2E12222311222211112222122czxk 18 4.2 Mô hình dịch vụ triển khai trong hệ thống -:-5+ 21

4.3 Libelium Smart City PPTO ¿tt St xkESEEkEkkekrkrkrkrkrrkexee 2 4.4 Waspmote Wifi PTO + ct tt re 26

4.5 Mô hình triển khai hệ thống K3S . -:: 72ccccccce+ze 29

Trang 10

4.6 Sơ đồ triển khai hệ thống Blockchain IoTex -s 33

4.7 Luồng hoạt động của hệ thống -222c:++22cvvvvrrerrrrrres 34 4.8 Triển khai hệ thống K3S - 22-22222222 1222221122221 2E Le 35

4.9 Cai đặt TCP socket server trên k3s Clusfer -.- +: ++ss+++ 36

4.10 Smart Contract cập nhật thông tin lmage ¿-:-5-+ 38

4.11 Smart Contract cập nhật chuỗi băm . ¿©2522 39

4.12 Triển khai hợp đồng thông minh trên mạng testnet IoTex

Chương 5: ` ĐÁNH GIÁ KET QUÁ -«- 43

5.1 Các tiêu chí đánh giá -cccccc222222222111 re 43

5.2 Chi phí của các hợp đồng thông mỉnh z-cz+¿ 44

Chương 6: KÉT LUẬN VA HUONG PHÁT TRIẺN 47

6.1.1 Điểm đạt được ccccccccc 2222222222221 cctrrrrrrrrree 47 6.1.2 Điểm hạn chế.

Trang 11

DANH MỤC HÌNH

Hình 3.1: Sơ đồ kiến trúc của K3S - cccccctitrrrirrrrrrrrrrrirrrrrree 11

Hình 3.2: Logo IoTex Blockchain 5 5c 22c 322132 EseEeerterresereses 12

Hình 3.3: Kiến trúc hệ thống IoTex Bloekchain - 2 2s s+£z£++£+s2 13

Hình 3.4: Logo Solidity - - Sc nnnn SH HH HH HH HH HH Hiệp 16

Hình 4.1: Mô hình tong quan hệ thong -2- ¿5£ s+Sx+E++E£+E££EeEzEzxred 18Hình 4.2: Mô hình dich vụ triển khai trên hệ thống :- 5552552 21Hình 4.3: Bộ cảm biến Libelium Smart City Pro Wifi 2-5555: 24

Hình 4.4: Mach Waspmote và các module mở rộng - ++-ss++s+2 26

Hình 4.5: Mô hình chi chi tiết hệ thống K3S 2-©52©522cs+czscxzei 29Hình 4.6: Hệ thống Raspberry pi cÏuster 2 2s s+++E++EzEe£xererxzrered 30

Hình 4.12: Smart Contract cập nhật dữ liệu thông tin lmage 38

Hình 4.13: Smart Contract cập nhật chuỗi băm - ¿2 ¿+ sE+E+E+E£E£eEzErxsez 39

Hình 4.14: Doan code JS triển khai hợp đồng thông minh - 40Hình 4.15: Triển khai thành công Smart Contract 2 2s s+cs+£++xz+sz 40Hình 4.16: Kịch bản triển khai Smart Contract 2 5s sec+£e£zeerxzes 41

Hinh 5.1: Bang thống kê chi phí và thời gian triển khai Smart Contract 44

Trang 12

DANH MỤC TU VIET TAT

- TCP : Transmission Control Protocol

- VPS: Virtual Private Server

- ACK: Acknowledgment

- IoT : Internet of Things

Trang 13

TÓM TẮT

IoT (Internet of Things) đã trở thành một phan thiết yếu của các hệ thống thôngminh hiện nay, như Smart City, Smart Home, Smart Agriculture, Cụ thé, theothống kê của IOT ANALYTICS tính tới năm 2023 số lượng thiết bị IoT kết nối tăngthêm 18% lên đến 16,7 tỷ thiết bị trên toàn cầu và sẽ còn tăng mạnh trong những năm

tiếp theo! Với số lượng thiết bị IoT ngày càng lớn, dẫn đến việc khi bạn muốn thay

đôi một thông số hoặc thay đôi một firmware cho hệ thống IoT là rất khó thực hiện,

do đó đã có những giải pháp giúp chúng ta có thê thực hiện thao tác tái cấu hình mộtcách đơn giản hơn thông qua Internet Việc tái cau hình thông qua Internet sẽ có rất

nhiều van đề liên quan đến bảo mật của dữ liệu truyền nhận Các dit liệu này khi

truyền nhận thông qua Internet rất dé bị tan công thay đổi hoặc giả mạo dữ liệu Do

đó cần phải có giải pháp nâng cao tính bảo mật cũng như tính minh bạch của việc

thống tái cấu hình này So với các phương pháp bảo mật truyền thống đã có như

Checksum, Blockchain với khả năng đảm bảo tính minh bạch của dữ liệu khi dữ

liệu đã ghi vào sẽ không thê chỉnh sửa hoặc xóa đi, và với tính lưu trữ phân tán sẽđảm bảo tính bảo mật của dữ liệu được tốt hơn Do đó, tôi đề xuất một giải pháp ứng

dụng công nghệ Blockchain và việc lưu trữ và quan lý quá trình tái cấu hình trong hệ

thống IoT dé đảm bảo tính bảo mật của quá trình và tính minh bạch của các yêu cầu

tái câu hình.

Ị https://iot-analytics.com/number-connected-iot-devices

Trang 14

Chương 1: MỞ ĐẦU

1.1 Mục đích

Blockchain là một công nghệ tiên tiễn và đột phá đã tạo ra sự thay đổi lớn trongnhiều lĩnh vực, bao gồm cả hệ thống IoT (Internet of Things) Hệ thống IoT kết nốihang tỷ thiết bị thông minh và cho phép chúng tương tác và trao đôi dir liệu Tuynhiên, việc quản lý và tái cấu hình các thiết bị trong hệ thống IoT đôi khi gặp phảinhiều thách thức về bảo mật, an toàn và tính minh bạch Đây là lúc Blockchain có thểđược áp dụng dé giải quyết những van dé này

Một trong những lợi ích lớn nhất của việc áp dụng Blockchain vào IoT là khảnăng xác thực và phân phối dữ liệu Blockchain cho phép tất cả các thiết bị trongmạng IoT chia sé dữ liệu của chúng một cách an toàn và không thé sửa đôi Điều này

đồng nghĩa với việc dữ liệu được xác thực và chống lại sự gian lận, đảm bảo tính tincậy của đữ liệu thu thập từ các thiết bị IoT

Ngoài ra, Blockchain cũng cung cấp tính minh bạch trong việc quản lý dữ liệuIoT Các giao dịch được lưu trữ trên Blockchain là công khai và không thé thay đổi,

cho phép các bên liên quan kiểm tra tính chính xác và tính toàn vẹn của đữ liệu Điềunày đồng nghĩa với việc đảm bảo tính minh bạch và tránh được việc gian lận hay lạm

dụng dir liệu IoT.

Không chỉ vay, tính bảo mat của Blockchain cũng là một lợi điểm quan trọng

trong việc lưu trữ dữ liệu IoT Dữ liệu được mã hóa và phân tán trên các nút trong

mạng Blockchain, giúp ngăn chặn các cuộc tan công và đảm bảo an toàn cho dữ liệuIoT trước những mối đe dọa bảo mật

Trang 15

- Công nghệ ảo hoá container sử dung Docker.

- Máy tính nhúng Raspberry Pi.

- Network communication từ Sensor đến Raspberry Pi (Edge) và từ Raspberry

Pi dén Server

1.3 Pham vi nghién ciru

- Vị trí lắp đặt thiết bị: Phong lab E3.1 toa nhà E trường Dai hoc Công nghệThông tin — Đại học Quốc Gia Thành Phó Hồ Chí Minh

- Đôi tượng nghiên cứu:

e Các dữ liệu thu thập được từ cảm biến bao gồm: Nhiệt độ, độ am, tiếng ồn,

ánh sáng, CO, NO2, O3.

e Các thiết bi phần cứng của Libelium, module giao tiếp giữa thiết bị đến

gateway và công nghệ truyền tải thông qua WiFi

e Ngôn ngữ lập trình: Solidity, C, NodeJS.

- Phạm vi nghiên cứu:

e Thang do đánh giá mức độ của các dit liệu cam biến thu thập được.

e Các thiết bi phan cứng mã nguồn mở của Libelium, các cảm biến.

e Công nghệ truyền thông mang: TCP socket

Trang 16

Chương 2: TONG QUAN

2.1 Tổng quan tình hình nghiên cứu:

2.1.1.Tình hình nghiên cứu ngoài nước:

Tình hình nghiên cứu về ứng dụng Blockchain trong IoT đang ngày càng thu hút

sự quan tâm của các nhà nghiên cứu và doanh nghiệp Nhiều nghiên cứu đã chứngminh tiềm năng của việc sử dung Blockchain dé giải quyết các thách thức của IoT

như bảo mật, độ tin cậy va quản ly dir liệu Vi dụ, nghiên cứu của Chintan Patel về

giải pháp bảo vệ quyền riêng tư và phân bổ danh tinh bang cách sử dụng quản lý danhtính an toàn thông qua chuỗi khối dựa trên mật mã với nền tảng khóa công khai[1].Nghiên cứu về hệ thống kiểm soát truy cập trong IoT có tên là fabric-iot [2] Các

nghiên cứu tiên tiến này đang đóng góp vào việc phát triển ứng dụng Blockchain

trong IoT và nhiều lợi ích trong các lĩnh vực khác nhau

2.1.2.Tình hình nghiên cứu trong nước:

Tính đến thời điểm hiện tại (05/2023), đã có nhiều bài báo nghiên cứu khoa họcđược xuất bản với đề tài: “Nền tảng đảm bảo an toàn bảo mật dựa trên Blockchain

cho liên mạng vạn vật” [3] Trong bài nghiên cứu này, nhóm tác giả đã đưa ra một

khung hệ thống bảo mật mới dựa trên kiến trúc Blockchain để đảm bảo tính an toàn

và minh bạch cho hệ thống IoT Một bài nghiên cứu khác với tên “Tiềm năng ứng

dụng công nghệ Blockchain trong nông nghiệp tại việt nam”[4] Trong bài báo nay,

nhóm tác giả đã đề xuất nghiên cứu ứng dụng công nghệ Blockchain trong hoạt độngtruy xuất nguồn gốc, cung ứng và quản lý bán hàng nông sản Trong đề tài nghiên

cứu “Development of Libelium-based Reconfigurable Solutions For Smart City

Applications”[5], nhóm tác gia đã đề xuất một giải pháp ứng dụng phương pháp tái

cầu hình vào mô hình IoT trên nền tảng Libelium Bên cạnh những dé tài kê trên còn

có những đề tài khác như “Adaptive Sampling for Saving Energy: A Case Study on

The Libelium-based Environment Monitoring System”[6], và “Building a

Recruitment Systtôi Based on Blockchain and Federated Learning”[7] Các nghiên

Trang 17

cứu nêu trên là tiền đề đề đề tài tiếp tục áp dụng và phát triển theo hướng của nhómnghiên cứu mong muốn.

2.2 Tính khoa học của đề tài:

Công nghệ IoT đã mở rộng và vượt xa sự mong đợi của mọi người, các giải pháp

IoT được phat trién rộng rãi trong các lĩnh vực khác nhau như: y tế, giáo dục, đờisong, Sự phát triển vượt bậc này nhằm mục đích thay đổi dé đáp ứng những thách

thức mới trong việc bảo vệ sự toàn vẹn dữ liệu Các thành phố và đô thị lớn trên thế

giới đang tìm cách ứng dụng và thừa kế những công nghệ IoT đề phát triển trở thànhthành phố thông minh trong tương lai Theo báo cáo của Statista, thành phố thôngminh chiếm ngân sách lớn thứ hai theo thống kê các dự án IoT được phát triển trongnăm 2021[8] Với số lượng thiết bị IoT ngày càng phát triển, việc dam bảo dit liệutoàn vẹn là một thách thức lớn đối với những người phát triển trong lĩnh vực này Vớiviệc mỗi ngày có hàng triệu đữ liệu được truyền nhận trên toàn cầu, và việc phải cầuhình lại hệ thống theo nhu cầu người sử dụng hoặc cập nhật Image, Firmware cho các

thiết bị IoT là rất quan trọng Do đó việc đảm bảo tính bảo mật cũng như tính minh

bạch trong quá trình tái cấu hình trên các thiết bị IoT là vô cùng quan trọng, vì nếukhông có những kỹ thuật bảo mật mã hóa dữ liệu, các lệnh tái cấu hình sẽ dễ bị thay

đổi và dẫn đến bị sai sót Ngoài những phương pháp lưu trữ truyền thống và áp dụng

các giải thuật mã hóa, với sự phát triển của công nghệ Blockchain đã tạo ra một bướctiễn lớn trong việc lưu trữ và dam bảo toàn ven dit liệu trong không gian mang Sựgiao thoa giữa Blockchain và IoT đã nồi lên và phát triển đến nay nhằm mang lại sựtoàn vẹn dữ liệu cũng như nâng cao tính bảo mật của hệ thống IoT Do đó nhóm đềxuất một ý tưởng kết hợp Blockchain vào việc lưu trữ và quản ly quá trình tái cauhình của hệ thống IoT nhằm đảm bảo tính minh bạch và tính bảo mật cho các dữ liệu

tai cau hình.

Trang 18

Chương 3: LÝ THUYÉT LIÊN QUAN

3.1 VPS

VPS (Virtual Private Server) là một dịch vụ cung cấp máy chủ ảo trên nền tảngđiện toán đám mây Nền tảng OpenStack là một giải pháp mã nguồn mở cho việc xâydựng và quản lý hạ tầng đám mây Khi kết hợp VPS và OpenStack, ta có một mô

hình mạnh mẽ cho việc triên khai các máy chủ ảo linh hoạt và mở rộng.

Ưu điềm:

- Khả năng linh hoạt: Một trong những ưu điểm quan trọng của VPS trên nền tảng

OpenStack là tính linh hoạt và mở rộng Với mô hình máy chủ ảo, người dùng có

thé dé dang tạo và quản lý các máy chủ ảo theo nhu cầu của họ OpenStack cungcấp các công cụ và giao diện điều khiển mạnh mẽ cho việc quản lý và mở rộng

cụm máy chủ ảo, cho phép người dùng tăng giảm tài nguyên một cách linh hoạt va

nhanh chóng.

- Tính bảo mật: VPS dựa trên OpenStack cung cấp khả năng cung cấp dịch vụ vàtài nguyên đáng tin cậy Với kiến trúc phân tán và khả năng sao lưu dữ liệu, ngườidùng có thể đảm bảo rằng dich vụ của họ sé không bi gián đoạn và dữ liệu sẽ được

bảo vệ an toàn Hơn nữa, OpenStack cũng cung cấp khả năng chịu lỗi và khôi phục

nhanh chóng, giúp giảm thiểu thời gian chết máy và tăng tính sẵn sàng của dịch

vụ.

- Tính tùy biến: VPS trên nền tảng OpenStack cho phép tùy chỉnh và cau hình cao

Người dùng có thé chon từ nhiều hệ điều hành, ứng dụng và cấu hình tài nguyên

dé phù hợp với nhu cầu của họ Bằng cách sử dụng công cụ và giao diện điều khiểncủa OpenStack, người dùng có thé linh hoạt tao và quản lý các máy chủ ảo với cácyêu cau cụ thé và tùy chỉnh theo nhu cầu của ho

Nhược điểm:

Tuy nhiên, VPS trên nền tảng OpenStack cũng có một số nhược điểm cần xem

xét.

Trang 19

- Không thích hợp với người mới: việc triển khai và quản lý VPS trên nền tảng

OpenStack có thể phức tạp đối với người dùng không có kinh nghiệm hoặc khôngquen thuộc với công nghệ điện toán đám mây và quản lý hạ tầng Việc đảm bảo

hiệu năng và hiệu suất tối ưu của hạ tầng cũng có thé đòi hỏi sự hiểu biết và kỹ

năng chuyên môn.

- Nhu cầu phần cứng: việc triển khai và vận hành VPS trên nền tảng OpenStackđòi hỏi một hệ thống phần cứng và mạng phức tạp dé đáp ứng yêu cầu về hiệunăng và khả năng mở rộng Điều này có thê tạo ra một ngưỡng đầu tư ban đầu cao

và đòi hỏi sự chuyên môn trong việc quản lý hạ tâng.

> VPS dựa trên nền tang OpenStack là một giải pháp mạnh mẽ cho việc triển khai

và quản lý máy chủ ảo Với tính linh hoạt, khả năng mở rộng và khả năng tùy chỉnh

cao, VPS trên nền tảng OpenStack cho phép người ding tận dụng tối đa tiềm năngcủa điện toán đám mây Tuy nhiên, việc triển khai và quản lý VPS trên nền tảngnày có thé phức tạp và đòi hỏi kiến thức chuyên môn

3.2 TCP Socket

TCP (Transmission Control Protocol) socket là một cơ chế truyền thông mang

phô biến được sử dụng đề thiết lập và duy trì kết nói giữa các thiết bị trong môi trường

mang Nó cung cấp một giao điện cho ứng dụng dé truyền và nhận dit liệu thông qua

Các ứng dụng sử dụng TCP socket đề thiết lập các kết nối client-server và truyền

thông qua chúng Đối với server, nó lắng nghe các kết nối đến và tạo ra các socketmới dé xử lý yêu cầu từ client Đối với client, nó thiết lập kết nối đến server thôngqua socket và truyền dữ liệu

Trang 20

TCP socket cung cấp một cách tiện lợi và linh hoạt đề giao tiếp và truyền dữ liệu

qua mạng Nó được sử dụng rộng rãi trong các ứng dụng mạng như truyền file, tròchuyện trực tuyến, truyền dữ liệu qua mạng và nhiều ứng dụng khác

Ưu điểm:

- Độ tin cậy: Ưu điểm quan trọng nhất của TCP socket là tính đáng tin cậy TCP

socket xây dựng một kênh truyền dữ liệu ổn định va bảo mật giữa hai thiết bị trên

mạng Nó đảm bảo rằng dữ liệu được gửi từ nguồn sẽ được chính xác nhận và đến

đích một cách đáng tin cậy TCP socket sử dụng cơ chế ACK dé xác nhận việcnhận dữ liệu và cơ chế retransmission để tái gửi dữ liệu nếu cần Điều này đảmbảo rằng đữ liệu sẽ không bị mắt hoặc hư hỏng trong quá trình truyền tải

- Khả năng kiểm soát luồng: TCP socket cung cấp kiểm soát luồng dữ liệu Điềunày cho phép điều chỉnh tốc độ truyền dữ liệu giữa hai thiết bị dé đảm bảo rằngkhông có quá tải trên mang TCP sử dung cơ chế sliding window dé điều chỉnhviệc gửi và nhận dữ liệu, đồng bộ hóa giữa nguồn và đích và đảm bảo sự cân bằng

giữa tốc độ gửi và tốc độ xử lý của người nhận

- Tính ốn định: TCP socket hỗ trợ các dịch vụ có kết nối Điều này có nghĩa là nócho phép thiết lập và duy trì một kết nối liên tục giữa nguồn và đích trong suốt quátrình truyền đữ liệu Điều này hữu ích cho các ứng dụng yêu cầu độ tin cậy cao và

truyền tải liên tục như truyền dữ liệu trực tiếp hoặc trò chuyện trực tuyến

Nhược điểm:

Tuy nhiên, TCP socket cũng có một số nhược điểm cần xem xét

- Độ trễ: tính đáng tin cậy của TCP socket đòi hỏi một giao thức phức tạp hơn và

có thể gây độ trễ và tăng kích thước gói tin so với giao thức UDP (User DatagramProtocol) không đáng tin cậy Điều này có thể ảnh hưởng đến hiệu suất truyền dữliệu trong mang TCP socket không phủ hop cho các ứng dụng yêu cầu truyền tảinhanh và thời gian thực Do tính đáng tin cậy và kiểm soát luồng, TCP socket cóthê tạo ra độ trễ cao trong quá trình truyền dữ liệu Điều này không phù hợp cho

Trang 21

các ứng dụng yêu cau truyền tải nhanh như trò chơi trực tuyến hoặc phát sóng trực

tiếp

- Tài nguyên: TCP socket có yêu cầu khá cao về tài nguyên Mỗi kết nối TCP đòi

hỏi bộ nhớ và sự xử lý phía máy chủ dé duy trì và quan lý Điều nay có thé anhhưởng đến khả năng mở rộng của hệ thống và đòi hỏi nguồn tài nguyên phía máy

chủ.

> TCP socket là một cơ chế truyền thông đáng tin cậy trong mạng Với tinh đáng tin

cậy, kiểm soát luồng và hỗ trợ dịch vụ có kết nối, TCP socket đảm bảo truyền và

nhận dir liệu một cách an toàn và ôn định Tuy nhiên, nó cũng có nhược điểm về

độ phức tạp, yêu cầu tài nguyên cao và không phù hợp cho các ứng dụng yêu cầu

truyền tải nhanh

3.3 K3S

K3S là một hệ thống quản lý container nhẹ, nhanh chóng và đơn giản, được thiết

kế dé chạy trên các hạ tầng có tài nguyên hạn ché Với sự phát triển không ngừng của

ứng dung và dich vu dựa trên container, K35 đã trở thành một giải pháp lý tưởng cho

việc triên khai Kubernetes.

K3S giúp giảm đáng kế khối lượng công việc và tài nguyên yêu cầu so vớiKubernetes truyền thống Với việc loại bỏ các thành phần không cần thiết, K3S giảmbớt sự phức tạp trong việc cài đặt và quản lý, đồng thời tiết kiệm tài nguyên với yêu

cầu cau hình tối thiểu Điều này đặc biệt hữu ích cho các môi trường như máy tính cánhân, cụm IoT hoặc các máy chủ nhỏ.

Mặc dù nhẹ nhàng, K3S vẫn cung cấp day đủ tính năng của Kubernetes Nó hỗtrợ việc trién khai ứng dụng, quản ly thống nhất, cân bằng tải, mở rộng và khả năngchịu lỗi tự động Với K3S, người dùng có thể tận hưởng sự linh hoạt và mạnh mẽ của

Kubernetes mà không cân đánh đôi hiệu suat va tài nguyên.

Trang 22

Ưu điểm:

- Dung lượng nhẹ: kích thước nhỏ và yêu cầu tài nguyên thấp So với Kubernetestruyền thống, K3S có kích thước nhẹ hơn và chỉ yêu cầu một số ít tài nguyên déchạy Điều này làm cho K3S trở thành một lựa chọn lý tưởng cho các môi trường

có tài nguyên hạn chế hoặc các thiết bị nhúng có ít bộ nhớ và CPU

- Triển khai: K3S có khả năng triển khai nhanh chóng va dé dàng Với K3S, quátrình triển khai và cấu hình Kubernetes trở nên đơn giản hơn K3S cung cấp mộtbản cài đặt tự động và gọn nhẹ, giúp người dùng tiết kiệm thời gian và công sứctrong việc triển khai và quản lý một môi trường Kubernetes

- Hỗ trợ người dùng: K3S hỗ trợ các tính năng tiên tiến của Kubernetes Mặc du

K3S có kích thước nhỏ, nhưng nó van giữ được các tính năng chính của

Kubernetes Người dùng có thé sử dụng K3S để triển khai các ứng dụng phân tan,

quản lý các tài nguyên và kiêm soát việc mở rộng tự động trong môi trường sản

xuất.

Nhược điêm:

Nhược điểm lớn nhất của K3S đến từ cơ sở dữ liệu, vì K3S không hỗ trợ cơ sở

dữ liệu phân tán mặc định nao, đã khiến cho tính sẵn sảng bị giảm sút Vì vậy, nếucần thiết nên cài đặt hoặc trỏ các máy chủ K3S đến một điểm cuối cơ sở dit liệu bênngoài (như PostgreSQL, va MySQL) Tuy nhiên, K3S cũng có một số nhược điểm

ứng được yêu câu về hiệu suât và khả năng mở rộng.

10

Trang 23

- Bảo trì: do là một dự án mới và nhanh chóng phát triển, K3S có thể không được

hé trợ và bảo trì bằng mức độ cao như Kubernetes chính thức Điều này có thể ảnh

hưởng đên sự ôn định và độ tin cậy của hệ thông.

> K3S là một phiên bản nhẹ và nhanh chóng của Kubernetes, đáp ứng nhu cầu triển

khai và quản lý Kubernetes trên các thiết bị và môi trường có tài nguyên hạn chế

Với kích thước nhỏ, triển khai đễ dàng và hỗ trợ các tính năng cơ bản của

Kubernetes, K3S mang lại sự linh hoạt và hiệu suất đáng kể Tuy nhiên, nó cũng

có hạn chê về tính năng và hiệu suât trong các môi trường phức tạp và yêu câu cao.

Cơ chê sử dung trong nghiên cứu

k3s Server k3s Agent

supervisor +

Sb

i '

1 1 1 1

l

APL Kube 4

Kine “cóc aay +—® Flannet |

1 1 1 ' 1 1 '

1

'

‘Scheduler 7: xanh Kubelet L„ Kubelet ma

a Tr

Hình 3.1: So đồ kiến trúc của K3S?

Trong bài viết này, tôi sử dụng K3s để dựng một cluster với 3 thiết bị máy tính

nhúng Raspberry pi 3 B+ với một Master và 2 Worker.

K3S trong hệ thống được dùng dé chia sé tài nguyên tính toán cũng như đảmbảo tính sẵn sang của hệ thống tại tang Edge Network Các dữ liệu như dit liệu

sensor, các tệp lệnh tái cấu hình, và các Firmware được gửi đến từ các User và cácthiết bị Libelium sẽ được các master và worker trong K3s phân phối nhau đảm

nhiệm truyền nhận dữ liệu Vì nếu chỉ dựng một thiết bị Raspberry pi 3 sẽ xảy ra

? https://docs.k3s.io/architecture

11

Trang 24

hiện tượng chết hoặc nghẽn mạch truyền nhận tín hiệu tại Edge network khiến hệ

thống bị gián đoạn cũng như bị hạn chế và giảm sút tài nguyên tính toán

3.4 Blockchain Io Tex

3 Iorex

IoTeX là một nền tảng Blockchain dành riêng cho Internet of Things (IoT), đượcphát triển để cung cấp một môi trường an toàn và tin cậy cho việc kết nối, giao tiếp

và giao dịch giữa các thiết bị IoT

Blockchain IoTeX sử dụng một cau trúc Blockchain cô điền với các tinh năng vàcải tiến đặc biệt nhằm đáp ứng các yêu cầu đặc thù của IoT Nó kết hợp công nghệBlockchain, giao thức bảo mật và các công nghệ khác dé tạo ra một mạng lưới loT

phi tập trung, an toàn va bảo mật.

3 https://iotex.io/

12

Trang 25

Reference Architecture Overview

Field Asset @—_————_ Asset Layer

+ Examples: Truck, Train, Machine

* Includes local and remote communication and

processing (on asset, fog)

WAN

loT Cloud —————————— oT Cloud Layer

* Asset connectivity & FOTA

* Asset-related data and event management

+ Enterprise Application Integration

Backend Blockchain Blockchain Layer

o——- + Asset-related ledger entries

BC Middleware ®————— * Peer-to-Peer Middleware for management of BCs

BC Network @-——— - Network of compute nodes for BC

Hình 3.3: Kiến trúc hệ thống IoTex Blockchain*

Ưu điểm:

- Tính bảo mật: Một trong những ưu điềm quan trọng của IoTeX là tính bảo mậtcao Với việc kết hợp các công nghệ tiên tiền như mã hóa, chữ ký số và cơ chế xácthực đa bước, loTeX dam bao rằng dữ liệu và giao dịch trên Blockchain của nó

được bảo vệ một cách an toàn Điều này rất quan trong trong lĩnh vực IoT, nơi mà

dữ liệu nhạy cảm và thông tin cá nhân được truyền và lưu trữ

- Quyền riêng tư: IoTeX cung cấp tính năng quyền riêng tư mạnh mẽ Với việc sử

dụng các công nghệ như zero-knowledge proof và mạng lưới Tor, loTeX cho phép

người dùng kiểm soát hoàn toàn dir liệu của minh và quyền riêng tư của họ Điềunày làm cho IoTeX trở thành một lựa chọn hấp dẫn trong việc triển khai các ứngdụng IoT yêu cầu sự bảo vệ quyên riêng tư

- Khả năng mở rộng: IoTeX hỗ trợ khả năng mở rộng Với cau trúc mạng lưới chiatách và sự tách biệt giữa các lớp Blockchain khác nhau, IoTeX có thể xử ly hàng

ngàn giao dịch mỗi giây và mở rộng quy mô mạng lưới của mình theo nhu câu.

4 https://iotex.b-cdn.net/docs/reference-architecture.pdf

13

Trang 26

Điều này đảm bao răng IoTeX có khả năng đáp ứng được yêu cầu tăng trưởng của

một mang lưới IoT phức tạp va quy mô lớn.

Nhược điểm:

Tuy nhiên, loTeX cũng có một số nhược điểm cần lưu ý

- Triển khai hệ thống: việc triển khai và phát triển ứng dụng trên IoTeX có thể đòi

hỏi kiến thức chuyên sâu về Blockchain và công nghệ IoT Điều này có thể làm

cho quá trình phát triển trở nên phức tạp và tốn nhiều thời gian và công sức

- Cộng đồng: IoTeX đang đối mặt với thách thức về quản lý sự phát triển và cộng

đồng Như mọi dự án Blockchain, sự thành công của IoTeX phụ thuộc vào việc

xây dựng một cộng đồng lớn và tích cực Việc thu hút và giữ chân cộng đồng, cùng

với việc phát triển và duy trì nền tang, là một thách thức không nhỏ đối với dự án

- Sự cạnh tranh: IoTeX cần phải đối mặt với sự cạnh tranh từ các nền tảngBlockchain khác Trong lĩnh vực IoT, có nhiều dự án Blockchain khác nhau nhằm

giải quyết các van đề về bao mật, quyền riêng tư và khả năng mở rộng IoTeX phải

cạnh tranh và tạo ra những giá trị độc đáo dé thu hút người dùng và nhà phát triển.Một số tính năng chính của Blockchain IoTeX bao gồm:

- Privacy: IoTeX sử dụng công nghệ "privacy-preserving" dé bảo vệ quyền riêng tư

của người dùng va dữ liệu IoT.

- Sealability: Nền tảng này được thiết kế để có khả năng mở rộng, cho phép xử lý

hàng triệu giao dịch mỗi giây.

- Decentralization: loTeX sử dụng mô hình phi tập trung, giúp tăng tính bao mật

và ôn định của mạng lưới IoT

- Consensus mechanism: IoTeX sử dụng cơ chế chứng thực cô phiếu (Delegated

Proof of Stake - DPoS) dé đảm bảo tính công băng và an toàn của hệ thống

> Với sự kết hợp giữa Blockchain và IoT, loTeX hướng đến việc tạo ra một hệ sinh

thái IoT được xác thực, an toàn va dang tin cậy, giúp mở ra nhiều ứng dụng mớitrong các lĩnh vực như công nghiệp, y tế, giao thông và nhiều lĩnh vực khác

14

Trang 27

Cơ chế đồng thuận:

Hiện nay IoTex Blockchain đã và đang sử dung cơ chế đồng thuận Roll-DPOS

(Roll-Delegated Proof-of-Stake) Cơ chế này được bắt đầu nghiên cứu vào năm 2014

bởi nhóm phát triển của hệ thống Blockchain Tezos Roll-DPOS được chính thức giớithiệu lần đầu tiên vào năm 2018 trong bản cập nhật đầu tiên của giao thức Tezos

Roll-DPOS được biết đến là một biến thê của DPOS (Delegated Proof-of-Stake).Nhưng khác với DPOS chỉ đơn thuần là một giao thức trong đó người dùng ủy quyền

bỏ phiếu cho một số lượn nhất định các nhà sản xuất khối Blockchain(Blockchainproducer) dé đảm bảo xác thực giao dich, thì Roll-DPOS là ban cải tiến hơn khi đây

là nơi các validator được chia nhỏ ra thành nhóm nhỏ hơn gọi là Rolls,dé tang tinh

mở rộng va hiệu suât của mang lưới Blockchain.

Cơ chế đồng thuận mới được phát triển này có cách thức hoạt động rất chặt chẽ

và có tính mở rộng mạng lưới rat lớn với việc:

- Chia nhỏ thành các Rolls: Trong Roll-DPOS, mạng Blockchain được chia nhỏ

thành các nhóm nhỏ gọi là "Rolls" Mỗi Roll bao gồm một số lượng nhất định các

validator.

- Ủy quyền và bỏ phiếu: Người dùng trong mạng Blockchain Roll-DPOS có thê ủyquyền Rolls cho các đại điện của cộng đồng Người dùng có quyền bỏ phiếu chocác đại diện này dé xác định những validator có quyền tạo khối và xác thực giao

dịch.

- Quá trình lựa chọn và xác thực: Các nhà sản xuất khối và validator trong

Roll-DPOS được chọn dựa trên số phiếu bỏ phiếu mà họ nhận được từ cộng đồng Các

nhà sản xuất khối có trách nhiệm tạo khối mới và xác thực giao dịch

- Phần thưởng và trừng phạt: Các nhà sản xuất khối va validator trong Roll-DPOS

nhận được phần thưởng cho việc tạo khối và xác thực giao dịch một cách chínhxác Tuy nhiên, nếu họ vi phạm quy tắc hoặc không thực hiện nhiệm vụ một cáchđúng đắn, họ có thé bị trừng phạt bằng việc mất một phần hoặc toàn bộ phần

thưởng.

15

Trang 28

Cơ chế đồng thuận Roll-DPOS tận dụng quyền ủy quyền của cộng đồng dé tao

ra một mạng Blockchain phân quyền và công bằng Nó giúp tăng tính mở rộng và

hiệu suất của mạng, đồng thời đảm bảo tính bảo mật và đáng tin cậy trong việc xácthực giao dịch.

3.5 Smart Contract Solidity

SOLIDITY

Hinh 3.4: Logo Solidity’

Solidity là ngôn ngữ lập trình được tao ra bởi một nhóm nha phat triển tên làEthereum Foundation, là một tô chức phi lợi nhuận được thành lập để phát triển và

hỗ trợ sự phát triển của nền tảng Ethereum và các công nghệ liên quan Solidity đượcphát triển bởi Gavin Wood, nhà sáng lập Ethereum và cũng là một trong những người

đóng góp quan trọng trong việc xây dựng Ethereum và công nghệ Blockchain.

Solidity được thiết kế đặc biệt và đã trở thành một ngôn ngữ quan trọng và phổ biếntrong cộng đồng phát triển Blockchain Smart Contract Solidity là một phần quantrọng của nền tảng Ethereum, cho phép viết và triển khai các hợp đồng thông minhtrong môi trường Blockchain Solidity là một ngôn ngữ lập trình cao cấp và hướngđối tượng, được thiết kế đặc biệt để xây dựng các ứng dụng phân tán và hợp đồng

thông minh.

Solidity cho phép các nhà phát triển xác định các quy tắc và điều kiện trong hợpđồng thông minh Ngôn ngữ này hỗ trợ nhiều tính năng quan trọng như kiểu đữ liệu,kiểm tra lỗi, biến, hàm, sự kế thừa và sự kiện Nó cũng cung cấp khả năng tương tác

với các hợp đồng khác và token ERC-20

Š https://inseclab.uit.edu.vn/lap-trinh-blockchain-ngon-ngu-solidity-co-ban-p2/

16

Trang 29

Ưu điểm:

Việc sử dụng Solidity trong việc phát triển hợp đồng thông minh mang lại nhiều

- Tính an toàn: Solidity hỗ trợ việc xây dựng các ứng dụng phân tán và hợp đồng

thông minh một cách an toàn và đáng tin cậy Nó giúp đảm bảo tính chính xác và

bảo mật trong quá trình thực thi các quy tắc trong hợp đồng thông minh

- Tái sử dụng: Solidity giúp tăng tính khả chuyền và tái sử dụng trong việc xâydựng hợp đồng thông minh Ngôn ngữ này cho phép các nhà phát triển xây dựngcác thư viện và giao diện thông minh, giúp tối ưu hóa quy trình phát triển và quản

- Khó tiếp cận: Solidity là một ngôn ngữ mới, do đó, việc học và làm quen với cú

pháp và nguyên tắc của nó có thể đòi hỏi thời gian và nỗ lực Cần đảm bảo rằng

các hợp đồng thông minh được kiểm tra kỹ lưỡng đề tránh các lỗ hồng bảo mật vàlỗi.

- Ảnh hưởng bởi Ethereum: Solidity chịu ảnh hưởng của sự thay đổi và phát triểncủa nền tảng Ethereum Các phiên bản mới của Solidity có thể có cú pháp và tínhnăng khác nhau, do đó, cần theo dõi và nắm vững các cập nhật dé đảm bảo sựtương thích và hiệu suất tốt nhất cho hợp đồng thông minh

> Solidity là một ngôn ngữ lập trình quan trọng trong việc phát trién hợp đồng thông

minh Việc sử dụng Solidity mang lại tính an toàn, khả chuyên và tái sử dụng,đồng thời hỗ trợ bởi một cộng đồng phát triển sôi động Tuy nhiên, cần đảm bảonăm vững cú pháp và quy tắc của Solidity và theo dõi sự phát triển của ngôn ngữ

để tận dụng tối đa tiềm năng của nó trong việc xây dựng hợp đồng thông minh

đáng tin cậy.

17

Trang 30

Chương 4: TRIEN KHAI MOI TRƯỜNG

4.1 Mô hình hệ thống

Trong mô hình triển khai này, nhóm triển khai hệ thống với 3 tầng bao gồm:

Cloud, Edge, và Device Với mô hình 3 tầng giúp cho việc quản lý và phân chia công

việc được dé dang hơn cũng như việc giảm tải cho các tầng thấp hơn một cách đảm

bảo an toàn hơn.

Với những tinh năng bảo mật tốt của IoTex Blockchain mang đến đi kèm với đó

là các cơ chế mã hóa đữ liệu và cơ chế đồng thuận dé xác thực dữ liệu một cách minh

bạch va chặt chẽ Sử dung Blockchain fullnode tại tầng Cloud và triển khai

Blockchain light node tại các thiết bị cận biên tai tang Edge cho phép nhóm tạo ramột cơ sở đữ liệu phân tán và bảo mật Mỗi thao tác tái cau hình được ghi lại và xácnhận bởi các nút mạng trên Blockchain, không thê bị thay đổi hay xóa bỏ một cáchtrái phép Điều này giúp tăng tính toàn vẹn và tin cậy cho quá trình quản lý tái cấuhình IoTex Blockchain cũng cung cấp khả năng theo dõi và tra cứu lich sử các thaotác tái cau hình trước đó Bang cách truy xuất vào Blockchain, người dùng và quản

trị viên có thể xem được tất cả các thay đổi đã được thực hiện trên hệ thống và xácminh tính chính xác của chúng.

Sending Image

fd a new inne Hash the i hashed to BC

Cloud user ———Ê*”'432**'"292 , New image ———“""""5°, Image Hashed —~—~""" , forex Blockchain

18

Trang 31

Hơn nữa, việc sử dụng Blockchain trong lĩnh vực lưu trữ và quản lý thao tác tái

cấu hình cũng giúp giảm thiểu sự phụ thuộc vào một bên thứ ba trung gian Thay vì

tin tưởng vào một tô chức trung gian đẻ duy trì và bảo vệ dữ liệu, Blockchain cho phép IoTex và người dùng giữ quyền kiểm soát độc lập và bảo mật dữ liệu của mình.

Việc xây dựng nút (node) IoTeX Blockchain tại tang Cloud trong mô hình triển khai với 2 node được sử dụng trên hai máy ảo VPS trên nền tảng OpenStack là một

bước quan trọng trong việc tạo ra một mạng Blockchain đáng tin cậy và bảo mật Cụ

thể hơn, nhóm đã triển khai 2 máy ảo VPS với câu hình RAM 4GB, bộ nhớ 60GB

với hệ điều hành Ubuntu 22.04 giúp đảm bảo các thư viện cũng như các gói hỗ trợ được tốt nhất.

Việc triển khai nút IơTeX Blockchain trên tang Cloud cho phép chúng ta tận dung các lợi ích của việc sử dụng mô hình điện toán đám mây OpenStack là một nền tảng

quản lý hạ tầng điện toán đám mây mở, cung cấp cho chúng ta khả năng tạo và quản

lý các máy ảo (VPS) dễ dàng Bằng cách sử dụng OpenStack, chúng ta có thể tạo ra các máy ảo VPS và câu hình chúng dé trở thành các node IoTeX Blockchain.

Mô hình triển khai với 2 node trên 2 máy ảo VPS cung cấp một cấu hình mạng phân tán, giúp tăng cường tính bảo mật và khả năng chịu lỗi của mạng Blockchain.

Các node này có thể được cấu hình để hoạt động như các node gốc (root node) hoặc

các node nhẹ (light node), tuỳ thuộc vào yêu cầu cụ thé của mạng.

Mỗi node IoTeX Blockchain sẽ được cài đặt từ source code dé tham gia vào

mạng Các node này sẽ thực hiện các chức năng quan trọng như xác nhận giao dịch,

tạo khối mới, và thực hiện các hoạt động bảo mật Cấu hình của mỗi node sẽ bao gồm các thông số như địa chỉ IP, công kết nối, và khóa riêng tư dé dam bảo tính toàn ven

và bảo mật của mạng.

Khi các node được khởi chạy trên hai máy ảo VPS, chúng sẽ kết nối với nhau thông qua mang đề hình thành một mạng Blockchain phân tán Việc sử dụng hai node

cho phép chúng ta tạo ra một mạng Blockchain có tính sẵn sàng cao, vì khi một node

gặp sự cố, node còn lại vẫn có thé tiếp tục hoạt động.

19

Ngày đăng: 02/10/2024, 08:35

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN