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ệ 6 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. 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. Quá trình phát triển Hình 1. 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ơ 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. 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 ngoài chuỗi chính. 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). Cấu tạo của một khối gồm 3 phần 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. 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 toá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. 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 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ệ.
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 toá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 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à quá trình thu thập, tính toá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. Quá trình này được thực hiện thông qua việc giải các bài toá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 hoàn toà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 toá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. Ngoà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ề 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 toá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, toà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.
PHÂN LOẠI BLOCKCHAIN Hệ thống Blockchain chia thành 3 loại chính: 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,… 13 Hình 1.
Mạng lưới Public [Nguồn: Credit Suisse research] 1. 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. Mạng lưới Private [Nguồn: Credit Suisse research] 14 1. 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. Mạng lưới Permissioned [Nguồn: Credit Suisse research] 1. CÁCH THỨC HOẠT ĐỘNG Hình 1. Mô hình hoạt động của nền tảng Blockchain 15 Các bước diễn ra một giao dịch trong Blockchain: • Bước 1: Người dùng yêu cầu một giao dịch (mua, bán, trao đổi) • Bước 2: Yêu cầu sẽ được phát tới các mạng ngang hàng P2P: bao gồm các máy tính (các node) kết nối với nhau • Bước 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.
Giao kèo được xác nhận có thể bao gồm đồng tiền ảo, các dạng hợp đồng, thống kê hoặc bất cứ dạng thông tin gì. • Bước 4: Sau khi đã được xác nhận, giao kèo sẽ được ghép lại với các giao kèo khác tạo thành những khối thông tin gọi là Block. Những khối “Block” này sẽ trở thành mắt xích của dãy Blockchain tồn tại từ trước, điều này khiến cho hệ thống chuỗi khối không thể bị giả mạo. • Bước 5: Hoàn thành giao dịch.