Chuỗi khối là gì?
Nói tóm lại, blockchain là một danh sách các bản ghi dữ liệu hoạt động như một sổ cái kỹ thuật số phi tập trung. Dữ liệu được tổ chức thành các khối, được sắp xếp theo trình tự thời gian và được bảo mật bằng mật mã.
Mô hình blockchain sớm nhất đượ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 một chuỗi khối như một cách để bảo mật 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 công việc của 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 như hệ thống tiền điện tử phi tập trung đầu tiên (hoặc đơn giản là 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 chỉ sau khi Bitcoin được tạo ra vào năm 2008 thì 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 và tiền điện tử hiện đang được thừa nhận ở quy mô lớn hơn.
Công nghệ chuỗi khối chủ yếu được sử dụng để 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ể được á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ế với sự kết hợp cẩn thận và cân bằng giữa mật mã và lý thuyết trò chơi.
Chuỗi khối hoạt động như thế nào?
Trong bối cảnh tiền điện tử, blockchain bao gồm một chuỗi khối ổn định, mỗi khối lưu trữ 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 trải khắp thế giới nên nó hoạt động như một cơ sở dữ liệu (hoặc sổ cái) phi tập trung. Điều này có nghĩa là mỗi người tham gia (nút) duy trì một bản sao của dữ liệu blockchain và họ liên lạc với nhau để đảm bảo rằng tất cả đều ở trên cùng một trang (hoặc khối).
Do đó, các giao dịch blockchain diễn ra trong mạng lưới toàn cầu ngang hàng 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à có khả năng 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ỳ hình thức tin cậy nào. Không có cơ quan duy nhất nào kiểm soát Bitcoin.
Phần trung tâm của hầu hết mọi blockchain là quá trình khai thác, dựa trên các thuật toán băm. Bitcoin sử dụng thuật toán SHA-256 (Thuật toán băm an toàn 256 bit). 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, luôn được tạo thành từ 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, bất kể quá trình này đượ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 là đầu vào và đâu là đầu ra. Người ta chỉ có thể đoán đầu vào là gì, nhưng tỷ lệ đoán đúng là cực kỳ thấp. Đây là một trong những lý do tại sao blockchain của Bitcoin an toàn.
Bây giờ chúng ta đã biết thuật toán làm gì, hãy chứng minh cách blockchain hoạt động bằng một ví dụ đơn giản về giao dịch.
Hãy tưởng tượng rằng chúng ta có Alice và Bob cùng với số dư Bitcoin của họ. Giả sử Alice nợ Bob 2 Bitcoin.
Để Alice gửi cho Bob 2 bitcoin đó, Alice sẽ gửi một tin nhắn về giao dịch mà cô ấy muốn thực hiện tới tất cả những người khai thác trong mạng.
Trong giao dịch đó, Alice cung cấp cho thợ mỏ địa chỉ của Bob và số lượng Bitcoin cô ấy muốn gửi, cùng với chữ ký điện tử và khóa công khai 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 trên thực tế là chủ sở hữu của những đồng tiền đó.
Sau khi người khai thác chắc chắn rằng giao dịch là hợp lệ, họ có thể đặt giao dịch đó vào một khối cùng với nhiều giao dịch khác và cố gắng khai thác khối đó. Điều này được thực hiện bằng cách đặt khối thông qua thuật toán SHA-256. Đầu ra cần bắt đầu bằng một lượng 0 nhất định để được coi là hợp lệ. Lượng số 0 cần thiết phụ thuộc vào cái được gọi là "độ khó", độ khó này thay đổi tùy thuộc vào mức độ sức mạnh tính toán trên mạng.
Để tạo ra hàm băm đầu ra với số lượng 0 mong muốn ngay từ đầu, những người khai thác sẽ thêm thứ được gọi là "nonce" vào khối trước khi chạy nó thông 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 khai thác đó cho tất cả những người khai thác khác. Sau đó, họ kiểm tra để đảm bảo rằng khối đó hợp lệ để họ có thể thêm nó vào bản sao chuỗi khối của mình và giao dịch hoàn tất. Nhưng trong khối, người khai thác cũng cần bao gồm hàm băm đầu ra từ 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 đều có bản sao blockchain của riêng họ trên máy tính của họ và mọi người đều tin tưởng vào bất kỳ blockchain nào có nhiều công việc tính toán nhất được đưa vào đó, blockchain dài nhất. Nếu người khai thác thay đổi một giao dịch trong khối trước đó, hàm băm đầu ra cho khối đó sẽ thay đổi, điều này dẫn đến tất cả các hàm băm sau khi nó thay đổi cũng do các khối được thích bằng hàm băm. Người khai thác sẽ phải làm lại tất cả công việc để khiến bất kỳ ai chấp nhận blockchain của mình là đúng. Vì vậy, nếu một thợ mỏ muốn gian lận, anh ta 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. Do đó, 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 làm cho máy tính hoạt động để tạo ra các khối được gọi là Proof-of-Work (PoW), ngoài ra còn có các mô hình khác như Proof-of-Stake (PoS) không yêu cầu nhiều sức mạnh tính toán và có nghĩa là cần ít điện hơn đồng thời có thể mở rộng quy mô tới nhiều người dùng hơn.

