ĐẠI HỌC QUỐC GIA TP. HCM

ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

---------------  ---------------

BÁO CÁO

Môn: Thương mại điện tử

Lớp : IS334.L21

ĐỀ TÀI: BLOCKCHAIN - SOLIDITY

GIÁO VIÊN HƯỚNG DẪN:

Ths.Đỗ Duy Thanh

NHÓM THỰC HIỆN:

Trương Văn Thành – 17521062

Nguyễn Lương Toàn – 18521510

Phạm Ngọc Anh Vũ – 19522536

TPHCM, Ngày 16 tháng 6 năm 2021

LỜI CẢM ƠN

Sau quá trình học tập và rèn luyện tại trường Đại học Công nghệ Thông tin chúng em đã

được trang bị các kiến thức cơ bản, các kỹ năng thực tế để có thể hoàn thành đồ án môn học

của mình.

Chúng em xin gửi lời cảm ơn chân thành đến thầy Đỗ Duy Thanh đã quan tâm, hướng

dẫn, truyền đạt những kiến thức và kinh nghiệm cho chúng em trong suốt thời gian học tập

môn Thương Mại Điện Tử.

Trong quá trình thực hiện nhóm chúng em chắc chăn không tránh khỏi được những sai

sót, chính vì vậy, chúng em rất mong nhận được sự góp ý của thầy cô và các bạn nhằm hoàn

thiện những kiến thức mà nhóm chúng em đã học tập và là hành trang để thực hiện tiếp các

đề tài khác trong tương lai.

Nhóm em xin chân thành cảm ơn quý Thầy Cô!

TP. Hồ Chí Minh, ngày 16 tháng 6 năm 2021

NHẬN XÉT

(của giảng viên)

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

.................................................................................................................

MỤC LỤC

LỜI CẢM ƠN ......................................................................................................................... 2

MỤC LỤC .............................................................................................................................. 4

PHẦN 0: MỤC ĐÍCH ĐỀ TÀI .............................................................................................. 7

PHẦN 1: TÌM HIỂU CÔNG NGHỆ BLOCKCHAIN .......................................................... 8

CHƯƠNG 1: TỔNG QUAN BLOCKCHAIN ................................................................... 8

1.1. Khái niệm ............................................................................................................ 8

1.2. Các đặc tính của blockchain ................................................................................ 9

1.3. Nguyên lý hoạt động ......................................................................................... 14

1.4. Ứng dụng của blockchain trong đời sống ......................................................... 14

CHƯƠNG 2: PHIÊN BẢN BLOCKCHAIN .................................................................... 15

2.1. Blockchain 1.0 (Tiền tệ) .................................................................................... 15

2.2. Blockchain 2.0 (Smart contract) ........................................................................ 17

2.3. Blockchain 3.0 (Ứng dụng phi tập trung Dapp) ................................................ 17

2.4. Blockchain 4.0 (Ứng dụng thực tiễn) ................................................................ 19

CHƯƠNG 3: CÁC LOẠI BLOCKCHAIN ...................................................................... 20

CHƯƠNG 4: THUẬT NGỮ QUAN TRỌNG TRONG BLOCKCHAIN ....................... 21

4.1. 51% Attack ........................................................................................................ 21

4.2. Public Key ......................................................................................................... 21

4.3. Private Key ........................................................................................................ 22

4.4. Mining pool ....................................................................................................... 22

PHẦN 2: TÌM HIỂU SMART CONTRACT & SOLIDITY ............................................... 23

CHƯƠNG 1: SMART CONTRACT ................................................................................ 23

1.1. Khái niệm .......................................................................................................... 23

1.2. Cách hoạt động .................................................................................................. 24

1.3. Lợi ích của Smart contract ................................................................................ 25

1.4. Ưu nhược điểm .................................................................................................. 26

1.5. Ứng dụng Smart contract (Blockchain 2.0) ...................................................... 27

CHƯƠNG 2: SOLIDITY .................................................................................................. 29

2.1. Khái niệm .......................................................................................................... 29

2.2. Các khái niệm cơ bản của Solidity .................................................................... 29

2.3. Sử dụng Metamask triển khai Smart contract trong Solidity ............................ 30

PHẦN 3: HỆ SINH THÁI ETHEREUM ............................................................................. 35

CHƯƠNG 1: TỔNG QUAN ETHEREUM ...................................................................... 35

1.1. Ethereum (ETH) ...................................................................................................... 35

1.2. Ethereum 2.0 ........................................................................................................... 35

1.3. Các giai đoạn để hoàn thành ETH 2.0 .................................................................... 37

1.4. Cách thức hoạt động của Ethereum ........................................................................ 38

1.5. Ưu điểm và nhược điểm của đồng Ethereum ......................................................... 39

1.6. Sử dụng Ethereum ................................................................................................... 40

1.7. Cách tạo ví Ethereum .............................................................................................. 43

CHƯƠNG 2: ỨNG DỤNG ĐƯỢC XÂY DỰNG TRÊN ETHEREUM ......................... 45

2.1. Tài chính phi tập trung (Defi) và Ethereum ............................................................ 45

2.2. Sàn giao dịch phi tập trung (DEX) và Ethereum .................................................... 46

2.3. Ứng dụng phi tập trung (Dapps) ............................................................................. 47

CHƯƠNG 3: CÁCH ĐỂ KIẾM ETHEREUM ................................................................. 49

3.1. Các cách đầu tư ETH .............................................................................................. 49

3.2. Hướng dẫn cách mua Ethereum. ............................................................................. 53

PHẦN 4: TÌM HIỂU GRT ................................................................................................... 60

4.2.Phương thức hoạt động của The Graph ...................................................................... 60

4.2.1. Vấn đề được giải quyết bằng The Graph ............................................................. 60

4.2.2. Giải pháp của The Graph ..................................................................................... 61

4.2.3. Hệ sinh thái của The Graph.................................................................................. 62

4.3. Token GRT ................................................................................................................. 63

4.4. Một số thông tin cơ bản về token GRT ...................................................................... 63

4.4.1. Phân bố token GRT .............................................................................................. 63

4.4.2. Public sale ............................................................................................................ 64

4.4.3. Đội ngũ phát triển dự án ...................................................................................... 65

4.4.5. Cách kiếm và sở hữu GRT Token ....................................................................... 66

4.4.6. Sàn giao dịch GRT Token .................................................................................... 66

4.4.7. Ví lưu trữ token GRT ........................................................................................... 66

4.5. Tương lai của GRT Token ......................................................................................... 67

PHẦN 5: MÔ TẢ QUY TRÌNH TRIỂN KHAI ỨNG DỤNG ............................................ 68

Các bước để xây dựng một project ................................................................................... 68

BẢNG PHÂN CHIA CÔNG VIỆC ..................................................................................... 79

TÀI LIỆU THAM KHẢO .................................................................................................... 81

PHẦN 0: MỤC ĐÍCH ĐỀ TÀI

- Tìm hiểu blockchain

- Minh họa chi tiết, cụ thể Block Chain 1.0, 2.0. Các ứng dụng của nó.

- Tìm hiểu smart contract và solidity

- Tìm hiểu hệ sinh thái Etherium?

- Mô tả quy trình triển khai smart contract lên mạng lưới ethereum test

- Tìm hiểu GRT

PHẦN 1: TÌM HIỂU CÔNG NGHỆ BLOCKCHAIN

CHƯƠNG 1: TỔNG QUAN BLOCKCHAIN

1.1. Khái niệm

Blockchain là một sổ cái công khai về thông tin được thu thập thông qua một

hệ thống nằm trên internet.

Điều làm cho nó độc đáo là không có cơ quan trung ương nào phụ trách tệp

blockchain hoặc dữ liệu mà nó chứa. Thay vào đó, mỗi máy tính giữ bản sao riêng của

tệp và bất kỳ bản cập nhật nào cũng cần có sự chấp thuận của phần lớn các máy bên

trong hệ thống.

Blockchain được tạo thành từ các “khối”- block, mỗi khối chứa một phần dữ

liệu. Dữ liệu gần nhất luôn được thêm vào ở đầu chuỗi, trong khi dữ liệu lâu đời nhất

đặt ở phía dưới đáy, bên trong cái được gọi là “Khối nguyên thủy - genesis block”.

Hình 1.1. Chuỗi khối

Các block được liên kết với nhau bằng mật mã (các thuật toán phức tạp), đó là

cách chuỗi được hình thành. Toán học liên quan có nghĩa là bất kỳ thay đổi nào đối

với dữ liệu hiện tại đều phá vỡ chuỗi, do đó, mọi cố gắng thay đổi đều có thể bị phát

hiện và từ chối bởi hệ thống.

Hình 1.2. Quy trình mã hóa khối

1.2. Các đặc tính của blockchain

a. Cơ sở dữ liệu phân tán (phi tập trung)

Hầu hết các Blockchain được thiết kế như một cơ sở dữ liệu phi tập trung thay

vì quản lí sổ cái tập trung như ngân hàng hoặc một tổ chức nào khác. Các “tài sản” kỹ

thuật số được phân phối thay vì sao chép hoặc chuyển giao trên Blockchain. Nhờ đó,

mọi người trong cùng chuỗi có thể kiểm soát thông tin, dữ liệu có trong khối.

Hình 1.3 Mô hình sổ cái phân tán

b. Tính bền vững và tăng cường bảo mật

Trong một Blockchain, mỗi khối đều có hàm băm riêng biệt cũng như tham

chiếu đến hàm băm của khối nằm trước nó. Vì vậy, việc khai thác một chuỗi khá phức

tạp, đặc biệt là trên các chuỗi lớn.

Hinh 1.4. Liên kết block

Những người khai thác chuỗi này sẽ sử dụng phần mềm chuyên dụng để giải

quyết các vấn đề liên quan đến số học vô cùng phức tạp, khi muốn tìm ra một nonce

tạo ra một hàm băm được chấp nhận. Bởi, mỗi nonce chỉ có 32bit trong khi mỗi hàm

băm là 256bit, nên có khoảng bốn tỷ tổ hợp nonce và hàm băm cần phải được tìm

kiếm trước khi tìm ra “nonce vàng” để khối của họ được thêm vào chuỗi.

Ngoài ra, nếu có bất kì sự thay đổi nào đó ở một khối thì tất cả các khối ở sau

đều bị ảnh hưởng vì khối sau liên kết với khối trước bằng mã băm.

Dựa vào điều đó có thể xảy ra các cuộc tấn công hệ thống bằng cách thay đổi

các khối đến khối cuối cùng tuy nhiên chỉ là có thể nhưng thực tế nó lại không thể.

Tại sao?

Mô hình trong blockchain là phi tập trung, mỗi máy được xem là một Node hệ

thống càng nhiều Node thì càng mạnh mẽ

Hình 1.5 Mạng lưới phi tập trung

Mô hình này dựa trên Cơ chế đồng thuận phi tập trung. Khi một giao dịch được

diễn ra và được thêm vào chuỗi thì nó cần phải được sự chấp nhận của đa số Node

(máy đào) trong hệ thống này ( ở đây là các Node )

Hình 1.6. Cơ chế đồng thuận phi tập trung

Vì vậy trên lý thuyết hệ thống này có thể xảy ra cuộc tấn công 51%.

Khi một hacker hoặc tổ chức cá nhân có số lượng Node trên hệ thống này chiếm đến

51% thì mọi giao dich sẽ bị thao túng dựa vào cơ chế đồng thuận đại đa số.

Giải quyết câu hỏi tại sao ở trên thì một hacker có thể sửa đổi một dãy block

tuy nhiên trên hệ thống này mỗi cá nhân đều sở hữu một bản sổ cái vì vậy để hoàn

toàn thay đổi các khối này thì phải thay đổi 51% Node trên hệ thống lúc này thông tin

sửa đổi đó mới được chấp nhận.

 Điều này chỉ diễn ra trên lý thuyết còn thực tế để tấn công hệ thống trên là

một điều không thể

c. Tính minh bạch

Các block được nối tiếp nhau tạo thành chuỗi, một khi một block đã được cập

nhật, bạn sẽ không thể xóa thông tin trong đó đi. Blockchain hoạt động dựa trên

nguyên tắc ghi chép phổ biến trong tài chính là không được phép xóa bỏ dữ liệu đã

cập nhật, thay vào đó cập nhật thêm các block mới, với nội dung cần chỉnh sửa và tên

tuổi của người chỉnh sửa. Điều này vừa giúp rõ ràng thông tin lẫn sự toàn vẹn của các

dữ liệu đã được tạo.

Blockchain minh bạch để mỗi người có thể theo dõi dữ liệu nếu họ muốn.

d. Tính bất biến

Một khi dữ liệu được đưa vào một khối thì sẽ được mã hóa bằng thuật toán mã

hóa băm kết hợp RSA security (mã hóa bất đối xứng) đảm bảo rằng dữ liệu không thể

sửa đổi

Hình 1.7. Thuật toán mã hóa

1.3. Nguyên lý hoạt động

Hình 1.8. Nguyên lý hoạt động

1.4. Ứng dụng của blockchain trong đời sống

Blockchain hiện đang được ứng dụng vào rất nhiều lĩnh vực trong đời sống.

- Ứng dụng của blockchain trong thương mại điện tử

- Ứng dụng của Blockchain trong chuỗi cung ứng

- Ứng dụng của blockchain trong dịch vụ tài chính, ngân hàng

- Ứng dụng của blockchain trong nông nghiệp

- Ứng dụng của blockchain trong y tế

- Ứng dụng của Blockchain trong Internet of Things (IoT)

- ...

CHƯƠNG 2: PHIÊN BẢN BLOCKCHAIN

2.1. Blockchain 1.0 (Tiền tệ)

Năm 2005, người ta cho ra đời ý tưởng về việc tạo ra một loại tiền điện tử. Sổ

cái Blockchain ra đời như một phương tiện hỗ trợ hoạt động của loại tiền này. Nói

cách khác, Bitcoin, loại crypto đầu tiên cũng chính là ứng dụng đầu tiên của

Blockchain.

Hình 1.9. Bitcoin

a. Blockchain 1.0 hoạt động như thế nào?

Cụ thể khi khách hàng muốn sử dụng Bitcoin để thanh toán dịch vụ hay hàng

hóa, người dùng sẽ ra lệnh ghi chép và xác nhận giao dịch. Giao dịch sẽ được ghi lại

một cách công khai thành những khối block được xếp vào chuỗi, và được xác nhận

bởi những người sử dụng Bitcoin khác. Trung bình cứ 10 phút, một khối block mới

được tạo ra thông qua việc "đào" Bitcoin.

Tức là, dựa vào giao thức của Bitcoin, cơ sở dữ liệu Blockchain được chia sẻ

cho tất cả các máy tính tham gia vào hệ thống này. Mỗi máy tính sẽ có một bản sao

chép của Blockchain có chứa dữ liệu ghi chép lại và là bằng chứng cho việc một giao

dịch được hoàn tất.

 Bởi chỉ cần liên tưởng với loại tài sản khác (thay vì tiền điện tử), chắc chắn sẽ

nhìn thấy tiềm năng vô hạn của nó từ đó ra đời các phiên bản cao hơn

blockchain 2.0, 3.0 và 4.0 đáp ứng tất cả nhu cầu thực tế.

Hình 1.10. Giai đoạn phát triển

b. Ứng dụng của blockchain 1.0

Hỗ trợ mọi giao dịch chuyển đổi tiền tệ, kiều hối và hệ thống thanh toán kỹ

thuật số trong lãnh thổ tiền điện tử nói chung và Bitcoin nói riêng bằng các thuật toán

về tiền tệ (ví blockchain).

2.2. Blockchain 2.0 (Smart contract)

Blockchain đã thoát khỏi sự hạn hẹp bằng cách vượt ra khỏi lĩnh vực crypto mà

tiến đến với Smart Contract. Công nghệ này có tác dụng bảo vệ các hợp đồng thông

minh dưới sự can thiệp của những người có mục đích không tốt. Khi làm việc trên

loại hợp đồng này, người sử dụng sẽ không cần tiêu tốn chi phí vào việc xác thực, vận

hành và chống gian lận. Chi tiết chương 1 phần 2

Hình 1.11. Smart contract

2.3. Blockchain 3.0 (Ứng dụng phi tập trung Dapp)

DApps là viết tắt của Decentralized application tức ứng dụng phi tập trung.

Có thể hiểu đơn giản thông qua việc lấy ví dụ từ các ứng dụng trên CHPlay hay

App Store là các ứng dụng được tạo ra bởi một tổ chức, cá nhân nào đó và chịu sự chi

phối của họ. Trái lại, các ứng dụng xuất hiện trên Blockchain không chịu sự kiểm soát

của bất cứ một cá nhân thay vào đó là một tập thể những người có mặt trong chuỗi.

Đó chính là sự phi tập trung của ứng dụng trên Blockchain.

Hình 1.12. Phân biệt App và Dapp

- Mô hình website truyền thống: Frontend → API → Database

- Mô hình website Dapps: Frontend → Smart Contract (ABI) → Blockchain

2.4. Blockchain 4.0 (Ứng dụng thực tiễn)

Blockchain của thời đại này không chỉ tập trung vào lĩnh vực tài chính mà còn

trở thành một giải pháp cho các vấn đề cơ bản của đời sống. Blockchain có tác dụng

hỗ trợ các doanh nghiệp xây dựng một quá trình làm việc xuyên nền tảng, chẳng hạn

như chuỗi cung ứng, hệ thống xử lý đơn hàng tự đồng, thanh toán, thu thập dữ liệu

Internet.

Hình 1.13. Ứng dụng blockchain

CHƯƠNG 3: CÁC LOẠI BLOCKCHAIN

Có 2 loại Blockchain

- Blockchain công khai: Dữ liệu ở chế độ xem công khai, bất kỳ ai cũng có thể

tải xuống một giao thức để đọc, ghi hoặc tham gia mạng (Bitcoin, Ethereum,

Litecoin ...)

- Blockchain riêng tư: Cho phép các tổ chức sử dụng công nghệ sổ cái phân tán

đó Dữ liệu không công khai, những người tham gia trên mạng này sẽ bị hạn chế

một số quyền như đọc và ghi dữ liệu.

Hình 1.14. Bảng so sánh hai loại blockchain

CHƯƠNG 4: THUẬT NGỮ QUAN TRỌNG TRONG BLOCKCHAIN

4.1. 51% Attack

Thuật ngữ này mô tả tình huống quá nhiều sức mạnh tính toán (hash power) của

mạng lưới blockchain được tập trung tại một chỗ. Có thể một người hoặc một nhóm

người dùng kiểm soát 51% sức mạnh tính toán, hệ thống có thể “bị” điều khiển một

cách có chủ đích hoặc vô tình thực hiện các giao dịch xung đột xâm phạm đến hệ

thống.

4.2. Public Key

Là một mật mã cho phép người dùng nhận tiền điện tử vào tài khoản của mình.

Khóa công khai cùng với khóa riêng là những công cụ quan trọng cần có để đảm bảo

an ninh cho nền kinh tế tiền điện tử.

Hình 1.15. Giải mã bằng public key

4.3. Private Key

Là khóa riêng tư, là một hình thức mã hóa tinh vi cho phép người dùng truy cập

vào tiền điện tử của mình. Khóa riêng là một khía cạnh không thể thiếu của bitcoin và

altcoin, và bảo mật của nó giúp bảo vệ người dùng khỏi bị đánh cắp và truy cập trái

phép vào tiền.

Hình 1.16. Giải mã bằng private key

4.4. Mining pool

Là một hệ thống phần mềm tập trung nhóm các thợ đào để có thể xác nhận

khối (block) và xử lý giao dịch nhiều hơn. Lợi nhuận sẽ được phân chia cho các

thành viên trong nhóm.

PHẦN 2: TÌM HIỂU SMART CONTRACT & SOLIDITY

CHƯƠNG 1: SMART CONTRACT

1.1. Khái niệm

Hợp đồng thông minh được Nick Szabo định nghĩa là một công cụ kết hợp giao

thức và giao diện người dùng giúp chính thức hóa và bảo mật mạng máy tính. Sử

dụng trong nhiều lĩnh vực liên quan đến các thỏa thuận hợp đồng.

Bitcoin (Một loại tiền mã hóa dưới dạng phần mềm mã nguồn mở, giúp trao đổi

trực tiếp bằng Internet) đã đặt ra nền tảng cơ bản để thiết lập Smart Contract. Thế

nhưng hợp đồng thông minh chỉ thực sự được thỏa mãn mọi yêu cầu và được nhiều

người sử dụng khi Ethereum (Nền tảng điện toán có tính chất phân tán, công cộng, mã

nguồn mở) ra đời.

Toàn bộ quá trình được thực hiện tự động bởi các bên mà không cần gặp mặt

trực tiếp và không có sự can thiệp từ bên ngoài. Phương thức thiết lập hợp đồng mới

này vẫn đảm bảo tính minh bạch, có thể truy xuất, đảo chiều và không bị can thiệp từ

bên ngoài.

Hợp đồng thông minh Hợp đồng truyền thống

Điểm giống nhau giữa hợp đồng truyền thống và hợp đồng thông minh nằm ở chỗ

các điều khoản và hình phạt đều được nêu rõ ràng.

- Được tạo ra bởi các chuyên gia pháp lý. - Được tạo bởi ngôn ngữ lập trình như

- Biên soạn một lượng lớn tài liệu. C++, Go, Python, Java trên hệ thống

- Cần phải có bên thứ ba để thực thi. máy tính.

- Mất khá nhiều thời gian để thỏa thuận và đi - Toàn bộ mã được thực hiện bởi hệ

đến ký kết. thống sổ cái phân tán Blockchain.

- Không cần đến bên thứ ba trung gian.

- Đảm bảo tính minh bạch và chính - Hợp đồng có thể tồn tại nhiều vấn đề, không

xác trong việc thực thi. minh bạch.

- Mất nhiều chi phí và phải dựa vào hệ thống

tư pháp để giải quyết khi có sự cố.

Bảng so sánh hợp đồng điện tử và hợp đồng truyền thống

1.2. Cách hoạt động

Smart Contract chỉ tự động thực hiện khi những điều khoản đã được lập trình

sẵn từ trước. Các điều khoản trong hợp đồng sẽ được viết bằng ngôn ngữ lập trình,

sau đó mã hóa và chuyển vào một block thuộc Blockchain. Sau đó, hợp đồng thông

minh được phân phối và sao chép lại bằng các Node đang hoạt động tại nền tảng đó.

Sau khi có lệnh triển khai thì hợp đồng sẽ được triển khai theo đúng điều

khoản. Đồng thời, tự động kiểm tra quá trình thực hiện những cam kết, điều khoản.

Vì hệ thống hoạt động dựa trên câu lệnh “If - Then” và hàng trăm người giám

sát nên sẽ không xảy ra lỗi sai trong quá trình giao nhận.

Hình 2.1. Quá trình trao đổi hợp đồng

Ví dụ: Nếu bạn muốn mua một chiếc xe từ công ty tôi và trả tiền điện tử qua

hệ thống Blockchain.

Biên nhận sau đó sẽ được đưa vào hợp đồng thông minh của công ty và có

trách nhiệm giao mật mã và chiếc xe cho bạn với đúng thời hạn đã nêu trong hợp

đồng.

Nếu mật mã của công ty không giao đúng thời hạn thì tiền sẽ được chuyển

lại vào tài khoản bạn. Nếu đến trước thời hạn thì hệ thống sẽ giữ lại cả tiền của bạn

và mật mã của công ty tôi để chuyển vào đúng ngày.

Hình 2.2. Quá trình thanh toán bằng hợp đồng thông minh

1.3. Lợi ích của Smart contract

Smart Contract là một ứng dụng tận dụng tất cả những điểm mạnh của công

nghệ Blockchain mang lại vì vậy nó có rất nhiều lợi ích, dưới đây là các lợi ích

chính của nó.

- Tự động hóa: Quá trình được thực hiện hợp đồng là tự động bằng. Đồng thời

bạn chính là người tạo hợp đồng, không còn phải phụ thuộc vào môi giới, luật sư

hay bất kì ai khác. Như vậy, nó cũng xóa bỏ những nguy cơ đến từ bên thứ ba

- Không bị thất lạc: Tài liệu của bạn được mã hóa trên một cuốn sổ cái chung,

có nghĩa là không thể bị thất lạc.

Hình 2.3. Lợi ích của Smart contract

- An toàn: Blockchain sẽ đảm bản sự an toàn cho tài liệu của bạn. Không một

hacker nào có thể đe dọa đến chúng.

- Tốc độ: Hợp đồng thông minh sử dụng các ngôn ngữ lập trình, code phần mềm

để tự động hóa các điều khoản, tiết kiệm hàng tiếng đồng hồ cho những công việc

không cần thiết.

- Tiết kiệm: Hợp đồng thông minh tiết kiệm cho bạn hàng đống tiền nhờ xóa bỏ

khâu trung gian.

- Chính xác: Các hợp đồng tự động không chỉ nhanh và rẻ hơn mà còn tránh

được các lỗi thường thấy khi viết giấy tờ.

1.4. Ưu nhược điểm

a. Ưu điểm

- Ứng dụng của hợp đồng thông minh có thể được sử dụng vào nhiều lĩnh

vực khác nhau: Logistic, ngân hàng, bất động sản, bầu cử,...

- Tự do: Không nhận sự quản lý của bất kỳ một cơ quan nào.

- Giảm thiểu rủi ro đến từ bên thứ ba.

- An toàn và minh bạch.

- Tiết kiệm và nhanh chóng.

b. Nhược điểm

- Rủi ro từ Internet: Có thể bị tấn công hoặc khai thác bởi các hacker nếu để

lộ những thông tin quan trọng.

- Không nhận được quyền pháp lý: Quyền lợi có thể không được bảo vệ vì

chưa có chính sách.

- Yêu cầu cao về trình độ triển khai của các lập trình viên và hệ thống. Từ

đó, chi phí để trả cho họ và cơ sở hạ tầng là không hề nhỏ.

1.5. Ứng dụng Smart contract (Blockchain 2.0)

a. 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.

b. Sử dụng cho các nhà quản lý

Vào năm 2015, Tập đoàn Trust & Clearing (DTCC) đã sử dụng một sổ cái

Blockchain để lưu trữ thông tin về tài sản chứng khoán trị giá 1.500 nghìn tỷ

USD, đồng nghĩa với 345 triệu giao dịch.

c. Logistics (Chuỗi cung ứng)

Chuỗi cung ứng là một hệ thống kéo dài và mỗi bộ phận phải theo dõi và ghi

lại thông tin để biết vấn đề phát sinh ở đâu.

Do quá trình dài hơi và kém năng suất, với Smart contract mỗi bộ phận tham

gia đều có thể theo dõi quá trình công việc => đảm bảo tính minh bạch, chống

gian lận.

d. 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. 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ế.

CHƯƠNG 2: SOLIDITY

2.1. Khái niệm

Solidity là ngôn ngữ lập trình để cài đặt hợp đồng thông minh (smart contract).

Solidity khá giống Javascript, hiện tại là ngôn ngữ phổ biến nhất cho lĩnh vực này.

2.2. Các khái niệm cơ bản của Solidity

a. Contracts

Mã của Solidity được đóng gói trong các hợp đồng. Một hợp đồng là khối xây

dựng cơ bản của các ứng dụng Ethereum – tất cả các biến và chức năng thuộc về một

hợp đồng, và đây là điểm khởi đầu của tất cả các dự án của bạn. VD về contract có

tên HelloWorld:

b. Version Pragma

Tất cả các mã nguồn đều bắt đầu với một phiên bản “version pragma“-một

tuyên bố của phiên bản của trình biên dịch Solidity. Đây là để ngăn chặn các vấn đề

với các phiên bản trình biên dịch tương lai có khả năng giới thiệu những thay đổi có

thể phá vỡ mã của bạn. Ở VD trên version pragma là: ^0.4.0

c. Biến

Solidity yêu cầu khai báo biến và kiểu dữ liệu trước khi sử dụng.

VD: uint public numberOne = 20;

d. Structs

Cho phép tạo các kiểu dữ liệu phức tạp hơn có nhiều thuộc tính. Kiểu cấu trúc

này tương tự như trong ngôn ngữ lập trình C.

e. Array

Có hai loại mảng trong Solidity: mảng cố định và mảng động.

Bạn có thể khai báo một mảng như là public, và Solidity sẽ tự động tạo ra một

phương thức getter cho nó. Cú pháp như sau: Person[] public people;

Các hợp đồng khác sau đó sẽ có thể đọc (nhưng không viết) cho mảng này. Vì

vậy, đây là một mô hình hữu ích để lưu trữ dữ liệu công cộng trong hợp đồng của

bạn.

2.3. Sử dụng Metamask triển khai Smart contract trong Solidity

a. IDE

Để viết và thực thi mã solidity, IDE phổ biến nhất được sử dụng là REMIX.

https://remix.ethereum.org/ hoặc có thể sử dụng Mist (trình duyệt Ethereum DApp).

Sau khi viết mã và biên dịch nó, chúng ta có thể triển khai nó theo 3 cách:

- JavaScriptVM

- Injected Web3

- Web3 Provider

Các bước dưới đây triển khai hợp đồng bằng cách sử dụng MetaMask dưới

dạng Injected Web3.

b. Cài đặt ví thử nghiệm Metamask

Tìm kiếm từ khóa “Metamask” trong Extension.

Hình 2.4. Metamask Extension

Sau khi cài đặt và thiết lập tài khoản

B1. Chọn Ropsten Test Network từ danh sách mạng lưới có sẵn

Hình 2.4. Test Network

B2. Nhận đồng eth thử nghiệm tại https://faucet.metamask.io/

B3. MetaMask đã sẵn sàng để triển khai

Note: Các bạn có thể chọn mạng thử nghiệm Rinkeby và tham khảo cách

nhận đồng ETH test tại https://www.youtube.com/watch?v=WvQ9O1HURgk

c. Các bước triển khai contract

B1. Tạo một file mới với đuôi .sol

Hình 2.5. Tạo file solidity

B2. Viết một đoạn mã đơn giản cho việc biên dịch và thử nghiệm

pragma solidity ^0.4.26; // Creating a contract contract shreyansh_05 { // Defining a function to function get_output() public pure returns (string) { return ("Hi, your contract ran successfully"); } }

Hình 2.6. Compile mã code solidity

B3. Sau khi biên dịch và chuyển sang phần Deploy ngay bên dưới phần

Compile và chọn Injected Web3 thay cho JavaScriptVM như hình dưới đây

Hình 2.7. Thiêt lập môi trường deploy

B4. Bây giờ hợp đồng đã sẵn sàng để được triển khai. Nhấp nút Deploy và

MetaMask sẽ yêu cầu xác nhận như sau

Hình 2.8. Xác nhận đã triển khai

B5. Bây giờ, để xác minh xem giao dịch (quy trình) của bạn có được thực

hiện thành công hay không, bạn có thể kiểm tra số dư của mình trên

MetaMask.

Hợp đồng của bạn đã hoàn toàn sẵn sàng hoạt động. Đảm bảo rằng phiên

bản trình biên dịch khớp với phiên bản mã solidity của bạn. Đây là cách triển

khai cơ bản của MetaMask với Solidity.

PHẦN 3: HỆ SINH THÁI ETHEREUM

CHƯƠNG 1: TỔNG QUAN ETHEREUM

1.1. Ethereum (ETH)

Ethereum là một nền tảng điện toán phân tán chuỗi khối chạy trên công nghệ

Blockchain, thông qua việc sử dụng chức năng hợp đồng thông minh (Smart Contract).

Ethereum có thể thực hiện các giao dịch, hợp đồng mạng ngang hàng thông qua Ether

(ETH).

Ethereum được giới thiệu vào cuối năm 2013 bởi Vitalik Buterin.

Theo lộ trình phát triển gồm:

1. Frontier

2. Homestead

3. Metropolis

4. Serenity (Ethereum 2.0)

Tính đến tháng 12 năm 2019, Ethereum đã hoàn tất 3 giai đoạn và chuẩn bị bước vào

giai đoạn thứ 4.

1.2. Ethereum 2.0

Ethereum 2.0 còn được biết đến là Serentity. Đây là một tên gọi chung cho một số

cập nhật lớn của Ethereum.

Bản cập nhật này sẽ giải quyết bộ ba bất khả thi của Blockchain: bảo mật, khả mở

rộng mạng lưới, phân tán.

Cách phần chính để giải quyết 3 vấn đề nan giải này:

• Beacon Chain

• Proof of Stake (PoS)

• Sharding

• eWASM

Hình 3.1. Cấu trúc Ethereum 2.0

➢ Beacon Chain

Beacon chain là cốt lõi của Ethereum 2.0. Chuỗi này sẽ chạy song song và liên kết

chéo giữa Main chain và và Shard Chain.

➢ Proof of Stake (PoS)

PoS là cơ chế đồng thuận sẽ thay thế cho cơ chế hiện tại là PoW (Proof of Work).

Việc chuyển đổi sẽ thông qua một cơ chế đồng thuận lai giữa PoS và PoW – Casper Friendly

Finality Gadget (FFG).

Vì thế hệ thống sẽ ngày càng mạnh hơn và không còn chịu sự ảnh hưởng hay chi phối

từ các thợ mỏ.

Thông thường, một giao dịch Ethereum cần có thợ đào xác nhận, nếu không thì giao

dịch đó sẽ không thành công.

➢ Sharding

Sharding là một phương thức nhân rộng thông lượng giao dịch trên chuỗi. Phương thức

được thực hiện bằng cách tách cơ sở dữ liệu lớn thành các cơ sở dữ liệu nhỏ.

Những dữ liệu nhỏ đậy được gọi là “shard”.

➢ eWASM

Ethereum-flavored WebAssembly (eWASM) là một tập con hạn chế của

WebAssembly(Wasm) được sử dụng cho hợp đồng tương lai.

Mỗi shard sẽ bao gồm 1 eWASM tương đương với máy ảo Ethereum (Ethereum Virtual

Machine).

Hiện tại, chưa có sự đồng thuận của nhà phát triển cho việc thay thế EVM. Nhưng nhà

phát triển sẽ có kế hoạch.

1.3. Các giai đoạn để hoàn thành ETH 2.0

Để hoàn thành ETH 2.0, chúng ta cần trải qua 3 giai đoạn, gồm:

➢ Giai đoạn 0

Giai đoạn đầu tiên là sự ra mắt của Beacon Chain sẽ triển khai PoS trên chuỗi. Trong giao

đoạn này cũng sẽ ra mắt một loại tài sản trên chuỗi Beacon.

Loại tài sản này được gọi Beacon ether (BETH). BETH được xem như là phần thưởng

xác thực dùng để trả thưởng cho những người Staking.

Ngoài ra, bạn cũng có thể sở hữu BETH bằng cách dùng ETH để mua. Mỗi ETH sẽ bằng

1 Beacon ether.

Giai đoạn này chưa hỗ trợ sharding, smart contracts và chuyển giao tài sản. Nên bạn sẽ

không thể rút được BETH đến khi sharding có thể thực thi trong giai đoạn 2.

➢ Giai đoạn 1

Giai đoạn tiếp theo sẽ chuyển tập trung vào Shard Chain. Sharding sẽ chia nhỏ thông tin

trạng thái thành các ‘shard’ để đạt mục tiêu về khả năng mở rộng và cải thiện tốc độ mạng

lưới.

➢ Giai đoạn 2

Giai đoạn 2 được coi là giai đoạn cuối cùng của Serenity khi nó hoàn thành nâng cấp lớp

cơ sở và giai đoạn này được thiết lập để diễn ra vào khoảng năm 2021.

Trong giai đoạn này, chuỗi shard sẽ chuyển sang trạng thái chuỗi cấu trúc hỗ trợ các hợp

đồng thông minh và chuyển giao tài sản

1.4. Cách thức hoạt động của Ethereum

Hình 3.2. Cách thức hoạt động Ethereum 2.0

Chuỗi khối Ethereum rất giống với bitcoin, nhưng với hợp đồng thông minh, ngôn

ngữ lập trình của nó cho phép các nhà phát triển viết phần mềm thông qua các giao dịch

blockchain quản lý và tự động hóa các kết quả cụ thể.

Hợp đồng thông minh đảm bảo các điều khoản được thực hiện bằng cách viết nó vào

mã. Hợp đồng sẽ tự động thực hiện thỏa thuận ngay khi đáp ứng các điều kiện được xác định

trước.

Ví dụ, một người dùng Ethereum có thể tạo một hợp đồng thông minh để gửi một

lượng ether nhất định cho bạn bè vào một ngày nhất định. Họ sẽ viết mã này vào blockchain

và ngay khi hợp đồng hoàn tất ether sẽ tự động được chuyển cho bên kia.

Chi tiết chương 1 phần 2

1.5. Ưu điểm và nhược điểm của đồng Ethereum

➢ Ưu điểm:

Có hầu hết các đặc tính của blockchain.

Không chịu ảnh hưởng của bên thứ 3 vì thế quỹ DAO được triển khai trong mạng không

bị kiểm soát bởi bấy kì ai.

Sử dụng cơ chế đồng thuận phi tập trung

Toàn bộ nền tảng được phân cấp. Do đó tất cả các ứng dụng luôn ở trạng thái trực tuyến

và không bao giờ tắt. Tính phi tập trung và bảo mật bằng mật mã giúp cho mạng Ethereum

chống lại hacker và các hoạt động lừa đảo

➢ Nhược điểm:

Đã từng bị tấn công quỹ DAO và tổn thất hơn 3,6 triệu token Ether. Kẻ tấn công đã khai

thác 1 lỗi từ mã. Tổn thẩt không chỉ ở lượng token bị đánh cắp. Mà nó còn làm suy yếu niền

tin của người dùng trên toàn bộ mạng etherum, giá trị của Ether đã giảm từ hơn 20 đôla

xuống con 12 đôla vào thời điểm đó.

Được thiết kế là các hợp đồng thông minh, nên sai sót sẽ xảy ra ở khâu viết mã. Và bất

kì lỗi nhỏ nào cũng có thể bị khai thác. Nếu lỗi xảy ra sẽ không có cách nào trực tiếp ngăn

cản các cuộc tấn công. Cách duy nhất là đạt được sự đồng thuận và viết lại 1 mã cơ bản.

=> Tuy nhiên điều này đi ngược với bản chất của Blockchian-1 sổ cái không thể thay đổi

và bất biến.

1.6. Sử dụng Ethereum

Ngoài việc nó được các nhà phát triển sử dụng để thúc đầy các dự án của mình trên

mạng lưới Ethereum thì ETH giống như 1 tài sản kỹ thuật số. Đối với các nhà đầu tư thì nó

cũng giống như các đồng tiền điện tử khác.

➢ Giao dịch ETH với các tiền điện tử khác trên Sàn giao dịch

Hiện tại có hàng trăm mã thông báo thay thế trong hệ sinh thái Blockchain. Các Altcoin

này có giá trị dao động, đôi khi hàng ngàn phần trăm trong một ngày và mua hoặc bán những

đồng tiền này với hy vọng kiếm được lợi nhuận lớn đã trở thành một thông lệ.

Khi bạn có ví Ether, quá trình giao dịch Ethereum của bạn cũng đơn giản như đăng ký

trao đổi lựa chọn của bạn, tìm kiếm các giao dịch mong muốn của bạn và sau đó thực hiện

chúng. Bạn cũng có thể giao dịch ETH lấy Bitcoin hoặc các tài sản tiền điện tử khác như

Litecoin, Ripple Dash, v.v. thông qua hầu hết các trao đổi trực tuyến.

➢ Tham gia vào ICO

ICO-Hình thức gọi vốn đầu tư, là một quá trình mà một dự án mới bán các loại tiền điện

tử mới, thường để đổi lấy Bitcoin hoặc Ethereum. Điều này tương tự như gây quỹ cộng

đồng, hoặc IPO (Phát hành lần đầu ra công chúng) nơi khởi nghiệp bán cho các cổ đông ban

đầu. IPO được thiết kế để cung cấp cho các công ty khởi nghiệp vốn đầu tư mạo hiểm mà họ

cần để thành công trong việc biến dự án của họ thành hiện thực.

Điều này hấp dẫn người nắm giữ ETH vì họ có thể giao dịch ETH của họ lấy một phần

tài sản tiền điện tử của công ty với giá chiết khấu so với giá trị tài sản * có thể * được định

giá khi mã thông báo mới được công khai.

Nếu mọi việc suôn sẻ, chủ sở hữu của các mã thông báo mới này có thể chọn bán khi dự

án được công khai và nếu dự án đạt được lực kéo trên thị trường, điều này khả năng sẽ tạo

ra lợi nhuận khổng lồ. Tuy nhiên, nếu mọi thứ không ổn và các mã thông báo mới được thị

trường coi là vô giá trị, thì những người tham gia ICO có thể sẽ mất trắng.

➢ Giao dịch Ether cho hàng hóa và dịch vụ

Cũng như Bitcoin và các đồng tiền điện tử khác, Ethereum có thể được giao dịch với bất

kỳ ai có địa chỉ ví liên quan. Ethereum Blockchain rất tốt trong việc tạo điều kiện cho các

giao dịch ngang hàng, và nó rẻ và nhanh hơn nhiều so với Bitcoin Blockchain.

ETH cũng có thêm lợi ích cho việc sử dụng các hợp đồng thông minh của Wap, một quy

trình cải tiến nhằm đưa các tham số vào giao dịch và sau đó yêu cầu các thỏa thuận được

phải được đáp ứng trước khi có thể trao đổi tiền.

Điều này giúp loại bỏ sự cần thiết của bên thứ ba, chẳng hạn như luật sư hoặc tổ chức

ngân hàng. Và nó cho phép bạn tìm kiếm trong cộng đồng hoặc các thị trường P2P (ngang

hàng) các cá nhân có hàng hóa, dịch vụ và thậm chí cả tiền tệ pháp định mà bạn muốn giao

dịch Ethereum của mình.

➢ Đổi ETH lấy tiền thật (tiền pháp định)

Trao đổi ETH của bạn với các loại tiền pháp định là một quá trình khá đơn giản. Phổ biến

nhất là thông qua một trao đổi trực tuyến được thiết lập. Bước đầu tiên là tìm một sàn giao

dịch có thể cung cấp cho bạn loại tiền bạn muốn để đổi lấy ETH.

Khi bạn trao đổi, bạn chỉ cần làm theo hướng dẫn của họ để thiết lập tài khoản của bạn.

Tất nhiên bạn sẽ cần xác minh danh tính của mình để ràng buộc trao đổi với tài khoản ngân

hàng của bạn, mặc dù có một số trao đổi với các khoản rút tiền nhỏ mà không cần xác minh

danh tính để duy trì tính ẩn danh mà một số người dùng tiền điện tử coi trọng.

Một tùy chọn phổ biến khác là chuyển đổi Ethereum của bạn thông qua thẻ ghi nợ trả

trước. Có rất nhiều tùy chọn có sẵn và một khi được tài trợ, thẻ hoạt động gần như giống hệt

với thẻ ghi nợ truyền thống mà bạn quen thuộc.

Một số thẻ này được gắn trực tiếp vào ví điện tử, có nghĩa là bạn có thể chi tiêu ETH

được lưu trữ trong ví của mình mọi lúc, mọi nơi. Khi có thông báo cầu bạn phải nộp một

khoản thanh toán Ethereum vào tài khoản, tức là bạn cần “nạp” thêm tiền vào thẻ của bạn

trước khi sử dụng.

Các phương thức trao đổi không phổ biến khác bao gồm sử dụng thị trường ngang hàng,

trong đó người dùng tự do trao đổi tài sản của họ với nhau trong một môi trường an toàn và

được mã hóa, bỏ qua nhu cầu trao đổi của bên thứ ba.

Hãy nghĩ về điều này như một diễn đàn trực tuyến nơi bạn giao dịch trực tiếp với các cá

nhân khác muốn giao dịch hàng hóa, dịch vụ và tài sản của họ, bao gồm cả tiền pháp định.

Tất nhiên, bạn luôn có thể cố gắng tìm ai đó muốn mua ETH trực tiếp từ bạn trong cộng

đồng, như một giao dịch cá nhân giữa các bên.

Hãy nhớ luôn luôn biết rằng bất kỳ trao đổi Ethereum nào với tiền pháp định đều phải

chịu thuế ở hầu hết các quốc gia và bạn sẽ phải nộp thuế theo quy định của quốc gia bạn khi

giao dịch và khi bạn nhận lợi nhuận.

1.7. Cách tạo ví Ethereum

Ví Ethereum là công cụ cho phép người dùng tạo địa chỉ ví Ethereum để lưu trữ các

token được phát hành trên chuỗi khối của Ethereum, bao gồm cả ETH.

➢ Các loại ví Etherum phổ biến:

• Ví Giấy (Paper Wallet):

Loại ví cơ bản nhất được biết đến là một loại ví giấy, tên là một loại giấy có khóa riêng

được viết hoặc in trên đó.

Thông tin trên mảnh giấy này là tất cả những gì cần thiết để kiểm soát tất cả các tài sản

trên tài khoản Ethereum.

• Ví phần cứng (Hardware Wallet ):

Đây là loại ví lưu trữ Private Key trong một thiết bị phần cứng, rất dễ sử dụng và an toàn.

Nhưng, loại ví này người dùng phải dùng tiền để mua. Một số ví cứng lưu trữ Ethereum uy

tín: Ledger Nano S, Ledger Nano X, Trezor, KeepKey

• Ví phần mềm (Software Wallet):

Đây là loại ví lưu trữ Ethereum trên ổ cứng của máy tính hay điện thoại. Dễ sử dụng

nhưng cũng dễ bị hacker tấn công và không bảo mật bằng ví cứng.

• Ví sàn:

Cách phổ biến nhất để mọi người mua tài sản tiền điện tử đầu tiên của họ là thông qua

một sàn giao dịch cho phép mọi người giao dịch giữa tiền tệ fiat và cryptocurrency.

Sàn giao dịch cũng hoạt động như ví vì nền tảng kiểm soát các khóa riêng thay mặt cho

người dùng.

Lợi ích của việc có một nền tảng kiểm soát các khóa riêng của bạn là tiền hoặc tài sản của

bạn có thể được phục hồi nếu bạn mất mật khẩu.

➢ Cách tạo ví Ethereum

B1: Truy cập vào myetherwallet.com để bắt đầu quá trình đăng ký.

B2: Điền Password và bấm Create New Wallet

B3: Download Keystore File (UTC / JSON). Sau khi download xong, bấm vào I

understand. Continue. Lúc này, Private Key của ví sẽ hiện ra.

B4: Lưu Private Key cũng như Keystore/JSON File. Tiếp theo bấm vào Print Paper

Wallet và lưu lại.

CHƯƠNG 2: ỨNG DỤNG ĐƯỢC XÂY DỰNG TRÊN ETHEREUM

2.1. Tài chính phi tập trung (Defi) và Ethereum

Hình 3.3.Ứng dụng tài chính phi tập trung trên Ethereum

Khi giao dịch các dịch vụ tài chính dựa trên Ethereum, kết nối các cá nhân ngang hàng

sẽ cho phép họ truy cập tài sản dễ dàng hơn và chi phí hợp lý hơn khi bạn thực hiện các giao

dịch thông thường như hiện nay. Vì hầu hết các dịch vụ tài chính của bạn như chuyển tiền,

mua bán tài sản, hoặc cho vay đều được kiểm soát và tính phí bởi một bên trung gian.

➢ Ứng dụng tài chính phi tập trung trên Ethereum

Ethereum hiện là nền tảng có nhiều ứng dụng defi hoạt động nhất. Phần này chắc cũng là

những ứng dụng cho các nhà đầu sử dụng nhiều nhất nên mình sẽ liệt kê nó trước:

• Stablecoin: Là các loại tiền điện tử được thiết kế để giảm thiểu tác động của biến

động giá.

• Coinbase Wallet: Ví đa tiền tệ, được cung cấp quyền truy cập vào Ứng dụng phân

cấp Web (dApps) bởi các hợp đồng thông minh Ethereum.

• Huobi Wallet: Ví đa tiền tệ, trình duyệt dApps và staking như một dịch vụ cho các

mạng PoS.

• MyEtherWallet: Miễn phí, mã nguồn mở, giao diện phía máy khách để tạo ví

Ethereum và tương tác với dApps.

• Trust Wallet: Ví tiền điện tử đa năng để lưu trữ các mã thông báo BEP2, ERC20 và

ERC721.

Những ứng dụng trên được rất nhiều người sử dụng vì tính tiện ích của nó. Ngoài ra còn

các ứng dụng tiện ích của ethereum với Defi như: Đầu tư, thanh toán, cho vay, bảo hiểm, dự

đoán thị trường…

2.2. Sàn giao dịch phi tập trung (DEX) và Ethereum

Hình thức trao đổi phi tập trung có thể kể đến như: Mạng ngang hàng (peer-to-peer),…

Cùng với đó là ứng dụng phi tập trung dapp, nơi mà người dùng tương tác với hợp đồng

thông minh.

Một trong những sàn giao dịch ngang hàng tốt nhất hiện nay tại Việt Nam đó là

Binance P2P. Các nhà đầu tư có thể thực hiện mua bán Ether trực tiếp bằng VND.

2.3. Ứng dụng phi tập trung (Dapps)

Hình 3.4. Các ứng dụng trên Ethereum Dapps cho các nhà đầu tư.

Ứng dụng phi tập trung Dapp cùng với mạng ngang hàng giúp người dùng tương tác với

hợp đồng thông minh.

➢ Các ứng dụng trên Ethereum cho các nhà đầu tư

Dưới đây là danh sách các Ethereum dapps có thể sử dụng ngay bây giờ. Hầu hết đều có

sẵn để tải xuống miễn phí thông qua các cửa hàng Apple hoặc Google Play hoặc trực tiếp

thông qua các trang web của họ dưới dạng bản demo, betas hoặc bản phát hành đầy đủ.

➢ Trình duyệt, ví và các tiện ích:

• MetaMask: Ứng dụng Plug-in trình duyệt cho phép kết nối thiết bị của bạn với

mạng lưới Ethereum.

• Status: Trình duyệt di động Ethereum với ví token, chat và cổng thông tin dApp.

• Brave: Một trình duyệt web và di động được tích hợp với BAT và ERC-20

tokens.

• Opera: Trình duyệt Dapp với ví Ethereum tích hợp.

• Ethereum Name Service: Một tiện ích để tạo địa chỉ ví ETH được cá nhân hóa

và đơn giản.

• Civic: Bảo mật danh tính và quản lý dữ liệu trên blockchain.

• Alethio: Nền tảng phân tích mạng Ethereum.

➢ Các ứng dụng khác:

Ngoài danh mục ví, các trang web hay các tiện ích. Ứng dụng của ethereum còn trải

dài trên rất nhiều lĩnh vực khác như: Platform, market, Mạng xã hội, game,…

➢ Một vài ví dụ cho người dùng nghiên cứu như sau:

• IDEX: Một trao đổi phi tập trung với giao dịch thời gian thực và thông lượng

giao dịch cao.

• ForkDelta: Một trao đổi token Ethereum phi tập trung.

➢ Điều làm cho Ethereum DApps khác biệt

Các ứng dụng được xây dựng trên Ethereum (DApps) có thể làm những điều mà các

ứng dụng thông thường không thể:

• Tạo các loại tiền và tài sản kỹ thuật số mới.

• Các ứng dụng web không thể ngăn chặn và không thể kiểm soát.

• Xây dựng các tổ chức phi tập trung, tài sản hoặc thế giới ảo được quản lý chung.

DApps trên Ethereum là các ứng dụng web được hỗ trợ bởi các hợp đồng thông minh

Ethereum . Thay vì sử dụng máy chủ hoặc cơ sở dữ liệu tập trung, các ứng dụng này dựa

vào blockchain làm phần phụ trợ cho toán học logic và lưu trữ chương trình.

Điều này dẫn đến các ứng dụng tiềm năng không thể ngăn chặn: Bất kỳ ai cũng có thể

triển khai một bản sao và tự do kết nối nó với mạng Ethereum công cộng.

CHƯƠNG 3: CÁCH ĐỂ KIẾM ETHEREUM

3.1. Các cách đầu tư ETH

Đầu tư Ethereum có nhiều cách và nhiều hình thức khác nhau. Tuy nhiên điển hình

phải kể đến đó là Giao dịch ETH truyền thống, đào Ethereum và giao dịch ký quỹ Ethereum.

➢ Giao dịch Ethereum truyền thống

Theo như thống kê của trang ycharts thì chi phí trung bình cho mỗi giao dịch Ethereum

là 2,042 USD. Đây là số liệu được thống kê ngày hôm qua tức là ngày 14/10/2020.

Con số này đã tăng lên từ 1,933 USD của ngày hôm qua (tăng 5,61%). Nếu so với 1 năm

về trước thì chi phí giao dịch 1 ETH đã tăng 1570%.

Hình 3.5. Biểu đồ phí giao dịch 1 năm của ETH -Nguồn: Ycharts.com

Có thể thấy phí giao dịch của ETH tăng một cách chóng mặt. Và con số này có lẽ sẽ càng

tăng theo thời gian.

➢ Đào Ethereum

Nếu bạn là thợ đào ETH, thì ngoài phí giao dịch nêu trên ra, bạn cần phải cộng phí máy

đào, tiền điện và phí lưu trữ v.v. Theo thống kế của Venturebeat:

Số lượng GPU 4

Tỉ lệ băm trên mỗi GPU ( Mh/s) 40

Tổng tỷ lệ băm (Mh/s) 160

Điện năng tiêu thụ khai thác (W) 1000

Giá điện (USD/kWh) 0,1

Chi phí điện hàng ngày (USD) 2,4 (Khoảng 55.000 VNĐ)

1,5% Phí khai thác mỏ

3.000 ( Khoảng 69 triệu VNĐ) Tổng chi phí phần cứng (USD)

Tuy nhiên chi phì này chỉ là mức tính tương ứng vì ở mỗi quốc gia khác nhau thì chi phí

sẽ khác nhau. Nhưng nhìn vào chi phí này cũng đủ thấy rằng để có 1 “dàn khoan” Ethereum

hợp lý không hề rẻ chút nào.

Đây là biểu đồ về hệ số khó khăn trong việc khai thác khối Ethereum. Hệ số này đang

tăng theo cấp số nhân điều đó có nghĩa là độ khó của việc khai thác ETH đang gia tăng chóng

mặt.

➢ Giao dịch ký quỹ Ethereum

Đây là hình thức phổ biến nhất hiện tại vì nó dễ dàng tiếp cận với mọi nhà đầu tư, đặc

biệt là với các nhà đầu tư nhỏ lẻ. Vậy hình thức này kiếm tiền như thế nào?

Về bản chất thì giao dịch ký quỹ ETH cho phép nhà đầu tư kiếm lợi nhuận dựa trên

sự chênh lệch giá của ETH và không cần sử hữu chúng. Và một điều đặc biệt hơn nữa là nhà

đầu tư có thể kiếm được lợi nhuận theo cả 2 chiều tăng giảm của giá ETH miễn là nhà đầu

tư dự đoán chính xác xu hướng di chuyển.

Lợi thế khi giao dịch ký quỹ:

✓ Vốn thấp: Khoản đầu tư của bạn sẽ được khuếch đại sau khi sử dụng đòn bẩy tài

chính

✓ Chi phí giao dịch thấp: không có chi phí lưu trữ và không có rủi ro bị hack vì

không sở hữu tài sản.Thay vào đó bạn chỉ cần phải trả một khoản phí rất nhỏ cho sàn

giao dịch.

✓ Nhanh chóng và tiện lợi: Chỉ cần đăng ký tài khoản online, với các thiết bị thông

minh được kết nối internet là bạn có thể giao dịch ở bất cứ đâu bất cứ khi nào bạn

muốn

✓ Lợi nhuận 2 chiều và lợi nhuận cao: Dù tăng hay giảm bạn đều có thể thu được lợi

nhuận nhờ vào việc dự đoán đúng xu hướng.

Hình 3.6. Cơ chế mua bán eth

- Mua vào: Chọn Mua nếu bạn dự đoán rằng giá ETH sẽ tăng

- Bán khống: Chọn Bán nếu bạn dự đoán rằng giá ETH sẽ giảm

Note: Nếu bạn không có ý định giữ Ethereum thì có thể giao dịch ký quỹ ETH trên Sàn

Mitrade. Mitrade cung cấp cho bạn đòn bẩy 1:10 với Ether.

Cách phù hợp với các nhà đầu tư bán lẻ nhất để giao dịch đồng Ethereum chính là

tham gia trên sàn giao dịch ký quỹ ví dụ như Mitrade. Ngoài ra, giao dịch Ethereum trên

Mitrade rất là đơn giản.

Hình 3.7. Thông tin Mitrade

3.2. Hướng dẫn cách mua Ethereum.

① Bước 1: Đăng ký và tạo tài khoản

Mitrade hiện cung cấp cho nhà đầu tư 2 tài khoản giao dịch đó là tài khoản Demo và tài

khoản thật. Trader mới sẽ có 50.000$ tiền ảo để luyện tập giao dịch với tài khoản demo.

Tài khoản giao dịch thật bằng vốn của bạn. 100 thị trường tài chính | 0 phí hoa hồng |

Spread thấp | Đòn bẩy lên đến 1:200(Bitcoin: 1:10) | Các công cụ hỗ trợ giao dịch miễn phí

| Bảo mật | Nền tảng dễ sử dụng

② Bước 2: Nạp vốn vào tài khoản giao dịch

Số tiền nạp tối thiểu trên Mitrade là $50(khoảng 1,1 triệu đồng) và nền tảng hỗ trợ nhiều

phương thức thanh toán bao gồm thẻ nội địa. Việc nạp/rút được thực hiện dễ dàng. Số tiền

nạp của bạn sẽ được bảo vệ theo quy định của ASIC.

③ Bước 3: Chọn Ethereum để giao dịch

Chọn thị trường tiền điện tử và sau đó chọn Ethereum. Ngoài Ethereum ra Mitrade còn cung

cấp hơn 100 thị trường khác bao gồm:

Các loại thị trường tài chính phổ biến trên Sàn Mitrade

Ta hoàn toàn có thể đa dạng hóa danh mục đầu tư một cách dễ dàng trên Mitrade

④ Bước 4: Chọn vị thế Mua/bán

Dựa vào những phân tích của mình bạn hãy đưa ra nhận định và mở vị thế:

• Chọn Mua nếu bạn dự đoán rằng giá ETH sẽ tăng

• Chọn Bán nếu bạn dự đoán rằng giá ETH sẽ giảm

Sau đó chọn số lô muốn giao dịch, hệ thống sẽ tự hiện số tiền ký quỹ yêu cầu mà bạn

không cần phải tính toán.

⑤ Bước 5: Sử dụng công cụ quản lý rủi ro

Hệ thống quản lý rủi ro trên Mitrade vô cùng phong phú với các công cụ: Lệnh chốt lời,

lệnh dừng lỗ, lệnh cắt lỗ dưới..v.v

Một số công cụ quản lý rủi ro miễn phí trên Sàn Mitrade

⑥ Bước 6: Đóng vị thế và rút lợi nhuận

Sau khi giao dịch có lãi, bạn chỉ cần đóng vị thế và rút tiền về tài khoản của mình. Mitrade

đã liên kết với hầu hết các ngân hàng tại Việt Nam nên không cần quá lo lắng về phần nạp/rút.

Nếu bạn là nhà đầu tư ngắn hạn, yêu thích các giao dịch nhanh và mong muốn kiếm lợi

nhuận trong ngày thì Mitrade là lựa chọn số 1 dành cho bạn.

PHẦN 4: TÌM HIỂU GRT

4.1.The Graph (GRT)

The Graph là một giao thức phi tập trung có chức năng tổ chức dữ liệu blockchain.

Nhờ vậy, nó giúp cho người sử dụng truy cập dữ liệu Blockchain một cách tiện lợi, dễ

dàng và đồng bộ hơn.

Chính vì tính năng indexing và truy vấn dữ liệu đó, người ta ví The Graph như một

Google của network Blockchain.

4.2.Phương thức hoạt động của The Graph

4.2.1. Vấn đề được giải quyết bằng The Graph

Cho đến nay, tính minh bạch của công nghệ blockchain thường nhận được rất nhiều

lời khen ngợi. Nhưng, cho dù chúng chứa rất nhiều dữ liệu hữu ích, việc truy vấn chúng để

tìm dữ liệu đặc biệt không phải điều dễ dàng, việc đó giống như “Web mà không có

Google”.

Hiện tại đã có rất nhiều công cụ phân tích có thể lấy các thông tin hữu ích từ dữ liệu

blockchain. Tuy nhiên các ứng dụng này thường hoạt động theo cách tập trung và có thể

mất hàng tháng để phát triển.

Từ đó The Graph ra đời, tự coi mình không phải là đối thủ cạnh tranh với các công

cụ trên, mà là ứng dụng hỗ trợ cho chúng.

Có thể coi The Graph như một lớp dữ liệu mở trong hệ sinh thái blockchain.

4.2.2. Giải pháp của The Graph

Hình 4.1. Giải pháp GRT

The Graph xây dựng một giao thức cho phép người sử dụng có thể truy cập để xây

dựng các API (còn được gọi là các Sub-Graph)

The Graph sẽ lấy dữ liệu từ network blockchain( bước đầu với Ethereum) và tổ chức

lại theo một cấu trúc riêng.

Việc truy xuất dữ liệu được áp dụng theo phương thức GraphQL, một phương thức

phổ biến được rất nhiều ông lớn sử dụng như Facebook, Pinterest, Shopify…

Hình 4.2. Các hệ thống sử dụng GraphQL

Ngoài ra, The Graph hướng đến việc xây dựng nền tảng gồm nhiều Node, trong đó

người sử dụng có thể đăng ký xây dựng The Graph Node, nó giúp cho rút ngắn thời gian

truy xuất dữ liệu, tiện lợi hơn cho cộng đồng.

4.2.3. Hệ sinh thái của The Graph

▪ Indexers là các node operators trong mạng lưới The Graph. Indexers sẽ stake token

GRT để cung cấp cho dụng vụ Indexing và Query Processing. Indexers sẽ nhận được

Query fees và các Inflation reward.

▪ Curators là các Sub-Graph developers, data consumers hoặc là những thành viên

cộng đồng. Họ sắp xếp dữ liệu và báo hiệu cho Indexers những API nào nên được

lập chỉ mục bởi mạng lưới The Graph. Từ việc này, họ có thể kiếm được token GRT.

▪ Delegators là các cá nhân muốn đóng góp vào việc bảo mật mạng The Graph nhưng

họ có thể không muốn hoặc không rành code để làm Curators hay Indexers. Họ có

thể ủy quyền token GRT của mình cho các Indexers để được share phần thưởng.

▪ Consumers là người dùng cuối của The Graph. Họ dùng dịch vụ query data được

cung cấp từ Indexers, phí này được share theo tỷ lệ cho các Indexers, Curators,

Delegators.

4.3. Token GRT

GRT là Token trong hệ sinh thái The Graph, được dùng với mục đích:

▪ Query fees: Phí do người tiêu dùng trả cho các Indexers, Curators và Delegators.

Giống như phí chúng ta trả cho các dịch vụ đám mây.

▪ Inflation reward: Phần thưởng lạm phát sẽ được chia sẻ cho Indexers, Curators và

Delegators dựa trên số Token GRT mà họ stake.

▪ Protocol Sink & Burns: Một phần Query fees được đốt cháy, dự kiến sẽ bắt đầu ở

mức ~1% tổng phí truy vấn giao thức và có thể thay đổi tỉ lệ trong tương lai.

4.4. Một số thông tin cơ bản về token GRT

▪ Token name: GRT Token

▪ Ticker: GRT

▪ Blockchain: Ethereum

▪ Token Standard: ERC-20

▪ Total Initial Token Supply: 10 tỷ

▪ Lộ trình phát hành mới: Bắt đầu từ ~ 3% hàng năm, tùy thuộc vào quản trị kỹ thuật.

▪ Maximum Token supply: 10 tỷ in + Số token phát hành mới – Số token được đốt

▪ Market cap: $232,287,329

▪ Khoảng 1% phí quy vấn mà người dùng phải trả cho hệ thống The Graph sẽ được

đốt.

4.4.1. Phân bố token GRT

Hình 4.3. Sơ đồ phân bổ GRT

Token GRT được phân bổ như sau:

▪ Graph Foundation: 58%

▪ Educational Programs: 6%

▪ Curator Program Grant:9%

▪ Testnet Indexer Rewards: 9%

▪ Bug Bounties: 1%

▪ Public GRT Sale: 12%

▪ Strategic GRT Sale: 6%

4.4.2. Public sale

▪ Token Ticker: GRT (ERC20 Token)

▪ Ngày: Thứ 5 ngày 22/10/2020 lúc 23h đêm

▪ Nơi bán: thegraph.com, Ethereum Blockchain

▪ Đóng đăng ký từ: 15/10/2020

▪ Tổng cung lúc đầu: ~1,245,666,867 GRT

▪ Tổng cung: 10,000,000,000 GRT

▪ Tổng Token bán: 400,000,000 preGRT (Converting to 400,000,000 GRT)

▪ Giá: $0.03/preGRT

▪ Thanh toán bằng: ETH

▪ Cá nhân: $1,000-$5,000 chỉ được mua trong khoảng này.

▪ Khóa: Khóa tới khi khởi chạy

▪ Quốc gia được phép mua: Ngoài những người dùng tại Hoa Kỳ và một số khu vực

pháp lý nghiệm ngặt thì còn lại đều có thể tham gia được.

4.4.3. Đội ngũ phát triển dự án

Hình 4.4. Đội ngũ phát triển

Team The Graph khá chất lượng với sự tham gia của các tên tuổi trong làng Dev

Blockchain.

4.4.4. Partners

Hình 4.5. Các tổ chức hỗ trợ và sử dụng sản phẩm

Đội ngũ nhà đầu tư của The Graph cũng khá ấn tượng, được rất nhiều tổ chức đứng

sau hỗ trợ và sử dụng sản phẩm. Có thể kể đến những cái tên như: Coinbase Venture,

DCG,…

4.4.5. Cách kiếm và sở hữu GRT Token

Hiện tại bạn có thể sở hữu GRT token bằng những cách sau:

▪ Tham gia vào hệ sinh thái The Graph. Bất kỳ ai cũng có thể là Indexer, Curator hoặc

Delegator.

▪ Staking.

▪ Chương trình Bug Bounty để giúp tìm ra các lỗ hổng bảo mật.

▪ Tham gia các cuộc thi hackathon.

4.4.6. Sàn giao dịch GRT Token

Tính đến thời điểm hiện tại, bạn có thể giao dịch token GRT trên Uniswap, Okex,

Huobi, Binance và Coinbase.

4.4.7. Ví lưu trữ token GRT

GRT là token ERC-20 nên bạn có thể lưu trữ trên các ví có hỗ trợ tiêu chuẩn nảy như:

▪ Metamask

▪ Myetherwallet

▪ Trust Wallet

4.5. Tương lai của GRT Token

The Graph giúp quá trình xây dựng các Dapp nhanh chóng hơn thông qua việc truy

xuất Data trên Blockchain Ethereum nhanh hơn.

Cùng với sự phát triển của hệ sinh thái Ethereum thì mình tin The Graph cũng sẽ

phát triển theo.

PHẦN 5: MÔ TẢ QUY TRÌNH TRIỂN KHAI ỨNG DỤNG

5.1. Mục tiêu 5.2. Mô hình Use-case 5.3. Sơ đồ lớp

5.4. Sơ đồ Sequence Diagram

5.5. Các bước để xây dựng một project

✓ Bước 1: Xây dựng Smart Contract (dBank) với các chức năng cơ bản Deposit,

Withdraw, Borrow, Payoff bằng Solidity.

- Giới thiệu về Solidity:

Solidity là một ngôn ngữ cấp cao, hướng đối tượng để thực hiện các hợp đồng

thông minh. Hợp đồng thông minh là các chương trình điều chỉnh hành vi của

các tài khoản trong trạng thái Ethereum.

Solidity được thiết kế để nhắm mục tiêu Máy ảo Ethereum (EVM).

Với Solidity, bạn có thể tạo các hợp đồng để sử dụng như bỏ phiếu, huy động

vốn từ cộng đồng, đấu giá và ví nhiều chữ ký.

Khi triển khai hợp đồng, bạn nên sử dụng phiên bản Solidity được phát hành

mới nhất. Điều này là do các thay đổi đột phá cũng như các tính năng mới và

bản sửa lỗi được giới thiệu thường xuyên.

https://docs.soliditylang.org/en/v0.8.4/#solidity

- Tạo Contract dBank với Solidity

✓ Bước 2: Cài đặt Ganache (Mạng Ethereum local).

- Giới thiệu về Genache:

Ganache là một blockchain cá nhân để phát triển ứng dụng phân tán Ethereum

và Corda nhanh chóng. Bạn có thể sử dụng Ganache trong toàn bộ chu kỳ phát

triển; cho phép bạn phát triển, triển khai và thử nghiệm các dApp của mình

trong một môi trường an toàn và xác định.

Ganache có hai phiên bản: UI và CLI. Ganache UI là một ứng dụng dành cho

máy tính để bàn hỗ trợ cả công nghệ Ethereum và Corda. Công cụ dòng lệnh,

ganache-cli (trước đây được gọi là TestRPC), có sẵn để phát triển Ethereum

https://www.trufflesuite.com/ganache

- Giao diện:

✓ Bước 3: Triển khai Smart Contract lên mạng Ethereum local bằng Truffle.

- Giới thiệu về Truffle:

Truffle là một môi trường phát triển đẳng cấp thế giới, khung thử nghiệm và

đường ống tài sản cho các blockchain sử dụng Máy ảo Ethereum (EVM),

nhằm mục đích làm cho cuộc sống của một nhà phát triển trở nên dễ dàng

hơn.

▪ Tích hợp hợp đồng thông minh biên dịch, liên kết, triển khai và quản lý nhị

phân.

▪ Kiểm tra hợp đồng tự động để phát triển nhanh chóng.

▪ Khung triển khai và di chuyển có thể mở rộng và có thể tập lệnh.

▪ Quản lý mạng để triển khai cho bất kỳ số lượng mạng công cộng và riêng

tư.

▪ Quản lý gói với EthPM & NPM, sử dụng tiêu chuẩn ERC190.

▪ Bảng điều khiển tương tác để giao tiếp hợp đồng trực tiếp.

https://www.trufflesuite.com/docs/truffle/getting-started/compiling-contracts

- Xây dựng Folder chứa các file cấu hình để triển khai hợp đồng thông minh:

- Mỗi file được định nghĩa các hàm để triển khai hợp đồng thông minh lên

mạng Ethereum.

- Để thiết lập Truffle

▪ Cài đặt npm install –g truffle

▪ Khởi tạo truffle init

- File truffle.js định nghĩa hợp đồng sẽ được triển khai trực tiếp lên mạng nào.

Ở đây là http://127.0.0.1:7545 ( mạng Ethereum local mà Ganache đã start

trước đó)

Triển khai hợp đồng thông minh lên Ethereum bằng lệnh “truffle migrate --

network development” , nếu không chỉ định network, truffle sẽ tự động lấy

network đầu tiên.

- Sau khi compile, hợp đồng thông minh sẽ được biên dịch thành các file json.

Mỗi file sẽ chứa các thông tin về hợp đồng và các meta-data khác:

▪ Contract name: Tên của hợp đồng

▪ abi: thông tin các chức năng cũng như thuộc tính, được miêu tả rõ ràng

input và output

▪ metadata: các metadata khác của hợp đồng

Sau khi đã biên dịch thành công, hợp đồng sẽ được truffle triển khai lên

Ethereum và tạo các giao dịch tương ứng.

Ganache sẽ ghi giao dịch cũng như tự động thêm các block vào trong mạng

Ethereum hiện tại

Danh sách Block

Thông tin chi tiết block

✓ Bước 4: Sử dụng web3 để tương tác với Smart Contract.

- web3.js là một tập hợp các thư viện cho phép bạn tương tác với một nút

ethereum cục bộ hoặc từ xa bằng cách sử dụng HTTP, IPC hoặc WebSocket.

https://github.com/ChainSafe/web3.js#readme

✓ Bước 5: Xây dựng Service.

5.6. Danh sách màn hình 5.7. Nhận xét và kết luận

BẢNG PHÂN CHIA CÔNG VIỆC

Mức độ hoàn thành STT MSSV Công việc được giao (%)

- Tìm hiểu Smart contract

- Tìm hiểu Reactjs thiết kế lại giao

diện 100 1 18521510

- Tìm hiểu blockchain

- Thử nghiệm smart contract trên

Metamask

- Tìm hiểu blockchain

- Tìm hiểu Solidity

- Dựng format báo cáo 100 2 17521062

- Mô tả quy trình triển khai

- Hỗ trợ tìm hiểu & xây dựng

service để build project

- Tìm hiểu GRT

- Tìm hiểu Ethereum

3 19522536 100 - Tìm hiểu blockchain

- Thử nghiệm smart contract trên

Metamask

TÀI LIỆU THAM KHẢO

https://coin98.net/the-graph-grt

https://coin68.com/the-graph-la-gi/

https://www.mitrade.com/vn/forex/cryptocurrency/ethereum/Ethereum-ETH-la-

gi#linkTo-article-para2

https://blogtienao.com/ethereum/#ftoc-heading-26

https://www.slideshare.net/CngthngtinTininT/ethereum-la-gi-nhung-khai-niem-

xung-quanh-ethereum-eth-ma-ban-nen-biet-137466881

https://kgold.vn/blockchain-la-gi.html

https://www.mitrade.com/vn/forex/cryptocurrency/cryptocurrency-la-gi/cong-nghe-

blockchain

https://bytesoft.vn/cong-nghe-blockchain-1-0-la-gi

https://ethereum.stackexchange.com/questions/32233/how-to-install-truffle-3-x-

current-release-is-truffle-4-0?rq=1

https://github.com/Sudhanmanoharan/MarketPlace-BlockChain

https://reactjs.org/

https://www.youtube.com/watch?v=ctLFWAanxcI

https://www.trufflesuite.com/docs/truffle/getting-started/interacting-with-your-

contracts

https://web3js.readthedocs.io/en/v1.3.4/

https://docs.soliditylang.org/en/v0.8.4/

https://vn.bitdegree.org/crypto/huong-dan/smart-contract-la-gi