Các lỗ hổng trong Cơ chế Đồng thuận

Một phần của tài liệu CÁC CUỘC TẤN CÔNG LÊN BLOCKCHAIN (Trang 34 - 36)

1) Proof-of-Work: Proto-col đồng thuận được sử dụng rộng rãi nhất trong tiền điện tử là bằng chứng công việc (PoW), đóng vai trò là bằng chứng cho nỗ lực

đằng sau việc tính toán một khối hợp lệ. Như đã nêu trong (1), nỗ lực tính toán

khối có thể được mô tả như số lượng băm cần thiết để đáp ứng tham số độ khó D do mạng đặt. Khi sức mạnh băm tổng hợp của mạng H r tăng lên, khó khăn được nâng lên để giữ thời gian khối tiêu chuẩn T n trong một phạm vi xác định (10 phút đối với Bitcoin).

Trong 7 (a) và 7 (d), chúng em cho thấy sự gia tăng độ khó và tỷ lệ băm tổng hợp của Bitcoin và Ethereum, tương ứng. Vì khai thác trong PoW là một hệ thống dựa trên xổ số, các thợ đào sử dụng phần cứng phức tạp với tỷ lệ băm cao để tăng cơ hội trúng xổ số của họ. Trong số tất cả các loại tiền mã hóa dựa trên PoW, Bitcoin có tỷ lệ băm tối đa. Đặc biệt, và kể từ năm 2010, các thợ đào Bitcoin đã chuyển từ Bộ xử lý trung tâm (CPU), sang bộ xử lý đồ họa (GPU) vào năm 2011, sang Mảng cổng lập trình trường (FPGA) vào năm 2012–13 và cuối cùng là Mạch tích

hợp dành riêng cho ứng dụng (ASIC) chip từ năm 2014 đến nay [95]. Chúng em

cho thấy sự phát triển này của phần cứng Bitcoin, cùng với tỷ lệ băm, trong Bảng IV.

Một trong những vấn đề lớn với PoW là sự lãng phí năng lượng quá mức để tìm

ra giải pháp hợp lệ [96]. Hiện tại, Bitcoin và Ethereum sử dụng tương ứng là

71,12 Terawatt giờ và 4,2 Terawatt-giờ (TWh) điện mỗi năm để tìm số băm cần

thiết cho PoW hợp lệ [97] - [99]. Trong Hình 8, chúng em cho thấy mức tiêu thụ

điện của Bitcoin so với một số quốc gia. Ngoài việc tiêu thụ quá nhiều điện, việc tập trung tỷ lệ băm giữa một số nhóm khai thác khiến ứng dụng Blockchain dễ bị tấn công bao gồm các cuộc tấn công đa số và chi tiêu kép (được thảo luận

trong phần VB và phần VI- B), theo đó nếu một người khai thác có được phần

lớn tỷ lệ băm của mạng, người khai thác sẽ có thể giành quyền kiểm soát hệ thống.

2) PoS: (PoS) được giới thiệu bởi King và Nadal vào năm 2012

[100] để làm cho các ứng dụng Blockchain tiết kiệm năng lượng hơn và tăng chi phí của một cuộc tấn công đa số. Không giống như PoW, dựa trên xổ số, PoS sử dụng phương pháp xác định dựa trên cổ phần để chọn trình xác thực và xuất bản

một khối mới [101]. Trong cách tiếp cận này, trình xác thực được chọn bởi một

quy trình đấu thầu, theo đó người xác nhận ứng cử viên đặt giá thầu số tiền của họ. Tiền cược là số dư thuộc sở hữu của người xác nhận ứng cử viên và được sử

dụng để ngăn chặn gian lận trong hệ thống. Ứng cử viên có giá thầu cao nhất được chọn để khai thác khối tiếp theo và nếu anh ta cố gắng đánh lừa hệ thống bằng các giao dịch không có thật, anh ta có nguy cơ mất số tiền đã cam kết (số dư) của mình. Quá trình này mang tính xác định vì trình xác nhận được chọn trước mỗi quy trình đấu thầu. Do đó, các khối được xuất bản vào thời gian dự kiến của chúng mà không có sự sai lệch hoặc chậm trễ về thời gian. Hơn nữa, để khởi động một cuộc tấn công đa số vào tiền điện tử dựa trên PoS, kẻ tấn công bắt

buộc phải có được hơn 50% mã thông báo tiền điện tử [102]. Mặc dù việc kiếm

được 50% tỷ lệ băm trong PoW tương đối dễ dàng hơn, nhưng rất khó để kiếm được 50% xu. Do đó, so với PoW, chi phí để khởi động một cuộc tấn công đa số trong ứng dụng PoS là tương đối cao, điều này làm cho cuộc tấn công kém khả thi hơn.

Mặc dù PoS đóng vai trò như một giải pháp thay thế khai thác “xanh” của PoW và làm tăng chi phí tấn công cho các cuộc tấn công đa số, nhưng nó có một số cảnh báo chính đã ngăn cản việc áp dụng rộng rãi của cộng đồng

Blockchain. Trong PoS, trình xác thực giàu có có thể tiếp tục thắng giá thầu cho khối tiếp theo được xác thực và tích lũy phần thưởng khối. Do đó, các trình xác thực phong phú trong hệ thống trở nên phong phú hơn để xác nhận khối, điều này làm cho các ứng dụng PoS tập trung xung quanh các trình xác nhận đó. Điều này thách thức tiền đề cơ bản của công nghệ Blockchain là một hệ thống phi tập

trung [103]. Hơn nữa, không giống như PoW, trong đó những người khai thác với

nguồn lực hạn chế vẫn có thể có cơ hội trúng số, những người đặt giá thầu nhỏ trong PoS chắc chắn sẽ mất giá thầu cho mỗi khối sắp tới.

3) PBFT: Như đã chỉ ra trong phần III-B, trong Blockchains riêng tư dựa trên

PBFT, hệ thống được nhóm thành một tập hợp các bản sao xử lý các giao dịch và

đóng góp vào việc hình thành khối [71], [104]. Bản sao chính chịu trách nhiệm

đặt hàng các giao dịch và nhận được sự chấp thuận từ các bản sao khác. Sau khi nhận được đủ các phê duyệt, khối chính sẽ tính toán một khối và phát nó lên mạng. PBFT được coi là tiết kiệm năng lượng với thông lượng giao dịch cao. Tuy nhiên, nó hoạt động theo giả định rằng bản sao chính thực thi trung thực giao thức và không làm xáo trộn thứ tự của các giao dịch và khối. Giả định này có thể dẫn đến lỗ hổng trong các Blockchains được cấp phép. Nếu bản sao chính bị xâm phạm, nó có thể:

1) loại bỏ các phê duyệt thu được từ các bản sao khác và hủy bỏ sớm việc hành quyết,

2) sắp xếp lại trình tự các giao dịch để trì hoãn quá trình xác minh và tạo khối, 3) giữ lại các giao dịch hoặc khối từ các bản sao khác và / hoặc

4) vô hiệu hóa các giao dịch ngay cả sau khi được chấp thuận.

Do đó, các Blockchains riêng tư luôn phải chịu rủi ro về một kẻ xấu độc hại có thể xâm phạm hệ thống. Tuy nhiên, vì danh tính của tổ chức chính thường được mọi người biết đến, nên cuối cùng, các hoạt động độc hại của tổ chức chính có thể được theo dõi lại.

Một thách thức quan trọng khác trong các Blockchains riêng tư dựa trên PBFT là khả năng mở rộng hạn chế của chúng và khả năng chịu đựng thấp đối với các nút

Byzantine. Khả năng mở rộng thấp là kết quả của độ phức tạp của bản tin O (n 2 )

liên quan đến việc xử lý một giao dịch đơn lẻ, như thể hiện trong Hình 2. Trong

PBFT, việc thực hiện giao dịch được thực hiện theo bốn giai đoạn, đó là chuẩn bị trước, chuẩn bị, cam kết và trả lời. . Trong giai đoạn chuẩn bị và cam kết, mỗi đồng đẳng được yêu cầu gửi tin nhắn đến mọi đồng đẳng khác trong mạng. Nói chung, điều này dẫn đến chi phí liên lạc rất lớn mà không thể mong đợi hoạt động hiệu quả ở quy mô lớn. Do đó, khi quy mô mạng lớn lên, hiệu suất của PBFT bị suy giảm đáng kể. Đây là lý do chính khiến các Blockchains riêng tư dựa trên PBFT bị ảnh hưởng bởi khả năng mở rộng thấp.

Cuối cùng, một hạn chế khác của các Blockchains riêng dựa trên PBFT là khả năng chịu lỗi thấp. Mỗi giao dịch yêu cầu phê duyệt từ 3f + 1 bản sao, trong đó f là số bản sao bị lỗi hoặc các nút Byzantine. So với PoW và PoS, nơi mạng có thể chịu được tới 50% các thực thể độc hại, PBFT chỉ có thể chịu được 33% các bản sao độc hại. Với điều kiện PBFT đã có khả năng mở rộng thấp, khả năng chịu lỗi thấp hơn sẽ làm tăng cơ hội cho kẻ thù đặt các bản sao độc hại vào mạng. Hiện

tại, Bitcoin có hơn 10.000 nút đầy đủ đang hoạt động [105]. Điều này có nghĩa là

nó có thể chịu đựng tới 5.000 nút bị lỗi. Chi phí cho việc xâm nhập 5.000 nút là cao và do đó, cuộc tấn công là không khả thi. Tuy nhiên, trong một Blockchain riêng dựa trên PBFT bao gồm 100 nút, kẻ tấn công chỉ có thể thành công bằng cách kiểm soát 33 nút. Khả năng chịu lỗi thấp là một thách thức lớn trong các ứng dụng Blockchain dựa trên PBFT.

Xem xét các tính năng và thiếu sót của thiết bị hiện có

các thuật toán sensus, cần có các cơ chế đồng thuận mới an toàn, có thể mở rộng và tiết kiệm năng lượng. Hiện tại, đây vẫn là một khu vực nghiên cứu tích cực, với một số tiến bộ đáng chú ý gần đây đã đạt được theo hướng này [106] - [108].

Một phần của tài liệu CÁC CUỘC TẤN CÔNG LÊN BLOCKCHAIN (Trang 34 - 36)

w