BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC QUY NHƠN
LÊ ĐÌNH THY HẢI
ỨNG DỤNG CƠNG NGHỆ BLOCKCHAIN
TRONG VÍ ĐIỆN TỬ
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Bình Định – Năm 2019
download by :
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC QUY NHƠN
LÊ ĐÌNH THY HẢI
ỨNG DỤNG CƠNG NGHỆ BLOCKCHAIN
TRONG VÍ ĐIỆN TỬ
Chun ngành
: KHOA HỌC MÁY TÍNH
Mã số
: 8480101
Khóa
: 20
Người hướng dẫn: TS. HỒ VĂN LÂM
download by :
LỜI CAM ĐOAN
Tơi xin cam đoan đây là cơng trình nghiên cứu và thực hiện luận văn
thực sự của riêng tôi, dưới sự hướng dẫn của TS. Hồ Văn Lâm. Mọi tham
khảo từ các tài liệu, cơng trình nghiên cứu liên quan trong nước và quốc tế
đều được trích dẫn rõ ràng trong luận văn. Mọi sao chép không hợp lệ, vi
phạm quy chế hay gian trá tơi xin hồn toàn chịu trách nhiệm và chịu mọi kỷ
luật của trường Đại học Quy Nhơn.
Bình Định, ngày 22 tháng 7 năm 2019
HỌC VIÊN THỰC HIỆN
Lê Đình Thy Hải
download by :
LỜI CẢM ƠN
Trong q trình thực hiện và hồn thiện luận văn này, tôi xin gửi lời cảm
ơn chân thành nhất đến các Thầy Cô trong Khoa Công nghệ thông tin trường
Đại học Quy Nhơn cũng như các Thầy thính giảng ở các trường, các viện ở Hà
Nội và Đà Nẵng đã cung cấp cho tôi những kiến thức quý báu trong suốt 2 năm
học qua. Đặc biệt cho tôi gửi lời cảm ơn sâu sắc nhất tới TS. Hồ Văn Lâm đã
dành nhiều thời gian vô cùng quý báu để định hướng và tận tình hướng dẫn tơi
cũng như tạo mọi điều kiện thuận lợi để tơi có thể hồn thành tốt nhất luận văn
của mình.
Tơi xin chân thành cảm ơn!
HỌC VIÊN THỰC HIỆN
Lê Đình Thy Hải
download by :
MỤC LỤC
TRANG PHỤ BÌA
LỜI CAM ĐOAN
LỜI CẢM ƠN
CÁC CỤM TỪ VIẾT TẮT
DANH MỤC BẢNG BIỂU
DANH MỤC HÌNH VẼ
LỜI NĨI ĐẦU
Chương 1. TỔNG QUAN VỀ CÔNG NGHỆ BLOCKCHAIN .................. 4
1.1. KHÁI NIỆM ............................................................................................. 4
1.2. CƠ SỞ HÌNH THÀNH VÀ CẤU TẠO .................................................. 4
1.2.1. Cơ sở hình thành ............................................................................. 4
1.2.2. Cấu tạo ............................................................................................ 7
1.3. PHÂN LOẠI BLOCKCHAIN .............................................................. 12
1.3.1. Public............................................................................................. 12
1.3.2. Private ........................................................................................... 13
1.3.3. Permissioned ................................................................................. 14
1.4. CÁCH THỨC HOẠT ĐỘNG ............................................................... 14
1.5. ĐẶC ĐIỂM ............................................................................................. 15
1.5.1. Dữ liệu phân tán ............................................................................ 15
1.5.2. Dữ liệu được phép truy cập cho tất cả các bên liên quan ............. 15
1.5.3. Tính ẩn danh và cơng khai ............................................................ 16
1.5.4. Tính bền vững của Blockchain ..................................................... 16
1.5.5. Minh bạch và không thể bị phá vỡ................................................ 16
1.5.6. Tăng cường bảo mật...................................................................... 17
1.6. CÁC PHIÊN BẢN CỦA CÔNG NGHỆ BLOCKCHAIN ................. 17
1.6.1. Blockchain Version 1.0 – Currencies – Tiền ảo và thanh toán .... 18
download by :
1.6.2. Blockchain Version 2.0 – Smart Contract .................................... 23
1.6.3. Blockchain Version 3.0 – Organizing Acticity – Thiết kế và giám
sát hoạt động.................................................................................................... 28
1.7. LỢI ÍCH .................................................................................................. 30
1.7.1. Bảo mật ......................................................................................... 30
1.7.2. Bất biến ......................................................................................... 30
1.7.3. Không thể sửa, không thể làm giả ................................................ 30
1.7.4. Minh bạch, rõ ràng ........................................................................ 31
1.7.5. Theo dõi chính xác ........................................................................ 31
1.7.6. Bỏ qua khâu trung gian ................................................................. 31
1.7.7. Tiết kiệm chi phí ........................................................................... 31
1.8. HẠN CHẾ ............................................................................................... 31
1.8.1. Thời gian xử lý giao dịch khá lâu ................................................. 31
1.8.2. Rất tốn năng lượng ........................................................................ 32
1.8.3. Tốn không gian lưu trữ ................................................................. 32
1.8.4. Nhược điểm của đặc tính khơng bị phá vỡ ................................... 32
1.9. CÁC ỨNG DỤNG TIỀM NĂNG.......................................................... 32
Chương 2. VÍ ĐIỆN TỬ BLOCKCHAIN................................................... 35
2.1. TỔNG QUAN VỀ CƠNG NGHỆ VÍ ................................................... 35
2.1.1. Ví bất định (ngẫu nhiên) ............................................................... 35
2.1.2. Ví tất định...................................................................................... 36
2.2. MỘT SỐ CÁCH LƯU TRỮ CỦA VÍ ĐIỆN TỬ BLOCKCHAIN ... 37
2.2.1. Ví nóng .......................................................................................... 38
2.2.2. Ví trữ lạnh ..................................................................................... 39
2.3. VÍ ĐIỆN TỬ BLOCKCHAIN............................................................... 39
2.3.1. Bảo mật ......................................................................................... 40
2.3.2. Kiểm soát truy cập ........................................................................ 40
download by :
2.3.3. Hoạt động chi tiêu giao dịch ví Blockchain .................................. 40
2.4. TẠO VÍ BLOCKCHAIN ....................................................................... 42
2.4.1. Cách tạo các giao dịch .................................................................. 45
2.4.2. Xác thực chữ ký ............................................................................ 48
2.4.3. Sở hữu tiền điện tử ........................................................................ 50
2.4.4. Xử lý giao dịch .............................................................................. 52
Chương 3. THỰC NGHIỆM MƠ PHỎNG VÍ DÙNG CƠNG NGHỆ
BLOCKCHAIN ............................................................................................. 56
3.1. PHÁT BIỂU BÀI TOÁN ....................................................................... 56
3.2. TRIỂN KHAI THỰC NGHIỆM .......................................................... 56
3.2.1. Tạo ra Blockchain ......................................................................... 57
3.2.1.1. Chữ ký số............................................................................ 58
3.2.1.2. Xác thực công việc ............................................................ 59
3.2.1.3. Tạo block ............................................................................ 61
3.2.1.4. Kiểm tra tính tồn vẹn của Blockchain............................. 63
3.2.1.5. Tạo Blockchain .................................................................. 63
3.2.1.6. Thêm block vào chuỗi Blockchain ..................................... 64
3.2.2. Giao dịch trong Ví Blockchain ..................................................... 66
KẾT LUẬN .................................................................................................... 69
DANH MỤC TÀI LIỆU THAM KHẢO ..................................................... 70
QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN THẠC SĨ (Bản sao)
download by :
DANH MỤC CÁC TỪ VIẾT TẮT
Elliptic Curve Digital Signature
Thuật toán chữ ký số
Algorithm
đường con elliptic
HD
Hierarachical Deterministic
Ví tất định phân cấp
PoW
Proof of Work
Bằng chứng xử lý
P2SH
Pay to script hash
Trả tới mã băm kịch bản
P2PKH
Pay to pubkey hash
ECDSA
P2P
Network
SHA256
UTXO
API
Trả tới mã băm khóa cơng
khai
Peer-to-Peer Network
Mạng ngang hàng
SHA-256 Cryptographic Hash
Thuật tốn mã hóa
Algorithm
SHA256
Unspent transaction outputs
Đầu ra chưa chi tiêu
Application Programming
Giao diện phần mềm ứng
Interface
dụng
download by :
DANH MỤC CÁC BẢNG BIỂU
Bảng 1.1. Các ứng dụng Blockchain vượt ra khỏi tiền tệ ................................... 24
Bảng 3.1. Môi trường triển khai .......................................................................... 56
download by :
DANH MỤC CÁC HÌNH VẼ
Hình 1.1. Hai trường hợp của bài tốn Các vị tường Byzantine....................... 5
Hình 1.2. Q trình phát triển của Blockchain ................................................. 6
Hình 1.3. Minh họa chuỗi khối trong hệ thống ................................................. 7
Hình 1.4. Cấu tạo của một khối gồm 3 phần..................................................... 7
Hình 1.5. Dữ liệu trong một khối ...................................................................... 8
Hình 1.6. Mã băm (Hash) của một khối............................................................ 9
Hình 1.7. Mã băm (Hash) của khối trước ......................................................... 9
Hình 1.8. Liên kết mã Hash giữa các khối ...................................................... 10
Hình 1.9. Mạng lưới Public ............................................................................. 13
Hình 1.10. Mạng lưới Private.......................................................................... 13
Hình 1.11. Mạng lưới Permissioned ............................................................... 14
Hình 1.12. Mơ hình hoạt động của nền tảng Blockchain................................ 14
Hình 1.13. Các giai đoạn phát triển của cơng nghệ Blockchain ..................... 18
Hình 1.14. Tập tin kỹ thuật số của Bitcoin đã được đơn giản hố ................. 19
Hình 1.15. Hệ thống mạng sẽ phát tín hiệu tới các nút kiểm tra số dư tài khoản 20
Hình 1.16. Mã hố giao dịch chữ ký số đơn giản hóa .................................... 21
Hình 1.17. Sổ cái Bitcoin ................................................................................ 22
Hình 1.18. Cấu trúc yêu cầu giao dịch Bitcoin ............................................... 23
Hình 1.19 – Swancoin. Tác phẩm nghệ thuật số có lưu lượng hạn chế.......... 26
Hình 1.20. Khái qt quy trình của Hợp đồng thơng minh ............................ 28
Hình 1.21. Minh hoạ bảng cấu trúc của nền tảng Blockchain 3.0 .................. 29
Hình 1.22. Ba đặc tính của Blockchain khi áp dụng tại ba thị trường khác
nhau kết hợp lại áp dụng cho lĩnh vực tài chính – ngân hàng ........................ 33
Hình 2.1. Ví bất định ....................................................................................... 36
Hình 2.2. Ví tất định ........................................................................................ 37
Hình 2.3. Tạo chữ ký cho giao dịch ................................................................ 41
download by :
Hình 2.4. Quá trình kiểm tra chữ ký ............................................................... 42
Hình 2.5. Ví Blockchain.................................................................................. 43
Hình 2.6. Xác minh chữ ký ............................................................................. 44
Hình 2.7. Ví dụ tập UTXO .............................................................................. 50
Hình 2.8. Thực hiện giao dịch......................................................................... 52
Hình 3.1. Giao diện chương trình ................................................................... 57
Hình 3.2. Chuỗi Blockchain ............................................................................ 57
Hình 3.3. Cấu tạo block................................................................................... 62
Hình 3.4. Kết quả tạo ra chuỗi Blockchain ..................................................... 64
Hình 3.5. Kết quả thêm một Block vào chuỗi Blockchain ............................. 66
Hình 3.6. Kết quả giao dịch Ví Blockchain .................................................... 68
download by :
1
LỜI NÓI ĐẦU
Sự xuất hiện của Internet và các ứng dụng trên mạng máy tính đã giúp
cho việc trao đổi thơng tin trở nên nhanh chóng, dễ dàng hơn. Email cho phép
chúng ta nhận hay gửi thư ngay trên máy tính của mình, E-business cho phép
thực hiện giao dịch, bn bán trên mạng… Cũng giống như Internet,
Blockchain xuất phát như một trào lưu với các loại đồng tiền số Bitcoin
(BTC), Ethereum (ETH),… đã giúp cho việc giao dịch trên diễn ra thuận tiện
và dễ dàng hơn.
Song song với lợi ích của sự phát triển của Internet đem lại thì cũng có
những phiền phức cùng đồng hành như những tổn thất sau các cuộc tấn công
mạng, gây ảnh hưởng lớn đến nền kinh tế cũng như xã hội; Một khoản tiền
lớn mà doanh nghiệp mất vào tay tin tặc; Mức tổn thất từ các đợt tấn công
mạng xảy ra ở khắp nơi trên thế giới. Tại Việt Nam cũng xảy ra tình trạng mất
an tồn với các tài khoản gửi ngân hàng, điển hình như vụ tấn cơng vào
Vietcombank (ngày 15/08/2016; Tài liệu: Blockchain xu hướng mới trong
tương lai – Báo Pcworld.com.vn – 12/2016).
Từ những rủi ro của an ninh mạng nên các tổ chức tài chính cần những
cơng nghệ mới, ví dụ như nền tảng của đồng tiền số Bitcoin, chính là
Blockchain, được kì vọng khơng chỉ nhằm cắt giảm chi phí ngân hàng mà cịn
đảm bảo tính an tồn và xa hơn nữa là cách mạng hóa các giải pháp bảo mật,
đồng thời giúp việc sử dụng tài chính của người dùng trở nên đơn giản, mọi
lúc và mọi nơi.
Với việc phát minh ra Bitcoin vào năm 2008, thế giới đã được đưa vào
một khái niệm mới mà hiện nay có khả năng cách mạng hóa tồn bộ xã hội.
Đó là điều hứa hẹn sẽ ảnh hưởng đến mọi ngành nghề, không chỉ giới hạn ở
các lĩnh vực tài chính, chính phủ và truyền thơng. Một số mơ tả nó như là một
cuộc cách mạng, trong khi một trường phái tư tưởng khác nói rằng nó sẽ là
download by :
2
một sự tiến hóa và phải mất nhiều năm nữa mới có được những lợi ích thiết
thực từ Blockchain. Cuộc cách mạng đã bắt đầu; nhiều tổ chức lớn trên khắp
thế giới đã chứng minh bằng cách sử dụng công nghệ Blockchain. Tuy nhiên,
một số tổ chức vẫn đang ở giai đoạn thăm dò sơ bộ nhưng dự kiến sẽ tiến bộ
nhanh hơn khi công nghệ ngày càng trở nên trưởng thành. Đây là một cơng
nghệ có ảnh hưởng đến các cơng nghệ hiện tại và có khả năng thay đổi chúng
ở mức cơ bản.
Trong năm 2009, triển khai thực tế đầu tiên của một cryptocurrency tên
Bitcoin được giới thiệu; lần đầu tiên nó giải quyết được vấn đề phân tán của
sự đồng thuận trong một mạng tin cậy. Nó sử dụng mật mã khóa cơng khai
với các chuỗi mã băm (hash) và bằng chứng xử lý công việc (POW) để cung
cấp một phương pháp an tồn, kiểm sốt, phân cấp và khai thác tiền điện tử.
Sự đổi mới chính là ý tưởng của một danh sách được sắp xếp các khối bao
gồm các giao dịch, mật mã bảo mật và bằng cơ chế POW.
Nhìn vào tất cả các cơng nghệ nói trên và lịch sử, thật dễ dàng để thấy
những ý tưởng và khái niệm từ các chương trình tiền điện tử và các hệ thống
phân phối được kết hợp với nhau để tạo ra Bitcoin và sau này là công nghệ
Blockchain.
Blockchain đầu tiên được phát minh và thiết kế bởi Satoshi Nakamoto
và được hiện thực hóa vào năm sau đó như là một phần cốt lõi của Bitcoin,
khi cơng nghệ Blockchain đóng vai trị như là một cuốn sổ cái cho tất cả các
giao dịch. Qua việc sử dụng mạng ngang hàng và một hệ thống dữ liệu phân
cấp, Bitcoin Blockchain được quản lý tự động. Việc phát minh ra Blockchain
cho Bitcoin đã làm cho nó trở thành loại tiền tệ kỹ thuật số đầu tiên giải quyết
được vấn đề double spending (chi tiêu gian lận khi 1 lượng tiền được dùng 2
lần). Công nghệ này của Bitcoin đã trở thành nguồn cảm hứng cho một loạt
các ứng dụng khác.
download by :
3
Nhận thấy, sự quan trọng của công nghệ Blockchain nên tôi đã chọn đề
tài “Ứng dụng công nghệ Blockchain trong Ví điện tử”, để nghiên cứu hiểu
rõ hơn về ứng dụng ví điện tử Blockchain, mục tiêu tìm hiểu về cơng nghệ
Blockchain, cơng nghệ Ví Blockchain. Đây là cơng nghệ giúp cho việc giao
dịch tiền điện tử được bảo mật bởi các thuật tốn mã hóa khóa cơng khai, sử
dụng chữ ký số và hàm băm để bảo vệ tính bí mật, xác thực và tồn vẹn thơng
tin trong cơng nghệ Blockchain.
Nội dung của luận văn gồm ba chương:
Chương 1. Tổng quan về công nghệ Blockchain, bao gồm những
hiểu biết cơ bản về công nghệ Blockchain như: khái niệm, cấu tạo, đặc điểm,
cách hoạt động, các loại Blockchain, những lợi ích, hạn chế và các ứng dụng
tiềm năng của công nghệ Blockchain.
Chương 2. Cơng nghệ Ví điện tử Blockchain, chỉ rõ được khái niệm,
chi tiết cơng nghệ ví, một số loại ví thường gặp, cách tạo Ví Blockchain hiện
nay.
Chương 3. Thực nghiệm mơ phỏng Ví dùng cơng nghệ Blockchain,
trình bày cách tạo ra một block, tạo chữ ký, tạo chuỗi Blockchain, tạo ra Ví và
xử lý giao dịch chi tiêu trong Ví Blockchain.
Do thời gian thực hiện luận văn tương đối ngắn hạn nên luận văn của
tôi chắc chắn sẽ khơng tránh khỏi những thiếu sót. Vì vậy tơi rất mong nhận
được sự đóng góp ý kiến của thầy cơ để luận văn của tơi được hồn thiện hơn.
Tơi xin chân thành cảm ơn!
HỌC VIÊN THỰC HIỆN
Lê Đình Thy Hải
download by :
4
Chương 1
TỔNG QUAN VỀ CÔNG NGHỆ
BLOCKCHAIN
1.1. KHÁI NIỆM
Khái niệm Blockchain (chuỗi khối) thường được tiếp cận trên 3 khía
cạnh khác nhau:
• Xét trên khía cạnh kinh tế: Blockchain được xem là cuốn sổ cái phi tập
trung, ghi nhận mọi giao dịch trên mạng ngang hàng. Sử dụng công nghệ này,
người tham gia có thể xác nhận giao dịch mà khơng cần qua một đơn vị xác
thực tập trung nào. (theo PricewaterhouseCoopers)
• Xét trên khía cạnh cơng nghệ: Blockchain được coi là một giải pháp
đảm bảo an toàn cho các giao dịch thực hiện nhờ biện pháp mã hóa bất biến
các giao dịch tài sản đã được thực hiện.
• Xét trên khía cạnh xã hội: Blockchain giúp tạo dựng niềm tin cho các
bên tham gia giao dịch thông qua một mạng lưới phi tập trung.
Bằng cách cho phép phân phối các thông tin kỹ thuật số nhưng không
được sao chép, công nghệ Blockchain đã tạo ra xương sống cho một loại hình
Internet mới. Trong cuốn sách Blockchain Revolution (2016), Don & Alex
Tapscott đã nhận định rằng: “Blockchain là một sổ cái kỹ thuật số không thể
bị phá hỏng của các giao dịch kinh tế, có thể được lập trình để ghi lại khơng
chỉ những giao dịch tài chính mà có thể ghi lại tất cả mọi thứ có giá trị”.
1.2. CƠ SỞ HÌNH THÀNH VÀ CẤU TẠO
1.2.1. Cơ sở hình thành
a. Ý tưởng ra đời
Bắt nguồn từ bài toán “Các vị tướng Byzantine” (Byzantine Generals)
trong ngành khoa học máy tính và xử lý đường truyền tin cậy trong một hệ
download by :
5
thống phân cấp. Nội dung bài tốn mơ tả: Một đạo quân đi chiếm thành và các
vị tướng nằm ở nhiều vị trí khác nhau.
Trong đó có N tướng trung thành muốn chiếm thành và M tướng phản
bội muốn rút binh, một tướng phản bội truyền tin cho một nhóm là tấn cơng
và truyền tin cho nhóm khác là rút binh. Vậy làm sao để các tướng có thể nhất
quán thông tin và cùng nhau chiếm thành? Chỉ cần một sơ xuất trong việc
truyền tin có thể khiến cả đạo qn có thể bị tiêu diệt.
Hình 1.1. Hai trường hợp của bài toán Các vị tường Byzantine
Để các tướng lĩnh có thể tin tưởng lẫn nhau, cần phải có một bên thứ ba
để xây dựng lịng tin. Trong bài tốn trên, cần có một bên thứ ba đứng ra làm
thỏa thuận để các tướng lĩnh ký tên vào, nếu vị tướng nào làm trái thỏa thuận
sẽ bị trừng phạt. Bên thứ ba đảm bảo cho việc chiếm thành của các vị tướng là
đồng loạt, bởi vì các tướng có thể không tin nhau nhưng bắt buộc phải tin
tưởng tuyệt đối vào bên thứ ba này.
Đây là ý tưởng mở đầu cho một hệ thống Blockchain có thể giúp các vị
tướng tin tưởng nhau hơn. Sau cuộc khủng hoảng tài chính năm 2008, hệ
download by :
6
thống tài chính Mỹ sụp đổ hồn tồn khiến người dân đánh mất niềm tin vào
đồng tiền của một bên thứ ba đáng tin cậy. Ý tưởng về Bitcoin – một đồng
tiền phân cấp ngang hàng trên mạng máy tính lần đầu tiên được Satoshi
Nakamoto đưa ra, cũng là ứng dụng đầu tiên của Blockchain. Việc phát minh
ra Blockchain cho Bitcoin đã làm cho nó trở thành loại tiền tệ kỹ thuật số đầu
tiên giải quyết được vấn đề Double Spending (chi tiêu gian lận khi một lượng
tiền được dùng 2 lần). Công nghệ này của Bitcoin đã trở thành nguồn cảm
hứng cho một loại các ứng dụng khác.
b. Quá trình phát triển
Hình 1.2. Quá trình phát triển của Blockchain
*R3 (R3CEV LLC) là một công ty chuyên về công nghệ sổ cái phân tán
(DLT - Distributed Ledger Technology), được hỗ trợ bởi hiệp hội của hơn 70
tổ chức tài chính lớn nhất thế giới về nghiên cứu và phát triển việc sử dụng cơ
download by :
7
sở dữ liệu Blockchain trong hệ thống tài chính có trụ sở tại thành phố New
York (theo Pioneer Discover)
1.2.2. Cấu tạo
Một Blockchain là một chuỗi (Chain) các khối (Block) có chứa thơng
tin. Chuỗi chính (màu đen) là chuỗi dài nhất gồm các khối từ khối khởi tạo
(màu xanh lá cây) đến khối hiện tại. Các khối riêng lẻ (màu tím nhạt) nằm ở
bên ngồi chuỗi chính.
Hình 1.3. Minh họa chuỗi khối trong hệ thống
+ Cấu tạo của một khối (Block)
Mỗi khối bao gồm: Một lượng dữ liệu (Data), mã băm (Hash) của khối
hiện tại và mã băm của khối trước đó (Hash of previous block).
Hình 1.4. Cấu tạo của một khối gồm 3 phần
download by :
8
- Dữ liệu (Data)
Loại dữ liệu được lưu trữ bên trong một khối phụ thuộc về loại
Blockchain (vào vấn đề mà Blockchain đang giải quyết). Như trong Bitcoin
Blockchain thì mỗi khối lưu thông tin về chi tiết các giao dịch, gồm: Người
gửi, người nhận và số coins (xu) giao dịch.
Hình 1.5. Dữ liệu trong một khối
- Mã băm (Hash)
Mỗi khối được đánh dấu bằng một mã băm duy nhất gồm 64 ký tự (ví dụ:
0000641727773245e50c0235823c9ae0785d419499cc5a5dcdff2912a53f0f7f),
tương tự như dấu vân tay là duy nhất với mỗi người, thì mỗi khối và nội dung
bên trong nó là duy nhất.
Khi mỗi khối được khởi tạo, mã băm của nó cũng được tính tốn dựa
trên dữ liệu của khối đó.
Thay đổi dữ liệu trong khối sẽ làm cho mã băm thay đổi hoàn toàn. Việc
sử dụng mã băm thuận tiện cho việc phát hiện các thay đổi đối với các khối,
khi mã băm của một khối bị thay đổi, nó khơng cịn là khối ban đầu nữa.
download by :
9
Hình 1.6. Mã băm (Hash) của một khối
- Mã băm của khối trước đó (Hash of previous block)
Là mã băm của khối Block liền trước, kết quả tạo ra một chuỗi các
khối nối tiếp nhau và đây chính là cơng nghệ làm cho Blockchain (chuỗi
khối) an tồn.
Hình 1.7. Mã băm (Hash) của khối trước
- Ví dụ: Có một chuỗi khối. Mỗi khối có một mã băm của chính nó và
mã băm của khối trước đó. Khối thứ 3 sẽ lưu mã băm của khối trước đó là
khối thứ 2, khối thứ 2 lưu mã băm của khối 1. Khối đầu tiên có chút đặc biệt,
nó khơng thể lưu mã băm của khối nào trước đó vì nó là đầu tiên, hay còn gọi
là khối nguyên thủy. Nếu bây giờ can thiệp vào khối thứ 2 và thay đổi dữ liệu
trong khối. Việc này làm cho mã băm của khối thứ 2 thay đổi gây ra việc khối
thứ 3 và các khối tiếp theo của nó khơng cịn hợp lệ vì khối 3 đang lưu trữ mã
băm (đã cũ) khơng cịn hợp lệ của khối trước đó. Vì vậy, thay đổi một khối
download by :
10
duy nhất sẽ làm cho tất của khối tiếp theo trong chuỗi khơng hợp lệ.
Hình 1.8. Liên kết mã Hash giữa các khối
Nhưng việc sử dụng mã băm là không đủ ngăn ngừa can thiệp và làm giả
dữ liệu. Máy tính ngày nay rất nhanh và có thể tính tốn hàng trăm nghìn mã
băm mỗi giây. Hacker có thể làm giả dữ liệu của một khối trong chuỗi và tính
lại tất cả các mã băm của các khối tiếp sau và một lần nữa làm cho chuỗi khối
hợp lệ. Vì vậy, để giảm thiểu điều này, công nghệ Blockchain đưa ra 1 thứ gọi
là bằng chứng xử lý (POW: proof – of – work) và bằng chứng cổ phần ( POS:
Proof of Stake ).
+ Bằng chứng công việc ( POW: Proof of Work ): là một giao thức có
mục đích chính là ngăn chặn các cuộc tấn cơng khơng gian mạng như cuộc tấn
công DDoS (Tấn công từ chối dịch vụ phân tán – Distributed Denial Of
Service) có mục đích làm cạn kiệt nguồn tài nguyên của hệ thống máy tính
bằng cách gửi nhiều yêu cầu giả mạo, khiến các trang web, dịch vụ trực tuyến,
trở nên quá tải, người dùng gặp khó khăn, hay thậm chí khơng thể truy cập
vào các trang web hay dịch vụ Internet. Trong trường hợp Blockchain, khi
download by :
11
một giao dịch muốn thực hiện thì quá trình PoW sẽ diễn ra để kiểm tra cơ sở
thực hiện giao dịch đó. Ví dụ trong giao dịch chuyển khoản, PoW là q trình
thu thập, tính tốn các sổ cái trong hệ thống xem tài khoản muốn chuyển tiền
còn đủ số dư khơng. Q trình này được thực hiện thơng qua việc giải các bài
tốn hay cịn gọi là đào coin.
+ Bằng chứng cổ phần ( POS: Proof of Stake ): là một cách khác để
xác thực cơ sở các giao dịch và ngưỡng đạt được sự đồng thuận phân tán. PoS
thực tế vẫn là một giao thức với mục đích giống như PoW nhưng quá trình để
đạt được mục tiêu thì khác hồn tồn. Proof of Stake xảy ra khi một ‘‘thợ
đào’’ góp cổ phần vào loại tiền tệ kỹ thuật số cụ thể để xác minh cho khối
giao dịch. Một giao dịch muốn diễn ra vẫn cần sự xác minh của các nút
(node) trong hệ thống, tuy nhiên phần thưởng (coin) khơng đến từ việc giải
bài tốn như PoW mà sẽ được chọn ngẫu nhiên theo mức độ nắm giữ cổ phần
của lượng coin phát hành. Không phân biệt nhỏ hay lớn, quy mô khai thác sẽ
tỉ lệ tuyến tính với số lượng cổ phần sở hữu. Điều đó khuyến khích cộng đồng
tham gia vào việc xác nhận giao dịch, tăng cường tính phân cấp và dân chủ
hơn. Ngồi ra Blockchain cịn một cách tự bảo vệ là mơ hình phân tán.
+ Mơ hình phân tán (P2P: Peer – to – peer):
Thay vì một tổ chức hay cá nhân là trung tâm quản lý chuỗi khối
Blockchain là một mạng ngang hàng P2P cho phép bất kỳ ai tham gia. Khi ai
đó tham gia vào mạng lưới này, họ sẽ nhận được bản sao đầy đủ về cả chuỗi
khối. Mạng coi họ là một node. Nút bắt đầu sử dụng dữ liệu từ bản sao để xác
minh rằng mọi thứ vẫn cịn trong trật tự. Khi ai đó tạo ra một khối mới. Khối
mới đó sẽ được gửi tới tất cả mọi người trên mạng. Mỗi nút sau đó kiểm tra
khối để xác thực chắc chắn rằng nó khơng bị giả mạo. Nếu mọi kiểm tra là
đúng, mỗi nút thêm khối này vào chuỗi khối của mình. Tất cả các nút trong
mạng này tạo sự đồng thuận theo một nguyên tắc đã đưa ra. Họ đồng ý về
download by :
12
những khối nào là hợp lệ và khối nào không hợp lệ. Các khối bị giả mạo được
tạo ra từ một nút sẽ bị từ chối bởi các nút còn lại trong mạng. Vì vậy, để sửa
đổi một Blockchain thành công bạn sẽ cần phải thực hiện các sửa đổi với tất
cả các khối trên chuỗi, tính tốn lại bằng chứng xử lý với mỗi khối và kiểm
soát nhiều hơn 50% số nút trong mạng ngang hàng. Chỉ sau khi thực hiện tất
cả các việc này, khối giả mạo của bạn mới nhận được sự đồng thuận của mọi
nút. Điều này là gần như không thể thực hiện.
Vậy công nghệ Blockchain là sự kết hợp giữa 3 loại cơng nghệ:
• Mật mã học: Sử dụng Public key, Private Key và hàm Hash function
để đảm bảo tính minh bạch, tồn vẹn và riêng tư. (Public Key và Private Key
được giới thiệu trong phần Bitcoin)
• 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 (PoW, PoS,…) và được thúc đẩy bởi động lực kinh
tế.
• 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.
1.3. PHÂN LOẠI BLOCKCHAIN
Hệ thống Blockchain chia thành 3 loại chính:
1.3.1. Public
Bất kỳ ai cũng có quyền đọc và ghi dữ liệu trên Blockchain. Qúa trình
xác thực giao dịch trên Blockchain này địi hỏi phải có hàng nghìn hay hàng
vạn nút tham gia. Ví dụ: Bitcoin, Ethereum,…
download by :
13
Hình 1.9. Mạng lưới Public
[Nguồn: Credit Suisse research]
1.3.2. 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. Tổ chức này có thể hoặc khơng
cho phép người dùng đọc đữ liệu trong một số trường hợp. Bên thứ ba toàn
quyền quyết định mọi thay đổi trên Blockchain. 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.
Hình 1.10. Mạng lưới Private
[Nguồn: Credit Suisse research]
download by :
14
1.3.3. Permissioned
Một dạng của Private nhưng bổ sung thêm một số tính năng nhất định,
kết hợp giữa “niềm tin” khi tham gia vào Public và “niềm tin tuyệt đối” khi
tham gia vào 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.
Hình 1.11. Mạng lưới Permissioned
[Nguồn: Credit Suisse research]
1.4. CÁCH THỨC HOẠT ĐỘNG
Hình 1.12. Mơ hình hoạt động của nền tảng Blockchain
download by :