1. TERMINOLIGIES VÀ CÔNG NGHỆ LIÊN QUAN
1.1 Công nghệ chuỗi khối
Blockchain là một sổ cái công khai thông tin được thu thập thông qua một mạng lưới nằm trên internet. Chính cách thông tin này được ghi lại mang lại tiềm năng đột phá cho blockchain của nó. Blockchain, giải thích [1]: Nếu bạn đã theo dõi ngân hàng, đầu tư hoặc tiền điện tử trong mười năm qua, bạn có thể quen thuộc với “blockchain”, công nghệ lưu trữ hồ sơ đằng sau Bitcoin. Và có một cơ hội tốt là điều đó chỉ có ý nghĩa khi cố gắng tìm hiểu thêm về blockchain, bạn có thể đã gặp một định nghĩa như sau: “blockchain là một công nghệ sổ cái phân tán, phi tập trung, công khai”.
Ở cấp độ cơ bản nhất của nó, blockchain theo nghĩa đen chỉ là một chuỗi các khối - mà thôi, không theo nghĩa thông thường của những từ đó. Khi chúng ta nói các từ “khối” và “chuỗi” trong ngữ cảnh này, chúng ta thực sự đang nói về thông tin kỹ thuật số (“khối”) được lưu trữ trong cơ sở dữ liệu công cộng (“chuỗi”).
Thay vì được làm bằng gỗ hoặc nhựa, "khối" trên blockchain được tạo thành từ các phần thông tin kỹ thuật số. Cụ thể, chúng có ba phần:
• Các khối lưu trữ thông tin về các giao dịch, cho biết ngày, giờ và số tiền mua hàng gần đây nhất của bạn từ Amazon.
• Khối lưu trữ thông tin về những người đang tham gia giao dịch. Một khối cho giao dịch mua tiết kiệm của bạn từ Amazon sẽ ghi lại tên của bạn cùng với Amazon.com, Inc. Thay vì sử dụng tên thực của bạn, giao dịch mua của bạn được ghi lại mà không có bất kỳ thông tin nhận dạng nào bằng cách sử dụng “chữ ký số” duy nhất, giống như tên người dùng.
• Các khối lưu trữ thông tin phân biệt chúng với các khối khác. Giống như bạn và tôi có những cái tên để phân biệt chúng ta với nhau, mỗi khối lưu trữ một mã duy nhất được gọi là “băm” cho phép chúng ta phân biệt nó với mọi khối khác. Giả sử bạn đã thực hiện giao dịch mua tiết kiệm trên Amazon, nhưng trong khi quá trình vận chuyển, bạn quyết định rằng mình không thể cưỡng lại và cần mua thứ hai. Mặc dù các chi tiết của giao dịch mới của bạn trông gần giống với giao dịch mua trước đó của bạn, chúng tôi vẫn có thể phân biệt các khối do mã duy nhất của chúng.
Mặc dù khối trong ví dụ trên đang được sử dụng để lưu trữ một lần mua hàng từ Amazon, nhưng thực tế lại khác một chút. Một khối duy nhất trên blockchain thực sự có thể lưu trữ tới 1 MB dữ liệu. Tùy thuộc vào quy mô của các giao dịch, điều đó có nghĩa là một khối duy nhất có thể chứa vài nghìn giao dịch dưới một mái nhà.
Merkle tree cho phép kiểm tra tính toàn vẹn của một tập dữ liệu lớn mà không nhất thiết phải kiểm tra tất cả các khối dữ liệu gốc. Giả sử khối dữ liệu T1 bị thay đổi thì giá trị băm R1 của nó cũng thay đổi theo, giá trị băm R12 là mã hóa băm của R1 và R2 cũng sẽ bị thay đổi, do đó R sẽ bị thay đổi. Tóm lại, gốc của cây Merkle là giá trị băm của tất cả các giá trị trung gian của nó, điều này làm cho dữ liệu không thể bị giả mạo.
Khi một khối lưu trữ dữ liệu mới, nó sẽ được thêm vào blockchain. Blockchain, như tên gọi của nó, bao gồm nhiều khối kết hợp với nhau. Tuy nhiên, để một khối được thêm vào blockchain, cần phải có bốn điều sau:
• Một giao dịch phải xảy ra. Hãy tiếp tục với ví dụ về việc mua hàng bốc đồng trên Amazon của bạn. Sau khi vội vàng nhấp qua nhiều lời nhắc thanh toán, bạn đi ngược lại nhận định tốt hơn của mình và mua hàng.
• Giao dịch đó phải được xác minh. Sau khi thực hiện giao dịch mua đó, giao dịch của bạn phải được xác minh. Với các hồ sơ thông tin công khai khác, chẳng hạn như Ủy ban Giao dịch Chứng khoán, Wikipedia hoặc thư viện địa phương của bạn, sẽ có người chịu trách nhiệm kiểm tra các mục nhập dữ liệu mới. Tuy nhiên, với blockchain, công việc đó phụ thuộc vào một mạng máy tính. Các mạng này thường bao gồm hàng nghìn máy tính trải dài trên toàn cầu. Khi bạn mua hàng từ Amazon, mạng máy tính đó sẽ chạy đến để kiểm tra xem giao dịch của bạn có diễn ra theo cách bạn đã nói hay không. Nghĩa là, họ xác nhận các chi tiết của giao dịch mua, bao gồm thời gian của giao dịch, số tiền và người tham gia.
• Giao dịch đó phải được lưu trữ trong một khối. Sau khi giao dịch của bạn đã được xác minh là chính xác, nó sẽ được bật đèn xanh. Số tiền của giao dịch, chữ ký kỹ thuật số của bạn và chữ ký kỹ thuật số của Amazon đều được lưu trữ trong một khối. Ở đó, giao dịch có thể sẽ tham gia hàng trăm, hoặc hàng nghìn người khác như thế
• Khối đó phải được cung cấp một hàm băm. Không giống như một thiên thần kiếm được đôi cánh của mình, sau khi tất cả các giao dịch của khối đã được xác minh, nó phải được cấp một mã nhận dạng duy nhất được gọi là mã băm. Khối cũng được cung cấp hàm băm của khối gần đây nhất được thêm vào blockchain. Sau khi được băm, khối có thể được thêm vào blockchain.
Khi khối mới đó được thêm vào blockchain, nó sẽ trở nên công khai cho mọi người xem - ngay cả bạn. Nếu bạn nhìn vào chuỗi khối của Bitcoin, bạn sẽ thấy rằng bạn có quyền truy cập vào dữ liệu giao dịch, cùng với thông tin về thời gian (“Thời gian”), vị trí (“Chiều cao”) và ai (“Được chuyển tiếp bởi”) khối đã được được thêm vào chuỗi khối.
Hình 1: Merkle tree
Nơi lưu trữ của Blockchain:
Bất kỳ ai cũng có thể xem nội dung của blockchain, nhưng người dùng cũng có thể chọn kết nối máy tính của họ với mạng blockchain. Khi làm như vậy, máy tính của họ sẽ nhận được một bản sao của chuỗi khối được cập nhật tự động bất cứ khi nào khối mới được thêm vào.
Mỗi máy tính trong mạng blockchain đều có bản sao blockchain riêng của nó, có nghĩa là có hàng nghìn, hoặc trong trường hợp của Bitcoin, hàng triệu bản sao của cùng một blockchain. Mặc dù mỗi bản sao của blockchain đều giống hệt nhau, nhưng việc truyền bá thông tin đó qua một mạng máy tính khiến thông tin khó bị thao túng hơn. Với blockchain, không có một tài khoản cụ thể, chính xác nào về các sự kiện có thể bị thao túng. Thay vào đó, một hacker sẽ cần phải thao túng mọi bản sao của chuỗi khối trên mạng.
Tuy nhiên, nhìn qua chuỗi khối Bitcoin, bạn sẽ nhận thấy rằng bạn không có quyền truy cập vào thông tin nhận dạng về người dùng thực hiện giao dịch. Mặc dù các giao dịch trên blockchain không hoàn toàn ẩn danh, nhưng thông tin cá nhân về người dùng bị giới hạn ở chữ ký điện tử hoặc tên người dùng của họ.
Điều này đặt ra một câu hỏi quan trọng: nếu bạn không thể biết ai đang thêm các khối vào blockchain, thì làm thế nào bạn có thể tin tưởng vào blockchain hoặc mạng lưới máy tính đang duy trì nó?
Tin cậy và Bảo mật trên Blockchain
Công nghệ chuỗi khối giải quyết các vấn đề về bảo mật và sự tin tưởng theo một số cách. Đầu tiên, các khối mới luôn được lưu trữ tuyến tính và theo thứ tự thời gian. Nghĩa là, chúng luôn được thêm vào “phần cuối” của blockchain. Nếu bạn nhìn vào chuỗi khối của Bitcoin, bạn sẽ thấy rằng mỗi khối có một vị trí trên chuỗi, được gọi là “chiều cao”. Tại thời điểm viết bài, chiều cao của khối gần đây nhất là 548.015, có nghĩa là nó là khối thứ 548.015 được thêm vào blockchain.
Sau khi một khối đã được thêm vào cuối chuỗi khối, rất khó để quay lại và thay đổi nội dung của khối. Đó là bởi vì mỗi khối chứa hàm băm riêng của nó, cùng với hàm băm của khối trước nó. Mã băm được tạo ra bởi một hàm toán học biến thông tin kỹ thuật số thành một chuỗi số và chữ cái. Nếu thông tin đó được chỉnh sửa theo bất kỳ cách nào, mã băm cũng sẽ thay đổi.
Đây là lý do tại sao điều đó quan trọng đối với bảo mật. Giả sử một tin tặc cố gắng chỉnh sửa giao dịch của bạn từ Amazon để bạn thực sự phải trả hai lần cho giao dịch mua của mình. Ngay sau khi họ chỉnh sửa số đô la trong giao dịch của bạn, hàm băm của khối sẽ thay đổi. Khối tiếp theo trong chuỗi sẽ vẫn chứa hàm băm cũ và tin tặc sẽ cần cập nhật khối đó để che dấu vết của chúng. Tuy nhiên, làm như vậy sẽ thay đổi hàm băm của khối đó. Và tiếp theo, và như vậy.
Khi đó, để thay đổi một khối duy nhất, một hacker sẽ cần phải thay đổi từng khối sau nó trên blockchain. Việc tính toán lại tất cả các hàm băm đó sẽ tốn một lượng sức mạnh tính toán khổng lồ và không thể tránh khỏi. Nói cách khác, khi một khối được thêm vào chuỗi khối, nó sẽ trở nên rất khó chỉnh sửa và không thể xóa.
Để giải quyết vấn đề về lòng tin, các mạng blockchain đã triển khai các thử nghiệm cho các máy tính muốn tham gia và thêm các khối vào chuỗi. Các bài kiểm tra, được gọi là “mô hình đồng thuận”, yêu cầu người dùng “chứng minh” bản thân trước khi họ có thể tham gia vào mạng lưới blockchain. Một trong những ví dụ phổ biến nhất được sử dụng bởi Bitcoin được gọi là “bằng chứng công việc”.
Trong hệ thống bằng chứng công việc, máy tính phải “chứng minh” rằng chúng đã thực hiện “công việc” bằng cách giải một bài toán tính toán phức tạp. Nếu một máy tính giải quyết được một trong những vấn đề này, chúng sẽ đủ điều kiện để thêm một khối vào blockchain. Nhưng quá trình thêm các khối vào blockchain, cái mà thế giới tiền điện tử gọi là “khai thác”, không hề dễ dàng. Trên thực tế, tỷ lệ giải quyết một trong những vấn đề này trên mạng Bitcoin là khoảng 1 trên 7 nghìn tỷ tại thời điểm viết bài. Để giải quyết các vấn đề toán học phức tạp với tỷ lệ cược đó, máy tính phải chạy các chương trình tiêu tốn lượng điện năng và năng lượng đáng kể (đọc: tiền). [3]
Bằng chứng công việc không làm cho các cuộc tấn công của tin tặc không thể xảy ra, nhưng nó làm cho chúng trở nên vô dụng. Nếu một hacker muốn phối hợp một cuộc tấn công vào blockchain, họ sẽ cần phải giải các bài toán tính toán phức tạp với tỷ lệ 1 trong 7 nghìn tỷ tỷ lệ cược giống như những người khác. Chi phí tổ chức một cuộc tấn công như vậy gần như chắc chắn sẽ lớn hơn lợi ích.
Giao thức blockchain không khuyến khích sự tồn tại của nhiều blockchain thông qua một quá trình được gọi là “đồng thuận”. Với sự hiện diện của nhiều bản sao khác nhau của blockchain, giao thức đồng thuận sẽ áp dụng chuỗi dài nhất hiện có. Nhiều người dùng hơn trên một chuỗi khối có nghĩa là các khối có thể được thêm vào cuối chuỗi nhanh hơn. Theo logic đó, chuỗi khối bản ghi sẽ luôn là chuỗi khối mà người dùng tin tưởng nhất. Giao thức đồng thuận là một trong những điểm mạnh nhất của công nghệ blockchain, nhưng cũng cho phép một trong những điểm yếu lớn nhất của nó.
Về mặt lý thuyết, hacker có thể tận dụng quy tắc đa số trong cuộc tấn công 51%. Đây là cách nó sẽ xảy ra. Giả sử rằng có 5 triệu máy tính trên mạng Bitcoin, chắc chắn là một con số thấp nhưng là một con số đủ dễ để chia. Để đạt được đa số trên mạng, một hacker cần phải kiểm soát ít nhất 2,5 triệu và một trong những máy tính đó. Khi làm như vậy, kẻ tấn công hoặc nhóm kẻ tấn công có thể can thiệp vào quá trình ghi lại các giao dịch mới. Họ có thể gửi một giao dịch - và sau đó đảo ngược nó, làm cho giao dịch đó xuất hiện như thể họ vẫn còn số tiền mà họ vừa chi tiêu. Lỗ hổng này, được gọi là tăng gấp đôi chi tiêu, tương đương với kỹ thuật số của một hàng giả hoàn hảo và sẽ cho phép người dùng sử dụng số Bitcoin của họ gấp đôi. [3]
Một cuộc tấn công như vậy là cực kỳ khó thực hiện đối với một chuỗi khối quy mô của Bitcoin, vì nó sẽ yêu cầu kẻ tấn công giành quyền kiểm soát hàng triệu máy tính. Khi Bitcoin lần đầu tiên được thành lập vào năm 2009 và người dùng của nó lên đến hàng chục, kẻ tấn công sẽ dễ dàng hơn trong việc kiểm soát phần lớn sức mạnh tính toán trong mạng. Đặc điểm xác định này của blockchain đã bị gắn cờ là một điểm yếu đối với các loại tiền điện tử non trẻ.
Hình 2: 51% attack
Ưu điểm và nhược điểm của Blockchain
Đối với tất cả sự phức tạp của nó, tiềm năng của blockchain như một hình thức lưu trữ hồ sơ phi tập trung là gần như không có giới hạn. Từ quyền riêng tư của người dùng cao hơn và bảo mật cao hơn, đến phí xử lý thấp hơn và ít lỗi hơn, công nghệ blockchain rất có thể thấy các ứng dụng ngoài những điều đã nêu ở trên.
Dưới đây là những điểm bán hàng của blockchain cho các doanh nghiệp trên thị trường hiện nay:
• Tính chính xác: các giao dịch trên mạng blockchain được chấp thuận bởi một mạng lưới hàng nghìn hoặc hàng triệu máy tính. Điều này loại bỏ hầu như tất cả sự tham gia của con người vào quá trình xác minh, dẫn đến ít lỗi của con người hơn và bản ghi thông tin chính xác hơn.
• Chi phí: blockchain loại bỏ nhu cầu xác minh của bên thứ ba và cùng với đó là các chi phí liên quan của họ. Các chủ doanh nghiệp phải trả một khoản phí nhỏ bất cứ khi nào họ chấp nhận thanh toán bằng thẻ tín dụng.
• Phi tập trung: blockchain không lưu trữ bất kỳ thông tin nào của nó ở vị trí trung tâm. Thay vào đó, blockchain được sao chép và trải rộng trên một mạng máy tính.
• Hiệu quả: blockchain hoạt động 24 giờ một ngày, bảy ngày một tuần. Giao dịch có thể được hoàn thành trong khoảng mười phút và có thể được coi là an toàn chỉ sau vài giờ.
• Quyền riêng tư: nhiều mạng blockchain hoạt động dưới dạng cơ sở dữ liệu công khai, có nghĩa là bất kỳ ai có kết nối internet đều có thể xem danh sách lịch sử giao dịch của mạng. Mặc dù người dùng có thể truy cập thông tin chi tiết về các giao dịch nhưng họ không thể truy cập thông tin nhận dạng về người dùng thực hiện các giao dịch đó.
• Bảo mật: mỗi khối trên blockchain chứa hàm băm duy nhất của riêng nó, cùng với hàm băm duy nhất của khối trước nó. Khi thông tin trên một khối được chỉnh sửa theo bất kỳ cách nào, mã băm của khối đó sẽ thay đổi - tuy nhiên, mã băm trên khối sau nó thì không. Sự khác biệt này khiến thông tin trên blockchain cực kỳ khó bị thay đổi mà không cần thông báo.
• Tính minh bạch: mặc dù thông tin cá nhân trên blockchain được giữ kín, nhưng bản thân công nghệ này hầu như luôn là mã nguồn mở. Điều đó có nghĩa là người dùng trên mạng blockchain có thể sửa đổi mã khi họ thấy phù hợp, miễn là họ có phần lớn sức mạnh tính toán của mạng hỗ trợ họ. Giữ dữ liệu trên mã nguồn mở blockchain cũng khiến việc giả mạo dữ liệu trở nên khó khăn hơn nhiều.
Mặc dù có những ưu điểm đáng kể đối với blockchain, nhưng cũng có những thách thức đáng kể đối với việc áp dụng nó. Các rào cản đối với việc áp dụng công nghệ blockchain ngày nay không chỉ là kỹ thuật. Những thách thức thực sự là chính trị và quy định, phần lớn, không nói gì đến hàng nghìn giờ thiết kế phần mềm tùy chỉnh và lập trình back-end cần thiết để tích hợp blockchain vào các mạng kinh doanh hiện tại.
Dưới đây là một số thách thức đối với cách áp dụng blockchain rộng rãi:
• Chi phí: mặc dù blockchain có thể tiết kiệm cho người dùng tiền phí giao dịch, nhưng công nghệ này còn lâu mới miễn phí.
• Tính kém hiệu quả: Bitcoin là một nghiên cứu điển hình hoàn hảo cho sự kém hiệu quả có thể có của blockchain. Hệ thống "bằng chứng công việc" của Bitcoin mất khoảng mười phút để thêm một khối mới vào chuỗi khối.
• Quyền riêng tư: trong khi tính bảo mật trên mạng blockchain bảo vệ người dùng khỏi bị tấn công và bảo vệ quyền riêng tư, nó cũng cho phép giao dịch và hoạt động bất hợp pháp trên mạng blockchain.
(còn tiếp)
» Tin mới nhất:
» Các tin khác: