Ban đầu được phát triển như là phương pháp kế toán cho tiền ảo Bitcoin, blockchains - sử dụng những gì được gọi là công nghệ sổ kế toán phân tán DLT - đang xuất hiện trong một loạt các ứ
Trang 1TRƯỜNG ĐẠI HỌC QUẢNG BÌNH KHOA KỸ THUẬT - CÔNG NGHỆ THÔNG TIN
- -
NGUYỄN VĂN NHÂN
TÌM HIỂU CÔNG NGHỆ BLOCKCHAIN TRONG ỨNG DỤNG TIỀN ẢO BITCOIN
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
ĐỒNG HỚI – NĂM 2018
Trang 2TRƯỜNG ĐẠI HỌC QUẢNG BÌNH KHOA KỸ THUẬT - CÔNG NGHỆ THÔNG TIN
- -
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
TÌM HIỂU CÔNG NGHỆ BLOCKCHAIN TRONG ỨNG DỤNG TIỀN ẢO BITCOIN
Họ tên sinh viên: Nguyễn Văn Nhân
Mã số sinh viên: DQB04140025Chuyên ngành: Công nghệ thông tinGiảng viên hướng dẫn: Ts Hoàng Tuấn Nhã
ĐỒNG HỚI – NĂM 2018
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan số liệu và kết quả nghiên cứu trong luận văn này là trung thực
và chưa hề được sử dụng để bảo vệ một học vị nào Mọi sự giúp đỡ cho việc thực hiện luận văn này đã được cảm ơn và các thông tin trích dẫn trong luận văn đã được chỉ rõ nguồn gốc rõ ràng và được phép công bố
Quảng Bình, ngày 25 tháng 05 năm 2018
Sinh viên
` Nguyễn Văn Nhân
Trang 4NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Xác nhận của giảng viên hướng dẫn
Trang 5Em xin chân thành cảm ơn các thầy giáo, cô giáo trong khoa Kỹ thuật - Công nghệ thông tin Trường Đại học Quảng Bình đã tạo mọi điều kiện thuận lợi giúp đỡ
em trong suốt quá trình học tập và rèn luyện tại trường
Em xin bày tỏ lòng biết ơn vô hạn tới gia đình, người thân và bạn bè đã luôn sát cánh bên em trong suốt quá trình học tập và nghiên cứu đề tài
Mặc dù trong quá trình nghiên cứu đề tài, bản thân em có những cố gắng nhất định, song do trình độ và thời gian có hạn nên đề tài không tránh khỏi những thiếu sót Vậy kính mong các thầy cô giáo và các bạn đóng góp ý kiến để đề tài của em được hoàn thiện hơn
Em xin chân thành cảm ơn!!!
Quảng Bình, ngày 25 tháng 05 năm 2018
Sinh viên
Nguyễn Văn Nhân
Trang 6Mục lục
MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục tiêu nghiên cứu 1
3 Đối tượng, phạm vi, phương pháp nghiên cứu 2
4 Nội dung nghiên cứu 2
5 Kết quả đạt được 2
CHƯƠNG I: TỔNG QUAN VỀ CÔNG NGHỆ BLOCKCHAIN 3
1.1 Sự ra đời công nghệ Blockchain 3
1.2 Blockchain là gì? 3
1.3 Đặc điểm chính của công nghệ Blockchain 4
1.4 Các phiên bản công nghệ Blockchain 5
1.5 Các loại Blockchain 5
1.6 Cơ chế đồng thuận trong Blockchain 5
1.7 Cách thức hoạt động của công nghệ Blockchain 6
1.8 Hạn chế, lợi ích của công nghệ Blockchain 7
1.8.1 Hạn chế 7
1.8.2 Lợi ích 8
CHƯƠNG II: TỔNG QUAN VỀ TIỀN ẢO BITCOIN 10
2.1 Khái niệm đồng tiền điện tử Bitcoin 10
2.1.2 Ứng dụng của tiền ảo Bitcoin 10
2.1.3 Nguồn góc ra đời của tiền ảo Bitcoin 10
2.1.4 Tỷ giá Bitcoin hiện tại 11
2.2.1 Tài khoản 12
2.2.2 Tính bảo mật 12
2.2.3 Tính riêng tư 13
2.2.4 Sự tiến hoá của phần mềm Bitcoin 13
2.3 Ví Bitcoin và các loại ví lưu trữ Bitcoin 13
2.3.1 Ví Bitcoin 13
2.3.2 Các loại ví lưu trữ Bitcoin 13
2.4 Tổng quan cách đào Bitcoin 14
2.4.1 Thuật toán, nguyên lý đào Bitcoin 14
2.4.2 Cấu hình máy đào Bitcoin 15
2.4.3 Phần mềm đào Bitcoin 16
Trang 7CHƯƠNG III: ỨNG DỤNG CỦA CÔNG NGHỆ BLOCKCHAIN TRONG TIỀN
ẢO BITCOIN 16
3.1 Chuỗi khối 16
3.1.1 Khái niệm 16
3.1.2 Tổng quan về chuỗi chặn 16
3.2 Giao dịch 18
3.3 Máy chủ Dấu thời gian 19
3.4 Chứng minh công việc 19
3.5 Mạng 20
3.6 Ưu đãi 21
3.7 Khôi phục dung lượng đĩa 21
3.8 Xác minh thanh toán đơn giản 22
3.9 Kết hợp và tách giá trị 23
3.10 Bảo mật 23
3.11 Tính toán 24
3.12 Giao thức Blockchain Ripple 26
3.13 Đồng tiền Cuber tại Estonia 27
3.14 Thuật toán Hashing algorithm 27
3.14.1 Khái niệm về thuật toán 27
3.14.2 Cách thuật toán băm hoạt động 28
3.15 Các loại tiền ảo 31
3.15.1 Coin tiền tệ 31
3.15.2 Coin tiềm năng 31
3.15.3 Coin ứng dụng 31
3.15.4 Ưu điểm của Bitcoin 32
3.15.4 Nhược điểm của Bitcoin 33
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 35
1 Kết luận 35
2 Hướng phát triển 36
TÀI LIỆU THAM KHẢO 37
Trang 8AR Tương tác thực tại ảo
TPP Hiệp định đối tác kinh tế xuyên Thái Bình Dương
FTA Hiệp định thương mại tự do
SWIFT Society for Worldwide Interbank and Financial
Telecommunication KYC Know your customer
P2P Peer-to-peer
USC Utility Settlement Coin
IBM Tập đoàn máy tính quốc tế
Airbnb AirBed and Breakfast
Trang 9DANH MỤC HÌNH ẢNH
Hình 1.1: Bài toán các vị tướng Byzantine 4
Hình 1.2: Giao dịch giữa 2 đối tác bởi công nghệ Blockchain 10
Hình 1.3: Ứng dụng của blockchain vào cuộc sống 8
Hình 2.1: Một mỏ đào Bitcoin của Genesis Mining tại Iceland……… 21
Hình 3.1: Đồng tiền ảo Ripple 35
Hình 3.2: Thuật toán Băm 37 Hình 3.3: Thuật toán SHA-1 38
Trang 10MỞ ĐẦU
1 Lý do chọn đề tài
Hiện nay, chúng ta đang đứng trước thềm của một cuộc cách mạng công cách mạng công nghiệp lần thứ tư (CMCN 4.0), cuộc cách mạng này sẽ không giống như bất kỳ một cuộc cách mạng nào trước đó cả về quy mô, phạm vi và sự phức tạp của
nó
Trong làn sóng cách mạng công nghiệp 4.0, Blockchain được xem là một công
nghệ "chìa khóa" cho chuyển đổi số để các doanh nghiệp nắm bắt cơ hội trong cuộc
đua này Với khả năng chia sẻ thông tin dữ liệu minh bạch theo thời gian thực, tiết kiệm không gian lưu trữ và bảo mật cao, công nghệ Blockchain là một trong những
xu hướng công nghệ đột phá, có khả năng ứng dụng rộng rãi ở nhiều ngành nghề, lĩnh vực
Thương mại trên Internet đã đến gần dựa hoàn toàn vào các tổ chức tài chính phục vụ như bên thứ ba đáng tin cậy để xử lý thanh toán điện tử Trong khi hệ thống hoạt động đủ tốt cho hầu hết các giao dịch, nó vẫn bị các điểm yếu vốn có của mô hình dựa trên sự tin tưởng Các giao dịch hoàn toàn không thể hoàn tác là không thực sự có thể, vì các tổ chức tài chính không thể tránh các tranh chấp trung gian Chi phí hòa giải làm tăng chi phí giao dịch, hạn chế kích thước giao dịch thực tế tối thiểu và cắt giảm khả năng giao dịch ngẫu nhiên nhỏ và chi phí rộng hơn trong việc mất khả năng thực hiện các khoản thanh toán không thể hoàn lại cho các dịch vụ không thể đảo ngược Với khả năng đảo ngược, sự cần thiết phải tin tưởng lan truyền Thương nhân phải cảnh giác với khách hàng của họ, làm phiền họ để biết thêm thông tin hơn họ sẽ cần Một tỷ lệ gian lận nhất định được chấp nhận là không thể tránh khỏi Các chi phí và sự không chắc chắn thanh toán có thể tránh được bằng cách sử dụng tiền tệ thực, nhưng không có cơ chế tồn tại để thực hiện thanh toán qua kênh liên lạc mà không có bên đáng tin cậy
Điều cần thiết là một hệ thống thanh toán điện tử dựa trên bằng chứng mật mã thay vì tin tưởng, cho phép hai bên sẵn sàng giao dịch trực tiếp với nhau mà không cần một bên thứ ba đáng tin cậy Các giao dịch được tính toán không thực tế để đảo ngược sẽ bảo vệ người bán khỏi gian lận và các cơ chế ký quỹ thông thường có thể
dễ dàng được thực hiện để bảo vệ người mua Trong bài báo này, chúng tôi đề xuất một giải pháp cho vấn đề chi tiêu kép sử dụng máy chủ dấu thời gian phân phối ngang hàng để tạo ra bằng chứng tính toán về thứ tự thời gian của các giao dịch Hệ thống này được bảo mật miễn là các nút trung thực kiểm soát chung sức mạnh CPU nhiều hơn bất kỳ nhóm cộng tác nào của các nút tấn công Hiểu được tầm quan trọng và tính hiệu quả của xu hướng thời đại ngày nay, tôi đã quyết định chọn đề
tài: “Tìm hiểu công nghệ Blockchain trong ứng dụng tiền ảo Bitcoin” Đề tài chủ
yếu tìm hiểu về những lợi ích mà công nghệ Blockchain mang lại trong thời đại công nghiệp 4.0
2 Mục tiêu nghiên cứu
- Tiếp cận đến công nghệ Blockchain trong thời đại mới
- Tìm hiểu công nghệ Blockchain
- Biết được những tiềm năng, ứng dụng của công nghệ Blockchain trong ứng dụng tiền ảo Bitcoin
Trang 113 Đối tượng, phạm vi, phương pháp nghiên cứu
- Đối tượng nghiên cứu:
- Phương pháp nghiên cứu:
+ Phương pháp phân tích và tổng hợp lý thuyết
+ Phương pháp phân loại và hệ thống hoá lý thuyết
+ Phương pháp chuyên gia
4 Nội dung nghiên cứu
- Tìm hiểu tổng quan về công nghệ Blockchain
- Lợi ích của công nghệ Blockchain mang lại
- Hạn chế khi sử dụng công nghệ Blockchain
- Ứng dụng công nghệ Blockchain vào tiền ảo Bitcoin
5 Kết quả đạt được
- Hiểu được công nghệ Blockchain là gì
- Biết được sự ra đời của công nghệ Blockchain
- Tìm ra những ưu, nhược điểm của công nghệ Blockchain mang lại
- Áp dụng được công nghệ Blockchain vào ứng dụng tiền ảo Bitcoin
Trang 12CHƯƠNG I: TỔNG QUAN VỀ CÔNG NGHỆ BLOCKCHAIN
1.1 Sự ra đời công nghệ Blockchain
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ệ thống phân cấp
Nội dung bài toá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 tuớ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 quân có thể bị tiêu diệt
Hình 1.1: Bài toán các vị tướng Byzantine
Bài toán các vị tướng Byzantine này vẫn chưa ai có thể đưa ra lời giải Do đó chúng ta cần phải có một bên thứ ba để xây dựng lòng tin Ví dụ như trong bài toán trên, cần có một bên thứ ba đứng ra làm thoả thuận để các tướng lĩnh ký tên vào, nếu vị tướng nào làm trái thoả 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ệ thống tài chính Mỹ sụp đổ hoàn toà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
1.2 Blockchain là gì?
Một blockchain là một số hóa, phân tán, công sổ kế toán của tất cả các cryptocurrency giao dịch Không ngừng phát triển thành các khối 'hoàn
Trang 13thành' (các giao dịch gần đây nhất) được ghi lại và thêm vào theo trình tự thời gian,
nó cho phép người tham gia thị trường theo dõi các giao dịch tiền tệ kỹ thuật số mà không cần lưu trữ hồ sơ trung tâm Mỗi nút (một máy tính kết nối với mạng) nhận được một bản sao của blockchain, được tải xuống tự động
Ban đầu được phát triển như là phương pháp kế toán cho tiền ảo Bitcoin, blockchains - sử dụng những gì được gọi là công nghệ sổ kế toán phân tán (DLT) - đang xuất hiện trong một loạt các ứng dụng thương mại ngày nay Hiện nay, công nghệ này chủ yếu được sử dụng để xác minh các giao dịch, trong các loại tiền kỹ thuật số mặc dù nó có thể số hoá, mã hóa và chèn thực tế bất kỳ tài liệu nào vào blockchain Làm như vậy tạo ra một bản ghi không thể xóa nhòa mà không thể thay đổi được; hơn nữa, tính xác thực của bản ghi có thể được toàn bộ cộng đồng xác minh bằng cách sử dụng blockchain thay vì một cơ quan tập trung duy nhất
Một khối là phần 'hiện tại' của một blockchain, nó ghi lại một số hoặc tất cả các giao dịch gần đây Sau khi hoàn thành, một khối đi vào blockchain như một cơ
sở dữ liệu cố định Mỗi khi một khối được hoàn thành, một khối mới được tạo
ra Có vô số các khối như vậy trong blockchain, được kết nối với nhau (như các liên kết trong một chuỗi) theo thứ tự thời gian, tuyến tính thích hợp Mỗi khối chứa một băm của khối trước đó Blockchain có thông tin đầy đủ về các địa chỉ người dùng khác nhau và số dư của chúng ngay từ khối genesis đến khối được hoàn thành gần đây nhất
Blockchain được thiết kế để các giao dịch này không thay đổi, có nghĩa là chúng không thể bị xóa Các khối được thêm vào thông qua mật mã học, đảm bảo rằng chúng vẫn còn chống can thiệp: Dữ liệu có thể được phân phối, nhưng không được sao chép Tuy nhiên, kích thước ngày càng tăng của blockchain được xem xét bởi một số là một vấn đề, tạo ra các vấn đề về lưu trữ và đồng bộ hóa
Công nghệ Blockchain có thể nói là sự kết hợp giữa 3 loại công nghệ bên dưới:
- Mật mã học: Sử dụng public key và hàm hash function để đảm bảo tính minh
bạch, toàn vẹn và riêng 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
- 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ế
1.3 Đặc điểm chính của công nghệ 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 toà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 toàn
tuyệt đối
Trang 14- 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ê toà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-this-then-that (IFTTT), cho phép chúng tự thực thi mà không cần bên thứ ba
1.4 Các phiên bản công nghệ Blockchain
- Blockchain 1.0 – Tiền tệ và Thanh toán: Ứng dụng chính của phiên bản này
là tiền mã hoá: bao gồm việc chuyển đổi tiền tệ, kiều hối và tạo lập hệ thống thanh toán kỹ thuật số Đây cũng là lĩnh vực quen thuộc với chúng ta nhất mà đôi khi khá nhiều người lầm tưởng Bitcoin và Blockchain là một
- Blockchain 2.0 – Tài chính và Thị trường: Ứng dụng xử lý tài chính và
ngân hàng: mở rộng quy mô của Blockchain, đưa vào các ứng dụng tài chính và thị trường Các tài sản bao gồm cổ phiếu, chi phiếu, nợ, quyền sở hữu và bất kỳ điều gì
có liên quan đến thỏa thuận hay hợp đồng
- Blockchain 3.0 – Thiết kế và Giám sát hoạt động: Đưa Blockchain vượt
khỏi biên giới tài chính, và đi vào các lĩnh vực như giáo dục, chính phủ, y tế và nghệ thuật Ở những lĩnh vực này sẽ là lại có nhiều loại như physical, digital hay human in nature
1.5 Các loại Blockchain
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ó hàng nghìn hay hàng vạn nút tham gia Do đó để tấn công vào hệ thống Blockchain này là điều bất khả thi vì chi phí khá cao 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 Tổ chức này có thể hoặc không cho phép người dùng đọc dữ 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 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 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
1.6 Cơ chế đồng thuận trong Blockchain
Cơ chế đồng thuận trong Blockchain có thể hiểu như cách thức mà các vị tướng Byzantine có thể đạt đồng thuận để cùng nhau chiếm thành Sau đây là các loại cơ chế đồng thuận phổ biến:
Trang 15- Proof of Work (Bằng chứng Công việc): Phổ biến trong Bitcoin, Ethereum,
Litecoin, Dogecoin và hầu hết các loại tiền mã hoá Tiêu tốn khá nhiều năng lượng điện
- Proof of Stake (Bằng chứng Cổ phần): Phổ biến trong Decred, Peercoin và
trong tương lai là Ethereum và nhiều loại tiền mã hoá khác Phân cấp hơn, tiêu hao
ít năng lượng và không dễ gì bị đe doạ
- Delegated Proof-of-Stake (Uỷ quyền Cổ phần): Phổ biến trong Steemit, EOS,
BitShares Chi phí giao dịch rẻ; có khả năng mở rộng; hiệu suất năng lượng cao Tuy nhiên vẫn một phần hơi hướng tập trung vì thuật toán này lựa chọn người đáng tin cậy để uỷ quyền
- Proof of Authority (Bằng chứng Uỷ nhiệm): Đây là mô hình tập trung
thường thấy trong POA.Network, Ethereum Kovan testnet Hiệu suất cao, có khả năng mở rộng tốt
- Proof-of-Weight (Bằng chứng Khối lượng): Phổ biến trong Algorand,
Filecoin Có thể tuỳ chỉnh và khả năng mở rộng tốt Tuy nhiên quá trình thúc đẩy việc phát triển sẽ là một thử thách lớn
- Byzantine Fault Tolerance (Đồng thuận chống gian lận): Phổ biến trong
Hyperledger, Stellar, Dispatch, và Ripple Năng suất cao, chi phí thấp, có khả năng
mở rộng Tuy nhiên vẫn chưa thể tin tưởng hoàn toàn Thuật toán này có 2 phiên bản là:
+ Practical Byzantine Fault Tolerance (Đồng thuận chống gian lận / Tướng Byzantine bao vây Blockchain trong thực tế)
+ Federated Byzantine Agreement (Liên minh Byzantine cùng đồng thuận)
- Directed Acyclic Graphs (Thuật toán tô pô): Thường thấy trong Iota (công
nghệ Tangle), Hashgraph, Raiblocks/Nano (công nghệ Block-lattice), là một đối thủ của Blockchain
1.7 Cách thức hoạt động của công nghệ Blockchain
1 Người dùng yêu cầu một giao dịch (mua, bán, trao đổi)
2 Yêu cầu sẽ được phát tới các mạng ngang hàng P2P (Peer to Peer: bao gồm các máy tính (được gọi là Node) kết nối với nhau)
3 Các máy tính trong hệ thống này sẽ xác thực giao dịch cùng với thông tin người dùng thông qua các thuật toán trong Blockchain
4 Sau khi giao dịch được xác nhận, chúng sẽ được kết hợp với những giao dịch khác tạo nên một khối (Gọi là Block) trong hệ thống Blockchain – Nơi nó sẽ tồn tại
và không thể sửa đổi
5 Hoàn thành giao dịch
Trang 16Hình 1.2: Giao dịch giữa 2 đối tác bởi công nghệ Blockchain
Hệ thống Blockchain sử dụng các thuật toán giúp nó có thể truyền tải dữ liệu
mà không thông qua trung gian để xác nhận thông tin Hệ thống Blockchain tồn tại nhiều nút (Node) độc lập với khả năng xác nhận thông tin Mọi thông tin trong Blockchain có thể thay đổi hoặc bổ sung thêm khi có sự chấp nhận của tất cả các nút trên hệ thống Blockchain vẫn hoạt động bình thường khi một phần của hệ thống sụp đổ, những máy tính và các nút vẫn hoạt động để bảo vệ thông tin, giữ cho Blockchain không bị mất dữ liệu
1.8 Hạn chế, lợi ích của công nghệ Blockchain
1.8.1 Hạn chế
Blockchain không phải là một phép màu hay toàn là những điều quyến rũ, nó cũng có những trở ngại nhất định mà trong tương lai gần chúng ta cần phải khắc phục Những quảng cáo hoặc lời thổi phồng xung quanh blockchain có thể khiến nhiều người mù quáng, không nhận ra sự thật rất rõ ràng rằng, blockchain tồn tại những bất lợi khi sử dụng khiến các ngành công nghiệp phải tìm cách giảm thiểu nó trước khi có thể áp dụng trên quy mô lớn.[7]
Rất tốn điện
Vì mỗi blockchain đã sao chép chính mình đến mọi nút trên blockchain nên đã tạo ra một số lượng lớn những sự dư thừa Mỗi lần giao dịch Bitcoin được thực hiện, nó được xác nhận nhiều lần vì có nhiều nút trên mạng Quy trình này sử dụng rất nhiều điện Các blockchain tư nhân có thể không bị ảnh hưởng nhiều vì họ có thể giới hạn các blockchain đến một số ít máy tính Tuy nhiên, nếu là ngân hàng, phải xử lý hàng nghìn giao dịch mỗi phút trên toàn cầu, thì đây sẽ là vấn đề lớn.[7]
Trang 17Tốn không gian lưu trữ
Ngay bây giờ, để vận hành một nút trên blockchain Bitcoin, bạn phải tải xuống 60GB dữ liệu Sẽ như thế nào nếu dữ liệu là 1 Terabyte? Nếu thị trường Bitcoin phát triển mạnh, sẽ có nhiều blockchain với dung lượng hàng Terabyte xuất hiện trong thực tế Khi đó, chỉ có các trang trại máy chủ và những người thực sự quan tâm đến việc thương mại hóa tiền kỹ thuật số quy mô lớn, mới có thể vận hành toàn bộ các nút Điều này sẽ tạo ra một mạng lưới tập trung, vốn được coi là một sự phân quyền kỳ lạ.[7]
1.8.2 Lợi ích
Với những đặc thù của Blockchain, các chuyên gia cho rằng, công nghệ Blockchain sẽ mở ra một xu hướng ứng dụng tiềm năng cho nhiều lĩnh vực như tài chính ngân hàng, bán lẻ, vận chuyển hàng hóa, sản xuất, viễn thông Việc áp dụng Blochchain vào cuộc sống sẽ đem lại lợi ích thật sự cho cộng đồng và toàn xã hội [1]
Hình 1.3: Ứng dụng của blockchain vào cuộc sống
Bởi vì blockchain có thể theo dõi và kiểm tra các hoạt động trong suốt quá trình sản xuất, vận chuyển và phân phối của một chuỗi cung ứng, nó sẽ giúp loại bỏ nhiều rủi ro và mối quan tâm liên quan đến quá trình di chuyển của sản phẩm.[1] Trong mỗi bước di chuyển, hay còn gọi là khối (block), blockchain sẽ xác định các bên liên quan, giá, ngày, địa điểm, chất lượng, trạng thái của sản phẩm và bất kỳ thông tin khác liên quan đến quản lý lô hàng và sản phẩm trên các chuyến hàng Các thông tin này được lưu trữ phân tán trên hàng triệu máy tính, máy chủ có tham gia vào mạng lưới ngang hàng giúp những người trong mạng lưới có thể tìm ra từng sản phẩm với tận nguồn gốc của nguyên vật liệu được sử dụng Dữ liệu quan trọng
Trang 18có thể được cập nhật theo thời gian thực (real-time), có thể làm giảm nhu cầu đối chiếu với hồ sơ nội bộ của mỗi bên và cho phép mỗi bên trong hệ thống mạng lưới cung ứng có được khả năng hiển thị (visibility) chi tiết về các bước di chuyển và tình trạng của sản phẩm.[1]
Hơn thế nữa, cấu trúc phân quyền của sổ cái làm cho bất kỳ bên nào cũng không thể giữ quyền sở hữu hoặc thao túng dữ liệu Thông tin được chia sẻ sẽ làm tăng khả năng hiển thị (visibility) và giảm thiểu khả năng xảy ra lỗi của con người
Nó cũng có thể làm giảm đáng kể thời gian trễ, loại bỏ chi phí phát sinh thêm, giảm thiểu sai sót của con người Tính chính xác và tính trách nhiệm tăng lên của dữ liệu được quản lý trong blockchain có thể mang lại nhiều cơ hội hơn cho việc phân tích
dữ liệu để nâng cao hiệu quả chuỗi cung ứng.[1]
Trang 19CHƯƠNG II: TỔNG QUAN VỀ TIỀN ẢO BITCOIN 2.1 Khái niệm đồng tiền điện tử Bitcoin
2.1.1 Khái niệm
Bitcoin là một loại tiền kỹ thuật số được mã hóa và phát hành dưới hình thức
mã nguồn mở thông qua nền tảng công nghệ Blockchain
Khái niệm tiền ảo được gắn liền với Bitcoin nhưng trong thực tế Bitcoin là một loại tiền tệ được công nhận ở rất nhiều quốc gia và chúng được chấp nhận trong mọi giao dịch như các loại tiền tệ khác, chỉ khác nhau ở chỗ Bitcoin là “Tiền điện tử” chứ không được in ra như các loại tiền khác
2.1.2 Ứng dụng của tiền ảo Bitcoin
Trong thời điểm hiện tại khi tiền ảo đang làm nên cơn sốt trên toàn thế giới, nó không chỉ thu hút các nhà đầu tư, lưu trữ và sinh lời mà còn là một loại tiền tệ để giao dịch thanh toán như mua nhà, trả tiền dịch vụ, ăn uống,…
2.1.3 Nguồn góc ra đời của tiền ảo Bitcoin
Nhắc đến Bitcoin chúng ta sẽ phải nhớ đến Satoshi Nakamoto, ông chính là người tạo ra đồng tiền ảo Bitcoin mà chúng ta đang tìm hiểu và là tiền đề cho hàng ngàn đồng tiền ảo khác (gọi là Altcoin) ra đời Tuy nhiên, hiện tại chúng ta vẫn chưa biết được Satoshi Nakamoto là ai và tại sao ông lại không công khai danh tính thật của mình
Trung bình cứ khoảng 10 phút thì sẽ có một lượng Bitcoin được đào lên Con
số này hiện đang là 25 vì cứ mỗi 4 năm nó lại giảm đi phân nửa so với số Bitcoin ban đầu được tạo ra là 50 Dự tính đến năm 2140 thì số lượng Bitcoin sẽ đạt ngưỡng
21 triệu Bitcoin và không còn Bitcoin để đào nữa
Hiện tại tổng số Bitcoin được đào lên mỗi 10 phút là 25 và cứ 4 năm nó lặp lại một chu kỳ giảm 1 nửa số lượng Bitcoin Chúng ta có thể tính toán đơn giản dựa theo lý thuyết căn bản cứ 10 phút lại có 1 Block (25 BTC ở thời điểm hiện tại) trên
Trang 20Như vậy sẽ có khoảng 210.000 Bitcoin được tạo ra trong 4 năm Kết hợp chu
kỳ 4 năm giảm một nửa số lượng ban đầu các bạn có thể dễ dàng tính ra: 210.000*50*(1/(1-0.5))= 21.000.000 Bitcoin
Chỉ giới hạn 21 triệu Bitcoin, cũng giống như vàng, đây là một con số hữu hạn giúp giảm tỉ lệ lạm phát và gia tăng giá trị cho đồng BTC, tuy nhiên chúng ta không thể biết được liệu Bitcoin có duy trì ở mức 21 triệu hay không, điều này phụ thuộc vào định hướng và thay đổi của các nhà phát triển trong tương lại Còn hiện tại Bitcoin vẫn giữ vững được vị thế số 1 của mình trên thị trường tiền ảo.[6]
2.1.4 Tỷ giá Bitcoin hiện tại
Bitcoin hiện là đồng tiền ảo có giá trị nhất hiện nay So với giao dịch Bitcoin đầu tiền của một chàng trai gửi 10.000 BTC chỉ để mua một cái bánh Pizza thì hiện tại với số Bitcoin đó anh ấy có thể ăn Pizza gần như cả đời
Trang 212.2.1 Tài khoản
Một địa chỉ Bitcoin mẫu
Mỗi tài khoản Bitcoin được biểu diễn dưới dạng 1 ví Bitcoin Mỗi ví Bitcoin bao gồm địa chỉ Bitcoin công khai (hash của public key) và khóa riêng tư (private key) Một địa chỉ có 160 bit dữ liệu, vì vậy có thể tạo ra tổng cộng 2160 địa chỉ Bitcoin - tương đương 1048 địa chỉ (để so sánh: Có tổng cộng khoảng 1047 phân
tử nước trên trái đất) Ngoài ra địa chỉ còn bao gồm 4 byte checksum nên xác suất mạng lưới chấp nhận địa chỉ Bitcoin gõ sai cực kỳ thấp.[5]
Bất kỳ ai cũng có thể gửi Bitcoin đến một chiếc ví bằng địa chỉ công khai, còn khoá riêng tư phải được nhập khi chủ ví muốn gửi Bitcoin đi Vì vậy, việc sở hữu Bitcoin được định nghĩa là sự nắm giữ khoá riêng tư của 1 địa chỉ Bitcoin Một khi khoá riêng tư bị mất, mạng lưới Bitcoin sẽ không thể xác nhận được việc sở hữu số bitcoin đó, và số bitcoin trong địa chỉ đó sẽ vĩnh viễn bị mất Ví cho phép người dùng hoàn tất thanh toán giữa các địa chỉ khác nhau bằng cách cập nhật vào blockchain Khi thực hiện giao dịch bằng thiết bị di động, người dùng có thể sử dụng mã QR để đơn giản hoá quy trình thanh toán.[5]
Có nhiều loại công cụ quản lý Ví Bitcoin hiện hành Điển hình: Ví trên nền tảng Web dễ sử dụng nhất, bao gồm: Coinbase, Blockchain.info, BitGo, Xapo; Ví phần mềm: Armory, Bitcoin Core; Ví cho thiết bị di động: breadwallet, Blockchain.info; Ví phần cứng: Ledger Nano S, Trezor; Hoặc bạn có thể tự in ví giấy cho mình để cất trong tủ an toàn từ một trong các ví trên.[5]
2.2.2 Tính bảo mật
Cũng giống như các chính phủ phụ thuộc vào quyền lực của quân đội và cơ quan hành pháp để đảm bảo an ninh tiền tệ và mang lại giá trị cho tiền pháp định, thì độ an toàn của hệ thống Bitcoin phụ thuộc vào khả năng xử lý của toàn bộ mạng lưới blockchain để chống lại các nguy cơ phá hoại đồng thời mang lại giá trị cho Bitcoin Đã có nhiều vụ trộm Bitcoin thành công xảy ra nhưng tất cả đều có một đặc điểm chung là do nạn nhân để lộ khóa riêng tư cho kẻ tấn công Cho tới nay, giao thức Bitcoin vẫn chưa hề có lỗ hổng bảo mật nào để làm mất Bitcoin của người dùng mà không dùng đến khóa riêng tư.[5]
Trang 222.2.3 Tính riêng tư
Bitcoin là loại tiền tệ bán ẩn danh, tức là số tiền không gắn với thực thể trong thế giới thật, mà gắn với địa chỉ Bitcoin Tuy chủ sở hữu địa chỉ Bitcoin không được xác định rõ ràng, nhưng bù lại các giao dịch lại được công khai Ngoài ra, các giao dịch có thể được liên kết với cá nhân hoặc công ty thông qua việc phân tích dòng giao dịch (ví dụ: nếu các giao dịch chi tiêu từ nhiều nguồn đầu vào thì có thể các nguồn đó đều chung chủ) và kết hợp dữ liệu đến từ các nguồn đã được định danh (các sàn giao dịch Bitcoin có thể được yêu cầu lưu trữ thông tin cá nhân người
sử dụng) Mặc dù vậy, cũng như tiền mặt, việc xác định địa chỉ Bitcoin nào gắn với người nào là tương đối khó Để tăng tính riêng tư, mỗi giao dịch cần sử dụng một địa chỉ Bitcoin mới.[5]
2.2.4 Sự tiến hoá của phần mềm Bitcoin
Phần mềm Bitcoin được phát hành dưới dạng mã nguồn mở, tức là ai cũng có thể xem được mã nguồn và thay đổi nó Khi có một tính năng mới cần đưa vào Bitcoin, nhà phát triển phần mềm sẽ đưa ra 1 BIP (Bitcoin Improvement Proposals), bao gồm 1 pull request trên Github Người sử dụng sẽ bình chọn những tính năng
mà họ đồng ý bằng cách tải phiên bản Bitcoin chứa chúng về Kể cả khi Satoshi đề xuất một thay đổi mà người dùng không muốn, họ có thể chọn cách không tải về và chạy nó Bitcoin, cũng như các dự án mã nguồn mở khác, là một loại dân chủ không thủ lĩnh - một phương pháp mới để chi phối hành vi trực tuyến của con người Mỗi máy tính là một phiếu bầu, và ai cũng có thể đưa ra luật mới Vì Bitcoin là phần mềm tiến hoá được, nên những đồng tiền mã hoá khác rất khó để có thể cạnh tranh được với nó.[5]
2.3 Ví Bitcoin và các loại ví lưu trữ Bitcoin
2.3.1 Ví Bitcoin
Ví Bitcoin hay còn gọi là ví lưu trữ BTC được hiểu như là một tài khoản ngân hàng nơi bạn cất giữ Bitcoin và mua bán, trao đổi khi cần thiết Ví Bitcoin như là một địa chỉ định danh rằng bạn đã có mặt trên hệ thống Bitcoin Nói ngắn gọn là nếu bạn muốn khởi tạo bất kỳ giao dịch nào liên quan đến Bitcoin thì bắt buộc bạn phải có Ví điện tử để lưu trữ Bitcoin
2.3.2 Các loại ví lưu trữ Bitcoin
Ví Bitcoin thường được chia làm 2 loại “ví nóng” và “ví lạnh Trong 2 loại ví này sẽ chia ra một số loại có chức năng và hình thức khác nhau Các bạn có thể tham khảo tất cả các loại ví lưu trữ Bitcoin để hiểu rõ hơn Cơ bản các vấn đề về ví lưu trữ Bitcoin mà bạn cần quan tâm:
Ví phần mềm: là các ứng dụng được cài đặt trên máy tính (Window, Linux,
Mac) hoặc trên điện thoại (Android, Ios)
Trang 23Ví Web: là loại ví phụ thuộc vào một bên thứ 3 cung cấp Nếu bạn muốn sử
dụng loại ví này thì hãy tìm hiễu kỹ nhà cung cấp
Ví cứng: khác với hai loại ví trên, ví cứng là một thiết bị giúp bạn quản lý
Bitcoin của mình ngoại tuyến Bạn phải kết nối ví cứng vào máy tính để thực hiện giao dịch Bitcoin Phổ biến ở ví cứng là Trezor và Ledger Nano S
2.4 Tổng quan cách đào Bitcoin
2.4.1 Thuật toán, nguyên lý đào Bitcoin
Cơ bản về việc đào Bitcoin là quá trình giải các bài toán Mức độ của các bài toán này sẽ được thay đổi sao cho cữ mỗi 10 phút sẽ có thêm 1 Block trong hệ thống
Càng về sau thì càng nhiều người tham gia và đào Bitcoin và các máy tính ngày càng mạnh dẫn đến việc đào bitcoin có sức cạnh tranh rất cao Ước tính sức mạnh tính toán của mạng lưới Bitcoin hiện nay gấp hơn 250 lần 500 siêu máy tính hàng đầu thế giới cộng lại.[3]
Chính vì vậy mà cấu hình của máy đào Bitcoin phải đáp ứng được độ cạnh tranh nếu bạn không muốn đào hoài mà vẫn trắng tay Để tham gia đào Bitcoin thì bạn phải xác định bỏ ra một số vốn ban đầu, một mạng máy tính mạnh mẽ, và xác định chi phí tiền điện cũng tăng lên nhiều.[3]
Để có thể được cả mạng lưới chấp nhận, khối mới cần phải chứa bằng chứng công việc (proof-of-work) Proof-of-work yêu cầu thợ đào tìm kiếm một số nonce,
mà khi nội dung của khối được hash (hàm băm mật mã học) cùng nonce, kết quả tạo
ra một số nhỏ hơn số target của mạng lưới (số target càng nhỏ thì độ khó càng cao) Nói cách khác: Proof-of-work rất dễ cho các máy tính xác nhận, nhưng cực kỳ mất nhiều thời gian để có thể tạo ra Thợ đào phải thử rất nhiều giá trị nonce khác nhau trước khi đạt được độ khó mà mạng lưới yêu cầu.[3]
Cứ mỗi 2016 khối được tạo ra (mất khoảng 14 ngày), độ khó lại được mạng lưới tự động tinh chỉnh dựa trên khả năng của toàn bộ mạng lưới, với mục đích là để giữ khoảng thời gian giữa các khối mới được tạo ra là 10 phút Từ tháng 3 năm
2014 tới tháng 3 năm 2015, số lượng nonce trung bình mà máy đào phải hash thử trước khi tạo được ra khối mới đã tăng từ 16,4 tỷ tỷ lên 200,5 tỷ tỷ.[3]
Cách hệ thống proof-of-work hoạt động, kèm theo việc xâu chuỗi lại các khối khi dữ liệu của khối mới bao gồm hash của khối cũ, giúp cho việc thay đổi blockchain cực kỳ khó, khi mà kẻ tấn công cần phải thay đổi tất cả các khối phía sau để việc thay đổi một khối được chấp nhận Điều này đòi hỏi kẻ tấn công cần có hơn 50% sức mạnh xử lý của toàn mạng Blockchain Các khối mới liên tục được tạo
ra, và độ khó của việc thay đổi 1 khối tăng dần theo thời gian với số lượng khối cần thay đổi (còn được gọi là mức xác thực của một khối - confirmations) tăng lên [3]