Tải bản đầy đủ (.pdf) (25 trang)

BÀI TẬP LỚN MẠNG MÁY TÍNH ĐẠI HỌC BÁCH KHOA HÀ NỘI ỨNG DỤNG CỦA SMART CONTRACT BLOCKCHAIN TRONG INTERNET SECURITY VÀ IOT

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (703.41 KB, 25 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN ĐIỆN TỬ - VIỄN THƠNG

BÀI TẬP LỚN

MẠNG MÁY TÍNH
ĐỀ TÀI:
ỨNG DỤNG CỦA SMART CONTRACT - BLOCKCHAIN
TRONG INTERNET SECURITY VÀ IOT
Giảng viên hướng dẫn: PGS.TS. Trần Quang Vinh
Nhóm sinh viên thực hiện: Nhóm 6
1. Nguyễn Bá Huy
2. Đào Bá Hiếu
3. Phạm Hồng Đạt

20182582
20182507
20172459

4. Trần Đức Duy
5. Bùi Huy Hiệp

20182467
20186317
Hà Nội, 12/2021


LỜI NÓI ĐẦU
Trong thập kỷ vừa qua, việc phát triển và nghiên cứu Công nghệ Blockchain
đã gia tăng theo cấp số nhân. Đặc điểm của Blockchain là tính bảo mật, ẩn danh và


tồn vẹn mà khơng phụ thuộc vào các tổ chức bên thứ ba đã thúc đẩy mọi người
quan tâm đến nó. Ban đầu, Blockchain được tạo ra chỉ để dùng với tiền điện tử, tuy
nhiên với sự ra đời của Ethereum giúp hỗ trợ tạo ra và thực hiện các hợp đồng thơng
minh (là các chương trình máy tính dựa trên Blockchain) thì các ứng dụng ngồi tiền
điện tử đã và đang được khám phá và phát triển.
Mặc dù đã có những tiến bộ đáng kể trong việc cải thiện công nghệ Blockchain
với trọng tâm là các hợp đồng thơng minh, tuy nhiên, vẫn cịn nhiều thiếu sót trong
cách đánh giá mô tả về khả năng ứng dụng của hợp đồng thông minh trong việc bảo
mật Internet và IoT.
Trong bài báo cáo này, chúng em xác định vào phân tích các tài liệu nghiên
cứu đã được cơng bố sử dụng các hợp đồng thông minh Blockchain trong việc bảo
mật Internet nói chung và Internet of Things nói riêng và trình bày bản phân tích hệ
thống của các tài liệu đó.
Trong q trình thực hiện tuy có rất nhiều khó khăn nhưng nhờ sự hướng dẫn
tận tình của PGS.TS. Trần Quang Vinh cũng như nỗ lực của bản thân mà chúng em
đã hoàn thành được đề tài này, nhưng do thời gian cũng như trình độ sinh viên có
hạn nên khơng thể tránh khỏi một vài sai sót. Chúng em mong nhận được những lời
khuyên của thầy để chúng em có thể hiểu thêm về đề tài này nói riêng và mơn học
này nói chung. Chúng em xin chân thành cảm ơn thầy!


MỤC LỤC
MỤC LỤC .................................................................................................................3
DANH MỤC HÌNH VẼ ...........................................................................................4
CHƯƠNG 1: GIỚI THIỆU .....................................................................................5
CHƯƠNG 2: BLOCKCHAIN ................................................................................6
1.

Khái niệm Blockchain ................................................................................................................. 6


2. Đặc điểm của Blockchain .......................................................................................... 7
3.

Cách hoạt động của Blockchain .............................................................................................. 7

4.

Ứng dụng của Blockchain ....................................................................................................... 10

5.

Mô phỏng Blockchain đơn giản ............................................................................................. 11

CHƯƠNG 3: HỢP ĐỒNG THÔNG MINH ........................................................13
1.

Ethereum ...................................................................................................................................... 13

2.

Hợp đồng thông minh ............................................................................................................... 13

3.

Cách thức hoạt động ................................................................................................................. 13

4.

Ứng dụng của hợp đồng thông minh .................................................................................... 14


CHƯƠNG 4: ỨNG DỤNG BLOCKCHAIN TRONG HỢP ĐỒNG THÔNG
MINH BẢO MẬT MẠNG VÀ IOT .....................................................................16
1.

Các giải pháp bảo mật theo hướng hợp đồng thông minh cho Internet và IoT ........ 16

2.

Cách hợp đồng thông minh cải thiện bảo mật trong internet và IoT .......................... 20

Bằng chứng ủng hộ khả năng sử dụng/tính khả thi của hợp đồng thông minh để
giải quyết các vấn đề bảo mật và lỗ hổng bảo mật trên internet và IoT mạnh đến mức
nào? ....................................................................................................................................................... 20
3.

CHƯƠNG 5: CÁC VẤN ĐỀ THÁCH THỨC VÀ HƯỚNG NGHIÊN CỨU
TRONG TƯƠNG LAI ...........................................................................................22
CHƯƠNG 6: KẾT LUẬN .....................................................................................24
TÀI LIỆU THAM KHẢO .....................................................................................25


DANH MỤC HÌNH VẼ
Hình 1. Ngun lý tạo khối
Hình 2. Các giải pháp bảo mật được cung cấp bởi Hợp đồng thơng minh cho Internet và
IOT
Hình 3. Tỷ lệ các giải pháp bảo mật mà Hợp đồng thông minh cung cấp cho Internet và
IOT


CHƯƠNG 1: GIỚI THIỆU

Internet nói chung và IoT nói riêng đã cách mạng hóa cách chúng ta giao tiếp và
cộng tác trong thế giới ngày nay. Bảo mật là một trong những thách thức lớn mà IoT đang
gặp phải, do tính chất khơng đồng nhất và tài ngun bị hạn chế của các thiết bị IoT. Hơn
nữa, phần lớn các kế hoạch bảo cho hệ thống hiện nay của Internet và IoT đều dựa vào độ
tin cậy của các cơ quan quyền lực, khiến chúng dễ bị tấn công bởi nhiều loại tấn công khác
nhau, từ điểm lỗi cục bộ (single point of failure) đến giả mạo. Khả năng cung cấp bảo mật,
ẩn danh và tồn vẹn của cơng nghệ Blockchain mà không cần dựa vào các tổ chức bên thứ
ba đáng tin cậy khiến nó trở thành cơng cụ tốt nhất để đáp ứng các yêu cầu bảo mật của
Internet và IoT.
Mặc dù khái niệm về Blockchain đã được giới thiệu cùng với sự ra đời của Bitcoin
vào năm 2008, nó đã được ứng dụng trong đa dạng các lĩnh vực chỉ sau khi Ethereum ra
đời. Etherum hỗ trợ việc tạo và thực hiện các hợp đồng thông minh.
Hợp đồng thơng minh là một đoạn mã máy tính được giới thiệu lần đầu tiên bởi
Nick Szabo, được lưu trữ trong mạng Blockchain (trên cơ sở dữ liệu của mỗi nút tham gia).
Hợp đồng thông minh xác định các điều kiện và quy tắc mà tất cả các bên sử dụng hợp
đồng đồng ý và các hành động được mô tả trong hợp đồng chỉ có thể được thực hiện nếu
các điều kiện bắt buộc được đáp ứng và các quy tắc được tuân thủ.
Ngày nay, có một số nền tảng Blockchain hỗ trợ thực thi các hợp đồng thông minh
bao gồm Hyperledger Fabric, Quorum và nhiều nền tảng khác. Với việc hệ thống Hợp đồng
thông minh được thực thi trên Blockchain, cho phép phát triển và khám phá các ứng dụng
dựa trên Blockchain ngồi tiền điện tử. Nhờ đó, hợp đồng thông minh trên nền tảng
Blockchains đã được sử dụng trong nhiều lĩnh vực ứng dụng khác nhau, bao gồm cả các
thành phố thông minh hỗ trợ IoT.


CHƯƠNG 2: BLOCKCHAIN
1. Khái niệm Blockchain
Blockchain: là công nghệ chuỗi khối, cho phép dữ liệu chuyền tải một cách an
toàn dựa trên hệ thống mã hố vơ cùng phức tạp.
Mỗi khối (block) đều chứa thông tin về thời gian khởi tạo và được liên kết với khối

trước đó, kèm theo đó là một mã thời gian và dữ liệu giao dịch. Dữ liệu khi đã được mạng
lưới chấp nhận thì sẽ khơng có cách nào thay đổi được. Blockchain được thiết kế để chống
lại việc gian lận, thay đổi của dữ liệu.
Công nghệ Blockchain – sự kết hợp giữa 3 loại cơng nghệ:


Mật mã học: để đảm bảo tính minh bạch, tồn vẹn và riêng tư thì cơng nghệ
Blockchain đã sử dụng public key và hàm hash function.



Mạng ngang hàng: Mỗi một nút trong mạng được xem như một client và cũng là
server để lưu trữ bản sao ứng dụng.



Lý thuyết trò chơi: Tất cả các nút tham gia vào hệ thống đều phải tuân thủ luật chơi
đồng thuận (giao thức PoW, PoS, …) và được thúc đẩy bởi động lực kinh tế.

Hệ thống Blockchain chia thành 3 loại chính:


Public: Bất kỳ ai cũng có quyền đọc và ghi dữ liệu trên Blockchain. Quá trình xác
thực giao dịch trên Blockchain này địi hỏi phải có rất nhiều nút tham gia. Vì vậy,
muốn tấn cơng được vào hệ thống Blockchain này cần chi phí rất lớn và thực sự
khơng khả thi. Ví dụ: Bitcoin, Ethereum, …



Private: Người dùng chỉ được quyền đọc dữ liệu, khơng có quyền ghi vì điều này

thuộc về bên tổ chức thứ ba tuyệt đối tin cậy. Vì đây là một Private Blockchain,
cho nên thời gian xác nhận giao dịch khá nhanh vì chỉ cần một lượng nhỏ thiết bị
tham gia xác thực giao dịch. Ví dụ: Ripple là một dạng Private Blockchain, hệ
thống này cho phép 20% các nút là gian dối và chỉ cần 80% cịn lại hoạt động ổn
định là được.



Permissioned (hay cịn gọi là Consortium): một dạng của Private nhưng bổ sung
thêm 1 số tính năng khác, đây là sự kết hợp giữa Public và Private. Ví dụ: Các ngân
hàng hay tổ chức tài chính liên doanh sẽ sử dụng Blockchain cho riêng mình.


2. Đặc điểm của Blockchain
• Khơng thể làm giả, khơng thể phá hủy các chuỗi Blockchain: theo như lý thuyết thì
chỉ có máy tính lượng tử mới có thể giải mã Blockchain và cơng nghệ Blockchain
biến mất khi khơng cịn Internet trên tồn cầu.
• Bất biến: dữ liệu trong Blockchain khơng thể sửa (có thể sửa nhưng sẽ để lại dấu
vết) và sẽ lưu trữ mãi mãi.
• Bảo mật: Các thông tin, dữ liệu trong Blockchain được phân tán và an tồn tuyệt
đối.
• Minh bạch: Ai cũng có thể theo dõi dữ liệu Blockchain đi từ địa chỉ này tới địa chỉ
khác và có thể thống kê tồn bộ lịch sử trên địa chỉ đó.
• Hợp đồng thơng minh: là hợp đồng kỹ thuật số được nhúng vào đoạn code if-thisthen-that (IFTTT), cho phép chúng tự thực thi mà không cần bên thứ ba.

3. Cách hoạt động của Blockchain
Ứng dụng được biết đến và thảo luận nhiều nhất về công nghệ Blockchain chính
là đồng tiền điện tử. Bitcoin là một đơn vị tiền tệ kỹ thuật số với mã là BTC, cũng
giống như đơ la Mỹ bản thân nó khơng mang giá trị, nó chỉ có giá trị bởi vì có một
cộng đồng đồng ý sử dụng nó làm đơn vị giao dịch hàng hóa và dịch vụ.

Để theo dõi số lượng Bitcoin mà mỗi người sở hữu trong các tài khoản nhất định
và theo dõi các giao dịch phát sinh từ đó thì chúng ta cần đến một cuốn sổ kế tốn,
trong trường hợp này nó chính là Blockchain và đây thực tế là một tệp kỹ thuật số theo
dõi tất cả các giao dịch Bitcoin.
Tệp sổ cái này không được lưu trữ trong một máy chủ trung tâm, như trong một
ngân hàng hoặc trong một trung tâm dữ liệu mà ngược lại nó được phân phối trên tồn
thế giới thơng qua một mạng lưới các máy tính ngang hàng với vai trò lưu trữ dữ liệu
và thực thi các tính tốn. Mỗi máy tính này đại diện cho một “nút” của mạng lưới
Blockchain và mỗi nút đều có một bản sao của tệp sổ cái này.
Trên thực tế, cuốn sổ cái ln được duy trì bởi các máy tính trong mạng ngang
hàng được kết nối với nhau. Vì thế, nó sẽ có một số điểm khác biệt:


• Trong hệ thống ngân hàng, chúng ta chỉ biết các giao dịch và số dư tài khoản của
riêng mình thì trên Blockchain của bitcoin chúng ta có thể xem các giao dịch của
tất cả mọi người.
• Mạng lưới Bitcoin là mạng lưới phân tán không cần bên thứ ba đóng vai trị trung
gian xử lý giao dịch.
• Hệ thống Blockchain được thiết kế theo cách không yêu cầu sự tin cậy và bảo
đảm bởi độ tin cậy có được thơng qua các hàm mã hóa tốn học đặc biệt.
Để có thể thực hiện các giao dịch trên Blockchain, chúng ta cần một phần mềm
sẽ cho phép chúng ta lưu trữ và trao đổi các đồng Bitcoin của mình gọi là ví tiền điện
tử. Ví tiền điện tử này sẽ được bảo vệ bằng một phương pháp mã hóa đặc biệt đó là sử
dụng một cặp khóa bảo mật duy nhất: khóa riêng tư (private key) và khóa cơng khai
(public key).
Nếu một thơng điệp được mã hóa bằng một khóa cơng khai cụ thể thì chỉ chủ sở
hữu của khóa riêng tư là một cặp với khóa cơng khai này mới có thể giải mã và đọc
nội dung thơng điệp.
Khi mã hóa một yêu cầu giao dịch bằng khóa riêng tư, có nghĩa là chúng ta đang
tạo ra một chữ ký điện tử được các máy tính trong mạng lưới Blockchain sử dụng để

kiểm tra chủ thể gửi và tính xác thực của giao dịch. Chữ ký này là một chuỗi văn bản
và là sự kết hợp của yêu cầu giao dịch và khóa riêng tư của chúng ta.
Nếu một ký tự đơn trong thông điệp yêu cầu giao dịch này bị thay đổi thì chữ ký
điện tử sẽ thay đổi theo. Vì thế, hacker khó có thể thay đổi yêu cầu giao dịch của chúng
ta hoặc thay đổi số lượng Bitcoin mà chúng ta đang gửi.
Để gửi Bitcoin (BTC), chúng ta cần chứng minh rằng mình sở hữu khóa riêng tư
của một chiếc ví điện tử cụ thể bởi ta cần sử dụng nó để mã hóa thơng điệp yêu cầu
giao dịch. Sau khi tin nhắn của chúng ta đã được gửi đi và được mã hóa thì chúng ta
khơng cần phải tiết lộ khóa riêng tư của mình nữa.
Mỗi nút trong Blockchain đều đang lưu giữ một bản sao của sổ kế toán. Do vậy,
mỗi nút đều biết số dư tài khoản của chúng ta là bao nhiêu. Hệ thống Blockchain chỉ
ghi lại mỗi giao dịch được yêu cầu chứ không hề theo dõi số dư tài khoản của chúng


ta. Để biết số dư trên ví điện tử của mình cần xác thực và xác nhận tất cả các giao
dịch đã diễn ra trên mạng lưới mà có liên quan tới ví điện tử.
Thực tế là các nút sẽ kiểm tra tất cả các giao dịch có liên quan đến ví tiền điện tử
chúng ta sử dụng trước đó để gửi Bitcoin (BTC) thông qua việc tham chiếu các lịch
sử giao dịch. Có một bản ghi sẽ lưu trữ số BTC chưa được dùng và được các nút
mạng lưu giữ giúp đơn giản hóa và tăng tốc q trình xác minh. Vì thế, các ví tiền
điện tử tránh được tình trạng chi tiêu đúp giao dịch.
Mã nguồn trên mạng lưới Bitcoin là nguồn mở, có nghĩa là bất kỳ ai có máy tính
kết nối được internet đều có thể tham gia vào mạng lưới và thực hiện giao dịch.
Tuy nhiên, nếu có bất kỳ một lỗi nào trong mã nguồn được sử dụng để phát thông
báo yêu cầu giao dịch thì các Bitcoin liên quan sẽ bị mất vĩnh viễn.
Nguyên lý tạo khối

Hình 1. Nguyên lý tạo khối

Các giao dịch sau khi được gửi lên trên mạng lưới Blockchain sẽ được nhóm vào

các khối và các giao dịch trong cùng 1 khối (block) được coi là đã xảy ra cùng thời điểm.
Các giao dịch chưa được thực hiện trong 1 khối được coi là chưa được xác nhận.
Mỗi nút có thể nhóm các giao dịch với nhau thành một khối và gửi nó vào mạng
lưới như một hàm ý cho các khối tiếp theo được gắn vào sau đó. Bất kỳ nút nào cũng có


thể tạo ra một khối mới. Vậy, câu hỏi đặt ra là: hệ thống sẽ đồng thuận với khối nào?
khối nào sẽ là khối tiếp theo?
Để được thêm vào Blockchain, mỗi khối phải chứa một đoạn mã đóng vai trị như
một đáp án cho một vấn đề toán học phức tạp được tạo ra bằng hàm mã hóa băm khơng
thể đảo ngược.
Cách duy nhất để giải quyết vấn đề toán học như vậy là đoán các số ngẫu nhiên,
những số khi mà kết hợp với nội dung khối trước tạo ra một kết quả đã được hệ thống
định nghĩa. Điều này nhiều khi có thể mất khoảng một năm cho một máy tính điển hình
với một cấu hình cơ bản có thể đốn đúng các con số đáp án của vấn đề toán học này.
Mạng lưới quy định mỗi khối được tạo ra sau một quãng thời gian là 10 phút một
lần, bởi vì trong mạng lưới ln có một số lượng lớn các máy tính đều tập trung vào
việc đoán ra dãy số này. Nút nào giải quyết được vấn đề toán học như vậy sẽ được quyền
gắn khối tiếp theo lên trên chuỗi và gửi nó tới tồn bộ mạng lưới.
Vậy điều gì sẽ xảy ra nếu hai nút giải quyết cùng một vấn đề cùng một lúc và truyền
các khối kết quả của chúng đồng thời lên mạng lưới? Trong trường hợp này, cả hai khối
được gửi lên mạng lưới và mỗi nút sẽ xây dựng các khối kế tiếp trên khối mà nó nhận
được trước tiên.
Tuy nhiên, hệ thống Blockchain luôn yêu cầu mỗi nút phải xây dựng trên chuỗi
khối dài nhất mà nó nhận được. Vì vậy, nếu có sự mơ hồ về việc block nào là khối cuối
cùng thì ngay sau khi khối tiếp theo được giải quyết thì mỗi nút sẽ áp dụng vào chuỗi
dài nhất.
Do xác suất việc xây dựng các block đồng thời là rất thấp nên hầu như khơng có
trường hợp nhiều khối được giải quyết cùng một lúc và nhiều lần tạo ra các khối nối
đuôi khác nhau. Do đó, tồn bộ chuỗi-khối sẽ nhanh chóng ổn định và hợp nhất lại khi

mà mọi nút đều đồng thuận.

4. Ứng dụng của Blockchain
✓ Công nghệ ô tô Automotive
✓ Chế tạo
✓ Công nghệ, truyền thông và viễn thông


✓ Dịch vụ tài chính
✓ Nghệ thuật & Giải trí
✓ Chăm sóc sức khỏe
✓ …..

5. Mơ phỏng Blockchain đơn giản
Theo như định nghĩa và khái niệm, Blockchain là một chuỗi các Block chứa thông
tin của người dùng gửi lên trong hầu hết các giao dịch.
Ta có một ví dụ trực quan về Blockchain để hiểu rõ hơn về đặc điểm và các tính
chất của nó.
Giả sử một khối Block đơn giản bao gồm các thông tin sau:
✓ prevHash (giá trị mã hóa của Block trước đó,) – giả sử với Block đầu tiên được
đưa lên Chain thì prevHash là chuỗi ‘0000’.
✓ data (thông tin người dùng đưa vào Block để gửi giao dịch) – giả sử trong IoT thì
data là một tin nhắn được vi điều khiển gửi đi với nội dung ‘Hello’.
✓ timeCreate (thời gian hiện tại tạo Block) – là một chuỗi có dạng ‘HH:mm:ss
DD/MM/YYYY’ (VD: 12:25:40 06/01/2022).
✓ currentHash (giá trị mã hóa của Block hiện tại) – là một chuỗi được mã hóa từ các
thơng tin trong Block (prevHash + data + timeCreate) bằng thuật toán SHA256
(VD: ‘abcdefghiklm’)
Mơ phỏng trong code thì Block sẽ tồn tại dưới dạng như sau:


✓ Trong Class Block ta sẽ có thêm 1 hàm genarateHash dùng thuật tốn SHA256
để mã hóa các thông tin là:
✓ prevHash
✓ data
✓ timeCreate (thời gian thực hiện tại)


 Hàm genarateHash sẽ mã hóa 3 thơng tin trên và cho ra chuỗi mã hóa sau
cùng (currentHash) được cho là thơng tin mã hóa của Block hiện tại.
VD: Vi điều khiển gửi 1 tin nhắn với nội dung ‘Hello’ vào Block đầu tiên để đưa
lên giao dịch. Ta có thể coi Block đầu tiên này có prevHash là một chuỗi có giá
trị ‘0000’, thời gian thực gửi tin nhắn là ’01:19:27 06/01/2022’
 Ta được thơng tin mã hóa của Block đầu tiên (currentHash) như trên hình:

✓ Và tương tự khi có nhiều con VĐK cùng đẩy thơng tin vào trong Block và đưa lên
giao dịch, điều đó tạo lên một Blockchain đơn giản với các Block nối tiếp nhau.
✓ Tính bất biến và bảo mật an tồn của Blockchain ở việc Block hiện tại sẽ có giá
trị prevHash lấy từ giá trị currentHash của Block trước đó.

Kiểm tra tính an toàn của Blockchain, ta phải kiểm tra 2 điều kiện:
✓ prevHash của Block hiện tại có bằng với currentHash của Block trước đó
hay khơng?
✓ Thực hiện mã hóa lại Block hiện tại bằng hàm genarateHash để so sánh với
currentHash của Block hiện tại. Từ đó kiểm tra liệu thơng tin data người
dùng gửi lên có bị thay đổi bằng dữ liệu giả hay không?


CHƯƠNG 3: HỢP ĐỒNG THÔNG MINH
1. Ethereum
Ethereum (ETH) là một nền tảng điện tốn có tính chất phân tán, cơng cộng, mã

nguồn mở dựa trên cơng nghệ Blockchain. Nó có tính năng Hợp đồng thơng minh (kịch
bản), tạo thuận lợi cho các thỏa thuận hợp đồng trực tuyến. Nền tảng này bao gồm
một máy ảo hoàn toàn Turing - Ethereum Virtual Machine (EVM), có thể thực thi các
kịch bản bằng cách sử dụng một mạng lưới máy tính Ethereum.

2. Hợp đồng thơng minh
Bình thường, khi ký một hợp đồng để trao đổi giá trị kinh tế, chúng ta cần một
bên thứ 3 có trách nhiệm hịa giải (ví dụ: Nhà mơi giới, Tịa án, Sở đất đai, ...). Hợp
đồng thơng minh là một cơ chế trao đổi xác định, được kiểm sốt bởi các phương tiện
kỹ thuật số mà có thể giúp cho việc thực hiện giao dịch trực tiếp giữa các thực thể mà
không cần tin cậy nhau. Các hợp đồng này được định nghĩa bằng cách lập trình và
được chạy chính xác như mong muốn mà khơng bị kiểm duyệt, lừa đảo hay sự can
thiệp từ bên thứ ba trung gian.
Chúng có thể được sử dụng để tạo điều kiện, xác minh và thực thi việc đàm phán
hoặc thực hiện các hướng dẫn thủ tục kinh tế và có khả năng tránh được sự kiểm duyệt,
thơng đồng và rủi ro từ phía đối tác. Trong Ethereum, các hợp đồng thông minh được
coi là các kịch bản tự trị hoặc các ứng dụng phân cấp được lưu trữ trong chuỗi khối
Ethereum để thực hiện sau đó bởi EVM. Các hướng dẫn được nhúng trong các hợp
đồng Ethereum được thanh tốn bằng ether và có thể được thực hiện bằng nhiều ngôn
ngữ Turing-complete khác nhau.

3. Cách thức hoạt động
Cơ chế hoạt động của các Smart Contract có thể nói là giống như với một chiếc
máy bán hàng tự động. Có nghĩa là chúng chỉ tự động thực hiện những điều khoản đã
được lập trình sẵn từ trước khi được điều khoản đó đã đáp ứng đủ những yêu cầu cần
thiết.
Đầu tiên, các điều khoản trong hợp đồng sẽ được viết bằng ngơn ngữ lập trình, sau
đó được mã hóa và chuyển vào một block thuộc Blockchain. Sau khi chuyển vào block,
Smart Contract này sẽ được phân phối và sao chép lại bởi các node đang hoạt động
trên nền tảng đó.



Sau khi có nhận lệnh triển khai thì hợp đồng sẽ được triển khai theo đúng
như điều khoản định sẵn. Đồng thời, Smart Contract cũng sẽ tự động kiểm tra quá
trình thực hiện những cam kết, điều khoản được nêu trong hợp đồng.

4. Ứng dụng của hợp đồng thơng minh
• Sử dụng cho các cuộc Bầu cử
Việc thao tứng kết quả bầu cử là rất khó, tuy nhiên vẫn có thể xảy ra, nhưng hợp
đồng thơng minh thì sẽ bao giờ có thể thao túng. Bởi vì những phiếu vote được
bảo vệ bởi sổ cái sẽ cần được giải mã và cần phải có một quyền truy cập đủ mạnh
để tiếp cận nó. Và sự thực là khơng ai nắm trong tay quyền lực như vậy trong
blockchain.



Sử dụng cho các nhà quản lý
Blockchain không chỉ cung cấp một sổ cái đáng tin cậy, mà còn loại bỏ những
rủi ro nhờ vào một hệ thống tự động, minh bạch và chính xác. Thông thường, hoạt
động kinh doanh thường không phải lúc nào cũng thuận lợi do phải đợi sự đồng
thuận hay giải quyết các vấn đề bên ngoài và nội bộ. Sổ cái Blockchain sẽ giải
quyết việc này.



Logistics (Chuỗi cung ứng)
Chuỗi cung ứng trong bất kì doanh nghiệp nào đều là một hệ thống kéo dài và
gồm nhiều bộ phận khác nhau. Mỗi bộ phận đều có những cơng việc nhất định,
mà phải làm tuần tự. Và phải được ghi lại để khi xảy ra phát sinh còn biết vấn đề
ở đâu

Đây là một quá trình dài hơi và kém năng suất, nhưng với Smart Contract thì
mỗi bộ phận tham gia đều có thể theo dõi tiến trình cơng việc để từ đó hồn thành
nhiệm vụ đúng hạn. Smart contract bảo đảm tính minh bạch trong điều khoản hợp
đồng, chống gian lận.


Nó cịn có thể cung cấp cho ta khả năng giám sát q trình cung ứng nếu như
được tích hợp chung với Mạng lưới vạn vật kết nối bằng Internet (Internet of
Things).



Dịch vụ y tế
Với Smart Contract thì hồ sơ bệnh lý của người bệnh sẽ được mã hóa và lưu

trữ trên Blockchain với một khóa riêng, chỉ những người có khóa đó mới có thể
truy cập vào xem hồ sơ được. Đồng thời các hóa đơn cho các cuộc phẫu thuật được
lưu trữ trên Blockchain và được tự động chuyển cho bên bảo hiểm. Sổ cái cũng có
thể được sử dụng trong việc quản lý chăm sóc y tế, ví dụ như giám sát thuốc men,
kết quả xét nghiệm và quản lý các nguồn cung y tế.
 Bên cạnh đó Smart contract cịn có vơ vàn ứng dụng khác, ví dụ như trong
quản lí, dịch vụ ngân hàng, bảo hiểm, bất động sản, ........


CHƯƠNG 4: ỨNG DỤNG BLOCKCHAIN TRONG HỢP
ĐỒNG THÔNG MINH BẢO MẬT MẠNG VÀ IOT
1. Các giải pháp bảo mật theo hướng hợp đồng thơng minh cho Internet và
IoT
Có nhiều giải pháp bảo mật theo hướng hợp đồng thông minh, các nghiên cứu
cho thấy rằng các cơ hội để cải thiện Iot là rất dồi dào và chiếm ưu thế.

=> Điều này có thể do sự mở rộng và áp dụng rộng rãi của công nghệ Iot trong
những năm qua và tác động to lớn của nó đối với các khía cạnh khác nhau của xã hội
nói chung và nhu cầu ngày càng tăng về các giải pháp bảo mật IoT.
Hình 2 cho thấy các giải pháp bảo mật được cung cấp bởi các hợp đồng thông
minh Blockchain cho Internet và IoT.

Hình 1 Các giải pháp bảo mật được cung cấp bởi Hợp đồng thông minh cho Internet và IOT


• Xác thực, Ủy quyền và Kiểm soát truy cập:
Tận dụng các hợp đồng thông minh Blockchain độc lập hoặc kết hợp với các công
nghệ khác để đảm bảo giám sát truy cập, quản lý tài nguyên và thực thi chinh sách
trong IoT.
Các nghiên cứu đã khai thác các hợp đồng thơng minh để thiết kế các chiến lược
kiểm sốt truy cập chi tiết cho IoT, thiết kế các cơ chế xác thực theo hướng Blockchain
mà khơng có người đi kèm hoặc được hỗ trợ bởi một số công nghệ khác như PUF, chữ
ký nhóm, MAC, ECC, v.v
• Bảo tồn tính tồn vẹn:
Các nghiên đã tận dụng các hợp đồng thơng minh Blockchain để đảm bảo tính
tồn vẹn của dữ liệu. Hợp đồng thông minh Blockchain được khai thác để đảm bảo
tính tồn vẹn của thiết bị thơng qua phân phối an tồn các bản cập nhật chương trình
cơ sở.
Tính tồn vẹn của thiết bị được đảm bảo thơng qua các cơ chế như cách tiếp cận
Ngữ pháp và Trình biên dịch, các cơ chế khuyến khích và danh tiếng. Khung pháp y
kỹ thuật số dựa trên Blockchain để bảo tồn tính tồn vẹn của bằng chứng trong mơi
trường IoT
• Quản lý dữ liệu an toàn:
Bằng cách tận dụng kiến trúc phân lớp của hợp đồng thông minh Blockchain và
một số tính năng khác như mơ hình xuất xứ của PUF và Mở, nguồn gốc dữ liệu được
áp dụng trong môi trường. Để đảm bảo bảo vệ dữ liệu, hợp đồng thông minh

Blockchain được sử dụng độc lập và với các cơng nghệ hiện có khác như mã hóa lại
proxy và trình quản lý bảo mật và lưu trữ (SSM), v.v. Sổ cái kết hợp phân tán và kiến
trúc điện toán biên để quản lý dữ liệu được tinh chỉnh và an tồn. Tính tốn gia cơng
phần mềm phi tập trung (DOC) với mã hóa đồng cấu hình để đảm bảo tính tồn vẹn
của máy chủ và ngăn chặn rị rỉ văn bản rõ ràng trong quá trình giao tiếp máy chủ thiết
bị.
• Quản lý danh tính & khóa:


Một xây dựng PKI dựa trên Hash thực tế khả thi cho ethereum công khai và hợp
đồng thông minh ethereum & Dịch vụ giá trị tên Emercoin (NVS) dựa trên PKI hiệu
quả và có thể mở rộng cho các thiết bị IoT. Kiến trúc PKI dựa trên Blockchain với tính
minh bạch của chứng chỉ để loại bỏ các cuộc tấn công trong thế giới phân chia và
khung quản lý PKI để cấp, xác thực và thu hồi chứng chỉ X.509 và hợp đồng thông
minh cấp chứng chỉ phân cấp dựa trên hợp đồng của các cơ quan cấp chứng chỉ. Hợp
đồng thông minh Blockchain được định hướng phi tập trung, cách tiếp cận giống như
DNS để quản lý danh tính an tồn và đáng tin cậy và mơ hình web-tin cậy minh bạch
để quản lý khóa an tồn. Kiểm sốt truy cập dựa trên bộ lọc Bloom được tích hợp với
quản lý danh tính để cung cấp đảm bảo an ninh dữ liệu trong IoT cơng nghiệp.
• Khơng chối bỏ:
Các hợp đồng thông minh Blockchain đã được khai thác để thiết kế hệ thống khơng
thối thác đáng tin cậy phi tập trung cho IoT
• Một cuộc tấn cơng từ chối dịch vụ (DoS là viết tắt của Denial of Service) là một nỗ
lực làm cho những người dùng không thể sử dụng tài nguyên của một máy tính. Mặc dù
phương tiện để tiến hành, động cơ, mục tiêu của tấn cơng từ chối dịch vụ có thể khác
nhau, nhưng nói chung nó gồm có sự phối hợp, sự cố gắng ác ý của một người hay nhiều
người để một trang, hay hệ thống mạng không thể sử dụng, làm gián đoạn, hoặc làm cho
hệ thống đó chậm đi một cách đáng kể với người dùng bình thường, bằng cách làm quá
tải tài nguyên của hệ thống
DDoS (Phát hiện, Bảo vệ và Giảm thiểu) Hệ thống xác thực dựa trên blockchain phi

tập trung cho IoT khai thác các lợi thế bảo mật được cung cấp bởi các blockchains để
tạo ra các vùng ảo an tồn (bong bóng) để xác định và tin cậy lẫn nhau.
Sơ đồ phát hiện DDoS cộng tác sử dụng Blockchain và các tác nhân nhẹ trong IoT.
Tích hợp IoT với Ethereum để ngăn các thiết bị giả mạo truy cập vào máy chủ và bảo
vệ các cuộc tấn công DDoS bằng cách sử dụng phân bổ tài ngun tĩnh.
• Hợp tác an tồn dựa trên nền tảng Học sâu (DL) dựa trên Blockchain cho DL
trong IoT.
Kiến trúc nhiều lớp để cập nhật an toàn trong IoT bằng cách tận dụng các hợp đồng
thơng minh Ethereum, do đó cho phép khả năng chịu lỗi. Đường mòn kiểm tra theo


hướng hợp đồng thông minh cho IoT để thực thi các quy tắc GDPR đã được đề xuất
trong nghiên cứu sơ cấp
Hình 3 cho thấy sự phân bố của các nghiên cứu chính (tính theo%) thuộc nhiều loại
khác nhau. Các nghiên cứu cho thấy rằng các cơ hội để cải thiện IoT nói riêng rõ ràng
là rất dồi dào và chiếm ưu thế (tính theo%). Hơn 90% các nghiên cứu liên quan đến IoT.
Điều này có thể là do sự mở rộng và áp dụng rộng rãi của công nghệ IoT trong những
năm qua và tác động to lớn của nó đối với các khía cạnh khác nhau của xã hội nói chung
và nhu cầu ngày càng tăng về các giải pháp bảo mật IoT. Tuy nhiên, nhu cầu về các giải
pháp bảo mật trong IoT có thể bắt nguồn từ các báo cáo truyền thông được ghi chép đầy
đủ về các cuộc tấn công được tổ chức bằng cách khai thác các thiết bị IoT

Hình 2 Tỷ lệ các giải pháp bảo mật mà Hợp đồng thông minh cung cấp cho Internet và IOT


2. Cách hợp đồng thông minh cải thiện bảo mật trong internet và Iot
Các giải pháp bảo mật hiện có trong các hệ thống Internet và IoT chủ yếu dựa vào
cơ quan trung tâm đáng tin cậy duy nhất, khiến chúng dễ bị tấn công bởi nhiều loại tấn
công khác nhau, từ điểm lỗi duy nhất đến từ chối dịch vụ. Dựa trên các giải pháp bảo
mật theo hướng hợp đồng thông minh được xác định trong phần trên, chúng tôi nhận

thấy rằng các giải pháp bảo mật theo hướng hợp đồng thông minh không dựa trên sự
thay đổi đáng kể đối với cơ sở hạ tầng mạng hiện có mà tận dụng các thuộc tính vốn
có của Blockchain và các tính năng lập trình mở rộng cơ bản của hợp đồng thông minh.
Hầu hết tất cả các nghiên cứu chính đều dựa trên các tính năng khơng tin cậy, phi
tập trung, chống giả mạo và có thể kiểm tra được của cơng nghệ Blockchain. Một số
nghiên cứu chính cũng khai thác bản chất có thể tùy chỉnh của các hợp đồng thơng
minh cùng với các tính năng Blockchain vốn có để xây dựng các giải pháp xác thực,
ủy quyền và kiểm soát truy cập trên đầu Blockchain cho IoT. Các nghiên cứu chính đề
xuất các giải pháp bảo mật theo hướng hợp đồng thông minh cụ thể trên Internet, đã
độc quyền khai thác bản chất phi tập trung và khơng tin cậy của Blockchain cùng với
các tính năng lập trình của hợp đồng thơng minh.
Hơn nữa, các nghiên cứu chính đã khai thác bản chất chống giả mạo của các hợp
đồng thơng minh Blockchain để bảo tồn tính tồn vẹn của dữ liệu, thiết bị IoT và bằng
chứng.

3. Bằng chứng ủng hộ khả năng sử dụng/tính khả thi của hợp đồng thông
minh để giải quyết các vấn đề bảo mật và lỗ hổng bảo mật trên internet và
IoT mạnh đến mức nào?
Bản thân Blockchain không mang lại xu hướng tích cực đối với việc giải quyết các
vấn đề bảo mật và lỗ hổng trong Internet và IoT cũng như các hợp đồng thơng minh.
Tuy nhiên, những gì Hợp đồng thông minh là khả năng cải thiện củng cố các giải pháp
cơng nghệ hiện có để giải quyết những vấn đề về bảo mật
Trong khi Blockchain vốn dĩ đã được khai thác các tính năng nổi bật của nó như
tính bất biến, khả năng truy xuất nguồn gốc và tính xác thực. Thì Hợp đồng thơng minh


sử dụng các tính năng linh hoạt như bản chất có thể tuỳ chỉnh được, tương tự như các
ngơn ngữ kịch bản đang được sử dụng rộng rãi và bản chất Turing-completeness của
ngôn ngữ kịch bản
Các hợp đồng thông minh không chỉ loại bỏ nhu cầu thay đổi cơ sở hạ tầng trong

các mạng hiện có mà cịn cho phép thay đổi cơ sở hạ tầng khi tình hình địi hỏi phải
tăng cường hơn nữa cơ sở hạ tầng Internet và IoT.

4. Những Blockchain được sử dụng như nền tảng cho hợp đồng thông minh
dựa trên các giải pháp bảo mật trong Internet và IOT
• Ethereum như một nền tảng Blockchain để xây dựng các giải pháp bảo mật theo
hợp đồng thơng minh. solidity là ngơn ngữ ưa thích để viết các hợp đồng thông
minh Ethereum trong các nghiên cứu sơ cấp này. Lý do phổ biến thu hút các nhà
nghiên cứu chọn Ethereum làm nền tảng Blockchain và Solidity làm ngôn ngữ hợp
đồng thông minh là Ethereum hỗ trợ lập trình hợp đồng thơng minh có thể tùy chỉnh
và Solidity rất gần với JavaScript về cú pháp.
• IBM’s Hyperledger Fabric
Hyperledger Fabric, một dự án mã nguồn mở từ Linux Foundation, là khuôn khổ
blockchain mô-đun và là tiêu chuẩn thực tế cho các nền tảng blockchain doanh
nghiệp.
Với hơn 120.000 tổ chức đóng góp và hơn 15.000 cộng tác viên kỹ sư làm việc
cùng nhau, Hyperledger Fabric cung cấp một cách tiếp cận độc đáo để đạt được sự
đồng thuận, cho phép thực hiện trên quy mô lớn trong khi vẫn bảo vệ quyền riêng
tư dữ liệu mà doanh nghiệp yêu cầu.
• EOS và Eris
EOS là một blockchain giao thức dựa trên cryptocurrency EOS. Nền tảng hợp đồng
thông minh tuyên bố loại bỏ phí giao dịch và cũng thực hiện hàng triệu giao dịch
mỗi giây.
Eris là một nền tảng ứng dụng blockchain bình thường hóa nhiều hoạt động phát
triển khi xây dựng một ứng dụng được hỗ trợ bởi blockchain. Nó là bất khả tri về
những gì cơng nghệ blockchain cơ bản
Sử dụng EOS và Eris tương ứng như nền tảng Blockchain để xây dựng các giải
pháp bảo mật theo hướng hợp đồng thông minh cho IoT



CHƯƠNG 5: CÁC VẤN ĐỀ THÁCH THỨC VÀ HƯỚNG
NGHIÊN CỨU TRONG TƯƠNG LAI
Một trong những tính năng chính của hợp đồng thông minh Ethereum là sau khi
Hợp đồng thông minh được triển khai trên mạng Blockchain, nó khơng thể bị thay đổi
hoặc sửa đổi. Điều này về bản chất có cả ưu và nhược điểm
Mặt tích cực cho chúng ta thấy rằng nền tảng này đáng tin cậy vì khơng thể sửa
đổi các hợp đồng thông minh sau khi được triển khai với ý định đánh lừa người dùng
hoặc để thu lợi bất hợp pháp. Trong khi mặt tiêu cực của điều này nằm ở bản chất
không thể nâng cấp của nó, tức là nó khơng có khả năng thích ứng với những thay đổi
để phát triển như vá lỗ hổng trong hợp đồng thông minh đã được triển khai. Trên thực
tế, các Public Blockchains có điểm mạnh về số lượng các nút tham gia vào quá trình
đồng thuận, tuy nhiên, việc đảm bảo quyền riêng tư của dữ liệu giao dịch và lịch sử
giao dịch trong các Blockchains như vậy là một thách thức. Đó là bởi vì các Public
Blockchains được thiết kế để minh bạch về bản chất, hơn nữa phân tích mẫu giao dịch
có thể tiết lộ danh tính của người dùng hoặc thiết bị đằng sau public keys. Mặc dù các
yêu cầu về quyền riêng tư có thể được giải quyết với các blockchain hybird hoặc private
nhưng có điều là chúng khơng đáp ứng được tốt về vấn đề số lượng các nút tham gia
vào quá trình đồng thuận
Một thách thức khác nữa là yêu cầu về thông lượng giao dịch cao và độ trễ thấp
của IoT với hàng triệu thiết bị IoT được kết nối với Internet.
Cịn một vấn đề nữa là kích thước ngày càng tăng theo thời gian của Blockchain.
Với mỗi yêu cầu truy cập/xác thực, Blockchain sẽ bị tăng kích thước, vì mỗi giao dịch
có chi phí lưu trữ, điều này có thể hạn chế khả năng mở rộng của chúng trong việc đáp
ứng nhu cầu của một số ứng dụng IoT nhất định.
Các hướng nghiên cứu sau đây về hợp đồng thơng minh Blockchain để bảo mật
Internet nói chung và IoT nói riêng đáng để nghiên cứu:
1. Cần các Hợp đồng thơng minh riêng tư và có thể nâng cấp để xây dựng các
giải pháp bảo mật
2. Cần thử nghiệm các giải pháp bảo mật theo hướng hợp đồng thông minh được
đề xuất trong các cài đặt đối thủ khác nhau



3. Cần một nền tảng Blockchain an toàn, nhẹ và có thể mở rộng được để hỗ trợ
thực thi các Hợp đồng thông minh đáp ứng các yêu cầu của các thiết bị IoT
mà bị hạn chế về mặt tài nguyên.


CHƯƠNG 6: KẾT LUẬN
Trong bài báo này, chúng em đã trình bày một cách hệ thống các tài liệu về việc sử
dụng Hợp đồng thông minh Blockchain để cung cấp các dịch vụ bảo mật trên Internet và
IoT. Kết quả thu được cho thấy rằng các dịch vụ bảo mật bằng Hợp đồng thơng minh phổ
biến nhất là kiểm sốt truy cập, xác thức, đảm bảo tính tồn vẹn, bảo vệ dữ liệu, quản lý
khố an tồn và khơng thối thác.
Nghiên cứu cũng tìm ra rằng Ethereum là nền tảng Blockchain được sử dụng phổ biến
nhất để thiết kế các giải pháp bảo mật theo hướng hợp đồng thông minh, tiếp theo là
Hyperledger Fabric, chúng em cũng đã tìm hiểu về cách hợp đồng thơng minh cải thiện
tính bảo mật của Internet và IoT và những vấn đề hiện đang hạn chế việc sử dụng hợp đồng
thông minh Blockchain cho các ứng dụng bảo mật (security Applications). Các hướng đi
trong tương lai bao gồm giải quyết những thách thức này và thử nghiệm các giải pháp bảo
mật theo hướng hợp đồng thông minh được đề xuất trong các cài đặt đối thủ khác nhau.


TÀI LIỆU THAM KHẢO
[1] S. Nakamoto, Bitcoin: a peer-to-peer electronic cash system, 2008,
[Online]. Available.
[2] V. Buterin, Ethereum: a next-generation smart contract and decentralized application
platform, 2013, (Accessed 21 May 2020), [Online].
Available
[3] N. Szabo, The idea of smart contracts, in: Nick Szabo’s Papers and Concise Tutorials,
Vol. 6, 1997

[4] E. Androulaki, A. Barger, V. Bortnikov, C. Cachin, K. Christidis, A. De Caro, D.
Enyeart, C. Ferris, G. Laventman, Y. Manevich, et al., Hyperledger fabric: a distributed
operating system for permissioned blockchains, in: Proceedings of the Thirteenth
EuroSys Conference, 2018, pp. 1–15.
[5] J. Mogan, Quorum. Advancing blockchain technology, En línia (2018) Available:
/>[6] S. Hakak, W.Z. Khan, G.A. Gilkar, M. Imran, N. Guizani, Securing smart cities
through blockchain technology: Architecture, requirements, and challenges, IEEE Netw.
34 (1) (2020) 8–14.
[7] Blockchain là gì? Hoạt động của Blockchain như thế nào? Ứng dụng ra sao?
[8] Hợp đồng thông minh
[9] SMART CONTRACT (HỢP ĐỒNG THƠNG MINH) LÀ GÌ? CÁCH HOẠT ĐỘNG,
ỨNG DỤNG, LỢI ÍCH CỦA NĨ LÀ GÌ?


×