Chuỗi khối là gì?

Tóm lại, blockchain là một danh sách các bản ghi dữ liệu có chức năng giống như một cơ sở dữ liệu phi tập trung. Dữ liệu được tổ chức thành các khối, được sắp xếp theo thứ tự thời gian và được bảo mật bằng mật mã.

Khái niệm đầu tiên về blockchain được tạo ra vào đầu những năm 1990 khi nhà khoa học máy tính Stuart Haber và nhà vật lý W. Scott Stornetta sử dụng các kỹ thuật mã hóa trong blockchain để bảo vệ các tài liệu kỹ thuật số khỏi bị giả mạo dữ liệu.

Công trình của Haber và Stornetta chắc chắn đã truyền cảm hứng cho nhiều nhà khoa học máy tính và những người đam mê mật mã khác, cuối cùng dẫn đến việc tạo ra bitcoin, hệ thống tiền điện tử phi tập trung đầu tiên (và tiền điện tử đầu tiên).

Mặc dù công nghệ blockchain có lịch sử lâu đời hơn tiền điện tử nhưng phải đến khi bitcoin ra đời vào năm 2008, tiềm năng của nó mới bắt đầu được công nhận. Kể từ đó, sự quan tâm đến công nghệ blockchain ngày càng tăng lên và tiền điện tử hiện đang được công nhận ở quy mô lớn hơn.

Công nghệ chuỗi khối được sử dụng phổ biến nhất để ghi lại các giao dịch tiền điện tử, nhưng nó phù hợp với nhiều loại dữ liệu kỹ thuật số khác và có thể áp dụng cho nhiều trường hợp sử dụng. Mạng blockchain lâu đời nhất, an toàn nhất và lớn nhất là Bitcoin, được thiết kế bằng cách sử dụng sự kết hợp cân bằng giữa mật mã và lý thuyết trò chơi.


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

Trong bối cảnh tiền điện tử, một blockchain bao gồm một chuỗi các khối, mỗi khối lưu trữ một danh sách các giao dịch đã được xác nhận trước đó. Vì mạng blockchain được duy trì bởi vô số máy tính phân bố trên khắp thế giới nên nó hoạt động như một cơ sở dữ liệu phi tập trung. Điều này có nghĩa là mỗi người tham gia (hoặc nút) duy trì một bản sao dữ liệu blockchain và liên lạc với nhau để đảm bảo họ ở trên cùng một trang (hoặc khối).

Do đó, các giao dịch blockchain diễn ra trong mạng ngang hàng toàn cầu và đây là điều khiến bitcoin trở thành một loại tiền kỹ thuật số phi tập trung, không biên giới và chống kiểm duyệt. Ngoài ra, hầu hết các hệ thống blockchain được coi là không cần sự tin cậy vì chúng không yêu cầu bất kỳ sự tin cậy nào. Không có cơ quan duy nhất nào kiểm soát bitcoin.

Yếu tố trung tâm của hầu hết tất cả các blockchain là quy trình khai thác, dựa trên thuật toán băm. Bitcoin sử dụng thuật toán băm an toàn 256-bit (SHA-256). Nó nhận đầu vào có độ dài bất kỳ và tạo ra đầu ra luôn có cùng độ dài. Đầu ra được tạo ra được gọi là “băm” và trong trường hợp này nó luôn có 64 ký tự (256 bit).

Vì vậy, cùng một đầu vào sẽ dẫn đến cùng một đầu ra cho dù quá trình được lặp lại bao nhiêu lần. Nhưng chỉ cần một thay đổi nhỏ ở đầu vào thì đầu ra sẽ thay đổi hoàn toàn. Như vậy, các hàm băm có tính xác định và trong thế giới tiền điện tử, hầu hết chúng được thiết kế dưới dạng hàm băm một chiều.

Là hàm một chiều có nghĩa là gần như không thể tính được đầu vào từ đầu ra. Người ta chỉ có thể đoán mục nhập là gì, nhưng cơ hội đoán đúng là cực kỳ thấp. Đây là một trong những lý do tại sao chuỗi khối Bitcoin được an toàn.

Bây giờ chúng ta đã biết thuật toán làm gì, hãy xem cách blockchain hoạt động bằng một giao dịch mẫu đơn giản.

Hãy tưởng tượng rằng Alice và Bob mỗi người có số dư bitcoin. Giả sử Alice nợ Bob 2 bitcoin.

Để Alice có thể gửi cho Bob 2 bitcoin này, cô ấy sẽ phát một tin nhắn chứa giao dịch mà cô ấy muốn thực hiện tới tất cả những người khai thác trên mạng.

Trong giao dịch này, Alice cung cấp địa chỉ của Bob cho những người khai thác và số lượng bitcoin cô ấy muốn gửi, cùng với chữ ký điện tử và khóa chung của cô ấy. Chữ ký được tạo bằng khóa riêng của Alice và những người khai thác có thể xác thực rằng Alice là chủ sở hữu của những bitcoin này.

Sau khi người khai thác chắc chắn giao dịch là hợp lệ, họ có thể đặt giao dịch đó vào một khối với nhiều giao dịch khác và cố gắng khai thác khối đó. Để làm được điều này, khối phải tuân theo thuật toán SHA-256. Đầu ra phải bắt đầu bằng một số 0 nhất định để được coi là hợp lệ. Lượng 0 cần thiết phụ thuộc vào cái gọi là “độ khó” thay đổi tùy thuộc vào khả năng tính toán của mạng.

Để tạo ra hàm băm đầu ra với số lượng 0 mong muốn ở đầu, các thợ mỏ sẽ thêm thứ được gọi là “nonce” vào khối trước khi chuyển nó qua thuật toán. Vì một thay đổi nhỏ đối với đầu vào sẽ thay đổi hoàn toàn đầu ra, nên thợ đào sẽ thử các giá trị ngẫu nhiên cho đến khi họ tìm thấy hàm băm đầu ra hợp lệ.

Sau khi khối được khai thác, người khai thác sẽ phát khối mới được khai thác này cho tất cả các người khai thác khác. Sau đó, họ xác minh rằng khối đó hợp lệ để họ có thể thêm nó vào bản sao blockchain của họ và giao dịch hoàn tất. Nhưng trong khối, người khai thác cũng phải bao gồm hàm băm đầu ra của khối trước đó để tất cả các khối được liên kết với nhau, do đó có tên là blockchain. Đây là một phần quan trọng vì cách thức hoạt động của niềm tin trong hệ thống.

Mỗi người khai thác có bản sao blockchain riêng trên máy tính của họ và mọi người đều tin tưởng vào blockchain đã thực hiện nhiều công việc nhất trên đó hoặc blockchain chạy lâu nhất. Nếu người khai thác sửa đổi một giao dịch trong khối trước đó, hàm băm đầu ra của khối đó sẽ thay đổi, điều này sẽ bao hàm sự sửa đổi tất cả các hàm băm của các khối tiếp theo. Người khai thác sẽ phải làm lại tất cả công việc để bất kỳ ai chấp nhận blockchain của họ là đúng. Vì vậy, nếu một thợ đào muốn gian lận, họ sẽ cần hơn 50% sức mạnh tính toán của mạng, điều này rất khó xảy ra. Vì vậy các cuộc tấn công mạng như thế này được gọi là tấn công 51%.

Mô hình đưa máy tính hoạt động để tạo ra các khối được gọi là Proof of Work (PoW); cũng có những mô hình khác như bằng chứng cổ phần (PoS) không yêu cầu nhiều sức mạnh tính toán và được cho là cần ít điện hơn trong khi vẫn có thể mở rộng quy mô cho số lượng người dùng lớn hơn.