Nhận thấy đây làmột hướng đi tiềm năng, trong nghiên cứu này chúng tôi đề xuất một hệ thốngcho phép chúng ta phát hiện tấn công mạng, cùng với đó kết hợp với các kỹthuật lưu trữ, phòng c
Trang 1ĐẠI HỌC QUỐC GIA HỒ CHÍ MINH
TRƯỜNG DAI HỌC CÔNG NGHỆ THONG TIN
KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG
NGUYEN DUY HOANG - 19521537 DANG HOANG LONG - 19521775
A RELIABLE COLLABORATIVE FRAMEWORK FOR
CYBERATTACK DETECTION USING BLOCKCHAIN AND
FEDERATED LEARNING
KY SU NGANH AN TOAN THONG TIN
GIANG VIEN HUGNG DAN:
ThS TRAN TUAN DUNG
ThS NGUYEN DUY
TP.H6 Chi Minh - 2023
Trang 2LỜI CẢM ƠN
Trong quá trình nghiên cứu và hoàn thành khóa luận, nhóm đã nhận được sự
định hướng, giúp đỡ, các ý kiến đóng góp quý báu và những lời động viên của
các giáo viên hướng dẫn và giáo viên bộ môn Nhóm xin bày tỏ lời cảm ơn tới
thầy Nguyễn Duy, thầy Trần Tuấn Dũng đã tận tình trực tiếp hướng dẫn, giúp
đỡ trong quá trình nghiên cứu.
Nhóm xin gửi lời cảm ơn đến gia đình và bạn bè đã động viên, đóng góp ýkiến trong quá trình làm khóa luận.
Nhóm cũng chân thành cảm ơn các quý thầy cô trường Đại học Công nghệThông tin - ĐHQG TP.HCM, đặc biệt là các thầy cô khoa Mang máy tính vàTruyền thông, các thầy cô thuộc bộ môn An toàn Thông tin đã giúp đỡ nhóm
Nguyễn Duy Hoàng Đặng Hoàng Long
Trang 3MUC LUC
MỤC LUC 0.0 Sốc ii
DANH MỤC CAC KÝ HIỆU, CÁC CHU VIET TAT vi
DANH MỤC CAC HINH VE vii
DANH MUC CAC BANG BIEU viii
MỞ DAU 0 eee 1
CHUGNG 1 TONG QUAN 2
11 Giới thiệu van đỀ ee 2 1.2 Giới thiệu những nghiên cứu liên quan 3
.21 Hò@nhty SG «PB / 3 9.2 Học liên kết và hệ thong phát hiện xâm nhap 4 2.3 Blockchain Qua 4
13 Tính tngdung 0.00.00 0000000 eee ee 4
14 hững thách thtte 2 ee 4
1.5 Mục tiêu, đối tượng, và phạm vi nghiên cứu 5
5.1 Mục tiêu nghiên ctu ) ee 5
5.2 Dối tượng nghiên ctu 2 ee 5
5.3 Phạm vinghiénettu Ặ 00 200048 5
5.4 Cau trúc khĩa luận tốt nghiệp - 6
CHƯƠNG 2 CƠ SỞ LÝ THUYET 7
2.1 Hocméy 1 ee 7
2.1.1 Khái niệm về hoc may (Machine Learning) 72.1.2 Khái niệm về học sâu (Deep Learning) §
2.13 Mạng no-ron - Neuralnetwork 9
Trang 42.2 Mô hình phát hiện tấn công mạng 0
2.2.1 Hệ thống phát hiện xãm nhập 0
2.2.2 Hệ thống phát hiện xâm nhập dựa trên học máy 1
2.3 Học liên RẾt QQ Q Q ee ee 2 2.3 Khái nệm ee ee 2 2.3.2 Các thành phần của học liên kết 3
2.4 Từ học máy truyền thống cho tới sự kết hợp giữa học liên kết và hệ thống phát hiện xâm nhập 4
2.5 Xác thực mô hình trong học liên kết 5
2.5.1 Vẫn đề đặt ra cv v2 5 2.5.2 Dộ tương tu cosine 2 2 ee ee 6 2.6 Blockchain đ⁄⁄6@£0ÔÔ.é ”.À. - ĩ 2.6.1 Cấu trúc thành phần của bloekchain 7
2.6.2 Cấu trúc của Bloekehain 8
2.6.3 Cơ chế hoạt động của Bloekchain 9
2.6.4 Tính chat củablockchain 9
2.6.5 Cơ chế đồng thuận trong Blockchain 20
2.6.6 Phân loại các mang phổ biến trong Bloekchain 23
2.7 Mạng lưới Hyperledger ee 24 2/71 Giới thiệu về Hyperledger 24
2.7.2 Những đặc điểm của Hyperledger 24
2.7.3 Sơ lược về các Framework của Hyperledger 25
2.8 Giới thiệu về Hyperledger Fabric 26
2.8.1 Các thành phần trong mang Hyperledger Fabric 27
2.8.2 Giới thiệu về[PFS Ốc 30 2.8.3 Cách hoạt động của IPFS 30
2.9 Các công trình nghiên cứu liên quan 31
CHƯƠNG 3 PHƯƠNG PHÁP THỰC HIỆN 34
3.1 Kiến trúc tổng quất c2 ca 34
Trang 53.2 Phương pháp xây dựng mô hình
3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.2.10 Luông hoạt động chính
Mô hình học liên kết
Học liên kết và
bloekehain -Mô hình kết hợp cơ bản và luồng hoạt động
Cấu trúc xây dựng mạng Hyperledger Fabric
Luồng hoạt động chỉ tiết của người dùng khi tham gia mạng Hyperledger Fabric
Luồng hoạt động của mô hình blockchain - Hyperledger Fabric kết hợp với mô hình học liên kết - Federated Learning 49 Luồng hoạt động chỉ tiết
Thuật toán kiểm tra Cosine similarity
Thuật toán tổng hợp mô hình toàn cầu (Federated Aver-aging - FedAvg) cv. CHƯƠNG 4 THÍ NGHIỆM VÀ ĐÁNH GIÁ 41 4.2 4.3 Môi trường thực nghiệm
4 4 4 4 4 4 B LA 12 1.3 1.4 1.5 3.1 3.2 Tainguyén 2 ee ee Tập dữ liệu 2 ee ee Chia dữ liệu cho các may cộng tác
Mô hình mạng no-ron ee Các siêu tham số hoc sâu và số máy cộng tác
Kich bản thí nghiệm 2.0.0.0 0000-Kết quả thí nghiệm
Sử dụng mô hình mạng nơ-ron tích chập với tập dữ liệu Edge-IHoTlSet La Sử dụng mô hình mạng nơ-ron tích chập với tập dữ liệu CIC-IDS2018
Kết qua benchmark của mạng lưới Hyperledger Fabric
cụ a
an a
on œ 58
61 61 63
63
66 68
Trang 7DANH MỤC CAC KÝ HIỆU, CÁC CHU VIET TAT
FedAvg - The Federated Averaging
DL - Deep Learning
FL - Federated Learning
ML - Machine Learning IDS - Intrusion Detection System
Trang 8ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
ìn
12.1 Học liên kết
vii
DANH MUC CAC HINH VE
12.2 Các kiến trúc triển khaiIDS
12.3 Dộ tương tự Cosine ch h2.4 Minh họa cấu trúc Blockchain
h 2.5 Biểu đồ thể hiện các cơ chế đồng thuận trong blockchain
h2.6 Kiến trúc của một mang Hyperledger Fabric
h 2.7 Cách một file được upload và lưu trữ trong IPFS .
h3.1 Tổng quan mô hình đề xuất
h 3.2 Kiến trúc của học liên
kết -h3.3 Hệ thống Fully-coupled
h3.4 Hệ thống Flexibly
coupled -h3.5 Hệ thống Loosely Coupled :
h 3.6 Mô hình kết hợp giữa học liên kết và bloekchain
h3.7 Cấu trúc tổng quan của mạng lưới Hyperledger Fabric
13.8 Định dạng CA của một tổ chức
13.9 Cấu trúc của Raft Orderer c ee .10 Trạng thái của một
Ledger -h 3.11 Trạng tLedger -hái của một CLedger -haincode
h 3.12 Người dùng A tạo một yêu cầu thong qua Client SDK
.13 Certificate của một người dùng mà SDK sử dung để tao chữ các giao dich ee 14 Response từ Endorsement Peer sẽ được gửi về client SDK > 1 ^^ ee .15 SDK gửi Transaction đến Orderer Service
34 36 39
39 40 40
42 43 44 44
45 46
Trang 9inh 3.16 Hình thể hiện cấu trúc của các transaction trong hệ thống 48
ình 3.17 Ludng hoạt động của mạng lưới FabricXFederated 50
inh 4.1 Edge-HoTset - Tỷ lệ giữa nhãn 0 và 1 57
inh 4.2 CIC-IDS2018 - Tỷ lệ giữa nhãn 0 val 59
inh 4.3 Mô hình mạng nơ-ron tích chập 60
ình 4.4 Kết quả trực quan hiệu năng của mô hình với 3 kịch bản -Edge-IHoTset Ặ Q QQ Q Q Q Q ka 65 ình 4.5 Kết quả trực quan hiệu năng của mô hình với 3 kịch bản -CIC-IDS2018 67
Trang 10DANH MUC CAC BANG BIEU
Bang 4.1 Edge-IoTset - Bang mô tả chi tiết tập dit liệu 56Bảng 4.2 Mô tả chi tiết tập dữ liệu CIC-IDS2018 58Bang 4.3 Edge-IoTset - Bang mô tả chi tiết tập dữ liệu khi chia cho
các mấy cộng Đắc ee kg 59
Bảng 4.4 CIC-IDS2018 - Bảng mô tả chỉ tiết tap dit liệu khi chia cho
các mấy cộng tac «ow 2Q HH HH h 60 Bảng 4.5 Bảng mô tả số máy cộng tác và các siêu tham số học sâu 61
Bảng 4.6 Bảng mô tả các True/False (Dúng/Sai) trong đánh giá 62
Bảng 4.7 Bảng tóm tắt các công thức, ý nghĩa cho từng chỉ số 62 Bảng 4.8 Hiệu năng mô hình khi thực hiện huấn luyện không có tấn
công đầu độc - Edge-HoTset co 64Bảng 4.9 Hiệu năng mô hình khi thực hiện huấn luyện có tấn công
đầu độc - Edge-HoTset ee 64Bảng 4.10 Hiệu năng mô hình khi thực hiện huấn luyện có tấn công
đầu độc nhưng có cơ chế loại bỏ mô hình độc bại bằng độ tương
tự cosine - Edge-lloT§set c s ee 65
Bảng 4.11 Hiệu năng mô hình khi thực hiện huấn luyện không có tấn
công đầu độc - CIC-IDS2018 66Bảng 4.12 Hiệu năng mô hình khi thực hiện huấn luyện có tấn công
đầu độc - CIC-IDS2018 66Bảng 4.13 Hiệu năng mô hình khi thực hiện huấn luyện có tấn công
đầu độc nhưng có cơ chế loại bỏ mô hình độc bại bằng độ tương
tự cosine - CIC-IDS2018 67
Trang 11Bảng 4.14 Bang kết qua tài nguyên đã tiêu thụ khi thực hiện tạo giao
ich trên 3 nodes với 1000 transactions/s 69Bảng 4.15 Bảng kết quả tài nguyên đã tiêu thụ khi thực hiện tạo giao
ich trên 3 nodes với 1000 transactions/s 69 Bảng 4.16 Bảng kết quả đánh giá hiệu suất khi thực hiện tạo các giao
Bảng
lịch với 5001
Bảng Bảng Bảng
0 transactions/S ee
ết quả tài nguyên đã tiêu thụ khi thực hiện tạo giao
dịch trên 3 nodes với 5000 transactions/s
kết quả tài nguyên đã tiêu thụ khi thực hiện tạo giao
ich trên 3 nodes với 5000 transactions/s
ết quả đánh giá hiệu suất khi thực hiện tạo các giao
Ú transactions/s ee
kết quả tài nguyên đã tiêu thụ khi thực hiện tạo giao
ich trên 3 nodes với 10000 transactions/s
kết quả tài nguyên đã tiêu thụ khi thực hiện tạo giao
ich trên 3 nodes với 10000 transactions/s
ét quả đánh giá hiệu suất khi thực hiện tao các giaoich với 10000 transactions/S ẶẶ.ẶẶs.
70 70
Trang 12không phải gửi dữ liệu thô của thiết bị tới máy chủ tập trung để huấn luyện.
Tuy mô hình FL sẽ bảo toàn riêng tư của dữ liệu được gửi lên ở một mức độ
nào đó, tuy nhiên vẫn có những thách thức được đề ra để bảo toàn tính riêng
tư và dam bảo an toàn cho FL như: Single-point-of-failure, Inference attacks, Aggregation attacks,
Tw các thách thức trên trong phương pháp Federated Learning, chúng tôi đã
nghiên cứu về mô hình được kết hợp giữa FL và Blockchain Nhận thấy đây làmột hướng đi tiềm năng, trong nghiên cứu này chúng tôi đề xuất một hệ thốngcho phép chúng ta phát hiện tấn công mạng, cùng với đó kết hợp với các kỹthuật lưu trữ, phòng chống đầu độc nhằm tăng hiệu suất cho việc phát hiện tấn
công mạng.
Trang 13CHƯƠNG 1 TONG QUAN
Chương nay giới thiệu về van dé và các nghiên cứu liên quan về học liên kết,blockchain Đồng thời, trong chương này chúng tôi cũng trình bày phạm vi vàcấu trúc của Khóa luận
1.1 Giới thiệu van dé
Ngày nay, với sự phát triển của nhanh chóng của công nghệ thông tin cũng
như cuộc cách mạng công nghiệp lần thứ 4 (Cách mạng 4.0) đã và đang diễn
ra mạnh mẽ ở hầu hết mọi quốc gia đã tác động không nhỏ tới sự phát triển
cũng như ảnh hưởng tới các lĩnh vue trong công nghệ cũng như trong cuộc sống
của con người Cũng vì đó, sự phát triển và ứng dụng của trí tuệ nhân tạo (AT)
đã được áp dụng vào nhiều lĩnh vực và mang lại nhiều hiệu quả đáng nể Tuy
nhiên, điều này cũng dẫn đến khối lượng đữ liệu được tao ra từ các thiết bị điện
tử cũng như dữ liệu từ con người ngày càng nhiều Do đó, việc tạo ra các môhình học máy (Machine learning - ML model) hiệu quả đòi hỏi phải thu thập một lượng lớn dit liệu thô từ nhiều nguồn khác nhau cho mục đích đào tạo Diềunay dẫn tới việc các nhà cung cấp dữ liệu mất đi quyền riêng tư và minh bách
liên quan tới việc sử dụng dữ liêu của họ.
Để giải quyết các vấn đề trên, các nhà nghiên cứu đang tích cực phát triển nhiều kỹ thuật để đảm bảo quyền riêng tư toàn diện hơn trong đào tạo các mô
hình ML và AI Năm 2017, Học liên kết (Federated learning - FL) được phát
triển bởi nghiên cứu [5] và trở thành mối quan tâm đặc biệt trong việc đào tao
các mô hình học máy phi tập trung, đã thu hút và nhận dược sự chú ý rộng
rãi FL cung cấp một giải pháp hiệu quả trong việc giải quyết các vấn đề vềquyền riêng tư và tính minh bạch liên quan đến các phương pháp đào tạo dữ
Trang 14liệu truyền thống.
Di đôi với những lợi ích mà FL mang lai thì cũng có những rủi ro liên quan
tới vấn đề bảo mật, cũng là thách thức đối với FL Theo [22] và [16], FL đốiđiện với các vấn đề liên quan tới bảo mật như: Single-point-of-failure, Poisoning
attacks, Inference attacks, Aggregation attacks Ngoài ra với việc 4p dụng học
máy vào hệ thống phát hiện xâm nhập (IDS) dang mang lại hiệu quả cao khi màcác mô hình học máy cho phép phân tích cũng như phát hiện tấn công mạng
Dù vậy, với lượng lớn dữ liệu lớn ở hiện nay việc tập trung chúng lại để đào tạo
ra mô hình hiệu qua là điều khá là khó khăn FL xuất hiện và đã giải quyết đượcphan nào các vấn dé ma IDS va ML đang gặp phải Tuy nhiên, với những rủi rocủa FL thì việc 4p dụng vào IDS cũng mang lại nhiều thách thức Năm 2008, blockchain xuất hiện, từ đó xuất hiện nhiều ý tưởng kết hợp FL và blockchain
để mang lại hiệu quả tốt hơn trong việc đảm bảo tính riêng tư và độ tin cậy [9]
Từ những điều trên, chúng tôi nhận thấy việc kết hợp FL và blockchain trong việc phát hiện tấn công mạng là một bước đi cần thiết Vì vậy chúng tôi
đề xuất một mô hình cộng tác giữa hoe liên két(FL) và mạng lưới chuỗi khối(Blockchain) trong việc phát hiện tấn công mạng kết hợp với các kỹ thuật lưutrữ, phòng chống đầu độc nhằm tăng hiệu suất cho việc phát hiện tấn công
truyền dữ liệu gốc từ các thiết bị về máy chủ tập trung để huấn luyện Thay
vào đó, các thiết bị chỉ gửi các phiên bản mô hình đã được cắt giảm (tức là chỉ chứa những thong tin quan trọng) đến máy chủ trung tâm Tại máy chủ trung
tâm, các phiên bản mô hình từ các thiết bị sẽ được tổng hợp lại thành một mô
Trang 15hình toàn cầu mới [5].
1.2.2 Học liên kết va hệ thống phát hiện âm nhập
Intrusion Detection Systems - IDS hay còn biết đến với cái tên hệ thống pháthiện xâm nhập là hệ thống cho phép phát hiện các cuộc tấn công mạng Khikết hợp ML vào IDS, IDS tăng khả năng nhận biết các cuộc tấn công từ các môhình học máy được đào tạo từ các dữ liệu tấn công đã được thu thập Nhưngbởi vì việc thu thập dữ liệu gặp khó khăn bởi quyền riêng tư, FL xuất hiện giúpgiải quyết được vấn đề đươc nêu ra
1.2.3 Blockchain
Blockchain là một công nghệ lưu trữ thong tin và ghi lai các giao dich trong một mạng lưới phan tan Thay vì có một cơ sở dữ liệu trung tam, dữ liệu được
lưu trữ trên nhiều máy tính trong mạng Mỗi khối thông tin được liên kết với
nhau và không thể thay đổi Blockchain đảm bảo tính toàn vẹn và an toàn của
di liệu, và không can sự can thiệp từ một bên trung gian Nó có nhiều ứng dụng
trong các lĩnh vực như tài chính, giao dịch điện tử, chuỗi cung ứng và quản lý
Trang 16việc ngăn chặn các rủi ro liên quan tới Single point values cũng như Poisoning
attacks vào mô hình Ngoài ra các tính năng về việc mã hóa các mô hình gửi lên
để tăng tính bảo mật thì chúng tôi chưa triển khai được
1.5 Mục tiêu, đối tượng, và phạm vi nghiên cứu
1.5.1 Mục tiêu nghiên cứu
Mục tiêu của việc sử dụng mô hình cộng tác chuỗi khối và học liên kết đểphát hiện tấn công mạng là để cải thiện độ chính xác và hiệu quả của các hệ
thống phát hiện tấn công mạng, đồng thời bảo vệ quyền riêng tư và bảo mật
Mục tiêu cuối cùng của phương pháp này là bảo vệ tốt hơn các cá nhân và tổ
chức trước mối de doa de doa tấn công mạng, vốn là mối lo ngại lớn về bảo mậttrong thế giới kỹ thuật số
1.5.2 Đối tượng nghiên cứu
Đối tượng nghiên cứu:
e Học liên kết
e Trình phát hiện tấn công mạng dựa trên Học liên kết
e Công nghệ chuỗi khối
e Bảo mật và quyền riêng tư
1.5.3 Pham vi nghiên cứu
Pham vi nghiên cứu của việc tận dụng mô hình cộng tác chuỗi khối và học
liên kết phát hiện tấn công mạng tập trung vào việc phát triển và triển khai các
hệ thống có thể phát hiện và ngăn chặn hiệu quả các cuộc tấn công mạng
Trang 171.5.4 Cấu trúc khóa luận tốt nghiệp
Chúng tôi xin trình bày nội dung của Luận án theo cấu trúc như sau:
e Chương 1: Giới thiệu tổng quan về đề tài của Khóa luận và những nghiên
cứu liên quan.
e Chương 2: Trình bày cơ sở lý thuyết và kiến thức nền tảng liên quan đến
e Chương 3: Trình bày phương pháp thực hiện.
e Chương 4: Trình bày thực nghiệm và đánh giá.
e Chương 5: Kết luận và hướng phát triển của đề tài
Trang 18CHƯƠNG 2 CƠ SỞ LÝ THUYET
Chương này trình bày cơ sở lý thuyết của nghiên cứu: Bao gồm Federated learning, IDS, Blockchain, mô hình mạng Blockchain Hyperledger Fabric.
2.1 Hoc may
2.1.1 Khái niệm vé học may (Machine Learning)
Machine learning, một lĩnh vực trong lĩnh vực trí tuệ nhân tạo (AI) và khoa học máy tinh, sử dung di liệu và thuật toán để mô phỏng các hành vi con người
và dần dần nâng cao độ chính xác của nó Nói một cách đơn giản, học máy giúp
ta đề ra các phương pháp cung cấp cho máy tính mà không cần phải thao tác lập trình một cách rõ ràng.
C6 nhiều phương pháp học máy
phổ biến trong lĩnh vực học máy
ọc máy giám sát (Supervise
khác nhau, dưới đây là một số phương pháp
Learning) là phương pháp sử dụng dữ liệu đã
được gán nhãn để huấn luyện mô hình dự đoán hoặc phân loại Các thuậttoán phổ biến bao gồm hồi
hỗ trợ (SVM), mạng neural
quy tuyến tính, cây quyết định, máy vector
, và các biến thể như mạng neural tích chap
(CNN) và mang neural hồi quy (RNN).Hoc máy không giám sát
(Unsuper-vised Learning): Phương pháp này sử dung di liệu chưa được gan nhãn để
khám phá cấu trúc và mối uan hệ trong dữ liệu Các thuật toán phổ biến
trong học máy không giám sát bao gồm: phân cum (clustering), phân tích thành phần chính (PCA), và kỹ thuật t-SNE Học máy bán giám sát (Semi-Supervised Learning): Phương pháp này kết hợp cả hai dạng học máy theo
giám sát và không giám sát Nó sử dụng một lượng nhỏ dữ liệu đã được gán
Trang 19nhãn và một lượng lớn dữ liệu chưa được gan nhãn để huấn luyện mô hình.
Học máy tăng cường (Reinforcement Learning): Phương pháp này dựa trên việc xây dựng một môi trường tương tác, trong đó một hệ thống (agent)
học cách đưa ra các hành động để tối đa hóa phần thưởng (reward) Thuật toán Q-Learning và thuật toán Deep Q Network (DQN) là những ví dụ phổ
biến trong học máy tăng cường.
2.1.2 Khái niệm vé học sâu (Deep Learning)
Deep learning là một lĩnh vực trong trí tuệ nhân tạo (AT) và học máy, chuyên
về việc xây dựng và huấn luyện các mạng nơ-ron sâu (deep neural networks) để học và hiểu dữ liệu Mạng nơ-ron sâu được gọi là "sâu" (deep) vì nó bao gồm nhiều lớp an (hidden layers) kết nối với nhau, tạo thành một kiến trúc phức tap Mạng nơ-ron sâu sử dụng các phép tính toán lặp lại để trích xuất và học các đặc trưng sâu trong dữ liệu, giúp nắm bắt thông tin phức tạp và biểu diễn dữ
liệu theo cách hiệu quả gDeep learnin đã đạt được những thành tựu ấn tượng
trong nhiều lĩnh vực như nhận dạng hình ảnh, xử lý ngôn ngữ tự nhiên, và tự
động lái xe
Các mạng nơ-ron sâu (deep neural networks) được xây dựng từ nhiều lớp
nơ-ron kết nối với nhau theo một cấu trúc xác định Các lớp đầu vào nhận dữ
liệu đầu vào và truyền chúng qua các lớp ẩn (hidden layers) để trích xuất đặc trưng từ dữ liệu Cuối cùng, dữ liệu được truyền qua các lớp đầu ra để đưa ra
dự đoán hoặc phân loại.
Deep learning được coi là một tiến bộ quan trọng trong lĩnh vực trí tuệ nhân
tạo vì khả năng học và xử lý thông tin phức tạp từ dữ liệu không gian lớn Các
mô hình deep learning đã đạt được những kết quả ấn tượng trong nhiều lĩnh
vực như nhận dạng hình ảnh, nhận dạng giọng nói, xử lý ngôn ngữ tự nhiên và
nhiều bài toán khác Các mạng nơ-ron sâu như mạng nơ-ron tích chập (CNN)
và mạng nơ-ron hồi quy (RNN) là những kiến trúc phổ biến trong deep learning.
Trang 202.1.3 Mạng nơ-ron - Neural network
Mang nơ-ron là một chuỗi thuật toán được sử dung để khám phá các mối
quan hệ cơ bản trong một tập dữ liệu bằng cách mô phỏng cách hoạt động của não bộ con người Phương pháp này linh hoạt và có khả năng thích ứng với bất
kỳ thay đổi nào trong dữ liệu đầu vào, cho phép nó đưa ra kết quả tốt nhất mà không cần đặt ra trước những tiêu chí đầu ra cụ thể Mạng nơ-ron có ưu điểm đặc biệt trong việc phát hiện các loại mã độc mới và sự gia tăng đấng kể của
các biến thể mã độc.
Cụ thể hơn, mạng nơ-ron là một kiến trúc nhiều tầng, và thông thường có 3 kiểu tầng chính là:
e Tầng đầu vào: Là tầng thể hiện cho những đầu vào của mạng.
e Tầng đầu ra: Là tầng thể hiện cho những đầu ra của mạng.
e Tang an: Nằm giữa tang đầu vào và tang đầu ra, phụ trách nhiệm vụ suy
luận luận lý của mạng.
Trong mạng nơ-ron, mỗi nút mạng là một sigmoid nơ-ron nhưng hàm kích hoạt
của chúng có thể khác nhau Ở nhiều trường hợp, các mô hình được thường tùy
chỉnh cho chúng đồng nhất với nhau để thuận tiện trong việc tính toán Ngoài
ra, để tăng khả năng giải quyết các bài toán phức tap, mạng nơ-ron sẽ gia tăng
số lượng lớp an, tuy nhiên, càng nhiều số lượng lớp an, thời gian thực hiện tính toán sẽ càng lâu hơn Nếu có nhiều lớp an, số nút trong các lớp đó thường được
chọn bằng nhau.
Convolutional Neural Network (CNN) là một kiến trúc mang nơ-ron đặc biệt
được sử dụng rộng rãi trong lĩnh vực xử lý ảnh và thị giác máy tính CNN là
một dạng đặc biệt của mạng nơ-ron nhân tạo, được thiết kế để xử lý dữ liệu
không gian như hình ảnh.CNN có một kiến trúc đặc thù với các lớp đặc trưng
chồng chéo va các bộ lọc tích chập Nhờ sử dụng các bộ lọc tích chập, CNN có khả năng tự học và trích xuất các đặc trưng cấp cao từ dữ liệu ảnh Các lớp kết
Trang 21nối đầy đủ (fully connected) sau đó được sử dụng để phân loại hoặc dự đoán
dựa trên các đặc trưng này.
DNN (Deep Neural Network) cũng được gọi là mạng no-ron sâu, là một loại
kiến trúc mạng nơ-ron nhân tạo với nhiều lớp an (hidden layers) DNN có thé
có nhiều lớp ẩn hơn so với các mạng nơ-ron thông thường, cho phép nó học và hiểu các mức độ biểu diễn phức tạp hơn từ dữ liệu đầu vào.DNN là một dạng mạng nơ-ron rất mạnh mẽ và có khả năng học tự động các đặc trưng và biểu diễn sâu Các lớp ẩn trong DNN giúp nó xây dựng các mức độ biểu diễn phức
tạp dựa trên những mức đơn giản hơn Điều này cho phép DNN học được các
khái niệm trừu tượng và đại diện cho dữ liệu một cách hiệu quả hơn.
2.2 Mô hình phát hiện tấn công mạng
Mục đích của mô hình tấn công mạng là khả năng áp dụng học máy vào việc
phát hiện tấn công mạng, từ đó nâng cao khả năng dự đoán các cuộc tấn công.
2.2.1 Hệ thông phát hiện xâm nhập
Hệ thống phát hiện xâm nhập - IDS (Intrusion Detection Systems) là một
ứng dụng hoặc công cụ phần mềm có nhiệm vụ bảo vệ hệ thống và cảnh báo
về những hoạt động đáng ngờ xâm nhập vào Chức năng chính của IDS là ngăn
chặn và phát hiện các hành vi có tiềm năng gây tổn hại đến tính bảo mật của
hệ thống, như các hoạt động tìm kiếm lỗ hồng hoặc quét cổng không được phép.
Khi phát hiện được một hành vi đáng ngờ, IDS sẽ cung cấp cảnh báo để người
quản trị hệ thống có thể xử lý và ngăn chặn sự xâm nhập.
Có nhiều loại IDS khác nhau, mỗi loại có một chức năng và nhiệm vụ riêng chúng bao gồm:
e NIDS (Network Intrusion Detection Systems): Một hệ thống phát hiện xâm
nhập mạng, được sử dụng để giám sát và phát hiện các hoạt động xâm nhập hoặc đáng ngờ trên một mạng NIDS được triển khai tại các điểm
Trang 22trong yếu trong hệ thống mang để giám sát lưu lượng mang đến (inbound)
và đi (outbound) từ các thiết bị trong mạng.
e HIDS (Host Intrusion Detection Systems): Là một công cụ bảo mật giấm
sát và phát hiện các hoạt động bất thường trên máy chủ Nó sử dụng các
phương pháp phân tích log, giám sát hệ thống và phân tích động để xác
định các hành vi đáng ngờ hoặc đối tượng độc hại và cảnh báo quản trị
viên.
e Signature-Based IDS: Day là các IDS hoạt động dựa trên các dữ liệu đã
được huấn luyện từ trước, từ đó đưa ra dự đoán xem đó có phải là cuộc tấn
công hay không Tuy nhiên hệ thống này có hạn chế là chỉ phát hiện được
các cuộc tấn công đã biết và có dấu hiệu tương tự.
e Anomaly-Based IDS: IDS này được sử dung để phát hiện mối đe dọa dựa
trên sự bất thường Thay vì dựa vào các mẫu dữ liệu của các cuộc tấn công
đã biết, Anomaly-Based IDS tập trung vào việc xác định các hoạt động bất thường hoặc không phù hợp với hành vi bình thường của hệ thống.
2.2.2 Hệ thống phát hiện xâm nhập dựa trên học máy
Học máy là một lĩnh vực trong trí tuệ nhân tạo, nó cho phép máy tính học
và thực hiện các nhiệm vụ mà không cần được lập trình cụ thể Điều này được
thực hiện bằng cách sử dụng dữ liệu và phân tích thông tin từ các tập dữ liệu
lớn, để may tính có thể dự đoán và tạo ra các kết quả, dự báo hoặc đưa ra quyết
định.
Công nghệ trí tuệ nhân tạo có ứng dụng rộng trong nhiều lĩnh vực, ví dụ như
thương mại điện tử Trong lĩnh vực này, máy học được sử dụng để đưa ra quyết
định dựa trên hành vi và sở thích của khách hàng, cũng như để cung cấp các dịch vụ y tế cho người tiêu dùng Ngoài ra, trí tuệ nhân tạo cũng có thể được
sử dụng để dự báo đại dịch hoặc khả năng phục hồi sau một số bệnh như ung
thư, dựa trên lịch sử y tế của mỗi người [17], [1].
Trang 23Hiện nay, với sự phát triển của khoa học và công nghệ, lượng lớn các cuộc
tấn công mạng được thực hiện một cách tinh vi hơn, số lượng lớn hơn, điều đó
khiến cho công việc phát hiện tấn công mạng trở nên khó khăn dẫn tới việc hệ
thống phát hiện xâm nhập có thể bị vướt qua bất cứ lúc nào Không những thế,
với những suy nghĩ đột phá trong việc tấn công mạng, việc phân tích và đánh giá đó là một mối nguy tấn công đối với hệ thống là một công việc khá tốn thời gian và công sức Việc áp dụng học máy vào hệ thống phát hiện xâm nhập đóng vai trò quan trọng trong việc tăng cường bảo mật cho các hệ thống Với các thuật toán mạnh mẽ cho phép hệ thống học hỏi từ các dữ liệu được trích xuất cũng như cung cấp khả năng phát hiện các cuộc tấn công mới dựa trên dữ liệu
được đưa vào trong quá trình đào tạo.
2.3 Học liên kết
2.3.1 Khái niệm
Học liên kết là một phương pháp máy học mạnh mẽ cho phép nhiều bên hợp tác trong việc đào tạo một mô hình máy học mà không cần chia sẻ dit liệu cá
nhân của từng bên Thay vì đó, mỗi bên có thể đào tạo một phiên bản cục bộ
của mô hình bằng việc sử dụng dữ liệu của riêng mình Sau đó, các bản cập
nhật của mô hình từ tất cả các bên được tổng hợp lại để tạo ra một mô hình
chung trên toàn cầu.
Học liên kết đặc biệt hữu ích trong những trường hợp có dữ liệu nhạy cảm hoặc khó chia sẻ, như dit liệu sức khỏe, tài chính hoặc cá nhân Bằng cách đào
tạo mô hình trên dit liệu mà không cần thực sự chia sé dit liệu, học liên kết cho
phép các tổ chức bảo vệ quyền riêng tư và bảo mật trong khi vẫn hưởng lợi từ
thông tin chi tiết mà mô hình máy học tạo ra.
Quá trình học liên kết thường diễn ra trong một số vòng lặp Trong mỗi vòng, các bên tham gia gửi các bản cập nhật của mình đến một máy chủ trung tâm,
máy chủ này sẽ tổng hợp và phân phối lại các bản cập nhật mô hình đã được
Trang 24cập nhật cho từng bên Quá trình nay tiếp tục cho đến khi mô hình hội tụ đạt được mức độ chính xác chấp nhận được Một trong những thách thức chính của
Local Local LööBI, ig"
ware Client Loa 2 ph Ofen model (@) Client
training ® device training device kesse S2) device
model model Client owner
Hinh 2.1: Học liên kết.
học liên kết là đảm bảo rằng các bản cập nhật từ mỗi bên không bị thiên vị và
đại điện cho dữ liệu mà họ có quyền truy cập Điều này đòi hỏi sử dụng các kỹ
thuật như quyền riêng tư khác biệt để duy trì quyền riêng tư của các tập dữ
liệu riêng lẻ trong khi vẫn cho phép mô hình được đào tạo hiệu quả.
Tóm lại, học liên kết là một kỹ thuật máy học mạnh mẽ và bảo vệ quyền
riêng tư, cho phép nhiều bên hợp tác đào tạo một mô hình máy học mà không
cần chia sẻ dữ liệu cá nhân của họ Bằng cách cho phép các tổ chức hưởng lợi
từ thông tin chỉ tiết mà mô hình tạo ra trong khi vẫn bảo vệ quyền riêng tư và
bảo mật, học liên kết có khả năng cách mạng hóa cách các tổ chức sử dụng học máy để ra quyết định [5].
2.3.2 Các thành phần của học liên kết
Học liên kết là một mô hình học máy phân tán mà dữ liệu được giữ nguyên tại các máy cộng tác (các thiết bị người dùng, các nút, ) thay vì tap trung dit
Trang 25liệu tai một cơ sở dữ liệu tâp trung Dưa trên hình 2.1,
của mô hình hoc liên kết bao gồm:
e Các máy cộng tác (User Device/Node): Dây là các t
các thành phần chính
hiết bị cá nhân hay các
tổ chức muốn đóng góp vào quá trình đào tạo Các máy cộng tác có nhiệm
vụ thu thập dữ liệu của riêng mình, đào tạo mô hìn
vào quá trình tổng hợp mô hình toàn cầu
e Mô hình toàn cầu (Global Model): Đây là một mô
h và đóng góp mô hình
hình học máy ban đầuhoặc mô hình trước đó đã được huấn luyện tập trung trên dữ liệu từ nhiềunguồn Mô hình toàn cầu được sử dụng như một
trình huấn luyện phân tán
iểm khởi đầu cho quá
e Quá trình huấn luyện phân tán (Distributed Training Process): Day là quá
trình chính trong federated learning, trong đó các thiết bị người dùng sử
dụng đữ liệu của riêng minh để huấn luyện một phiên bản cục bộ của mô
hình.
Trong phạm vi khóa luận chúng tối sử dụng công thức tổng hợp mô hình có
tên Federated Averaging (FedAvg) [5].
2.4 Từ học máy truyền thống cho tới su
liên kết và hệ thống phát hiện xâm
kết hợp giữa học
nhập
Với sự phát triển của mạnh mẽ của công nghệ và mạng Internet, các thiết
bị điện tử có khả năng kết nối, truy cập ra đời với sự tiện lợi hơn cho người sửdụng Cũng vì đó, lượng dữ liệu được sinh ra cũng trở lên nhiều hơn, phức tạphơn cộng với việc các thiết bị kết nối nhiều hơn thì các cuộc tấn công mạng ngàycàng nhiều và có khả năng né tránh các cơ chế phòng thủ của hệ thống Việc
sử dụng học máy kết hợp với hệ thống phát hiện xâm nhập mang lại một bướctiến lớn trong việc phát hiện tấn công, nhưng do di liệu càng nhiều, càng phứctạp khiến cho việc tập trung các dữ liệu về các cuộc tấn công lại càng thêm khó
Trang 26khăn vì các tổ chức thường có xu hướng không chia sẻ các thông tin đó bởi đó
là các dữ liệu mang tính riêng tư [2].
Qua những thử thách đó, [5] đã đề xuất một mô hình học máy phi tập trung
có tên gọi là học liên kết Các thông tin liên quan về học liên kết đã được nêu
ở trên, và dựa vào tính phi tập trung của học liên kết, việc kết hợp học liênkết vào hệ thống phát hiện xâm nhập là câu trả lời cho các vấn đề liên quantới quyền riêng tư của dữ liệu Hiệu quả của bất kỳ hệ thống phát hiện xâm
nhập nào cũng phụ thuộc vào việc lựa chọn chính xác kiến trúc triển khai và loại IDS được sử dụng Có ba loại kiến trúc triển khai IDS chính, tùy thuộc vào
yêu cầu của hệ thống: Kiến trúc tập trung, Kiến trúc phân tán và Kiến trúc phitập trung Học liên kết xuất hiện và tạo ra một kiến trúc hoàn toàn mới cho hệ
thống phát hiện xâm nhập Sự khác biệt giữa các kiến trúc triển khai được biểu
Hình 2.2: Các kiến trúc triển khai IDS
2.5 Xác thực mô hình trong học liên kết
2.5.1 Vấn đề đặt ra
Việc đầu độc trong học liên kết là khi một đối tượng hoặc một số dữ liệu bị
thay đổi hoặc nhiễu trong quá trình học liên kết Điều này có thể xảy ra khi dữliệu huấn luyện được tạo ra hoặc kiểm soát bởi một bên thứ ba có ý đồ xấu.Đầuđộc trong học liên kết có thể gây ra những tác động nghiêm trọng đến hệ thống
Trang 27học máy Ví dụ, một kẻ tấn công có thể thêm các mẫu dữ liệu giả mạo hoặcnhiễu vào tập huấn luyện để làm sai lệch quá trình học và làm cho mô hình dựđoán không chính xác Điều này có thể gây ra những hậu quả nghiêm trọng,
chẳng hạn như đưa ra dự đoán sai lệch, đánh lừa hoặc phá hoại quá trình ra
quyết định (8|, [22j
Vấn đề về việc đầu độc mô hình trở thành mối quan tâm của việc triển khai
học liên kết, cũng từ đó các nghiên cứu về cách giảm thiểu các cuộc tấn công
đầu độc được quan tâm [10], [23] đã chỉ ra được một cách tiếp cận với việc sự
dụng độ tương tự Cosine để tính toán, so sánh và tìm ra được các mô hình nào
có ý định đầu độc trong học liên kết
2.5.2 Độ tương tự cosine
Cosine Similarity =
|AiI
Hình 2.3: Dộ tương tự Cosine.
Ở trong học liên kết, để tăng khả năng tránh bị đầu độc bởi các máy công
tác độc hại, chúng tôi sử dụng độ tương tự cosine để tiến hành xác thực các mô
Trang 2817 hình học máy mà các máy cộng tác gửi lên.
Độ tương tự cosine hay Cosine similarity là một phương pháp thường được
sử dụng để so sánh độ tương tự giữa hai vectơ dữ liệu Trong ngữ cảnh xác thực
mô hình, nó có thể được sử dụng để xác định sự giống nhau giữa hai nhóm đặctrưng, chẳng hạn như các đặc trưng của các mô hình độc hại và mô hình lành
tính đã được xác nhận từ trước Khi sử dụng độ tương tự Cosine, các vectơ đặc
trưng cho mỗi mô hình sẽ được biểu diễn dưới dang các điểm trong không gian
nhiều chiều Độ tương tự cosine giữa hai vectơ sẽ được tính bằng cosine của góc
giữa hai vecto Diểm tương tự thu được sẽ là một giá trị trong khoảng từ -1 đến
1, với điểm 1 cho biết hai veetơ đặc trưng giống hệt nhau và điểm -1 cho biếtchúng hoàn toàn không giống nhau Công thức độ tương đồng cosine (2.1):
AeB
cosine_ similarity = cos(0) = [AIsIIBII (2.1)
Trong mô hình học máy liên kết, mỗi nút trong mạng có thể đóng góp cácvectơ đặc trưng và điểm tương tự cosine của riêng nó, những điểm này sẽ đượctổng hợp để tạo thành một dự đoán chung Cách tiếp cận này sẽ cho phép tạo
ra một mô hình mạnh mẽ và chính xác hơn, vì nó sẽ được hưởng lợi từ các quan
điểm và nguồn dữ liệu đa dạng của các nút trong mạng
2.6 Blockchain
2.6.1 Cấu trúc thành phần của blockchain
Blockchain về cơ bản bao gồm các Số Cái nhằm lưu trữ các giao dịch, đượcphát triển dựa trên một mạng lưới phân tán các nút ngang hàng (node peer)
Mỗi khối (block) trong blockchain bao gồm thông tin về thời gian khởi tao vàđược liên kết với khối trước đó, cùng với một mã thời gian và dữ liệu giao dịch
Khi dữ liệu đã được mạng lưới chấp nhận, nó không thể thay đổi được Dữ liệutrên Blockchain được thiết kế để ngăn chặn và chống lại hành vi gian lận và
Trang 29Hinh 2.4: Minh họa cấu trúc Blockchain.
2.6.2 Cấu trúc của Blockchain
Như đã chia sẽ ở trên và quan sát Hình 2.4, Blockchain bao gồm 2 phần chính:
e Khối (Block): Các đữ liệu trong blockchain sẽ được lưu trữ vào các khối liên
kết với nhau
e Chuỗi (Chain): Chuối được hình thành bằng cách liên kết các khối với nhau.
e Thợ mỏ (Miner): Quá trình tạo ra các khối mới trên chuỗi được thực hiện
bởi người khai thác thông qua một quy trình.
Mỗi khối được cấu thành tit ba thành phần chính bao gồm: Dữ liệu (Data), MãHash của khối hiện tại (Mã hàm băm), và Mã Previous Hash (mã Hash của khối trước đó).
¢ Data (Dữ liệu): Các bản ghi dữ liệu đã được xác minh được bảo vệ bằngcác thuật toán mã hóa riêng biệt phụ thuộc vào mỗi chuỗi khối
e Mã Hash của khối hiện tại (Mã hàm băm): Một chuỗi ký tự và số đã được tạo ngẫu nhiên không hoàn toàn trùng nhau được sử dụng Nó đại diện cụ
thể cho mỗi khối và được mã hóa bằng một thuật toán mã hóa Mã này
Trang 30được sử dụng để phát hiện bất kỳ thay đổi nào trong khối Tương tự như
dấu vân tay, mã này là duy nhất và không trùng lặp
e Mã Previous Hash (mã Hash khối trước đó): Để tạo liên kết chính xác giữa
các khối kề nhau, Mã Previous Hash được sử dụng để biết khối nào đứng
trước và khối nào đứng sau Tuy nhiên, với khối đầu tiên, vì không có khốinào trước đó, mã Hash của nó được đặt là một chuỗi số 0 Khối đầu tiênnày được gọi là Genesis block, còn được biết đến như "Khối nguyên thủy"hay khối gốc.
Đối với các thợ mỏ, phần mềm đặc biệt được sử dụng bởi các thợ mỏ để giải
quyết một vấn đề toán học phức tạp liên quan đến việc tìm một giá trị nonce
để tạo ra một hàm băm được chấp nhận Với nonce chỉ có 32 bit và hàm băm
có độ dài là 256 bit, tồn tại khoảng bồn tỷ tổ hợp khác nhau của nonce-hash cóthể được thử nghiệm trước khi giá trị phù hợp được tìm ra Khi điều này xảy ra,
"
người thợ mỏ được coi là đã tìm thấy "số nonee vàng" và khối của họ sẽ được
thêm vào chuỗi.
2.6.3 Cơ chế hoạt động của Blockchain
Ban đầu, thông tin về giao dịch sẽ được lưu trữ trong hệ thống để tạo ra một
bản ghi hồ sơ Tiếp theo, tính hợp lệ của bản ghi sẽ được xác minh bởi các núttrong hệ thống dựa trên thuật toán đồng thuận trong Blockchain Sau đó, cácbản ghi xác minh, bao gồm cả bản ghi của chúng ta và các giao dịch từ các nhàgiao dich khác, sẽ được nhóm lại thành một khối mới Cuối cùng, khối mới đượctạo sẽ được kết nối với khối trước đó bằng cách liên kết với Mã Hash trước đócủa khối, tạo thành một chuỗi khối hoàn chỉnh
2.6.4 Tinh chất của blockchain
e Tính phi tập trung (Decentralized): Blockchain hoạt động phi tập trung ma
không phụ thuộc vào bất kỳ tổ chức nào và thực hiện các thuật toán máy
Trang 31tính một cách độc lập Do đó, blockchain không bị ảnh hưởng hoặc kiểmsoát bởi bất kỳ tổ chức nào và không gặp rủi ro từ bên thứ ba
e Tính phân tán (Distributed): Dữ liệu trên Blockchain được phan tán đồng
nhất trong nhiều vị trí khác nhau Điều này đồng nghĩa rằng ngay cả khimột nơi bị mất hoặc bị hỏng, đữ liệu vẫn tồn tại trên các phần khác của
Blockchain.
e Không thé thay đổi: Sau khi dit liệu được ghi vào block của blockchain, nó
trở thành bất biến và không thể thay đổi hay sửa đổi Điều này bởi vì thuật
toán đồng thuận và mã hash trong blockchain tạo ra tính chất này
e Tính bảo mật: Để truy cập các dữ liệu trong Blockchain, chỉ những người
nắm giữ Private Key (khóa riêng tư) mới có quyền hợp pháp để làm điều
đó.
e Tính minh bạch: Thong tin về các giao dịch trong blockchain được ghi lại và
có thể được kiểm tra bởi mọi người Từ đó, ta có thể xem xét và truy xuấtlịch sử giao dịch Hơn nữa, có thể thiết lập các quyền truy cập phân quyền,
cho phép người khác truy cập vào một phan thông tin trên blockchain.
e Tích hợp Smart contract: Các điều khoản trong hợp đồng thông minh sẽđược thi hành khi các điều kiện trước đó được đáp ứng, và không có ai có
thể ngăn cản hoặc hủy bỏ nó
2.6.5 Cơ chế đồng thuận trong Blockchain
Co chế đồng thuận được xem là một trong những đặc tính quan trọng ảnhhưởng đến khả năng mở rộng và tính an toàn của mỗi nền tảng tiền mã hóa
Chức năng này tồn tại để ngăn chặn vấn đề chi tiêu hai lan (double spending)trên Blockchain Các cơ chế đồng thuận phổ biến bao gồm:
e Proof of Work (PoW): Trong cơ chế đồng thuận, nhiệm vụ giải quyết các
bài toán mã hash đóng vai trò như một bằng chứng công việc Trong quá
Trang 32trình này, các thợ đào sử dụng sức mạnh tính toán của máy tính để giải
quyết các bài toán này Sau khi hoàn thành, họ sẽ được ủy quyền xác thực
giao dich và tạo ra các khối mới trong blockchain Ưu điểm: Là một giao
thức tiên phong, Proof of Work (PoW) đã chứng minh khả năng phục hồicủa nó trong việc đối phó với các cuộc tấn công từ cả bên trong và bên
ngoài Nhược điểm: Tiêu thụ nhiều năng lượng
Proof of Stake (PoS): Proof of Stake (PoS) là một cơ chế đồng thuận khác,
nơi sự chứng minh cổ phần đóng vai trò như một bằng chứng Trong cơ chế
này, không có miner thợ đào như trong Proof of Work (PoW) Thay vào
đó, những người tham gia phải đặt cược (stake) một số lượng coin đáng kể
để giành quyền xác thực giao dịch và tạo khối Điều này đồng nghĩa vớiviệc PoS không đòi hỏi đầu tư vào nhiều máy đào đắt tiền Ưu điểm: So
với Proof of Work (PoW), Proof of Stake (PoS) tiêu thụ ít năng lượng hon.
PoS cũng áp dung các biện pháp trừng phạt tích cực để ngăn chặn gian lận
và hành vi lừa đảo giữa các người xác nhận Nhược điểm: Khi các nút xácnhận không đóng góp sức mạnh tính toán, hiểu đơn giản là vấn đề "không
có cổ phần", có nguy cơ tăng lên, trong đó PoS Blockchains có thể có nhiều
nhánh hơn so với PoW Ngoài ra, PoS ưu tiên và ủng hộ những người sở hữu nhiều đồng coin nhất, đồng thời khuyến khích tập trung quyền lực, vi
những người giàu có có thể đặt cược một số lượng lớn hơn
Delegated Proof of Stake (DPo8): là một hình thức bằng chứng ủy quyền
cổ phần Khác với Proof of Stake (PoS) nơi người dùng phải đặt cược đểxác thực giao dịch, trong PoA, những người nắm giữ token sẽ bỏ phiếu để
ủy quyền một nhóm được chọn để đảm nhận vai trò xác nhận các giao dịch
Ưu điểm: được ủy quyền nhằm giảm thời gian tạo khối bằng cách giới hạn
số lượng bên tham gia vào quá trình đồng thuận, từ đó tăng tốc độ ra quyếtđịnh Dồng thời, DPoS cũng khuyến khích sự phan cấp bằng cách tránh việc
sử dụng ASIC Tuy nhiên, có một số cảnh báo được đưa ra như được mô tả
Trang 33Và còn rất nhiều cơ chế đồng thuận khác, tùy vào ngữ cảnh và cách triển khai
hệ thống, blockchain có thể linh hoạt trong việc thay thế và sử dụng các cơ chế
khác nhau.
Proof Of Work
(DPoS)
Proof of Capacity
(DBFT)
Hình 2.5: Biéu dé thể hiện các cơ chế đồng thuận trong blockchain.
Trang 342.6.6 Phân loại các mang phổ biến trong Blockchain
theo [13], hệ thống mạng Blockchain có thể được chia làm 3 loại chính:
Các đặc điểm của public blockchain có thể ke đến như: Ai cũng có quyền tham
gia mạng lưới, yêu cầu giao dịch tiền ảo, có độ phi tập trung cao, yêu cầu tài
nguyên cao,
Private Blockchain: Ngược lại với public blockchain, private blockchain đề ra
các quy tắc để định danh người dùng, cho phép những ai có thé tham gia và
ghi dữ liệu vào blockchain Các private blockchain được thiết kế dành cho các
doanh nghiệp, tổ chức chính phú để đảm bảo vừa có thể thừa kế các đặc tính
của blockchain, vừa bảo vệ mạng lưới khỏi các tác nhân tấn công bên ngoài.
Các đặc điểm của private blockchain có thể kể đến như: Người tham gia phải
được chọn trước, không yêu cầu giao dịch tiền ảo, độ phi tập trung thấp, tài
nguyên tiêu hao it,
Hybrid Blockchain: Một dang blockchain hỗn hợp giữa private và public
blockchain đã được phát triển, cho phép những ưu điểm tốt nhất từ cả haiđược tận dụng bởi tổ chức doanh nghiệp Công nghệ này cho phép một hệ thống
riêng tư được xây dựng dựa trên quyền hạn, kết hợp với một hệ thống công
khai Qua đó, quyền truy cập vào dữ liệu cụ thể được lưu trữ trong blockchain
và quyết định dit liệu nào sẽ được công khai được kiểm soát bởi tổ chức
Trang 35Trong một môi trường hybrid blockchain, các giao dịch không được công khai
trực tiếp, nhưng có thể được xác minh khi cần thông qua việc cho phép truy
cập thông qua smart contract.
2.7 Mạng lưới Hyperledger
2.7.1 Giới thiệu vé Hyperledger
Hyperledger là một dự án mã nguồn mở trong lĩnh vực công nghệ blockchain,
tập trung vào việc xây dựng một hệ sinh thái các giải pháp và người dùng để
giải quyết các van đề trong ngành công nghiệp.
Dự án Hyperledger được quản lý và thuộc sở hữu của tổ chức Linux
Founda-tion, cùng với những dự án nổi tiếng khác như NodeJs, Alljoyn và Dronecode.
Mục tiêu chính của Linux Foundation là tạo ra một cộng đồng nhà phát triển
làm việc trên các dự án mã nguồn mở, để đảm bảo sự phát triển liên tục của các
dự án Trong đó, mã nguồn của các dự án được cập nhật, sửa đổi và phân phối lại.
Ý tưởng của Hyperledger là tạo ra một thế giới với nhiều kênh thanh toán
riêng biệt (private channel) phù hợp với từng thị trường cụ thể Các kênh này
được tạo ra để đáp ứng các đặc thù riêng của mỗi doanh nghiệp Việc phát triển các ứng dụng doanh nghiệp trong mạng lưới Hyperledger có thể được cá
nhân hóa theo quy tắc của từng doanh nghiệp Khác với Ethereum, Hyperledger
không áp đặt các nhà phát triển xây dựng ứng dụng của họ quanh một bộ giao
thức định sẵn.
2.7.2 Những đặc điểm của Hyperledger
Trong cấu trúc này, những điểm nổi bật nhất được thể hiện qua các peer
trong mạng Các peer đã được phân chia thành ba vai trò riêng biệt, bao gồm:
Trang 36e Endorser: Endorser là các peer thực hiện thực thi giao dich trong container
chaincode và đề xuất giao dịch lên mang dựa trên kết quả của hợp đồngthông minh Tat cả các peer là Endorser trong mạng đều được yêu cầu cài
đặt chaineode.
e Committer: Dó là những peer không yêu cầu cài đặt chaineode, mà chỉ lưu
trữ sổ cái đầy đủ (full ledger) Sự khác biệt chính giữa committer peer vàendoser peer là committer peer không thể gọi chaincode hoặc thực thi các
hàm trong hợp đồng thông minh
e Consenters: Vai trò điều hành sự đồng thuận trong mạng được dam nhận
bởi những nút này Consenters (hay còn được gọi là nút xác nhận) được
giao trách nhiệm xác nhận các giao dịch và quyết định xem liệu chúng sẽđược thêm vào số cái hay không
2.7.3 Sơ lược vé các Framework của Hyperledger
e Hyperledger Sawtooth: Được phát triển bởi Intel, nền tảng blockchain doanhnghiệp này là một nền tảng sử dụng thuật toán đồng thuận mới mang tênProof of Elapsed Time (PoeT) Sử dụng nền tảng này, các doanh nghiệp có
thể tương tác với các số cái phân tán (distributed ledgers) để phục vụ các
mục đích khác nhau.
e Hyperledger Fabric: Được phát triển với sự hỗ trợ từ IBM, nền tảng này làmột dự án mà hiện đang được chấp nhận rộng rãi như là một trong nhữngnền tảng blockchain hàng đầu được sử dụng bởi các doanh nghiệp hàng
e Hyperledger Burrow: Dây là một mô-dun khách hàng blockchain và trình thông dịch hợp đồng thông minh (permissioned smart contract) được cung
cấp để phát triển ứng dụng, với một phần được xây dựng dựa trên đặc điểm
kỹ thuật của Máy ảo Ethereum (EVM).
Trang 37e Hyperledger Iroha: Được thiết kế đơn giản va dé tích hợp vào các dự ấn cơ
sở hạ tầng, nền tang này là một framework blockchain đáp ứng nhu cầu sử
dụng công nghệ số cái phân tán
2.8 Giới thiệu về Hyperledger Fabric
Trong khi bloackchain đời ầu được định hướng xây dựng như một mạng
lưới giao dịch dựa trên bitcoin và chưa được định hướng phù hợp với các doanh
nghiệp, ví dụ, đặc điểm về hiệu suất của công nghệ Blockchain bất phân quyền chưa thể đáp ứng đủ các tiêu chí yêu cầu trong một doanh nghiệp, thi từ đầu,
Hyperledger Fabric đã được định hướng để thực hiện nhiệm vụ đó Hyperledger
5
Fabric là một trong 5 framework về Blockchain trong chiến lược HyperledgerUmbrella của Linux Foundation, bao gồm Hyperledger Indy, Hyperledger Fab- ric, Hyperledger Iroha, Hyperledger Sawtooth, va Hyperledger Burrow Diéu dac
biệt là Hyperledger Fabric được đóng góp bởi ông lớn IBM Một điểm nữa rất
đáng đề cập là Linux Foundation có lịch sử lâu dai va rất thành công trong việc
xây dựng và quản lý các dự án mã nguồn mở, có một cộng đồng phát triển vớitrên 35 tổ chức và hơn 200 nhà phát triển kể từ khi ra mắt Qua đây càng củng
cố thêm độ uy tín đến với các doanh nghiệp khi sử dụng nền tảng blockchain
được phát triển bởi tổ chức này
Do tính mé-dun cao của nó, Hyperledger Fabric cho phép việc plug and play dé
dang và linh hoạt cho các doanh nghiệp, cho phép thay đổi tối uu dựa trên nhucầu nghiệp vụ của họ (ngân hàng, tài chính, bảo hiểm, y tế, ), từ đó xây dựng
một ứng dung Private Blockchain phù hợp Phiên bản mới nhất của HyperledgerFabric tại thời điểm viết bài này là 2.0.0-alpha
Ngoài ra Hyperledger Fabric còn hỗ trợ phát triển các hợp đồng thông minh(Smart Contracts) bởi các ngôn ngữ lập trình thông dụng có thể kể đến như
Golang, Javascript, TypeScript, Java Diều này là một lợi ích rất lớn đối với các
doanh nghiệp vì hầu hết các doanh nghiệp hiện nay đều có nguồn lực phát triển
Trang 38người tham gia hoàn toàn mật danh và không tin tưởng nhau được Nghĩa là dù
người tham gia có thể không hoàn toàn tin tưởng nhau (có thể là đối thủ cạnh tranh trong cùng ngành), thì mạng lưới có thể hoạt động dưới một mô hình quản trị dựa trên sự tin tưởng giữa những người tham gia, chẳng hạn như thoả thuận
pháp lý hoặc khung xử lí tranh chấp Nói cách khác, nền tang Fabric cung cấp
cho ta một mạng lưới được quản lý chặt chẽ bởi các cơ sở hạ tầng khác nhau.
Những sự khác biệt về thiết kế tính năng trên khiến Fabric trở thành một trong
những nền tảng đạt hiệu suất tốt nhất hiện nay, trong cả quá trình giao dịch lẫn độ trễ xác thực giao dịch, tính bảo mật được tăng cường qua các giao dịch
và cho phép sử dụng hợp đồng thông minh.
2.8.1 Các thành phần trong mang Hyperledger Fabric
Mạng Hyperledger Fabric bao gồm một tập hợp các thành phần tương tác
ngang hàng trong hệ thống Ví dụ, trong một mạng lưới tài chính, vai trò của
một tổ chức có thể là ngân hàng Mỗi tổ chức trong mạng có một cơ quan cấp
chứng chi của Hyperledger Fabric và một hoặc nhiều nút ngang hàng (peer node) Mạng Hyperledger Fabric cũng bao gồm một dịch vụ ordering service được chia
sẻ bởi tất cả các tổ chức trong mạng, giúp xử lý giao dịch cho toàn bộ mạng lưới.
Một tổ chức sẽ được định nghĩa bởi chứng chỉ giành riêng cho tổ chức đó
(certificate) Cac User cũng như là các thành phần khác cũng sẽ được định danh
bằng các chứng chỉ dựa trên nguồn gốc từ chứng chỉ của tổ chức đó Chứng chỉ
gốc của tổ chức, đối với mạng lưới Fabric, sé được lưu trữ dưới tên gọi Certificate
Authority (CA) Chứng chỉ được cung cấp bởi CA cho người dùng trong một tổ
Trang 39chức và các hoạt động khác được xử lý.
Nhiều peer có thể được tạo ra bởi tổ chức để đại diện cho nó trong việc thực hiện các hoạt động Cụ thể, các peer (còn được gọi là peer node) xác nhận
các giao dịch được đề xuất trên hệ thống, lưu trữ và thực thi các hợp đồng
thông minh (gọi là Chaincode trong Fabric) và lưu trữ bản sao cục bộ của sổ
cái (ledger) để truy cap Peer node thường được tương tác bởi các Fabric Client
để đọc số cái, thêm mới chaincode vào mạng hoặc đề xuất giao dịch mới.
Hyperledger Fabric Work Flow
NC: Network Configuration (Cấu hình của mạng).
C - Channel (Kênh): Các tổ chức có vai trò nhất định trong cùng một quy
trình kinh doanh tạo thành một tập hợp Ví dụ, trong một channel về mua bán
xe hơi, tập hợp này bao gồm 2 tổ chức: Nhà sản xuất xe hơi và Nhà phân phối
xe hơi.
CC: Channel Configuration (Cấu hình của kênh).
R: Organization (Tổ chức).
Trang 40O - Orderer Node: Trong Hyperledger Fabric, chỉ có Orderer tham gia vào
quá trình đồng thuận, khác với Public Blockchain nơi tất cả các node của mạng
đều tham gia Orderer đóng vai trò quản lý các giao dịch trong mang Fabric, đảm bảo giao dịch được xử lý theo trình tự chính xác và đồng bộ hóa giữa các
peer.
P - Peer: Vai trò của peer là làm điểm tương tác giữa các thành viên trong
tổ chức, tương ứng với kênh Mọi hành động của người dùng phải thông qua
peer Thành phần cơ bản này trong mạng Hyperledger Fabric được sở hữu và
duy trì bởi các thành viên Peer đóng vai trò là nơi lưu trữ các bản sao của sổ
cái (Ledger) và các bản sao của Hợp đồng Thông minh (Smart Contract).
S - Smart Contract (Chaincode): Chaincode được triển khai trên kênh và định nghĩa cụ thể các cấu trúc và hành động mà người dùng có thể thực hiện để
tương tác với trạng thái của cấu trúc đó được lưu trữ trong sổ cái Chaincode
có thể được hiểu là một đoạn mã được sử dụng để truy cập vào số cái.
L - Ledger ( Số cái ): Lưu trữ trạng thái của các đối tượng.
CA - Certificate Authority: Quá trình phát hành danh tính cho người dùng
hoặc node của tổ chức tương ứng được thực hiện Ví dụ, khi người dùng A là thành viên của Tổ chức R1 muốn tham gia vào mạng, yêu cầu của A sẽ được
gửi đến CA1 Sau đó, CA1 sẽ tạo ra một danh tinh bao gồm khóa riêng tư, khóa công khai và các thuộc tính liên quan khác cho A, và trả về cho A Từ đó trở
đi, danh tính đó sẽ được A sử dụng để tương tác với mạng, và mạng sẽ tự động
nhận ra rằng đó là người dùng A đến từ tổ chức R1.
A - Application: Sinh ra để gười dùng được hỗ trợ để tương tác dé dàng hơn
với hệ thống thông qua ứng dụng hoặc giao diện (web, mobile app).
Membership Service Provider (MSP): là một thành phần của hệ thống có
nhiệm vụ cung cấp các chứng chỉ (credential) cho Client và Peer Nodes để họ
tham gia vào mạng Hyperledger Fabric Membership Service Provider quan lý
việc cấp và phân phối chứng chi cho các thành viên trong mang Với vai trò này, MSP đảm bảo tính bảo mật của mạng bằng cách xác minh danh tính của từng