Hỏi - đáp Nơi cung cấp thông tin nghề nghiệp và giải đáp những thắc mắc thường gặp của bạn

Blockchain có khó không? - Phần 1

Sự thổi phồng về blockchain thật sự rất khủng khiếp. Trong những thổi phồng được nhắc đến, blockchain được cho rằng nó có thể:

  1. Giải quyết bất bình đẳng về thu nhập
  2. Làm cho tất cả dữ liệu trở nên bảo mật mãi mãi
  3. Làm cho mọi thứ trở nên hiệu quả và cần ít sự tín nhiệm hơn
  4. Làm cho tình trạng sảy thai giảm đi

Vậy blockchain là cái quái gì? Và nó thực sự có thể làm được những điều trên hay không? Blockchain có thể đem lại những điều mang tính sáng tạo cho những ngành đa dạng như chăm sóc sức khỏe, tài chính, quản lý chuỗi cung ứng và bản quyền âm nhạc hay không?

Và nếu bạn quan tâm về blockchain không phải vì giá của Bitcoin thì bạn là một người có hiểu biết về blockchain? Bạn có thể ủng hộ cho Bitcoin nhưng lại nói những điều không hay về công nghệ phía sau nó hay không?

Trong bài viết này, tôi tìm kiếm câu trả lời cho nhiều thắc mắc rằng blockchain là cái gì, tầm quan trọng của nó đến đâu, hay điều gì là không thể.

Blockchain là cái gì?

Để xem xét một trong những tuyên bốdưới đây, chúng ta phải định nghĩa được blockchain là gì và hiểu được nhầm lẫn xung quanh nó. Nhiều công ty sử dụng cụm từ “blockchain” để nói về một số loại thiết bị phép thuật giúp cho tất cả dữ liệu của họ sẽ không bao giờ bị sai sót. Giống như một thiết bị? Chắc chắn là không phải! Ít nhất thì điều này có liên hệ với thế giới thực tại đang diễn ra.

Vậy, cái gì là một blockchain? Nói theo mặt kỹ thuật, 1 blockchain tương ứng là một linked-list (danh sách liên kết) của các block và một block là một nhóm của các ordered transactions (giao dịch thanh toán). Nếu bạn không hiểu câu cuối, bạn có thể hiểu theo cách khác rằng 1 blockchain nó giống như một tập hợp con của 1 database (cơ sở dữ liệu), với một vài thuộc tính bổ sung.

Điểm chính để phân biệt 1 blockchain với database bình thường là nó có các quy tắc cụ thể về cách làm sao để đặt dữ liệu vào trong database. Đồng nghĩa rằng, nó không thể bị hỗn độn với một vài dữ liệu khác đã có trong database (nhất quán), dữ liệu chỉ được thêm vào (không thay đổi), và bản thân dữ liệu bị khóa từ người chủ của nó (có thể sở hữu), dữ liệu đồng thời cũng có thể sao chép và mang tính khả dụng. Cuối cùng, mọi người đồng ý trên trạng thái của các sự vật được quy định trong database (tính tiêu chuẩn) mà không phải thông qua một tổ chức tập trung nào (phi tập trung).

Đặc điểm cuối cùng được miêu tả ở trên giống như kho báu mà blockchain đem lại. Tính phi tập trung là rất hấp dẫn vì nó ngụ ý rằng sẽ không có chuyện cả hệ thống bị tê liệt chỉ vì sự cố tại một điểm. Nghĩa là, không có cá nhân nào có thể tự ý lấy đi tài sản của bạn hoặc “thay đổi lịch sử” theo cách họ muốn. Công việc kiểm toán không phải phụ thuộc vào chuyện đặt niềm tin vào bất kỳ ai giống như truyền thống, cũng chính là lợi ích mà mọi người đang chơi với công nghệ này tìm kiếm. Lợi ích này, dù sao thì cũng không thể phủ nhận một điều, nó tốn rất nhiều chi phí.

Chi phí của các blockchain

Công việc kiểm toán không bị kiểm soát bởi bất kỳ tổ chức nào chắc chắn là một điều hữu ích, nhưng phải tốn nhiều chi phí để tạo nên một hệ thống giống như vậy. Hãy cùng xem xét một vài vấn đề.

Công việc phát triển phải nghiêm ngặt hơn và chậm hơn

Tạo nên một hệ thống nhất quán và có thể kiểm tra là một việc không dễ. Một lỗi nhỏ có thể làm hỏng toàn bộ database hoặc gây ra việc không nhất quán dữ liệu giữa các database. Chắc chắn, một database bị hỏng hoặc bị mất mát dữ liệu sẽ không thể đảm bảo tính nhất quán. Hơn nữa, tất cả hệ thống phải được thiết kếtừ đầu để đảm bảo tính nhất quán. Không có chuyện “làm nhanh và bỏ đi vài thứ” trong blockchain. Nếu bạn bỏ đi vài thứ, bạn sẽ thất bại trong việc nhất quán dữ liệu và blockchain sẽ trở nên hỏng và tất nhiên, nó đồng thời cũng trở nên vô giá trị.

Bạn có thể suy nghĩ, tại sao chúng ta không thể sửa chữa database bị lỗi, hoặc bắt đầu lại và tiếp tục? Điều đó sẽ dễ dàng và hoàn toàn khả thi nếu bạn thực thi trên hệ thống tập trung, nhưng cực kỳ khó trên một hệ thống phi tập trung. Bạn cần sự đồng thuận, hoặc sự đồng ý của tất cả những người tham gia trong hệ thống, trong một điều khoản để thay đổi dữ liệu. Blockchain đã trở thành một tài nguyên công cộng, nó không bị kiểm soát bởi một thực thể nào (phi tập trung đấy, nhớ không?), hoặc toàn bộ bộ nỗ lực là một cách rất tốn kém để tạo ra một database tập trung, và chậm chạp.

Rất khó để thiết kế những kiến trúc mang tính khuyến khích

Tạo nên một hệ thống mang tính khuyến khích và chắc chắn rằng các diễn viên trong hệ thống không thể gian lận hoặc làm hỏng database giống như một sự thách thức lớn. Một blockchain có thể nhất quán, nhưng điều đó không hữu dụng nếu nó không đem lại giá trị thực tế, dữ liệu không hữu ích trong nó bởi vì chi phí để thêm dữ liệu vào là rất thấp. Nó cũng không phải một blockchain nhất quán hữu dụng, nếu nó gần như không có dữ liệu bởi vì chi phí đưa dữ liệu vào là rất cao.

Điều gì khuyến khích đem lại dữ liệu? Làm sao bạn có thể chắc chắn rằng phần thưởng được căn chỉnh thích hợp cho mục tiêu của mạng lưới? Tại sao các nodes (các máy tính tham gia vào mạng lưới) giữ và cập nhật dữ liệu và điều gì khiến họ chọn mảnh dữ liệu cụ thể để xử lý trước một mảnh dữ liệu khác khi họ đang phân vân? Các công hỏi về tính khuyến khích của mạng lưới blockchain cần những câu trả lời đúng và chúng cần được định nghĩa ngay từ đầu và có thể điều chỉnh ở tất cả các thời điểm trong tương lai khi công nghệ của blockchain thay đổi và công ty thay đôi, nếu không thì blockchain cũng không hữu ích.

Một lần nữa, có thể bạn đang tự hỏi tại sao chúng ta không thể sửa những vấn đề phá vỡ cấu trúc khuyến khích cho hệ thống. Và cũng một lần nữa, cần phải nhắc lại, điều đó dễ dàng trong hệ thống tập trung, nhưng trong một hệ thống phi tập trung, bạn đơn giản không thể thay đổi bất kỳ điều gì mà không có được sự đồng thuận. Không có việc sửa chữa nào mà không cần đến sự đồng ý của mọi người.

Việc bảo trì hệ thống là rất đắt đỏ

Một database tập trung theo kiểu truyền thống chỉ cần được viết một lần. Một blockchain cần viết đến hàng ngàn lần. Một database tập trung truyền thống chỉ cần kiểm tra dữ liệu một lần. Một blockchain cần kiểm tra dữ liệu hàng ngàn lần. Một database tập trung truyền thống cần chuyển giao dữ liệu xuống vùng lưu trữ chỉ một lần. Một blockchain cần làm việc đó hàng ngàn lần.

Chi phí để bảo trì một blockchain là những đơn hàng để phục vụ cho những nhu cầu có cường động cao hơn và chi phí cần để chứng minh sự tiện ích. Hầu hết các ứng dụng tìm kiếm các nhu cầu đã nêu như tính nhất quán, độ tin cây, có thể nhận được những thứ như vậy một cách rẻ hơn rất nhiều bằng cách sử dụng công cụ kiểm tra tính toàn vẹn, các biên nhận và sao lưu.

Người dùng có chủ quyền

Điều này có thể rất hữu ích như các công ty vốn không thích trách nhiệm pháp lý của việc sở hữu dữ liệu người dùng tại nơi của họ. Tuy nhiên, nó cũng có thể là một điều tệ hại, nếu người dùng “hành xử không đúng”. Không có cách nào để “đuổi” một người dùng ra khỏi nếu người đó đã cố tình spam blockchain của bạn bằng những dữ liệu không hữu dụng hoặc những người đã cố tình kiếm lợi từ hệ thống bằng những cách thức gây bất tiện cho nhiều người dùng khác. Điều này liên quan đến nhận định ở trên rằng cấu trúc khuyến khích của hệ thống phải được thiết kế thực sự tốt, trong đó người dùng tìm ra sự khai thác và không có mong muốn từ bỏ nó, đặc biệt là nếu điều đó có lợi cho người dùng.

Bạn có thể đang nghĩ rằng bạn có thể dễ dàng từ chối cung cấp dịch vụ đối với những người dùng “ngổ ngáo”, điều mà trong một dịch vụ tập trung có thể làm một cách dễ dàng. Tuy nhiên, không giống một dịch vụ tập trung, từ chối cung cấp dịch vụ là rất khó khăn bởi vì không một cá nhân nào có quyền “đuổi” một cá nhân khác ra khỏi mạng lưới. Blockchain phải công bằng và thực thi bởi các quy tắc xác định dựa trên phần mềm. Nếu những quy luật không đủ để ngăn chặn các hành vi xấu, có nghĩa là bạn đã hết may mắn. Nghĩa là, những điều luật ở mạng lưới của bạn không có “linh hồn”. Muốn xử lý khi đã lâm vào tình cảnh này, đơn giản nhất, bạn phải đàm phán với những người dùng “ngổ ngáo” hoặc là những kẻ xâm nhập bất hợp pháp, có thể điều này sẽ diễn ra trong một thời gian rất dài.

Tất cả các nâng cấp đều mang tính tự nguyện

Một sự nâng cấp bắt buộc không phải là một lựa chọn. Những người tham gia trong mạng lưới không có nghĩa vụ thay đổi phần mềm của bạn. Nếu họ đã làm, một hệ thống như vậy sẽ dễ dàng hơn rất nhiều, nhanh hơn, rẻ hơn để xây dựng như một hệ thống tập trung. Mấu chốt của một blockchain là không chịu sự quản lý của bất kỳ một cá nhân nào, và nếu bạn bắt buộc người tham gia nâng cấp phần mềm, thì bạn đã vi phạm điều trên.

Thay vì vậy, tất cả các nâng cấp phải có khả năng tương thích ngược. Điều này hiển nhiên là khá khó khăn, đặc biệt là khi bạn muốn thêm các tính năng mới và thậm chí khó hơn khi suy nghĩ từ góc nhìn kiểm thử (testing perspective). Mõi phiên bản của phần mềm thêm rất nhiều vào pha trận kiểm thử và kéo dài thời gian phát hành.

Nhắc lại, nếu đây là một hệ thống tập trung, điều này rất dễ để làm cho nó trở nên đúng đắn bằng việc ngắt cung cấp dịch vụ cho các hệ thống lỗi thời. Tuy nhiên, bạn không thể làm điều này trong hệ thống phi tập trung giống, như việc bạn không thể ép buộc bắt kỳ ai làm bất kỳ điều gì.

Khả năng mở rộng là thực sự khó

Cuối cùng, mở rộng quy mô để tăng cường độ cho mạng lưới là khó hơn hệ thống tập trung truyền thống. Đây là điều hiển nhiên. Dữ liệu giống nhau đã tồn tại trên hàng trăm hoặc hàng ngàn nơi, khác với một nơi duy nhất rất nhiều. Chi phí tải, xác minh và lưu trữ rất lớn vì mỗi bản sao của database phải trả tiền thay vì các chi phí đó chỉ được trả một lần trong database tập trung.

Bạn có thể làm, chắc chắn rồi, giảm gánh nặng trên bằng cách giảm các nút tham gia vào mạng. Nhưng sau đó cũng tại điểm này, lại phải đặt câu hỏi rằng tại sao bạn muốn hệ thống phi tập trung trước đó? Tại sao không tạo một database tập trung nếu chi phí mở rộng là mối lo ngại chính?

Via Medium